vCenter / vSphere — inwentaryzacja maszyn
W centrach danych on-premise królem wirtualizacji wciąż jest VMware vSphere. Setki maszyn wirtualnych żyją na hostach ESXi zarządzanych przez vCenter. Inwentaryzacja tej floty to jedno z głównych zadań konektora ZEUS on-prem.
Architektura vSphere
| Komponent | Rola |
|---|---|
| ESXi | hypervisor — goły metal, na którym działają VM |
| vCenter Server | centralne zarządzanie wieloma hostami ESXi |
| Klaster | grupa hostów z HA i DRS (balansowanie obciążeń) |
| Datastore | magazyn dla plików VM (VMDK) |
| Resource Pool | logiczny podział zasobów CPU/RAM |
vCenter to punkt, do którego podłącza się każde narzędzie inwentaryzujące — jeden endpoint zamiast łączenia się z każdym hostem osobno.
Inwentaryzacja przez API (pyVmomi)
VMware udostępnia vSphere API; w Pythonie używa się biblioteki pyVmomi. Przykład listowania wszystkich VM:
from pyVim.connect import SmartConnect, Disconnect
from pyVmomi import vim
import ssl
ctx = ssl._create_unverified_context() # w prod: poprawny certyfikat!
si = SmartConnect(host="vcenter.corp.firma.pl",
user="svc-zeus@vsphere.local",
pwd="<haslo>", sslContext=ctx)
content = si.RetrieveContent()
view = content.viewManager.CreateContainerView(
content.rootFolder, [vim.VirtualMachine], True)
for vm in view.view:
s = vm.summary
print(s.config.name, s.runtime.powerState,
s.config.guestFullName, s.config.numCpu)
Disconnect(si)
Wskazówka: konto
svc-zeuspowinno mieć rolę Read-only w vCenter, przypisaną na poziomie root folderu z dziedziczeniem. Pełna widoczność, zero możliwości modyfikacji.
Co inwentaryzujemy i po co
Dla każdej VM zbieramy m.in.:
- nazwę, stan zasilania, system operacyjny gościa,
- zasoby (vCPU, RAM, dyski) i datastore,
- stan VMware Tools (przestarzałe Tools = brak telemetrii),
- przypisane sieci (port groups, VLAN).
To pozwala odpowiedzieć na pytania bezpieczeństwa: które VM są włączone i bez nadzoru, które mają niewspierane OS, gdzie brakuje aktualnych Tools.
Hardening hostów ESXi
Niezależnie od inwentaryzacji VM, warto pamiętać o hardeningu samych hostów: Lockdown Mode, wyłączony ESXi Shell/SSH poza serwisem, aktualne łatki i ograniczony dostęp do interfejsu zarządzania.
Jak to widzi ZEUS
Przez API vSphere (pyVmomi) i konto read-only ZEUS inwentaryzuje całą flotę VM oraz hosty ESXi. Łączy te dane z resztą obrazu środowiska — maszyny on-prem lądują w tym samym inwentarzu co zasoby chmurowe, dając jeden spójny widok. ZEUS sygnalizuje VM z przestarzałym OS, wyłączonym hardeningiem hostów czy brakiem aktualnych VMware Tools. Mechanika łączenia (reverse-SSH tunnel) w lekcji 06.
W następnej lekcji: WinRM i zarządzanie flotą Windows.