Wiki source code of VM

Version 6.1 by Jonas Jelten on 2024/11/29 16:48

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