NFS (Network File System) je nejrozšířenějším serverem pro poskytování souborů přes síť. S NFS serverem můžeme sdílet složky po síti a povolení klienti nebo systém mají k těmto sdíleným složkám přístup a mohou je používat ve svých aplikacích. Pokud jde o produkční prostředí, měli bychom nakonfigurovat nfs server na vysokou dostupnost, abychom vyloučili jediný bod selhání.
V tomto článku probereme, jak můžeme nakonfigurovat klastrování vysoké dostupnosti serveru nfs (aktivní-pasivní) s kardiostimulátorem na CentOS 7 nebo RHEL 7
Níže jsou uvedeny podrobnosti o mé laboratoři, které jsem použil pro tento článek,
- Server NFS 1 (nfs1.example.com) – 192.168.1.40 – Minimální CentOS 7 / RHEL 7
- NFS Server 2 (nfs2.example.com) – 192.168.1.50 – Minimální CentOS 7 / RHEL 7
- VIP serveru NFS – 192.168.1.51
- Firewall povolen
- SELinux povolen
Chcete-li nakonfigurovat aktivní a pasivní klastrování serveru NFS na CentOS 7 / RHEL 7, postupujte podle níže uvedených kroků
Krok 1) Nastavte název hostitele na obou serverech nfs a aktualizujte soubor /etc/hosts
Přihlaste se k oběma serverům nfs a pomocí příkazu hostnamectl nastavte název hostitele na „nfs1.example.com“ a „nfs2.example.com“, příklad je uveden níže
~]# hostnamectl set-hostname "nfs1.example.com"~]# exec bash
Aktualizujte soubor /etc/hosts na obou serverech nfs,
192.168.1.40 nfs1.example.com192.168.1.50 nfs2.example.com
Krok 2) Aktualizujte oba servery nfs a nainstalujte balíčky pro počítače
Pomocí níže uvedeného příkazu „yum update“ použijte všechny aktualizace na obou serverech nfs a poté jednou restartujte.
~]# aktualizace yum &&restartování
Nainstalujte balíčky pcs a fence-agent na oba nfs servery,
[[email protected] ~]# yum install -y pcs fence-agents-all[[email protected] ~]# yum install -y pcs fence-agents-all
Jakmile jsou balíčky počítačů a šermířských agentů nainstalovány, povolte porty související s počítači v OS firewall z obou serverů nfs,
~]# cmd brány firewall --permanent --add-service=high-availability~]# cmd brány firewall --reload
Nyní spusťte a povolte službu pcsd na obou uzlech nfs pomocí příkazů níže,
~]# systemctl povolit pcsd~]# systemctl start pcsd
Krok 3) Ověřte uzly nfs a vytvořte cluster
Nastavte heslo na uživatele hacluster, služba pcsd použije tohoto uživatele k ověření uzlů clusteru, takže nejprve nastavíme heslo pro uživatele hacluster na obou uzlech,
[[email protected] ~]# echo "enter_password" | passwd --stdin hacluster[[e-mail chráněný] ~]# echo "zadejte heslo" | passwd --stdin hacluster
Nyní ověřte uzly clusteru, v našem případě bude nfs2.example.com ověřen na nfs1.example.com, spusťte níže uvedený příkaz pcs cluster na „nfs1“
[[email protected] ~]# pcs cluster auth nfs1.example.com nfs2.example.comUsername:haclusterPassword:nfs1.example.com:Authorizednfs2.example.com:Authorized[[email protected] ~]#Nyní je čas vytvořit cluster s názvem „nfs_cluster “ a přidejte do něj oba uzly nfs. Spusťte níže „nastavení clusteru počítačů ” z libovolného uzlu nfs,
[[email protected] ~ Nastavení clusteru # ks --start --name nfs_cluster nfs1.example.com \ nfs2.example.comPovolte službu clusteru PC na obou uzlech, aby se uzly po restartu automaticky připojily ke clusteru. Spusťte níže uvedený příkaz z některého z nfs uzlu,
[[e-mail chráněno] ~Povolení clusteru pro # ks --allnfs1.example.com:Cluster povolenoKrok 4) Definujte oplocení zařízení pro každý uzel clusteru
Oplocení je nejdůležitější součástí clusteru, pokud se některý z uzlů porouchá, oplocení odstraní tento uzel z klastru. V Pacemaker je oplocení definováno pomocí zdroje Stonith (Shoot The Other Node In The Head).
V tomto tutoriálu používáme sdílený disk o velikosti 1 GB (/dev/sdc) jako oplocení. Nejprve zjistíme id /dev/sdc disku
[[e-mail chráněný] ~]# ls -l /dev/disk/by-id/
Poznamenejte si ID disku /dev/sdc, jak jej zapíšeme do „pcs stoith “.
Nyní spusťte pod příkazem „pcs stonith“ z kteréhokoli uzlu a vytvořte oplocení (disk_fencing)
[[email chráněno] ~]# pcs stonith create disk_fencing fence_scsi \ pcmk_host_list="nfs1.example.com nfs2.example.com" \ pcmk_monitor_action="metadata" pcmk_reboot_action="off" \sk="/dev/di /by-id/wwn-0x6001405e49919dad5824dc2af5fb3ca0" \ meta provide="unfencing"[[e-mail chráněn] ~]#Ověřte stav stonith pomocí níže uvedeného příkazu
[[email protected] ~]# pcs stoith show disk_fencing (stonith:fence_scsi): Spuštěno nfs1.example.com[[email protected] ~]#Spusťte „stav ks ” pro zobrazení stavu clusteru
[[email protected] ~ Stav # ks Název clusteru:nfs_clusterStack:corosyncCurrent DC:nfs2.example.com (verze 1.1.16-12.el7_4.7-94ff4df) \ - oddíl s kvoremPoslední aktualizace:Ne Mar 4 03 :18:47 2018Poslední změna:Ne 4. březen 03:16:09 2018 uživatelem root přes cibadmin na nfs1.example.com2 uzly nakonfigurované1 zdroj nakonfigurovanýOnline:[ nfs1.example.com nfs2.example.com ]Úplný seznam zdrojů stonith:fence_scsi): Spuštěno nfs1.example.comStav démona: corosync:aktivní/povoleno kardiostimulátor:aktivní/povoleno pcsd:aktivní/povoleno[[e-mail chráněn] ~]#Poznámka: Pokud jsou vaše uzly clusteru virtuální počítače a hostované na VMware, můžete použít „fence_vmware_soap “šermíř. Chcete-li nakonfigurovat „fence_vmware_soap“ jako agenta oplocení, postupujte podle níže uvedených logických kroků:
1) Ověřte, zda vaše uzly clusteru mohou dosáhnout hypervizoru VMware nebo Vcenter
# fence_vmware_soap -a-l -p \ --ssl -z -v -o seznam |egrep "(nfs1.example.com|nfs2.example.com)"nebo# fence_vmware_soap -a -l -p \ --ssl -z -o seznam |egrep "(nfs1.example.com|nfs2.example.com)" pokud vidíte názvy virtuálních počítačů ve výstupu, pak je to v pořádku, jinak musíte zkontrolovat, proč uzly clusteru nejsou schopny navázat spojení esxi nebo vcenter.
2) Definujte oplocení pomocí níže uvedeného příkazu,
# pcs stonith create vmware_fence fence_vmware_soap \ pcmk_host_map="node1:nfs1.example.com;uzel2:nfs2.example.com" \ ipaddr=ssl=1 login= passwd= 3) zkontrolujte stav stonith pomocí níže uvedeného příkazu,
# ks stonith showKrok 5) Nainstalujte nfs a naformátujte sdílený disk nfs
Nainstalujte balíček „nfs-utils“ na oba servery nfs
[[e-mail chráněný] ~]# yum install nfs-utils -y[[email protected] ~]# yum install nfs-utils -yZastavte a deaktivujte místní „nfs-lock ” na obou uzlech, protože tato služba bude řízena kardiostimulátorem
[[e-mail chráněno] ~]# systemctl stop nfs-lock && systemctl deaktivace nfs-lock[[email protected] ~]# systemctl stop nfs-lock && systemctl deaktivace nfs-lockPředpokládejme, že máme sdílený disk „/dev/sdb“ o velikosti 10 GB mezi dvěma uzly clusteru, vytvořte na něm oddíl a naformátujte jej jako systém souborů xfs
[[email chráněný] ~]# fdisk /dev/sdb
Spusťte příkaz partprobe na obou uzlech a jednou restartujte.
~]# partprobeNyní naformátujte „/dev/sdb1“ jako souborový systém xfs
[[chráněný emailem] ~] # mkfs.xfs / dev / sdb1meta-data =/ dev / sdb1 isize =256 agcount =4, agresize =655296 blks =sektz =512 attr =2, projid32bit =1 =crc =0 Finobt =0data =bsize =4096 bloků =2621184, IMAXPCT =25 =SUNIT =0 Swidth =0 Blanksnaming =verze 2 BSIZE =4096 ASCII-CI =0 FTYPE =0Log =Interní protokol BSize =4096 bloků =2560, verze =2 = sectsz=512 sunit=0 bloků, líný počet=1reálný čas =žádný extsz=4096 bloků=0, rtextents=0[[e-mailem chráněno #] ~>Vytvořte bod připojení pro tento souborový systém na obou uzlech,
[[email protected] ~]# mkdir /nfsshare[[email protected] ~]# mkdir /nfsshareKrok 6) Nakonfigurujte všechny požadované prostředky NFS na uzlech clusteru
Následují požadované prostředky NFS:
- Prostředky systému souborů
- zdroj nfsserver
- zdroj exportu
- Zdroj plovoucí IP adresy IPaddr2
Pro prostředek souborového systému potřebujeme sdílené úložiště mezi uzly clusteru, ve výše uvedených krocích jsme již vytvořili oddíl na sdíleném disku (/dev/sdb1), takže tento oddíl použijeme. Níže použijte „vytvoření zdroje ks ” pro definování prostředku systému souborů z libovolného uzlu,
[[email protected] ~Vytvoření prostředku pro # ks nfsshare Filesystem device=/dev/sdb1 \ directory=/nfsshare fstype=xfs --group nfsgrp[[email protected] ~]#Ve výše uvedeném příkazu jsme definovali souborový systém NFS jako „nfsshare “ ve skupině „nfsgrp “. Nyní budou všechny prostředky nfs vytvořeny ve skupině nfsgrp.
Vytvořte prostředek nfsserver s názvem „nfsd ‘ pomocí níže uvedeného příkazu,
[[e-mail chráněný] ~]# pc zdroj pro vytvoření nfsd nfsserver \ nfs_shared_infodir=/nfsshare/nfsinfo --group nfsgrp[[e-mail chráněný] ~]#Vytvářejte exporty zdroj s názvem „nfsroot ”
[[email protected] ~]# pcs resource create nfsroot exportfs clientspec="192.168.1.0/24" options=rw,sync,no_root_squash directory=/nfsshare fsid=0 --group nfsgrp[[email protected] ~] #Ve výše uvedeném příkazu clientspec označuje povolené klienty, kteří mají přístup k nfsshare
Vytvořte NFS IPaddr2 zdroj pomocí níže uvedeného příkazu,
[[e-mail chráněný] ~]# ks pro vytvoření zdroje nfsip IPaddr2 ip=192.168.1.51 \ cidr_netmask=24 --group nfsgrp[[e-mail chráněný] ~]#Nyní zobrazte a ověřte cluster pomocí stavu počítače
[[email chráněno] ~Stav # kusů
Jakmile skončíte s prostředky NFS, povolte porty serveru nfs v bráně firewall operačního systému z obou serverů nfs,
~]# firewall-cmd --permanent --add-service=nfs~]# firewall-cmd --permanent --add-service=mountd~]# firewall-cmd --permanent --add-service=rpc-bind~]# firewall-cmd --reloadKrok 7) Zkuste připojit sdílenou složku NFS na klienty
Nyní zkuste připojit sdílenou složku nfs pomocí příkazu mount, příklad je uveden níže
[[email protected] ~]# mkdir /mnt/nfsshare[[email protected] ~]# mount 192.168.1.51:/ /mnt/nfsshare/[[email protected] ~]# df -Th /mnt/nfsshareFilesystem Typ Velikost Využito Využití % Namontováno na 192.168.1.51:/ nfs4 10G 32 M 10G 1 % /mnt/nfsshare[[e-mail chráněno] ~]#[[e-mail chráněno] ~]# cd /mnt/[nfsmail protected/ ] nfsshare]# lsnfsinfo[[e-mail chráněný] nfsshare]#Pro testování klastru zastavte klastrovou službu na libovolném uzlu a zjistěte, zda je nfsshare přístupný nebo ne. Předpokládejme, že zastavím službu clusteru na „nfs1.example.com“
[[email protected] ~]# pcs cluster stopStopping Cluster (kardiostimulátor)...Stopping Cluster (corosync)...[[email protected] ~]#Nyní přejděte na klientský počítač a zjistěte, zda je nfsshare stále přístupný. V mém případě k němu stále mám přístup a mohu na něm vytvářet soubory.
[[e-mail chráněno] nfsshare]# dotykový test[[e-mail chráněno] nfsshare]#Nyní povolte klastrovou službu na „nfs1.example.com“ pomocí níže uvedeného příkazu
[[email protected] ~]# pc cluster startSpuštění clusteru...[[email protected] ~]#To je vše z tohoto článku, potvrzuje, že jsme úspěšně nakonfigurovali NFS aktivní-pasivní clustering pomocí kardiostimulátoru. Prosím, podělte se o své názory a komentáře v sekci komentářů níže.
Jak připojit počítač se systémem Windows s RDP z konzoly CentOS 7 / RHEL 7 Jak nasadit TripleO Overcloud (Controller, Compute) na VM CentOS 7Cent OS