Magazyn kontenerów systemu Windows z hybrydową usługą AKS
Opcje wdrożenia hybrydowego usługi Azure Kubernetes Service (AKS) ("Hybrydowe rozwiązanie AKS") to lokalna implementacja orkiestratora usługi Azure Kubernetes Service. Orkiestrator automatyzuje uruchamianie konteneryzowanych aplikacji na dużą skalę, umożliwiając obsługę spójnych aplikacji natywnych dla chmury w dowolnym miejscu. lokalna infrastruktura i integracja ich z usługami platformy Azure.
W zależności od klasy sprzętu, dostępności obliczeniowej i procesu wdrażania rozwiązania Kubernetes dostępne są następujące opcje wdrożenia hybrydowego usługi AKS:
- Usługa AKS w systemie Windows Server
- Usługa AKS w usłudze Azure Stack HCI (hiperkonwergentna infrastruktura)
- Aprowizowanie klastra usługi AKS z platformy Azure (WERSJA ZAPOZNAWCZA)
- AKS Edge Essentials
Magazyn w hybrydowej usłudze AKS
Ponieważ hybrydowa usługa AKS jest implementacją usługi AKS, większość pojęć związanych z magazynem jest taka sama. Klaster hybrydowy usługi AKS zawiera płaszczyznę sterowania zarządzaną przez usługę AKS, która zapewnia podstawowe usługi Kubernetes i aranżację, zarządzając węzłami zawierającymi zasobniki z obciążeniami aplikacji. Na poniższym diagramie przedstawiono architekturę klastra hybrydowego usługi AKS korzystającego z opcji wdrożenia hybrydowego usługi AKS w usłudze Azure Stack HCI:
Podobnie jak w usłudze AKS, tradycyjne woluminy to zasoby kubernetes wspierane przez usługę Azure Storage. Możesz ręcznie utworzyć woluminy danych, które mają być przypisane bezpośrednio do zasobników lub automatycznie utworzyć je platforma Kubernetes. Aby skojarzyć te woluminy z usługą Azure Storage, rozwiązanie hybrydowe usługi AKS używa interfejsu magazynu kontenerów (CSI). Usługa AKS Hybrid obsługuje kontenery systemu Windows i magazyn trwały z tymi samymi sterownikami CSI co usługa AKS.
Podczas tworzenia magazynu trwałego hybrydowa usługa AKS używa tych samych pojęć związanych z platformą Kubernetes co usługa AKS z pewnymi odmianami. Woluminy trwałe są tworzone statycznie lub dynamicznie. Jeśli tworzysz je dynamicznie, definiujesz ich typ i cykl życia z klasą magazynu i są one powiązane z woluminem trwałym (PV) z trwałym oświadczeniem woluminu (PVC).
Jeśli magazyn hybrydowy usługi AKS różni się od usługi AKS, jest jego obsługą korzystania z magazynu lokalnego jako magazynu trwałego.
Trwałe woluminy
Wolumin trwały to zasób magazynu utworzony i zarządzany przez interfejs API Kubernetes, który może istnieć poza okresem istnienia pojedynczego zasobnika. Na przykład w przypadku korzystania z opcji wdrożenia hybrydowego usługi AKS w usłudze Azure Stack HCI można użyć woluminów dysków usługi AKS wspieranych przez dysk VHDX (typ pliku wirtualnego dysku twardego), które są instalowane jako ReadWriteOnce
i są dostępne dla jednego węzła naraz. Można też użyć woluminów plików usługi AKS wspieranych przez udziały plików SMB (blok komunikatów serwera) lub NFS (system plików sieciowych). Są one instalowane jako ReadWriteMany
i dostępne dla wielu węzłów jednocześnie.
Administrator klastra może statycznie utworzyć wolumin trwały lub dynamicznie utworzyć go za pomocą serwera interfejsu API Kubernetes. Jeśli zasobnik jest zaplanowany i żąda magazynu, który nie jest obecnie dostępny, platforma Kubernetes może utworzyć źródłowy plik VHDX, a następnie dołączyć go do zasobnika. Aprowizacja dynamiczna używa klasy a StorageClass
do identyfikowania typu magazynu, który należy utworzyć.
Klasy magazynu
Klasa magazynu definiuje warstwę magazynowania, lokalizację i reclaimPolicy
bazowy zasób magazynu.
W hybrydowej usłudze AKS domyślna klasa magazynu jest tworzona automatycznie i używa woluminów CSV do tworzenia woluminów opartych na dysku VHDX. Zasady odzyskiwania zapewniają usunięcie bazowego dysku VHDX po usunięciu trwałego woluminu, który go użył. Klasa magazynu konfiguruje również woluminy trwałe, aby można je było rozszerzać, więc wystarczy edytować trwałe oświadczenie woluminu o nowym rozmiarze.
Jeśli nie określiszStorageClass
elementu dla woluminu trwałego, zostanie użyta wartość domyślna StorageClass
. Podczas żądania woluminów trwałych upewnij się, że korzystają one z odpowiedniego magazynu, którego potrzebujesz. Możesz utworzyć klasę StorageClass, aby uzyskać więcej potrzeb.
Trwałe woluminy — oświadczenia
Żądanie PersistentVolumeClaim
lub ReadWriteMany
magazyn określonego StorageClass
rozmiaru. ReadWriteOnce
Serwer interfejsu API Kubernetes może dynamicznie aprowizować bazowy zasób magazynu w hybrydowej usłudze AKS, jeśli nie ma istniejącego zasobu do spełnienia oświadczenia na podstawie zdefiniowanego StorageClass
elementu . Definicja zasobnika zawiera instalację woluminu po nawiązaniu połączenia woluminu z zasobnikem.
Element PersistentVolume
jest powiązany z PersistentVolumeClaim
zasobem po przypisaniu dostępnego zasobu magazynu do zasobnika żądającego go. Istnieje mapowanie woluminów trwałych 1:1 na oświadczenia.
Używanie dysków lokalnych na potrzeby magazynu trwałego
Jedną z zalet użycia hybrydowego usługi AKS jest możliwość używania dysków lokalnych jako magazynu trwałego dla kontenerów systemu Windows. Dyski lokalne to dyski fizyczne dołączone do węzłów lokalnych. Dyski lokalne oferują wysoką wydajność i małe opóźnienia dla aplikacji konteneryzowanych.
Aby używać dysków lokalnych z kontenerami systemu Windows w hybrydowej usłudze AKS, należy użyć wtyczki local-volume-provisioner. Ta wtyczka automatycznie odnajduje i tworzy trwałe woluminy dla dysków lokalnych w węzłach. Następnie należy utworzyć trwałe oświadczenia woluminów (PVC), które są zgodne z woluminami wirtualnymi na podstawie koligacji węzła i klasy magazynu. Na koniec należy zainstalować kontrolery PVC w zasobnikach lub kontenerach przy użyciu definicji woluminów.