Klaster OKD (OpenShift) na maszynach wirtualnych Proxmox
- część 1 https://itadmin.vblog.ovh/klaster-okd-openshift-na-maszynach-wirtualnych-proxmox-przygotowanie-dns/
- część 2 https://itadmin.vblog.ovh/klaster-okd-openshift-na-maszynach-wirtualnych-proxmox-przygotowanie-maszyny-bastion/
- część 3 https://itadmin.vblog.ovh/klaster-okd-openshift-na-maszynach-wirtualnych-proxmox-przygotowanie-maszyny-storage-nfs/
- część 4 https://itadmin.vblog.ovh/klaster-okd-openshift-na-maszynach-wirtualnych-proxmox-uruchomienie-maszyny-bootstrap/
- część 5 https://itadmin.vblog.ovh/klaster-okd-openshift-na-maszynach-wirtualnych-proxmox-uruchomienie-maszyn-control-plane/
- część 6 https://itadmin.vblog.ovh/klaster-okd-openshift-na-maszynach-wirtualnych-proxmox-uruchomienie-maszyn-compute/
- część 7 https://itadmin.vblog.ovh/klaster-okd-openshift-na-maszynach-wirtualnych-proxmox-zakonczenie-instalacji/
Funkcje maszyn Compute w klastrze (worker)
Węzeł obliczeniowy (node) w klastrze OKD (OpenShift Kubernetes Distribution) to węzeł roboczy (worker) , który wykonuje podstawową funkcję uruchamiania obciążeń aplikacji. Te węzły są odpowiedzialne za hostowanie konteneryzowanych aplikacji i usług w klastrze. Oto podział jego kluczowych ról i cech:
Kluczowe role węzła obliczeniowego:
Hosting obciążeń:
Uruchamia kontenery (które są najmniejszymi wdrażalnymi jednostkami w Kubernetes) zawierające kontenery aplikacji.
Obsługuje różnorodne obciążenia, takie jak serwery WWW, bazy danych lub zadania wsadowe.
Zarządzanie zasobami:
Zapewnia zasoby procesora, pamięci i pamięci masowej potrzebne do uruchamiania kontenerów.
Przydziela zasoby dynamicznie na podstawie żądań i limitów zdefiniowanych w specyfikacjach kontenerów.
Sieć:
Zapewnia komunikację między kontenerami, usługami i innymi węzłami za pomocą sieci klastra.
Obsługuje ruch przychodzący/wychodzący zgodnie z konfiguracją.
Skalowanie:
Uczestniczy w skalowaniu poziomym poprzez zwiększanie lub zmniejszanie liczby węzłów w klastrze w celu dopasowania do wymagań obciążenia.
Planowanie:
Współpracuje z płaszczyzną sterowania, która określa, które węzły obliczeniowe powinny obsługiwać określone obciążenia na podstawie czynników, takich jak dostępność zasobów, skazy, tolerancje i reguły powinowactwa.
Przygotowanie maszyny wirtualnej Compute
Wykorzystany obraz systemu Fedora CoreOS 39 jest do pobrania z tego linku https://ftp.pcss.pl/linux/coreos/fedora-coreos-39.20231101.3.0-live.x86_64.iso Po przegraniu obrazu na isostore Proxmoxa możemy rozpocząć instalację systemu. Obraz ten jest nam potrzebny jedynie do momentu wpisania parametrów kernela. Dalsza instalacja odbywa się bowiem z udostępnionego pliku http://192.168.40.40:8080/okd4/fcos.raw.xz

Tworzymy 2 nowe maszyny wirtualne o id 4061 ,4062 i nazwie compute-1,compute-2 z podanymi parametrami:
- Machine : q35, Qemu Agent (włączone)
- 128 GB HDD, SCSI VirtIO Single, Cache: Write Back
- 4 vCPU – 2 x Sockets, Enable NUMA (włączone) , Type: Host
- 16 GB RAM , Balloning Device (włączone)
- Bridge: vmbr4, Model: VirtIO
Przed pierwszym uruchomieniem kopiujemy MAC addressy maszyn do /etc/dnsmasq.d/vnet na maszynie LXC dnsmasq.
Instalacja maszyn Compute
Zaraz po uruchomieniu maszyny wirtualnej i widoku Console w Proxmox należy wcisnąć TAB i wpisać poniższe parametry uruchomienia kernela
coreos.inst.install_dev=/dev/sda coreos.inst.image_url=http://192.168.40.40:8080/okd4/fcos.raw.xz coreos.inst.ignition_url=http://192.168.40.40:8080/okd4/worker.ign

Na koniec czeka nas jeszcze 1 dodatkowy restart i przejście do ekranu login. d spodem jednak następuje szereg akcji, w której maszyna próbuje dołączyć do klastra. Dlatego ważne jest śledzenie logów i postępu instalacji.
Więcej informacji o śledzeniu postępu instalacji maszyn compute-x (worker) można znaleźć tutaj https://itadmin.vblog.ovh/klaster-okd-openshift-na-maszynach-wirtualnych-proxmox-zakonczenie-instalacji/
| LP | Nazwa DNS | Adres ip | vCPU | vRAM | vHDD | System Operacyjny | Funkcja |
|---|---|---|---|---|---|---|---|
| 1 | dns1.okdlab.local | 192.168.40.10 | 2 | 2 GB | 16 GB | Fedora Server 41 | DNS dla klastra |
| 2 | storage.okdlab.local | 192.168.40.20 | 2 | 4 GB | 128 GB | Fedora Server 41 | Storage NFS dla klastra |
| 2 | bootstrap.testcluster.okdlab.local | 192.168.40.30 | 4 | 16 GB | 128 GB | Fedora CoreOS 39 | Bootstrap node |
| 3 | bastion.okdlab.local | 192.168.40.40 | 4 | 4 GB | 128 GB | Fedora Server 41 | Haproxy Load balancer / instalacja |
| 4 | control-plane-1.testcluster.okdlab.local | 192.168.40.51 | 4 | 16 GB | 128 GB | Fedora CoreOS 39 | Master node |
| 5 | control-plane-2.testcluster.okdlab.local | 192.168.40.52 | 4 | 16 GB | 128 GB | Fedora CoreOS 39 | Master node |
| 6 | control-plane-3.testcluster.okdlab.local | 192.168.40.53 | 4 | 16 GB | 128 GB | Fedora CoreOS 39 | Master node |
| 7 | compute-1.testcluster.okdlab.local | 192.168.40.61 | 4 | 16 GB | 128 GB | Fedora CoreOS 39 | Worker node |
| 8 | compute-2.testcluster.okdlab.local | 192.168.40.62 | 4 | 16 GB | 128 GB | Fedora CoreOS 39 | Worker node |



