Volba holého Kubernetes na hraniční platformě

Azure Kubernetes Service (AKS)

Pokud chcete Kubernetes spustit na hraničních zařízeních a všimnete si, že spravovaná řešení úplně nesplňují vaše požadavky, možná hledáte možnost holého počítače. Tento dokument vám pomůže najít nejlepší dostupnou možnost pro váš případ použití při konfiguraci clusterů Kubernetes na hraničních zařízeních.

Poznámka

Tento článek není vyčerpávajícím porovnáním; spíše představuje potenciální cesty pro rozhodování na základě hlavních kvalifikátorů mezi běžnými možnostmi.

Rozhodovací strom pro holý kubernetes na okraji

Při rozhodování mezi níže jednotlivými možnostmi pro holé počítače Kubernetes na hraničních zařízeních odkazujte na následující strom.

Diagram znázorňující vývojový diagram pro rozhodování, jaké holé možnosti použít

Stažení souboru aplikace Visio tohoto vývojového diagramu

  • MicroK8s: Vyhovující Kubernetes s nízkou úrovní výkonu od společnosti Canonical

  • K3s: Certifikovaná distribuce Kubernetes vytvořená pro IoT a edge computing

  • kubeadm: nástroj Kubernetes pro vytváření clusterů Kubernetes; vhodné pro standardní výpočetní prostředky (Linux/Windows)

Poznámka

Nízký počet operací označuje snížení nákladů na operace, když jsou některé provozní úlohy abstrahovány nebo usnadněny, jako jsou automatické aktualizace nebo zjednodušené upgrady.

MicroK8s od Canonical

MicroK8s se dodává jako jeden balíček přichycení , který lze snadno nainstalovat na počítače s Linuxem s podporou přichycení. Alternativní instalace jsou k dispozici pro Windows, macOS a raspberry PI/ARM. Při instalaci vytvoří MicroK8s cluster s jedním uzlem, který je možné spravovat pomocí nástrojů MicroK8s. Je zabalený s vlastním kubectl a některé doplňky můžou být povolené (například helm, dns, příchozí přenos dat, metallb a další). Podporují se také scénáře s více uzly s Windows a vysokou dostupností.

Požadavky:

  • Existují různé požadavky na prostředky v závislosti na tom, kde chcete microK8s spustit. Minimální požadavky na prostředky najdete v dokumentaci k produktům . Příklad:

    • Ubuntu: 4 GB PAMĚTI RAM, 20 GB místa na disku

    • Windows: 4 GB paměti RAM, 40 GB místa na disku

  • Úlohy Windows se podporují jenom pro clustery MicroK8s s Calico CNI.

  • Každý uzel v clusteru s více uzly MicroK8s vyžaduje, aby ve službě fungovalo vlastní prostředí, ať už se jedná o samostatný virtuální počítač nebo kontejner na jednom počítači, nebo o jiný počítač ve stejné síti.

  • Při spouštění MicroK8s na některém hardwaru ARM se můžou objevit potíže. Potenciální nápravná opatření najdete v dokumentaci .

K3s od Rancher

K3s je zjednodušená distribuce Kubernetes. K3s se nasazuje jako jeden binární soubor a dodává se s vloženými nástroji, jako je kubectl a ctr, podobně jako MicroK8s.

Požadavky:

  • Binární soubor je menší než 100 MB, ale v závislosti na vašem scénáři stále existují minimální požadavky na prostředky. Minimální požadavky na prostředky najdete v dokumentaci .

  • SQLite3 je výchozí systém úložiště, ale podporují se i další možnosti .

  • Uzly Windows se v současné době nepodporují pro K3.

  • Vysoké dostupnosti je možné dosáhnout buď s externí databází , nebo s vloženou databází. K3s přidal plnou podporu pro vložené etcd od verze 1.19.5+k3s1.

kubeadm

Kubeadm je obyčejná vanilková instalace Kubernetes od základů.

Požadavky:

  • Vyžaduje 2 GiB (gibibajty) nebo více paměti RAM na počítač.

  • Vyžaduje alespoň 2 procesory na uzlu řídicí roviny.

  • Uzlem řídicí roviny musí být počítač s linuxovým operačním systémem kompatibilním s deb/rpm.

  • Zásady podpory nerovnoměrné distribuce verzí a verzí Kubernetes platí pro kubeadm a pro Kubernetes jako celek. Projděte si zásady a zjistěte, jaké verze Kubernetes a kubeadm se podporují.

Správa/automatizace

Pokud jde o automatizaci a správu zřizování holých clusterů, můžete prozkoumat několik možností: Ansible a Metal3.

Ansible poskytuje snadný způsob správy vzdálených prostředků, a proto je hlavním kandidátem na správu a připojení vzdálených uzlů ke clusteru Kubernetes. Potřebujete jenom binární soubor Ansible, který běží na počítači s Linuxem, a SSH na vzdálených počítačích. Tato metoda poskytuje flexibilní mechanismus pro spouštění libovolných skriptů na cílových počítačích, což znamená, že ansible můžete použít s některým z výše uvedených nástrojů.

Metal3 používá jiný přístup k řešení tohoto problému s využitím podobných konceptů jako clusterové rozhraní API. Budete muset vytvořit instanci dočasného clusteru, abyste mohli zřizovat a spravovat holé clustery pomocí nativních objektů Kubernetes. V době psaní tohoto článku používá Nástroj Metal3 kubeadm, a proto nepodporuje jednoduché distribuce Kubernetes.

V případě správy nad rámec zřizování clusterů zvažte informace o clusterech s podporou Azure Arc pro správu clusterů v Azure.

Další kroky

Další informace najdete v následujících článcích: