Wiki-Quellcode von VM

Zuletzt geändert von Christian Lübben am 2025/04/11 13:55

Zeige letzte Bearbeiter
1 {{toc/}}
2
3 # Virtuelle Maschinen
4
5 Zum Hosting von Diensten bieten wir virtualisierte Rechner an.
6
7 ## Beantragung
8
9 Deine Organisationseinheit muss einen ESX-Administrator benannt und eingewiesen haben.
10
11 ⭐ Ihr könnt nun in der [[StrukturDB|doc:CIT.ITO.Docs.Services.StrukturDB.WebHome]] selbstständig VMs erstellen! ⭐
12 [https://struktur.ito.cit.tum.de/struktur/reg/host](https://struktur.ito.cit.tum.de/struktur/reg/host)
13
14 Für super-einfache und sichere Logins ohne Passwort, könnt ihr in der [[StrukturDB|doc:CIT.ITO.Docs.Services.StrukturDB.WebHome]] bei euren Usern deren SSH-key speichern - mit diesem kann man sich dann direkt einloggen.
15
16 * Org-Admins haben sowieso root-Zugriff auf die VM
17 * Weitere Zugriffe auf die VM könnt ihr dafür im machine-Eintrag vergeben
18 * Wenn nötig könnt ihr ne Gruppe für maschinenübergreifenden Berechtigungen anlegen
19
20 Lokale Nutzer (in `/etc/passwd`) sind damit nicht mehr notwendig.
21 Die Login-Berechtigung für Gruppen wird dabei in `/etc/security/access.conf` vergeben.
22
23 Ihr könnt nun auch machine-Einträge für eure Hardwareserver erstellen, und dann auf diesen unsere [[LDAP-Anleitung|doc:CIT.ITO.Docs.Guides.LDAP-Client.WebHome]] befolgen.
24 Dann könnt ihr die Zugriffe für VMs und Hardwareserver auf die gleiche Art verwalten.
25
26 Beim automatischen VM-Erstellen gibt es VMs in der Standardkonfiguration:
27 * CPU: 4 Cores
28 * RAM: 4 GB
29 * 80 Gigabyte Systemplatte
30 * Ubuntu
31
32 Abweichende Konfigurationen werden weiterhin über die Antragsbox erstellt.
33
34 ### Antragsbox
35 ```
36 CIT-Org:
37 Betriebssystem: Ubuntu Server 24.04
38 Kurzer Projektname:
39 Weitere Beschreibung des Projektes:
40 Voraussichtliche Projektlaufzeit: unbestimmt
41 Ansprechpartner: Name - CIT-Account - Telefonnummer
42 Ansprechpartner: Name - CIT-Account - Telefonnummer
43 Spezielle Hardware-Wünsche:
44 Weitere Hinweise:
45 ```
46
47 * **CIT-Org:** Zuordnung zur Organisationseinheit der CIT. VM-Name wird z. B. orgvm42.
48 * **Kurzer Projektname:** Möglichst ein bis drei Wörter, die diesen Server eindeutig bezeichnen.
49 In der Verwaltungsoberfläche wird dieser Name angezeigt als orgvm42 - ${kurzer projektname} zu sehen sein. Ziel: Schnelle Übersicht über den Zweck der Maschine.
50 * **Weitere Beschreibung des Projektes:** Hier können Sie zum Beispiel schreiben, ob es sich um eine Doktorarbeit handelt oder um Infrastruktur des Lehstuhls
51 * **Projektlaufzeit:** Eine unverbindliche Angabe, die uns bei der Planung hilft. Auch `unbestimmt` ist gültig.
52 * **Ansprechpartner:** Zwei Personen, die mit dem Projekt und mit der Bedienung von VMware vertraut sind. Wir brauchen den zweiten Ansprechpartner, falls der erste nicht erreichbar ist.
53 * Bitte **CIT-Loginnamen** angeben
54 * **Hardware:** Wenn weiter nichts angegeben ist, bekommt der Server 4 CPU und 4 GB RAM. Die Größe der Systemplatte ist immer 80 GiB.
55 Erweiterung möglich:
56 Festplattenkapazität: weitere Festplatte als Ceph RBD, welches separat vom ESX-Verwalter gesichert werden muss und nicht von der ITO gesichert wird.
57 CPU: bis zu insg. 6 vCPU
58 RAM: bis zu insg. 8 GB RAM
59
60 ## Richtlinien
61
62 Damit die vielen VMs reibungslos laufen können, müssen Regeln eingehalten werden:
63
64 * VMs im Cluster sind **Dienste**, also es sind keine Rechenintensiven Programme erlaubt.
65 * Betriebssystem aus Template der ITO (Stand Dezember 2024):
66 * Ubuntu Server 24.04
67 * Windows Server 2019 Datacenter
68 * Die ITO Systemgruppe hat für alle Server root-Zugang/Admin-Rechte. Unsere Benutzer dürfen nicht vom System entfernt werden, der SSH-Port darf nicht geändert werden.
69 * SSH-Login aussschließlich mit Public Keys ist ausdrücklich **erwünscht**.
70 * Um die übrigen VMs im Cluster nicht unnötig zu belasten, bitten wir um verantwortungsvollen Umgang mit den Ressourcen. Wenn alle Server gleichzeitig CPU, Netzwerk oder Disk-IO bis zum Maximum belasten würden, würde der Cluster sehr träge werden.
71 * Sicherheitpatches für Ubuntu oder Windows müssen regelmäßig eingespielt werden.
72 * Führen Sie bitte **kein Release-Upgrade** auf eine andere Windows-Version, einen neueren Ubuntu-Release oder ein anderes Betriebsystem durch.
73 * Die VMware-Tools (zur Integration des Systems in die Virtualisierungsumgebung) dürfen nicht entfernt werden.
74 * Für jede VM sollte jederzeit ein Ansprechpartner erreichbar sein (auch bei Urlaub, daher mindestens zwei Kontaktpersonen).
75
76 Wir empfehlen außerdem folgende optionale Maßnahmen:
77
78 * Die VMs sind zur Benutzung als Server vorgesehen. Bitte keine Desktop-Umgebung auf Linux-VMs installieren.
79 * Zugriffsbeschränkung durch Firewall gerne möglich (z.B. nur aus Organisationsnetz und VPN) - Verwaltung der Firewall durch Org-Admins mit Auftrag an die ITO Netzwerkgruppe
80 * Sehr gerne SSH-Zugriff ausschließlich mit Public Key Authentication (`PasswordAuthentication no`)
81
82 ## Batch-Beantragung
83
84 Sollten eine Reihe VMs benötigt werden, bitte eine yaml-Datei für automatische Bearbeitung einsenden:
85
86 ```yaml
87 ## Beantragung mehrerer VMs im ITO-Cluster
88
89 # Optionen für alle VMs
90 ALL:
91 antragsbox: |
92 CIT-Org: FUN
93 Betriebssystem: Ubuntu Server 24.04 LTS
94 Kurzer Projektname: {projname}
95 Weitere Beschreibung des Projektes: {projdesc}
96 Voraussichtliche Projektlaufzeit: inf
97 Ansprechpartner: user1 - Dein Name - Telefon
98 user2 - Anderer Name - Telefon
99
100 os: "Ubuntu Server 24.04"
101 org: 'org:FUN'
102 hostpattern: 'funvm%+'
103 lsadmin: ['user:fmi:user1', 'user:fmi:user2']
104 expiration: "unbestimmt"
105
106 # Individuelle VM-Einstellungen
107 # Werte von ALL werden übernommen und können überschrieben werden!
108 vms:
109 - projname: Bratwurst as a Service
110 projdesc: VM für das Bestellsystem der Bratwürste aus Gang 7
111 ram: 4
112 cpu: 2
113 net: il42_7
114
115 - projname: Döner as a Service
116 projdesc: Cloud-Dienst zur Beschaffung köstlicher Mitternachtssnacks
117 ram: 2
118 cpu: 2
119 net: [il42_2, il42_7]
120 ```
121
122 ## Anpassungen
123
124 ### Windows Server 2019
125
126 Bitte macht kein In-Place-Update von Windows 2012 zu 2019. Gerne stellen wir euch hierfür frische VMs zur Verfügung.
127
128 In unserem Windows 2019-Image haben wir geändert:
129
130 * Firewall: File and Printer Sharing (Echo Request - ICMPv4-In + ICMPv6-In) Enable
131 * Server Manager - Add Roles and Features - Telnet Client
132 * NTP Config (in Admin-CMD Shell):
133 * net stop w32time
134 * w32tm /config /syncfromflags:manual /manualpeerlist:"ntp1.in.tum.de,ntp2.in.tum.de"
135 * w32tm /config /reliable:yes
136 * net start w32time
137 * SSH Server / Client:
138 Settings → Apps → Apps and Features → Manage Optional Features → OpenSSH Server; Client ist bereits installiert
139 * Nochmal SSH (in einer Admin Shell):
140 * Install-Module -Force OpenSSHUtils -Scope AllUsers
141 * Set-Service -Name ssh-agent -StartupType ‘Automatic’
142 * Set-Service -Name sshd -StartupType ‘Automatic’
143 * Start-Service ssh-agent
144 * Start-Service sshd
145 * [LRZ Windows Updates](https://doku.lrz.de/pages/viewpage.action?pageId=30082306)
146 Den Gruppenrichtlinieneditor ausführen: Start → gpedit.msc
147 * Computer Configuration → Administrative Templates → Windows Components → Windows Update
148 * "Configure Automatic Updates" → 3 - Auto download and notify for install
149 * "Specify intranet Microsoft update service location" → [https://sus.lrz.de](https://sus.lrz.de) als intranet update und intranet statistics server
150 * "Do not connect to any Windows Update internet locations" → Enable
151 * "Enable client-side targeting" → Enabled
152 * Target group name: Server
153 * Telemetrie:
154 * Group Policy Editor gpedit.msc ; wieder zu Windows Components - Data Collection and Preview Builds
155 * "Allow Telemetry": Disabled
156 * Zusätzlich Telemetrie: Start → Settings → Privacy → Diagnostics & feedback
157 * Diagnostic data: basic
158 * Feedback frequency: never
159 * KMS Server: In einer Admin cmd-Shell
160 * cscript \windows\system32\slmgr.vbs -skms kms.in.tum.de