Megosztás a következőn keresztül:


Kubernetes-fürtarchitektúra és számítási feladatok az Azure Arc által engedélyezett AKS-hez

A következőkre vonatkozik: AKS az Azure Local 22H2-n, AKS Windows Serveren

Az Azure Local és a Windows Server azure Kubernetes Service (AKS) egy nagyvállalati szintű Kubernetes-tárolóplatform, amelyet az Azure Local üzemeltet. Ez magában foglalja a Microsoft által támogatott alapvető Kubernetes-t, egy célként létrehozott Windows-tároló gazdagépet és egy Microsoft által támogatott Linux-tároló gazdagépet, amelynek célja egy egyszerű üzembe helyezési és életciklus-kezelési élmény.

Ez a cikk bemutatja a Kubernetes alapvető infrastruktúra-összetevőit, például a vezérlősíkot, a csomópontokat és a csomópontkészleteket. A számítási feladatok erőforrásai, például a podok, az üzemelő példányok és a készletek is bevezetésre kerülnek, valamint az erőforrások névterekbe való csoportosítása is.

Kubernetes-fürtarchitektúra

A Kubernetes az Azure Arc által engedélyezett AKS alapvető összetevője. Az AKS előre definiált konfigurációk halmazát használja a Kubernetes-fürtök hatékony és méretezhető üzembe helyezéséhez.

Az üzembe helyezési művelet több Linux vagy Windows rendszerű virtuális gépet hoz létre, és összekapcsolja őket a Kubernetes-fürt(ek) létrehozásához.

Feljegyzés

A rendszer megbízhatóságának javítása érdekében, ha több megosztott fürtkötetet (CSV-t) futtat a fürtben, alapértelmezés szerint a virtuális gépek adatai automatikusan el vannak osztva a fürt összes rendelkezésre álló CSV-jén. Ez biztosítja, hogy az alkalmazások CSV-kimaradások esetén is megmaradnak. Ez csak az új telepítésekre vonatkozik (a frissítésekre nem).

Az üzembe helyezett rendszer készen áll a standard Kubernetes-számítási feladatok fogadására, a számítási feladatok skálázására, vagy akár a virtuális gépek és a fürtök számának igény szerinti fel- és leskálázására.

Egy Azure Kubernetes Service-fürt a következő összetevőkkel rendelkezik:

  • A felügyeleti fürt (más néven AKS-gazdagép) biztosítja az alapvető vezénylési mechanizmust és felületet egy vagy több számítási feladatfürt üzembe helyezéséhez és kezeléséhez.
  • A számítási feladatok fürtöi (más néven célfürtök) a tárolóalapú alkalmazások üzembe helyezésének helye.

Az Azure Kubernetes Service technikai architektúráját bemutató ábra az Azure Local és a Windows Server rendszeren.

Az Arc által engedélyezett AKS kezelése

Az AKS a következő felügyeleti lehetőségek használatával kezelhető:

  • A Windows Felügyeleti központ intuitív felhasználói felületet biztosít a Kubernetes-operátor számára a fürtök életciklusának kezeléséhez.
  • A PowerShell-modul megkönnyíti az AKS letöltését, konfigurálását és üzembe helyezését. A PowerShell-modul támogatja a többi számítási feladatfürt üzembe helyezését és konfigurálását, valamint a meglévők újrakonfigurálását is.

A felügyeleti fürt

Kubernetes-fürt létrehozásakor a rendszer automatikusan létrehoz és konfigurál egy felügyeleti fürtöt. Ez a felügyeleti fürt felelős az olyan számítási feladatok fürtjeinek kiépítéséért és kezeléséért, ahol a számítási feladatok futnak. A felügyeleti fürt a következő alapvető Kubernetes-összetevőket tartalmazza:

  • API-kiszolgáló: az API-kiszolgáló az alapul szolgáló Kubernetes API-k felfedése. Ez az összetevő biztosítja a felügyeleti eszközök, például a Windows Felügyeleti központ, a PowerShell-modulok vagy kubectla .
  • Terheléselosztó: a terheléselosztó egyetlen dedikált Linux rendszerű virtuális gép, amely terheléselosztási szabályt használ a felügyeleti fürt API-kiszolgálója számára.

A számítási feladatok fürtje

