Le basculement est le processus de sélection d'un serveur à partir d'une liste de serveurs qui prennent en charge un système de fichiers répliqué. Normalement, le serveur suivant de la liste triée est utilisé, à moins qu'il ne réponde pas. En utilisant le basculement côté client, un client NFS peut détecter plusieurs serveurs qui rendent les mêmes données disponibles et peuvent passer à un autre serveur lorsque le serveur actuel n'est pas disponible. Cette bascule est connue sous le nom de une nouvelle mise en correspondance. Grâce à une utilisation normale, les clients stockent le nom du chemin d'accès pour chaque fichier actif sur un système de fichiers distant. Au cours du remappage, ces noms de chemin d'accès sont évalués pour détecter les fichiers sur le nouveau serveur.
Le système de fichiers peut devenir indisponible si l'une des conditions suivantes se produit.
Le système de fichiers est connecté à un serveur qui tombe en panne
Le serveur est en surcharge.
Une panne du réseau se produit.
Le basculement, dans ces conditions, est normalement transparent pour l'utilisateur. Il peut se produire à tout moment et sans perturber les processus qui sont en cours d'exécution sur le client.
Le basculement s'effectue avec, pour les systèmes de fichiers doit être monté en lecture seule. Les systèmes de fichiers doivent être identiques pour que le basculement s'effectue avec succès. Pour plus d'informations sur les systèmes de fichiers identiques, reportez-vous à la section Qu'est-ce qu'un système de fichiers répliqué ?. Un système de fichiers statique ou qui n'a pas été modifiée est souvent le meilleur candidat pour un basculement.
Vous ne pouvez pas utiliser CacheFS et le basculement côté client sur un même montage NFS. Des informations supplémentaires sont enregistrées pour chaque système de fichiers CacheFS. Ces informations ne peuvent pas être mises à jour lors du basculement, de sorte que seule l'une de ces fonctions peut être utilisée lors du montage d'un système de fichiers.
Le nombre de répliques devant être établies pour chaque système de fichiers dépend de nombreux facteurs. Dans l'idéal, vous disposez d'au moins deux serveurs. Chaque serveur prend en charge plusieurs sous-réseaux. Cette configuration est préférable au fait d'avoir un serveur unique sur chaque sous-réseau. Le processus exige la vérification de la présence de chaque serveur répertorié. Par conséquent, si plusieurs serveurs sont répertoriés, chaque montage est plus lent.
Pour les besoins du basculement côté client, un système de fichiers peut être appelé réplique lorsqu'il est de la même taille et a la même taille de fichier ou le même type de fichier que le système de fichiers d'origine. Les autorisations, dates de création et autres attributs de fichier ne sont pas pris en compte. Si la taille du fichier ou les types de fichier sont différents, le remappage échoue et le processus se bloque jusqu'à ce que l'ancien serveur devienne disponible. Dans la version 4 de NFS, le comportement est différent. Pour plus d'informations sur le basculement côté client, reportez-vous à la section Basculement côté client dans la version 4 de NFS.
Vous pouvez gérer un système de fichiers répliqué à l'aide de rsync, cpio ou d'un autre mécanisme de transfert de fichiers. Dans la mesure où la mise à jour des systèmes de fichiers répliqués entraîne des incohérences, prenez les précautions suivantes pour obtenir de meilleurs résultats :
Attribuez un nouveau nom à l'ancienne version du fichier avant d'installer une nouvelle version du fichier.
Exécutez les mises à jour pendant la nuit lorsque l'utilisation du client est faible.
Limitez la taille des mises à jour.
Réduisez au minimum le nombre de copies du fichier.
Certains logiciels requièrent des verrous de lecture sur les fichiers. Pour éviter que ces produits ne dysfonctionnent, les verrous de lecture sur des systèmes de fichiers en lecture seule sont autorisés, mais sont visibles pour le côté client seulement. Les verrous sont conservés durant un remappage car le serveur n'est pas à même de les détecter. Etant donné que les fichiers ne doivent pas changer, vous n'avez pas besoin de verrouiller le fichier sur le côté serveur.
Dans la version 4 de NFS, si une réplique ne peut pas être établie car les tailles ou les types de fichier sont différents, les événements suivants se produisent
Le fichier est inutilisable.
Un message d'avertissement s'affiche.
L'application qui utilise un fichier sur le montage répliqué reçoit un échec de l'appel système.
Dans la version 4 de NFS, vous ne recevez plus d'erreurs de réplication pour les répertoires de tailles différentes. Dans les précédentes versions de NFS, cette condition était considérée comme une erreur et entravait le processus de remappage.
En outre, dans la version 4 de NFS, si une opération de répertoire de lecture est infructueuse, l'opération est exécutée par le serveur suivant de la liste. Dans les précédentes versions de NFS, les opérations de lecture ayant échoué risquaient d'entraîner un échec du remappage et un blocage du processus jusqu'à ce que le serveur d'origine soit disponible.