Hetzner - DokuWiki

Private cloud extra host

Inhaltsverzeichnis

Private Cloud hinzufügen eines weiteren Hosts

Server-Installation

Nachdem ein neuer frischer Ubuntu-Server (minimal) aufgesetzt wurde geht es mit der Installation der notwendigen Programme weiter:

apt update && apt install -y openvswitch-switch nova-compute neutron-openvswitch-agent

Netzwerk einrichten

Anschließend ein Script (z.B. create_network.sh) anlegen und ausführbar machen (`chmod +x create_network.sh`) mit folgenden Inhalt:

#!/bin/bash
MY_IP=$(ifconfig eth0 | grep 'inet ' | cut -d: -f2 | awk '{ print $1}')
MY_NETMASK=$(ifconfig eth0 | grep 'Mask' | cut -d: -f4)
MY_GW=$(ip route list 0/0 | awk '/default/ {print$3}')
ovs-vsctl add-br br0
ovs-vsctl add-br br1
ovs-vsctl add-port br0 eth0
ifconfig eth0 0.0.0.0 up
ifconfig br0 $MY_IP netmask $MY_NETMASK up
route add default gw $MY_GW br0
ifconfig br1 mtu 1450
sed -i 's/eth0/br0/g' /etc/network/interfaces
printf '\n\nauto eth0\niface eth0 inet static\n  address 0.0.0.0' >>
/etc/network/interfaces

und anschließend ausführen: `nohup ./create_network.sh &` und gegebenenfalls (falls dadurch die SSH-Verbindung verloren geht) im Anschluss neu verbinden.

Konfiguration der Netzwerk-Brücke

ovs-vsctl add-port br1 'vx{Controller-Main-IP}' -- set interface
'vx{Controller-Main-IP}' type=vxlan
options:remote_ip='{Controller-Main-IP}' options:in_key=7
options:out_key=7 options:df_default='true'
ifconfig br1 172.16.0.{Nächste-freie-Tunnel-IP} up

Erweitern der statischen hosteinträge in `/etc/hosts`

{Controller-Main-IP} controller.mycloud.de
{Controller-Intern-IP} controller.mycloud.de.internal

Zertifikate

Auf dem Controller die selbstsignierten SSL-Zertifikate welche unter `/deploy/cert.pem` und `/deploy/intcert.pem` auf Ihrer Controller-Node zu finden sein sollten, auf Ihre neue Compute-Node, am besten nach `/usr/local/share/ca-certificates/controller/cert.crt` bzw `intcert.pem` kopieren.

Anschließend auf dem neuem Compute ein `update-ca-certificates` ausführen (fügt das selbst-signierte Zertifikat in den lokalen trusted store - damit kann die Compute-Node per SSL die Images vom Controller abrufen und auch den im Tunnel gekapselten Verkehr der Message-Queue verschlüsseln).

Einrichtung von Neutron-OpenVSwitch-Agent

Diese Einstellungen sollten von einer bestehenden Compute-Node kopiert werden:

/etc/neutron/neutron.conf, /etc/neutron/plugins/ml2/ml2_conf.ini, /etc/neutron/plugins/ml2/openvswitch_agent.ini (direktive "local_ip" entsprechend anpassen!)

Wenn `/etc/nova/nova.conf` ebenfalls von einer anderen Node kopiert wird, bitte beachten, dass die IP-Adressen entsprechend angepasst werden, auch unter anderen Direktiven wie `VNC` (bitte auch bei allen anderen kopierten Dateien gebenenfalls prüfen)

Anmeldung des Compute-Nodes am Controller

Zum Schluss muss auf dem Controller der Zugriff des neuen Compute-Nodes gestattet werden:

ovs-vsctl add-port br1 'vx{Neue-Compute-Main-IP}' -- set interface
'vx{Neue-Compute-Main-IP}' type=vxlan
options:remote_ip='{Neue-Compute-Main-IP}' options:in_key=7
options:out_key=7 options:df_default='true'


© 2019. Hetzner Online GmbH. Alle Rechte vorbehalten.