KlusterKit: Nyílt forráskódú eszközkészlet a Kubernetes-telepítések egyszerűsítésére és a fizikailag elszigetelt helyszíni környezetekben való futtatásra
Ma örömmel jelentjük be, hogy a Platform9 nyílt forráskódú Klusterkit, egy három eszközből álló csomag, az Apache v2.0 licenc alatt a GitHubon.
Ügyfeleink olyan privát adatközpontokban bocsátanak ki szoftvereket, amelyek gyakran (biztonsági vagy egyéb okokból) nem csatlakoznak az internethez. Ezek a nagyvállalatok ki akarják használni a Kubernetes előnyeit, és modernizálni kívánják alkalmazásaikat, és egyúttal különböző adatközpontokban is bevezetik azokat, amelyek gyakran nincsenek kapcsolatban a külvilággal. Itt jön be a Klusterkit, amely megkönnyíti a K8s-fürtök kiépítését és kezelését fizikailag elszigetelt környezetben.
A Klusterkit három független eszközt tartalmaz, amelyek együtt vagy külön is használhatók a Kubernetes termelési fürt életciklusának kezelésére:
etcdadm, CLI az egyszerűsített etcd-fürtkezeléshez.
nodeadm, egy CLI a csomópontok adminisztrációjához, amely kiterjeszti a kubeadm-et és telepíti a kubeadm-hez szükséges függőségeket.
cctl, egy fürtéletciklus-kezelő eszköz, amely átveszi a Kubernetes közösség Cluster API-ját, és a nodeadm és etcdadm használatával zökkenőmentesen szállítja és karbantartja a magasan elérhető Kubernetes-fürtöket helyszíni, sőt fizikailag elszigetelt környezetekben is.
Ez a három eszköz együtt a következő feladatokat hajtja végre:
Könnyen biztosíthat és kezelhet egy magasan elérhető etcd-fürtöt és Kubernetes-irányítópultot fizikailag elszigetelt helyszíni környezetekben a Cluster API-n keresztül.
A fürt vezérlőpultjának visszaállítása hiba után az etcd biztonsági mentés használatával.
A Kubernetes fizikailag elszigetelt környezetbe történő szállításához szükséges összes műtermék becsomagolása.
A Klusterkit jellemzői
Több mester támogatása (HA klaszter K8s).
Biztonságos etcd-fürtök szállítása és kezelése.
Fizikailag elszigetelt környezetben végzett munka.
Támogatja a gördülő frissítéseket és visszaállításokat.
Flanel (vxlan) CNI-ként a háttérben; Tervezik más CNI-k támogatását.
Az etcd-fürtök biztonsági mentése és visszaállítása a határozatképesség elvesztése után.
Megvédi a központot a memória és a CPU idő kimerülésétől.
Klusterkit Solution Architecture
A hibatűrés és az egyszerűség érdekében a Klusterkit egyetlen cctl-state.yaml fájlt használ a Kubernetes-fürt metaadatainak tárolására. A cctl parancssori felületen keresztül kezelheti a Kubernetes-fürt életciklusát bármely olyan gépen, amelyen ez az állapotfájl található. Ez lehet egy kezelő laptopja vagy bármely más számítógép, amely a Kubernetes-fürt része.
Cctl valósítja meg és hívja meg a fürt-api interfészt az upstreamről könyvtárként a fürtök CRUD műveleteihez. Használja ssh-szolgáltató, egy nyílt forráskódú csupasz fém fürt-api szolgáltató a Platform9-ről, amely viszont meghívja az etcdadm-et és a nodeadm-et, hogy műveleteket hajtson végre a fürtön.
A Klusterkit és összetevőinek használata:
1 – A három eszköz bármelyike könnyen összegyűjthető a go get paranccsal:
go get -u github.com/platform9/cctl
go get -u github.com/platform9/nodeadm
go get -u github.com/kubernetes-sigs/etcdadm
2 – Ezek a végrehajtható fájlok ezután csomagolhatók és másolhatók a célgépekre, ahol a magas rendelkezésre állású Kubernetes-fürtnek futnia kell. Helyezze a nodeadm és etcdadm fájlokat a verziókönyvtárakba:
3 – Ha egy Kubernetes-fürtöt helyben, fizikailag elszigetelt környezetben kell hangszerelni, a szükséges függőségek könnyen előre letölthetők egy internet-hozzáféréssel rendelkező számítógépre a nodeadm és etcdadm download parancs segítségével. Ezután a letöltött elemek (pl. kubelet és kubelet egység fájl systemd, CNI futtatható fájlokhoz, kubeadm fájl, minden tárolókép, beleértve a Kubernetes-t, a Keepalved kép és a systemd fájl, etcd tárolókép és a megfelelő konfigurációs fájlok) egyszerűen másolhatók fizikailag elszigetelt gazdagépekre. cctl, nodeadm és etcdadm segítségével. (Részleteket lásd itt wiki).
4 – Ha minden a helyén van, néhány paranccsal létrehozhatja az első Kubernetes-fürtöt:
– Először hozzon létre hitelesítő adatokat a fürthöz.