Catégorie : Mémo

21 juin 2019 /

DRBD fait référence aux périphériques en mode bloc conçus pour former des clusters haute disponibilité (HA). Pour ce faire, un périphérique de bloc entier est mis en miroir via le réseau. DRBD peut être compris comme un raid-1 réseau.

Le problème est le suivant, DRBD ne se connecte pas à tous ses volumes réseaux suite à une panne d’un des contrôleurs de la baie de disques.

Après la remise en état du contrôleur, je me retrouve avec l’erreur suivante:

Supervision de l'etat des volumes DRBD depuis la baie n° 1
drbd-overview

0:datastores/0 Connected Primary/Secondary UpToDate/UpToDate
1:datastores/1 Connected Primary/Secondary UpToDate/UpToDate
2:images-stores02/0 StandAlone Primary/Unknown UpToDate/DUnknown 
3:images-stores03/0 Connected Primary/Secondary UpToDate/UpToDate
4:images-storesHS/0 StandAlone Primary/Unknown UpToDate/DUnknown

Supervision de l'etat des volumes DRBD depuis la baie n° 2
drbd-overview

0:datastores/0 Connected Secondary/Primary UpToDate/UpToDate
1:datastores/1 Connected Secondary/Primary UpToDate/UpToDate
2:images-stores02/0 WFConnection Primary/Unknown UpToDate/DUnknown
3:images-stores03/0 Connected Secondary/Primary UpToDate/UpToDate
4:images-storesHS/0 WFConnection Primary/Unknown UpToDate/DUnknown

Pour réparer cela:

Depuis la baie n° 2
drbdadm secondary images-stores02/0
drbdadm disconnect images-stores02/0
drbdadm connect --discard-my-data images-stores02/0

drbdadm secondary images-storesHS/0
drbdadm disconnect images-storesHS/0
drbdadm connect --discard-my-data images-storesHS/0
Depuis la baie n°1
drbdadm primairy mages-storesHS/0
drbdadm disconnect images-storesHS/0
drbdadm connect images-storesHS/0

drbdadm primairy images-stores02/0
drbdadm disconnect images-stores02/0
drbdadm connect images-stores02/0

On verifie que syncronisation s’est bien lancée:

Depuis la baie n°1 ou n°2
cat /proc/drbd

version: 8.4.3 (api:1/proto:86-101)
srcversion: 1A9F77B1CA5FF92235C2213
0: cs:Connected ro:Secondary/Primary ds:UpToDate/UpToDate C r—–
ns:0 nr:0 dw:0 dr:0 al:0 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0
1: cs:Connected ro:Secondary/Primary ds:UpToDate/UpToDate C r—–
ns:0 nr:59608 dw:232804 dr:0 al:0 bm:23 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0
2: cs:SyncTarget ro:Secondary/Primary ds:Inconsistent/UpToDate C r—–
ns:0 nr:888388 dw:888376 dr:972 al:0 bm:477 lo:3 pe:0 ua:3 ap:0 ep:1 wo:f oos:1404644
[===>…………….] sync’ed: 22.3% (1404644/1800120)K
finish: 0:13:30 speed: 1,724 (1,716) want: 102,400 K/sec
3: cs:Connected ro:Secondary/Primary ds:UpToDate/UpToDate C r—–
ns:0 nr:436052 dw:3326216 dr:0 al:0 bm:196 lo:1 pe:0 ua:0 ap:0 ep:1 wo:f oos:0
4: cs:SyncTarget ro:Secondary/Primary ds:Inconsistent/UpToDate C r—–
ns:0 nr:8702052 dw:8700428 dr:992 al:0 bm:606 lo:2 pe:0 ua:2 ap:0 ep:1 wo:f oos:4173260
[============>…….] sync’ed: 67.5% (4072/12488)Mfinish: 0:01:32 speed: 44,952 (36,060) want: 0 K/sec

Une fois la syncronisation terminée, vous devriez avoir cela:

cat /proc/drbd

version: 8.4.3 (api:1/proto:86-101)
srcversion: 1A9F77B1CA5FF92235C2213
0: cs:Connected ro:Secondary/Primary ds:UpToDate/UpToDate C r—–
ns:0 nr:0 dw:0 dr:0 al:0 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0
1: cs:Connected ro:Secondary/Primary ds:UpToDate/UpToDate C r—–
ns:0 nr:183320 dw:356516 dr:0 al:0 bm:23 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0
2: cs:Connected ro:Secondary/Primary ds:UpToDate/UpToDate C r—–
ns:0 nr:7518312 dw:7518312 dr:972 al:0 bm:1437 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0
3: cs:Connected ro:Secondary/Primary ds:UpToDate/UpToDate C r—–
ns:0 nr:1377700 dw:4267864 dr:0 al:0 bm:196 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0
4: cs:Connected ro:Secondary/Primary ds:UpToDate/UpToDate C r—–
ns:0 nr:23442304 dw:23442288 dr:992 al:0 bm:1936 lo:1 pe:0 ua:1 ap:0 ep:1 wo:f oos:0

Depuis la baie n°1
drbd-overview

0:datastores/0 Connected Primary/Secondary UpToDate/UpToDate
1:datastores/1 Connected Primary/Secondary UpToDate/UpToDate
2:images-stores02/0 Connected Primary/Secondary UpToDate/UpToDate
3:images-stores03/0 Connected Primary/Secondary UpToDate/UpToDate
4:images-storesHS/0 Connected Primary/Secondary UpToDate/UpToDate

Depuis la baie n°2
drbd-overview

0:datastores/0 Connected Secondary/Primary UpToDate/UpToDate
1:datastores/1 Connected Secondary/Primary UpToDate/UpToDate
2:images-stores02/0 Connected Secondary/Primary UpToDate/UpToDate
3:images-stores03/0 Connected Secondary/Primary UpToDate/UpToDate
4:images-storesHS/0 Connected Secondary/Primary UpToDate/UpToDate

 

23 mai 2019 /

Création d’un partage entre un hyperviseur KVM et une de ses machines virtuelles

Activation de samba
systemctl enable smb nmb
systemctl start smb nmb
Virbr0 est le bridge linux créé par libvirt lors de son installation, il faut l'identifier
ip a show dev virbr0
SI on veut modifier l'adresse de virbr0
virsh net-edit default
On crée le partage et le compte utilisateur pour s'y connecter
mkdir /partage_vm
useradd -m -d /partage_vm partage
chown -R partage /partage_vm
chmod g+w /partage_vm
smbpasswd -a partage
On declare le partage dans le ficher /etc/samba/smb.conf
[global]
       workgroup = WorkGroup
       netbios name = Host
       server string = serveur %h (Samba %partagevm)
       # On souhaite n'autoriser l'accès que via certaines interfaces réseau
       bind interfaces only = Yes
       interfaces = 127.0.0.1, 192.168.122.1
       log file = /var/log/samba/log.%m
       max log size = 100

[partage_vm]
       path = /partage_vm/
       public = no
       browsable = yes
       valid users = partage
       guest ok = no
       writable = yes
       printable = no
       hide files = /lost+found/
       hide unreadable = yes
       # on force les permissions
       create mask = 777
       force create mode = 777
       security mask = 777
       force security mode = 777
On redemarre samba et on ouvre les ports samba
systemctl restart nmb.service smb.service 
firewall-cmd --add-service=samba --permanent --add-source=192.168.122.1/24
Test du serveur depuis l'hyperviseur
smbclient //192.168.122.1/partage_vm -U partage
Si SELinux est actif dans un dossier specifique
semanage fcontext -a -t samba_share_t '/partage_vm(/.*)?'
restorecon -R /partage_vm
Si SELinux est dans /home
setsebool -P samba_enable_home_dirs on
Pour vérifier le contexte de SELinux
ls -Z /partage_vm
-rw-rw-r--. partage partage unconfined_u:object_r:samba_share_t:s0 truc.txt

Sur la VM, le dossier est accessible à l’adresse \\ip_de_virbr0\partage_vm

 

23 mai 2019 /
for i in {1..65535}; do (echo < /dev/tcp/127.0.0.1/$i) &>/dev/null && printf "\n[+] Port Ouvert \n: \t%d\n" "$i" || printf "."; done
25 avril 2019 /
Avec tree
tree -ihafF / | tr '[]' ' '| sort -k1hr | head -20
Avec find
find / -type f -exec du -h {} \; | sort -rh | head -20
28 mars 2019 /

Tout d’abord, assurez-vous que tous vos paquets système sont à jour en exécutant les commandes apt-get suivantes dans le terminal

sudo apt update
sudo apt upgrade

On va désactiver l’IPv6 via sysctl

vi /etc/sysctl.conf

On ajoute les lignes suivantes à la fin du fichier

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
net.ipv6.conf.<nom_de_linterface>.disable_ipv6 = 1

Pour que les modifications soient prises en compte

sysctl -p

On peut également le désactiver via GRUG

vi /etc/default/grub

On modifie les paramètres  « GRUB_CMDLINE_LINUX » et « GRUB_CMDLINE_LINUX_DEFAULT » pour ajouter « ipv6.disable = 1 »

GRUB_CMDLINE_LINUX="ipv6.disable=1"
GRUB_CMDLINE_LINUX_DEFAULT="ipv6.disable=1"

On met à jour la configuration de GRUB et on redémarre

update-grub
systemctl reboot