===== Cluster Storage ===== con - PROXMOX + CENTOS 7 + DRBD + ISCSI + PACEMAKER\\ dispositivo a blocchi esportato in cluster ha.\\ Requisisti:\\ 2 nodi Proxmox\\ su ciascuno Centos 7 minimale\\ struttura rete:\\ Preparazione:\\ Centos:\\ Assegnare ip prima scheda in fase di installazione in modo tale da poter essere collegati ad una rete con internet a disposizione per l'installazione dei pacchetti.\\ Valutare se fare un bridge, un nat o altro. L'importante è poter installare i pacchetti che di seguito verranno indicati.\\ disablilitare repo updates e extra\\ poi\\ yum install net-tools disabilitare selinux\\ scaricare i seguenti pacchetti :\\ yum install kmod-drbd84-8.4.8-1_1.el7.elrepo.x86_64.rpm altro modo:\\ rpm -ivh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-elrepo.org yum install drbd84-utils kmod-drbd84 recuperare i modelli dal mirror per drbd (global_common.conf e basi .res) e posizionarli nell'apposita directory\\ partizionamento di test:\\ l'installazione di centos ha automaticamente ricreato nel disco una partition table di tipo DOS\\ sda3 20G per vm su lvme gfs2\\ sda5 10G per dati esportati con iscsi\\ Verificare il funzionamento di drbd e delle varie configurazioni.\\ Installare i pacchetti per il cluster:\\ yum install pcs targetcli poi\\ systemctl enable target.service Creazione del cluster:\\ su entrambi i nodi\\ passwd hacluster su entrambi i nodi\\ systemctl enable pcsd.service systemctl start pcsd.service il file hosts deve contenere l'associazione nome ip:\\ 192.168.1.xxx nodo1 192.168.1.xxy nodo2 solo su un nodo\\ pcs cluster auth nomenodo1 nomenodo2 solo su un nodo\\ pcs cluster setup --name nomecluster nomenodo1 nomenodo2 su entrambi i nodi\\ service pacemaker start Creare la risorsa iscsi solo su un nodo dopoe ssersi accertato di avere entrambi primary\\ pcs resource create r_tgt iSCSITarget iqn=iqn.2017-03.lnst.proto.target0 implementation=lio-t pcs resource create r_lun iSCSILogicalUnit target_iqn=iqn.2017-03.lnst.proto.target0 lun=1 path=/dev/drbd0 implementation=lio-t pcs resource create clstIP IPaddr2 ip=192.168.1.2 cidr_netmask=24 pcs resource Group add g_clst r_tgt r_lun clstIP e' anche necessario usare le seguenti opzioni altrimenti le risorse non vanno su:\\ usare la politica no quorum policy =ignore\\ e\\ disabilitare lo stonith=false\\ entrambe le opzioni le possiamo gestire tramite interfaccia web nella sezione cluster properties\\ prepariamo l'altra partizione per il gfs2\\ yum install lvm2-cluster gfs2-utils abilitare dlm\\ systemctl enable dlm.service creare la risorsa di tipo clone dlm\\ pcs resource create dlm ocf:pacemaker:controld op monitor interval=30s on-fail=fence clone interleave=true ordered=true riguardo LVM\\ abilitare il tipo cluster\\ /sbin/lvmconf --enable-cluster ricordarsi i filtri in lvm.conf modificando come di seguito adattando alle esigenze\\ filter = [ "a|/dev/cciss/c0d1p1|" ] oppure nell'altro server:\\ filter = [ "a|/dev/sdb1|" ] poi:\\ pcs resource create clvmd ocf:heartbeat:clvm op monitor interval=30s on-fail=fence clone interleave=true ordered=true ordine di avvio:\\ pcs constraint order start dlm-clone then clvmd-clone collocazione:\\ pcs constraint colocation add clvmd-clone with dlm-clone seguire procedura per dlm e clvmd\\ seguire procedura per creare filesystem clusterizzato gfs2\\ Per ora sulla virtualizzazione installato solo dopo aver disabilitato elrepo\\ yum install qemu-kvm libvirt virt-manager anche i seguenti per poter gestire con putty da winzoz\\ yum install xorg-x11-xauth xorg-x11-fonts-* xorg-x11-font-utils eseguire anche con:\\ virt-manager --no-fork ip assegnati\\ 172.16.196.12 server dns1\\ 172.16.196.13 server dns2\\ 172.16.196.14 server dns3\\ 172.16.196.16 vecchio server1 2003\\ 172.16.196.35 st1\\ 172.16.196.36 st2\\ 172.16.196.37 st3\\ 172.16.196.38 st4\\ 172.16.196.125 nodo1\\ 172.16.196.126 nodo2\\ 172.16.196.127 risorsa1 new - iqn.2017-06.lnst.proto.targeta\\ 172.16.196.128 risorsa2 new - iqn.2017-06.lnst.proto.targetb\\ 172.16.196.129 risorsa3 new - iqn.2017-06.lnst.proto.targetc\\ 180 hdold \\ 181 hdold\\ 182 hdold\\ 183 hdold\\ 184 hdold\\ 185 hdold\\ 186 hdold\\ 187 hdold\\ 188 hdold\\ 189 hdold\\ 190 hdold\\ 191 hdold\\ ===== 12-2017 ===== fileserver samba\\ Due nodi Centos in drbd + pacemaker per esportare condivisioni samba\\ ==== SO ==== installare il SO su hd da 10G\\ ==== software ==== installare elrepo per drbd\\ samba\\ pacemaker\\ e ricordarsi di disabilitare selinux altrimenti fare le opportune modifiche per far accedere alle cartelle condivise\\ ==== drbd ==== aggiungere su ciascun nodo hd da 500 poi da 400 ecc..\\ dopo aver aggiunto l'HD partizionare\\ fdisk /dev/sdb controllare PT dos con \\ p se tutto ok creare nuova partizione con\\ n invio invio invio salvare con\\ w Azzerare la partizione appena creata con il seguente comando\\ dd if=/dev/zero of=/dev/sdx1 bs=1M count=128 Normalemente non mi è mai capitato ma per questa particolare situazione di nodo centos 7 su VM vmware esx6 e 6.5 con disco vmdk è stato necessario altrimenti drbd restituisce errori nella fase di creazione dei metadati\\ preparare i file .res\\ e quindi creare il device con i metadati\\ drbdadm create-md rx... Appena pronti lanciare la sincronizzazione e dal nodo da cui si è lanciata possiamo cominciare a usarlo\\ Quindi si formatta e poi si monta.\\ La partizione creata ha già di default un tipo di formattazione linux (ext)\\ Per sicurezza l'ho ulteriormente formattata in ext4\\ mkfs.ext4 /dev/drbdx: ==== samba ==== creare le seguenti directory\\ mkdir /q-PUSRPC mkdir /q-GABIMM mkdir /q-ANTMOB mkdir /q-UPGDIG mkdir /q-SCIENT e modificare il file /etc/samba/smb.conf aggiungendo\\ [PUSRPC] comment = commento path = /q-PUSRPC/ read only = No browseable = Yes [GABIMM] comment = commento path = /q-GABIMM/ read only = No browseable = Yes [ANTMOB] comment = commento path = /q-ANTMOB/ read only = No browseable = Yes [UPGDIG] comment = commento path = /q-UPGDIG/ read only = No browseable = Yes [SCIENT] comment = commento path = /q-SCIENT/ read only = No browseable = Yes ==== pacemaker ==== creare una risorsa filesystem per ogni device da associare all'opportuna directory\\ pcs resource create fs_smb_pusrpc Filesystem device="/dev/drbd0" directory="/q-PUSRPC" fstype="ext4" options="rw,acl,user_xattr" pcs resource create fs_smb_gabimm Filesystem device="/dev/drbd1" directory="/q-GABIMM" fstype="ext4" options="rw,acl,user_xattr" Indirizzo ip\\ pcs resource create r_ip_gpps IPaddr2 ip=10.57.46.133 cidr_netmask=26 nic=enoxxxxx gruppo\\ pcs resource group add g_gruppoa fs_smb_gruppoa r_ip_gruppoa ==== attivazione ==== una volta attiva la risorsa attivare l'accesso agli utenti desiderati del dominio, in particolare i "domain Admins". Questa attivazione viene fatta attraverso il comando setfacl\\ setfacl -R -m group:"REGGIOEMILIA\Domain Admins":rwx /q-PUSRPC/ In sostanza il precedente setfacl è da lanciare per ogni directory che viene condivisa\\ oppure per quella precedente, l'importante è considerare anche il discorso dell'ereditarietà\\