A számítási feladatfürt a Kubernetes magas rendelkezésre állású üzembe helyezése Linux rendszerű virtuális gépek használatával Kubernetes vezérlősík-összetevők és Linux-feldolgozó csomópontok futtatásához. A Windows Server Core-alapú virtuális gépek a Windows feldolgozó csomópontok létrehozására szolgálnak. Egy felügyeleti fürt felügyelhet egy vagy több számítási feladatfürtöt.

Számítási feladatok fürtösszetevői

A számítási feladatfürt számos összetevőt tartalmaz, amelyeket a következő szakaszokban ismertetünk.

Vezérlősík

  • API-kiszolgáló: az API-kiszolgáló lehetővé teszi a Kubernetes API-val való interakciót. Ez az összetevő biztosítja a felügyeleti eszközök, például a Windows Felügyeleti központ, a PowerShell-modulok vagy kubectla .
  • Etcd: Az Etcd egy elosztott kulcs-érték tároló, amely a fürt életciklus-kezeléséhez szükséges adatokat tárolja. Tárolja a vezérlősík állapotát.

Terheléselosztóval

A terheléselosztó linuxos és HAProxy + KeepAlive rendszerű virtuális gép, amely elosztott terhelésű szolgáltatásokat biztosít a felügyeleti fürt által üzembe helyezett számítási feladatok fürtjeihez. Az AKS minden számítási feladatfürthöz hozzáad legalább egy terheléselosztó virtuális gépet. A számítási feladatfürtön létrehozott bármely Kubernetes-szolgáltatás LoadBalancer végül létrehoz egy terheléselosztási szabályt a virtuális gépen.

Munkavégző csomópontok

Az alkalmazások és a támogató szolgáltatások futtatásához Kubernetes-csomópontra van szükség. Az AKS számítási feladatfürtjeinek legalább egy feldolgozó csomópontja van. A feldolgozó csomópontok virtuális gépekként működnek, amelyek a Kubernetes-csomópont összetevőit futtatják, és üzemeltetik az alkalmazás számítási feladatait alkotó podokat és szolgáltatásokat.

Vannak alapvető Kubernetes számítási feladatok összetevői, amelyek üzembe helyezhetők az AKS számítási feladatfürtökön, például podokon és üzemelő példányokon.

Podok

A Kubernetes podokkal futtatja az alkalmazás egy példányát. A pod az alkalmazás egyetlen példányát jelöli. A podok általában 1:1-alapú leképezéssel rendelkeznek egy tárolóval, bár vannak olyan speciális esetek, amelyekben a podok több tárolót is tartalmazhatnak. Ezek a többtárolós podok ugyanazon a csomóponton vannak ütemezve, és lehetővé teszik a tárolók számára a kapcsolódó erőforrások megosztását. További információ: Kubernetes-podok és Kubernetes-podok életciklusa.

Központi telepítés

Az üzembe helyezés egy vagy több azonos podot jelöl, amelyet a Kubernetes üzembehelyezési vezérlő felügyel. Az üzembe helyezés meghatározza a létrehozandó replikák (podok) számát, és a Kubernetes-ütemező biztosítja, hogy ha a podok vagy csomópontok problémákba ütköznek, a rendszer további podokat ütemez az kifogástalan állapotú csomópontokra. További információ: Kubernetes-környezetek.

StatefulSets és DaemonSets

Az üzembehelyezési vezérlő a Kubernetes ütemezőjével futtat egy adott számú replikát bármely elérhető erőforrással rendelkező elérhető csomóponton. Az üzemelő példányok használatának ez a megközelítése elegendő lehet az állapot nélküli alkalmazásokhoz, az állandó elnevezési konvenciót vagy tárolást igénylő alkalmazásokhoz azonban nem. Az olyan alkalmazások esetében, amelyekhez replikát kell létrehozni egy fürt minden csomópontján (vagy kijelölt csomópontján), az üzembehelyezési vezérlő nem vizsgálja, hogy a replikák hogyan vannak elosztva a csomópontok között.

  • StatefulSets: a StatefulSet hasonló az üzembe helyezéshez, ha egy vagy több azonos podot hoz létre és kezel. A StatefulSet replikái az üzembe helyezés, a skálázás, a frissítések és a leállítások kecses, szekvenciális megközelítését követik. A StatefulSet (replikák újraütemezése) esetén az elnevezési konvenció, a hálózati nevek és a tárterület megmarad. A StatefulSet replikái ütemezve vannak, és egy Kubernetes-fürt bármely elérhető csomópontján futnak. Ha gondoskodnia kell arról, hogy a készlet legalább egy podja egy csomóponton fusson, használhat helyette egy DaemonSetet. További információ: Kubernetes StatefulSets.
  • DaemonSets: adott naplógyűjtési vagy monitorozási igények esetén előfordulhat, hogy egy adott podot kell futtatnia az összes vagy kijelölt csomóponton. A DaemonSet ismét egy vagy több azonos pod üzembe helyezésére szolgál, de a DaemonSet-vezérlő biztosítja, hogy minden megadott csomópont a pod egy példányát futtassa. További információ: Kubernetes DaemonSets.

