Strumenti Utente

Strumenti Sito


progetti:cluster-uff

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à

progetti/cluster-uff.txt · Ultima modifica: 2023/04/17 14:25 (modifica esterna)