Wiki source code of VM

Version 12.1 by Christoph Bußenius on 2025/06/23 16:11

Show last authors
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
28 * CPU: 4 Cores
29 * RAM: 4 GB
30 * 80 Gigabyte Systemplatte
31 * Ubuntu
32
33 Abweichende Konfigurationen werden weiterhin über die Antragsbox erstellt.
34
35 ### Antragsbox
36
37 ```
38 CIT-Org:
39 Betriebssystem: Ubuntu Server 24.04
40 Kurzer Projektname:
41 Weitere Beschreibung des Projektes:
42 Voraussichtliche Projektlaufzeit: unbestimmt
43 Ansprechpartner: Name - CIT-Account - Telefonnummer
44 Ansprechpartner: Name - CIT-Account - Telefonnummer
45 Spezielle Hardware-Wünsche:
46 Weitere Hinweise:
47 ```
48
49 * **CIT-Org:** Zuordnung zur Organisationseinheit der CIT. VM-Name wird z. B. orgvm42.
50 * **Kurzer Projektname:** Möglichst ein bis drei Wörter, die diesen Server eindeutig bezeichnen.
51 In der Verwaltungsoberfläche wird dieser Name angezeigt als orgvm42 - ${kurzer projektname} zu sehen sein. Ziel: Schnelle Übersicht über den Zweck der Maschine.
52 * **Weitere Beschreibung des Projektes:** Hier können Sie zum Beispiel schreiben, ob es sich um eine Doktorarbeit handelt oder um Infrastruktur des Lehstuhls
53 * **Projektlaufzeit:** Eine unverbindliche Angabe, die uns bei der Planung hilft. Auch `unbestimmt` ist gültig.
54 * **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.
55 * Bitte **CIT-Loginnamen** angeben
56 * **Hardware:** Wenn weiter nichts angegeben ist, bekommt der Server 4 CPU und 4 GB RAM. Die Größe der Systemplatte ist immer 80 GiB.
57 Erweiterung möglich:
58 Festplattenkapazität: weitere Festplatte als Ceph RBD, welches separat vom ESX-Verwalter gesichert werden muss und nicht von der ITO gesichert wird.
59 CPU: bis zu insg. 6 vCPU
60 RAM: bis zu insg. 8 GB RAM
61
62 ## Richtlinien
63
64 Damit die vielen VMs reibungslos laufen können, müssen Regeln eingehalten werden:
65
66 * VMs im Cluster sind **Dienste**, also es sind keine Rechenintensiven Programme erlaubt.
67 * Betriebssystem aus Template der ITO (Stand Dezember 2024):
68 * Ubuntu Server 24.04
69 * Windows Server 2019 Datacenter
70 * 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.
71 * SSH-Login aussschließlich mit Public Keys ist ausdrücklich **erwünscht**.
72 * 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.
73 * Sicherheitpatches für Ubuntu oder Windows müssen regelmäßig eingespielt werden.
74 * Führen Sie bitte **kein Release-Upgrade** auf eine andere Windows-Version, einen neueren Ubuntu-Release oder ein anderes Betriebsystem durch.
75 * Die VMware-Tools (zur Integration des Systems in die Virtualisierungsumgebung) dürfen nicht entfernt werden.
76 * Für jede VM sollte jederzeit ein Ansprechpartner erreichbar sein (auch bei Urlaub, daher mindestens zwei Kontaktpersonen).
77
78 Wir empfehlen außerdem folgende optionale Maßnahmen:
79
80 * Die VMs sind zur Benutzung als Server vorgesehen. Bitte keine Desktop-Umgebung auf Linux-VMs installieren.
81 * 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
82 * Sehr gerne SSH-Zugriff ausschließlich mit Public Key Authentication (`PasswordAuthentication no`)
83
84 ## Batch-Beantragung
85
86 Sollten eine Reihe VMs benötigt werden, bitte eine yaml-Datei für automatische Bearbeitung einsenden:
87
88 ```yaml
89 ## Beantragung mehrerer VMs im ITO-Cluster
90
91 # Optionen für alle VMs
92 ALL:
93 antragsbox: |
94 CIT-Org: FUN
95 Betriebssystem: Ubuntu Server 24.04 LTS
96 Kurzer Projektname: {projname}
97 Weitere Beschreibung des Projektes: {projdesc}
98 Voraussichtliche Projektlaufzeit: inf
99 Ansprechpartner: user1 - Dein Name - Telefon
100 user2 - Anderer Name - Telefon
101
102 os: "Ubuntu Server 24.04"
103 org: 'org:FUN'
104 hostpattern: 'funvm%+'
105 lsadmin: ['user:fmi:user1', 'user:fmi:user2']
106 expiration: "unbestimmt"
107
108 # Individuelle VM-Einstellungen
109 # Werte von ALL werden übernommen und können überschrieben werden!
110 vms:
111 - projname: Bratwurst as a Service
112 projdesc: VM für das Bestellsystem der Bratwürste aus Gang 7
113 ram: 4
114 cpu: 2
115 net: il42_7
116
117 - projname: Döner as a Service
118 projdesc: Cloud-Dienst zur Beschaffung köstlicher Mitternachtssnacks
119 ram: 2
120 cpu: 2
121 net: [il42_2, il42_7]
122 ```
123
124 ## Nächste Schritte
125
126 * Um beliebigen DNS-Namen in deiner Lehrstuhl-Domain zu bekommen: [[Host-Aliases (CNAME) hinzufügen|https://struktur.ito.cit.tum.de/struktur/proc/host_setaliases]] oder Zusatz-IP mit beliebigen Namen erstellen ([[Neuer Host|https://struktur.ito.cit.tum.de/struktur/proc/host_create]] mit hosttype=service)
127 * [[Serverzertifikat|https://wiki.ito.cit.tum.de/bin/view/CIT/ITO/Docs/Services/Certificates/Server%20Certificate/]]
128
129 ## Anpassungen
130
131 ### Windows Server 2019
132
133 Bitte macht kein In-Place-Update von Windows 2012 zu 2019. Gerne stellen wir euch hierfür frische VMs zur Verfügung.
134
135 In unserem Windows 2019-Image haben wir geändert:
136
137 * Firewall: File and Printer Sharing (Echo Request - ICMPv4-In + ICMPv6-In) Enable
138 * Server Manager - Add Roles and Features - Telnet Client
139 * NTP Config (in Admin-CMD Shell):
140 * net stop w32time
141 * w32tm /config /syncfromflags:manual /manualpeerlist:"ntp1.in.tum.de,ntp2.in.tum.de"
142 * w32tm /config /reliable:yes
143 * net start w32time
144 * SSH Server / Client:
145 Settings → Apps → Apps and Features → Manage Optional Features → OpenSSH Server; Client ist bereits installiert
146 * Nochmal SSH (in einer Admin Shell):
147 * Install-Module -Force OpenSSHUtils -Scope AllUsers
148 * Set-Service -Name ssh-agent -StartupType ‘Automatic’
149 * Set-Service -Name sshd -StartupType ‘Automatic’
150 * Start-Service ssh-agent
151 * Start-Service sshd
152 * [LRZ Windows Updates](https://doku.lrz.de/pages/viewpage.action?pageId=30082306)
153 Den Gruppenrichtlinieneditor ausführen: Start → gpedit.msc
154 * Computer Configuration → Administrative Templates → Windows Components → Windows Update
155 * "Configure Automatic Updates" → 3 - Auto download and notify for install
156 * "Specify intranet Microsoft update service location" → [https://sus.lrz.de](https://sus.lrz.de) als intranet update und intranet statistics server
157 * "Do not connect to any Windows Update internet locations" → Enable
158 * "Enable client-side targeting" → Enabled
159 * Target group name: Server
160 * Telemetrie:
161 * Group Policy Editor gpedit.msc ; wieder zu Windows Components - Data Collection and Preview Builds
162 * "Allow Telemetry": Disabled
163 * Zusätzlich Telemetrie: Start → Settings → Privacy → Diagnostics & feedback
164 * Diagnostic data: basic
165 * Feedback frequency: never
166 * KMS Server: In einer Admin cmd-Shell
167 * cscript \windows\system32\slmgr.vbs -skms kms.in.tum.de