Névterek

A Kubernetes-erőforrások, például a podok és az üzemelő példányok logikailag névtérbe vannak csoportosítva. Ezek a csoportosítások lehetővé teszik a számítási feladatok fürtjeinek logikai felosztását, valamint az erőforrások létrehozásához, megtekintéséhez vagy kezeléséhez való hozzáférés korlátozását. Létrehozhat például névtereket az üzleti csoportok elkülönítéséhez. A felhasználók csak a hozzájuk rendelt névtereken belüli erőforrásokat használhatják. További információ: Kubernetes-névterek.

Amikor létrehoz egy Azure Kubernetes Service-fürtöt az Arc által engedélyezett AKS-en, a következő névterek érhetők el:

  • alapértelmezett: egy névtér, ahol a podok és az üzemelő példányok alapértelmezés szerint létrejönnek, ha nincs megadva. Kisebb környezetekben az alkalmazásokat közvetlenül az alapértelmezett névtérbe helyezheti üzembe további logikai elkülönítések létrehozása nélkül. Ha a Kubernetes API-val (például a kubernetes API-val kubectl get pods) kommunikál, a rendszer az alapértelmezett névteret használja, ha nincs megadva.
  • kube-system: olyan névtér, ahol az alapvető erőforrások léteznek, például olyan hálózati funkciók, mint a DNS és a proxy, vagy a Kubernetes-irányítópult. Ebben a névtérben általában nem helyez üzembe saját alkalmazásokat.
  • kube-public: általában nem használt névtér, de az erőforrások az egész fürtben láthatók, és bármely felhasználó megtekintheti.

Titkos kódok

A Kubernetes titkos kulcsokkal bizalmas információkat tárolhat és kezelhet, például jelszavakat, OAuth-jogkivonatokat és Secure Shell-kulcsokat. A Kubernetes alapértelmezés szerint titkosítatlan base64-kódolású sztringként tárolja a titkos kulcsokat, és az API-hozzáféréssel rendelkezők egyszerű szövegként is lekérhetik őket. További információ: Kubernetes Secrets.

Tartós kötetek

Az állandó kötet egy Kubernetes-fürtben lévő tárolási erőforrás, amelyet a rendszergazda kiépített, vagy dinamikusan kiépített tárosztályokkal. Az állandó kötetek használatához a podok egy PersistentVolumeClaim használatával kérnek hozzáférést. További információ: Állandó kötetek.

Vegyes operációs rendszer üzemelő példányai

Ha egy adott számítási feladatfürt linuxos és Windowsos feldolgozó csomópontokból áll, akkor egy olyan operációs rendszerre kell ütemezni, amely támogatja a számítási feladat kiépítését. A Kubernetes két mechanizmust kínál annak biztosítására, hogy a számítási feladatok cél operációs rendszerrel rendelkező csomópontokra kerüljönnek:

  • A Csomópontválasztó a pod specifikációjának egy egyszerű mezője, amely arra kényszeríti a podokat, hogy csak az operációs rendszernek megfelelő, kifogástalan állapotú csomópontokra legyenek ütemezve.
  • A taints és a tolerations együtt gondoskodik arról, hogy a podok ne legyenek véletlenül ütemezve a csomópontokra. A csomópontok "fertőzöttek", így nem fogadnak el olyan podokat, amelyek nem tolerálják explicit módon a fertőzést a pod specifikációjában található "tolerancia" miatt.

További információkért tekintse meg a csomópontválasztókat , a fertőzöttségeket és a tűréseket.

Következő lépések

Ebben a cikkben megismerhette az Azure Arc által engedélyezett AKS fürtarchitektúráját és a számítási feladatfürt összetevőit. A fogalmakkal kapcsolatos további információkért tekintse meg a következő cikkeket: