« Clustering proxmox avec tinc » : différence entre les versions
(→node 1) |
(→node 2) |
||
Ligne 87 : | Ligne 87 : | ||
/sbin/ip link set vpn up | /sbin/ip link set vpn up | ||
/sbin/ip addr add 10.10.10.2 dev vpn | /sbin/ip addr add 10.10.10.2/24 dev vpn | ||
/sbin/ip route add 10.10.10.0/24 dev vpn | /sbin/ip route add 10.10.10.0/24 dev vpn | ||
/sbin/route add -net 224.0.0.0 netmask 240.0.0.0 dev vpn | /sbin/route add -net 224.0.0.0 netmask 240.0.0.0 dev vpn |
Version du 11 octobre 2015 à 00:24
cluster de 2 nodes : node1 ayant comme ip principale 88.88.88.88 et node2 ayant comme ip principale 99.99.99.99
node 1
aptitude install tinc
mkdir -p /etc/tinc/vpn/hosts
Créez le fichier /etc/tinc/vpn/tinc.conf
contenant :
Name = node1 AddressFamily = ipv4 Device = /dev/net/tun Mode = switch ConnectTo = node2
Créez le fichier /etc/tinc/vpn/hosts/node1
Address = 88.88.88.88 Port = 655 Compression = 0
Nous allons maintenant générer la paire de clé de node1. Tapez simplement la commande suivante et validez a chaque question :
tincd -n vpn -K4096
créez le fichier /etc/tinc/vpn/tinc-up
contenant :
#!/bin/bash /sbin/ip link set vpn up /sbin/ip addr add 10.10.10.1/24 dev vpn /sbin/ip route add 10.10.10.0/24 dev vpn /sbin/route add -net 224.0.0.0 netmask 240.0.0.0 dev vpn
Créez le fichier /etc/tinc/vpn/tinc-down
contenant :
#!/bin/bash /sbin/route del -net 224.0.0.0 netmask 240.0.0.0 dev vpn /sbin/ip link set vpn down
Rendez ces deux fichiers executables :
chmod +x /etc/tinc/vpn/tinc-*
Ajoutez le lancement du vpn :
echo vpn >> /etc/tinc/nets.boot
node 2
aptitude install tinc
mkdir -p /etc/tinc/vpn/hosts
Créez le fichier /etc/tinc/vpn/tinc.conf
contenant :
Name = node2 AddressFamily = ipv4 Device = /dev/net/tun Mode = switch ConnectTo = node1
Créez le fichier /etc/tinc/vpn/hosts/node2
Address = 99.99.99.99 Port = 655 Compression = 0
Nous allons maintenant générer la paire de clé de node2. Tapez simplement la commande suivante et validez a chaque question :
tincd -n vpn -K4096
créez le fichier /etc/tinc/vpn/tinc-up
contenant :
#!/bin/bash /sbin/ip link set vpn up /sbin/ip addr add 10.10.10.2/24 dev vpn /sbin/ip route add 10.10.10.0/24 dev vpn /sbin/route add -net 224.0.0.0 netmask 240.0.0.0 dev vpn
Créez le fichier /etc/tinc/vpn/tinc-down
contenant :
#!/bin/bash /sbin/route del -net 224.0.0.0 netmask 240.0.0.0 dev vpn /sbin/ip link set vpn down
Rendez ces deux fichiers executables :
chmod +x /etc/tinc/vpn/tinc-*
Ajoutez le lancement du vpn :
echo vpn >> /etc/tinc/nets.boot
Synchronisez la configuration des deux nodes
Copiez le fichier /etc/tinc/vpn/hosts/node1
de node1
vers /etc/tinc/vpn/hosts/
sur node2
Copiez le fichier /etc/tinc/vpn/hosts/node2
de node2
vers /etc/tinc/vpn/hosts/
sur node1
Lancement et test de la configuration
Ajoutez ceci dans /etc/hosts
sur les deux nodes :
10.10.10.1 node1 10.10.10.2 node2
Sur les deux nodes :
/etc/init.d/tinc start
Installez omping pour tester le multicast (sur les deux nodes) :
aptitude install omping
Lancez cette commande sur les deux nodes
omping node1 node2
Création du cluster
Attention : si vous avez désactivé le login ssh root par password il faut le réactiver (vous pourrez à nouveau le désactiver une fois le cluster créé).
Sur node1
pvecm create <nom-du-cluster>
pvecm status
Vérifiez notamment que vous avez bien la ligne :
Node addresses: 10.10.10.1
Sur node2
pvecm add node1
pvecm nodes Node Sts Inc Joined Name 1 M 16 2013-08-23 22:46:09 node1 2 M 12 2013-08-23 22:46:09 node2
Sur tous les nodes avec tinc
Editez le fichier /etc/init.d/tinc
et ajoutez dans les en-tête d'init les deux lignes suivantes :
# X-Start-Before: pve-cluster # X-Stop-After: pve-cluster
Puis lancez
update-rc.d tinc defaults
Ainsi, tinc démarrera toujours avant pve-cluster et s'arrêtera toujours après pve-cluster (il est logique que le lien vpn soit prêt avant et tombe après le cluster)
Documentations tinc
- Pour /etc/tinc/tinc.conf : http://www.tinc-vpn.org/documentation/Main-configuration-variables.html#Main-configuration-variables
- Pour /etc/tinc/vpn/hosts/yourhost : http://www.tinc-vpn.org/documentation/Host-configuration-variables.html#Host-configuration-variables