Version 15.1 von superadmin am 2022/03/25 10:56

Zeige letzte Bearbeiter
1 (% style="color:#000000" %)Auf den Promiscuous Mode innerhalb der vSwitch-Einstellung unter VMware ESXi kann verzichtet werden, sofern man einige Anpassungen am Netzwerk-Design für den LD2.0 Server durchführt.
2
3 (% style="color:#000000" %)Im Folgenden werden die Schritte beschrieben, um die Netzwerk-Interfaces für den ldhost sowie den logosrv-Container entsprechend anzupassen.
4
5 ====== ======
6
7 (% class="box warningmessage" id="HWichtig:A021A0DieseAnleitungfunktioniertnurmitderPuppet-Version1.1.33oderhF6her21" %)
8 (((
9 (% style="color:#000000" %)**__Wichtig:__** Diese Anleitung setzt mindestens die Puppet-Version 1.1.33 voraus.
10 )))
11
12
13
14 ==== (% style="color:#000000" %)1. Netzwerk-Interfaces für die LD2.0 VM im vSphere-Client definieren(%%) ====
15
16
17 (% style="color:#000000" %)Zunächst fügt man der LD2.0 VM eine weitere virtuelle Netzwerkschnittstelle im Netzwerkbereich „intern“ hinzu.
18 Insgesamt sollten es also 3 Schnittstellen für die logoDIDACT VM sein / mit Nutzung von lddeploy sind es 4 Schnittstellen:
19 \\- 1.   (% style="color:#2980b9" %) **p_extern**(% style="color:#000000" %): für Internetzugang auf ldhost
20 - 2.    (% style="color:#2980b9" %)**intern_ldhost**(% style="color:#000000" %)**:** für Management-Zugriff auf den ldhost vom Schulnetz aus
21 - 3.    (% style="color:#2980b9" %)**intern:**(% style="color:#000000" %) physikalisch durchgereicht an den logosrv LXC-Container (derselbe Netzbereich wie intern_ldhost)
22
23
24 ==== (% style="color:#000000" %)2. (% style="color:#2980b9" %)[**Ubuntu** **16.04 LTS**](% style="color:#000000" %) systemd-Regel im ldhost für aktuelle Installationen(%%) ====
25
26 (% style="color:#000000" %)Ab Ubuntu 16.04 LTS ist es einfacher (auch im Hinblick auf die zukünftige  (%%)[[(% style="color:#000000" %)Entwicklung>>url:https://wiki.ubuntuusers.de/Netplan/]](%%) seitens Ubuntu), für die ganze Netzwerkkonfiguration [[(% style="color:#000000" %)systemd-networkd>>url:https://wiki.archlinux.org/index.php/Systemd-networkd]](%%) zu verwenden. Nachfolgend die jeweiligen Konfigurationsdateien, die erstellt werden müssen. Gleichzeitig sollte auch die Datei **/etc/udev/rules.d/70-persistent-net.rules** gelöscht werden, damit nur noch eine Stelle existiert, an der konfiguriert wird.
27
28 ===== (% style="color:#000000" %)/etc/systemd/network/80-intern.link(%%) =====
29
30 (% class="box" %)
31 (((
32 (% style="color:#000000" %)##[Match]
33 MACAddress=XX:XX:XX:XX:XX:XX
34 [Link]
35 Name=intern##
36 )))
37
38 ===== =====
39
40 ===== (% style="color:#000000" %)/etc/systemd/network/80-intern_ldhost.link(%%) =====
41
42 (% class="box" %)
43 (((
44 (% style="color:#000000" %)##[Match]
45 MACAddress=YY:YY:YY:YY:YY:YY
46 [Link]
47 Name=intern_ldhost##
48 )))
49
50 ===== =====
51
52 ===== (% style="color:#000000" %)/etc/systemd/network/80-p_extern.link(%%) =====
53
54 (% class="box" %)
55 (((
56 (% style="color:#000000" %)##[Match]
57 MACAddress=ZZ:ZZ:ZZ:ZZ:ZZ:ZZ
58 [Link]
59 Name=p_extern##
60 )))
61
62 (% style="color:#000000" %)Nach Erstellung bzw. Bearbeitung der oben beschriebenen Dateien ist noch folgender Befehl wichtig, um die Änderungen in die Initramfs zu übernehmen (wichtig für den Bootvorgang, damit die Interfaces umbenannt werden):
63
64 (% class="box" %)
65 (((
66 (% style="color:#000000" %)##update-initramfs -u -k all##
67 )))
68
69 ==== ====
70
71 ==== (% style="color:#000000" %)3. Konfigurationsänderungen im Puppeteer mittels YAML-Dateien(%%) ====
72
73 (% style="color:#000000" %)Nachfolgend werden zwei Anpassungen beschrieben, um die OVS-Schnittstelle v_intern auf dem ldhost zu deaktivieren sowie die Schnittstelle intern als "physical device" (d.h. das ESXi-Interface direkt) zum logosrv-Container durchzureichen.
74
75 (% style="color:#2980b9" %)**/var/lib/ld-puppet/hiera.d/custom.d/ldhost.yaml**
76
77 (% class="box" %)
78 (((
79 (% style="color:#000000" %)##profile::network:
80 interface:
81 intern:
82 ovs_type: none##
83 )))
84
85
86 (% style="color:#2980b9" %)**/var/lib/ld-puppet/hiera.d/custom.yaml**
87
88 (% class="box" %)
89 (((
90 (% style="color:#000000" %)##global::network:
91 overwrites:
92 ldhost:
93 intern:
94 name: intern_ldhost
95 type: phys
96 logosrv:
97 intern:
98 type: phys##
99 )))
100
101 (% style="color:#000000" %)Zusätzlich kann in der vorhandenen Konfigurationsdatei nic.conf für den ldhost die nicht länger genutzte Schnittstelle p_intern auskommentiert werden.
102
103 (% style="color:#2980b9" %)**/etc/logodidact/hosts/ldhost/nic.conf**
104
105 (% class="box" %)
106 (((
107 (% style="color:#000000" %)##[NIC intern]
108 suffix 1
109 \\#[NIC p_intern]
110 #vlan_mode access
111 #vlan_untagged ld-intern
112 #Type manual
113 #ovs_type OVSPort##
114 )))
115
116 (% style="color:#000000" %)Nach Änderung in dieser Datei entweder das Kommando 'map_translate' im Puppeteer ausführen oder den Verzeichnisinhalt von /etc/logodidact/ per 'git commit' abspeichern, um die Änderung zu aktivieren.
117
118 ==== ====
119
120 ==== (% style="color:#000000" %)4. Shorewall Interface-Namen anpassen(%%) ====
121
122 (% style="color:#000000" %)Die Bezeichnung der internen Schnittstelle auf dem ldhost hat sich von v_intern auf intern_ldhost geändert. Diese neue Bezeichnung sollte im Shorewall Firewall-Dienst eingetragen werden.
123 Hierzu folgende beiden Befehle im ldhost eingeben.
124
125 (% class="box" %)
126 (((
127 (% style="color:#000000" %)##rpl "v_intern" "intern_ldhost" /etc/shorewall/interfaces
128 shorewall restart##
129 )))
130
131 ==== ====
132
133 ==== 5. Puppet-Run auf dem ldhost ausführen und danach die LD2.0 VM zur Aktivierung neustarten ====
134
135 Um die getätigten Änderung zu übernehmen, muss ein "prun" auf dem ldhost ausgeführt werden. Dieser ändert die Konfigurationsdateien gemäß den Vorgaben, unter anderem die wichtigen Dateien /etc/network/interfaces.d/ovs sowie /var/lib/lxc/logosrv/network.json. Nach dem Puppet-Run dann noch die komplette LD2.0 VM neustarten.
136
137 {{code language="bash"}}
138 prun
139 /sbin/reboot
140 {{/code}}
141
142 Während des nächsten Bootvorgangs erhält dann auch der LXC **logosrv** seine interne Schnittstelle direkt an den Container durchgereicht. Dies kann man übrigens daran erkennen, dass die MAC-Adresse der Schnittstelle  "intern" der MAC-Adresse entspricht, die der VMware Host für die virtuelle Maschine generiert hat.