12 votes

Comment faire un basculement NFS côté client sous Linux ?

J'ai un client CentOS 6.3 qui doit accéder au stockage NFS. Il y a deux serveurs NFS qui servent le même contenu stocké sur un SAN avec un système de fichiers en grappe. Comment puis-je configurer CentOS pour qu'il bascule sur le serveur NFS de secours si nécessaire ? Lorsque je cherche sur Google, je lis que Linux ne prend pas en charge cette fonctionnalité, mais ce serait étrange car il existe de nombreuses informations sur la manière de configurer une ferme de serveurs NFS Linux en grappe...

4 votes

L'utilisation de Heartbeat et d'une IP virtuelle flottante pourrait-elle vous aider ? Ce n'est pas limité à NFS, mais une approche plus générale. Voir par exemple Arch Linux wiki : Simple IP Failover avec Heartbeat .

2 votes

Je soutiens le commentaire de @gertvdijk. Vous pourriez être en mesure de configurer un basculement actif/passif en configurant la même adresse IP et le même nom d'hôte sur le serveur principal et le serveur de basculement. C'est ainsi que fonctionnent les filers NFS commerciaux tels que la passerelle de stockage EMC VG-2.

0 votes

Heartbeat fonctionnerait mais il s'agit d'une situation particulière et étrange. Le serveur NFS est une installation Xsan OS X 10.8 et ils ont supprimé heartbeat dans 10.8 (10.7 l'avait).

10voto

John Sellens Points 171

Cela ressemble à un travail pour le démon automount(8). Consultez la page de manuel autofs(5) (du rpm autofs) sous "Replicated Server". Je pense que si vous ajoutez une ligne comme

fileserv host1,host2:/server/export/point

à /etc/auto.misc sur votre client et (re)démarrer le service autofs, votre stockage NFS apparaîtra sous /misc/fileserv. Vous pouvez ajouter -ro comme option de montage si vous voulez monter en lecture seule (ou d'autres options de montage bien sûr).

1 votes

Ça a marché ! Merci. Ce serait cool s'il pouvait revenir au serveur principal quand il est de nouveau en ligne, mais cela fonctionne assez bien pour faire le travail.

0voto

jamieb Points 3387

La bonne façon(tm) de le faire est avec GlusterFS Il s'agit d'un système de fichiers à grande échelle qui fonctionne dans l'espace utilisateur au-dessus d'un système de fichiers sous-jacent comme NFS ou CIFS.

Tout cela semble impressionnant et compliqué, mais c'est en fait très simple à mettre en place. Honnêtement, cela devrait vous prendre moins de 15 minutes. Vous aurez deux serveurs, chacun avec une "brique" (unité de stockage) définie. Un volume serait ensuite défini au sein de ce pool de serveurs. La réplication des données entre les serveurs se fait automatiquement, tout comme le basculement sur le client si l'un des serveurs meurt.

0 votes

Un autre bon moyen est Ceph RBD .

0 votes

Vous pouvez utiliser MooseFS . Il s'agit d'un système de fichiers distribué, open source et tolérant aux pannes.

0 votes

Ceph est lent sur les VMs. Gluster/Heketi aussi et il n'est pas encore adapté à de nombreux petits fichiers et/ou à de nombreuses opérations d'écriture, par exemple les bases de données ou Redis - j'ai appris dans la douleur. Je n'ai pas encore essayé MooseFS. Je suis maintenant de retour à NFS, autofs et lsyncd.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X