Wiki-Quellcode von Aktualisiert: VMware Anpassungen für LogoDIDACT als Gastsystem mit dritter Netzwerkschnittstelle
Version 15.1 von superadmin am 2022/03/25 10:56
Zeige letzte Bearbeiter
author | version | line-number | content |
---|---|---|---|
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. |