Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym samouczku przedstawiono usługę Azure Container Storage i pokazano, jak wdrażać i zarządzać magazynem natywnym dla kontenerów dla aplikacji działających w usłudze Azure Kubernetes Service (AKS). Jeśli nie chcesz teraz wdrażać usługi Azure Container Storage, możesz pominąć ten samouczek i przejść bezpośrednio do sekcji Wdrażanie aplikacji w usłudze AKS. Usługa Azure Container Storage nie będzie potrzebna dla podstawowej aplikacji storefront w tej serii samouczków.
Usługa Azure Container Storage upraszcza zarządzanie stanowymi aplikacjami na platformie Kubernetes, oferując magazyn natywne dla kontenerów dostosowany do różnych obciążeń, w tym baz danych, platform analitycznych i aplikacji o wysokiej wydajności.
Po ukończeniu tego samouczka wykonasz następujące elementy:
- Dowiedz się, jak usługa Azure Container Storage obsługuje różne obciążenia na platformie Kubernetes.
- Wdróż usługę Azure Container Storage w klastrze usługi AKS.
- Utwórz ogólny wolumin efemeryczny.
Zanim rozpoczniesz
W poprzednich samouczkach utworzyłeś obraz kontenera, przekazałeś go do wystąpienia ACR i utworzyłeś klaster AKS. Rozpocznij od Samouczka 1 — przygotuj aplikację dla usługi AKS, aby śledzić postępowanie.
Upewnij się, że region docelowy jest obsługiwany, przeglądając dostępność regionalną usługi Azure Container Storage.
Zainstaluj najnowszą wersję interfejsu wiersza polecenia platformy Azure (2.83.0 lub nowszą), a następnie zaloguj się przy użyciu polecenia
az login. Nie używaj usługi Azure Cloud Shell, ponieważaz upgradenie jest dostępna.Zainstaluj klienta wiersza polecenia platformy Kubernetes,
kubectl. Możesz zainstalować go lokalnie, uruchamiając polecenieaz aks install-cli.
Ważne
Ten samouczek dotyczy usługi Azure Container Storage (wersja 2.x.x),która obsługuje lokalny dysk NVMe i usługę Azure Elastic SAN jako typy magazynu zapasowego. W tym samouczku używa się lokalnego dysku NVMe i tworzy uniwersalny wolumin efemeryczny. Aby korzystać z lokalnego urządzenia NVMe, jednostka SKU maszyny wirtualnej musi obsługiwać lokalne dyski danych NVMe, takie jak maszyny wirtualne zoptymalizowane pod kątem magazynu lub przyspieszone przez procesor GPU .
Jeśli wolisz używać usługi Azure Elastic SAN, zobacz Używanie usługi Azure Container Storage z elastyczną siecią SAN platformy Azure.
Instalowanie rozszerzenia Kubernetes
Dodaj lub zaktualizuj do najnowszej wersji programu k8s-extension, uruchamiając następujące polecenie.
az extension add --upgrade --name k8s-extension
Włączanie usługi Azure Container Storage w klastrze usługi AKS
Uruchom następujące polecenie, aby włączyć usługę Azure Container Storage w istniejącym klastrze usługi AKS przy użyciu lokalnego urządzenia NVMe. Usługa Azure Container Storage automatycznie instaluje najnowszą dostępną wersję i aktualizuje się automatycznie. Wybór wersji ręcznej nie jest obsługiwany.
az aks update -n myAKSCluster -g myResourceGroup --enable-azure-container-storage ephemeralDisk
Wdrożenie może potrwać do pięciu minut. Gdy konfiguracja zostanie zakończona, na klastrze AKS zainstalowany jest Azure Container Storage, a składniki dla lokalnego typu magazynu NVMe są wdrożone. Tworzy również domyślną local klasę przechowywania.
Nawiązywanie połączenia z klastrem i weryfikowanie stanu
Jeśli nie masz jeszcze połączenia z klastrem z poprzedniego samouczka, uruchom następujące polecenia. Jeśli masz już połączenie, możesz pominąć tę sekcję.
Pobierz poświadczenia klastra i skonfiguruj interfejs wiersza polecenia platformy Kubernetes do ich użycia. Domyślnie poświadczenia są przechowywane w pliku
~/.kube/config. W razie potrzeby podaj inną ścieżkę przy użyciu argumentu--file.az aks get-credentials --resource-group myResourceGroup --name myAKSClusterSprawdź połączenie, wyświetlając listę węzłów klastra.
kubectl get nodesUpewnij się, że wszystkie węzły zgłaszają stan
Ready.
Weryfikowanie klasy magazynu
Uruchom następujące polecenie, aby sprawdzić, czy klasa magazynu została utworzona:
kubectl get storageclass local
Powinny zostać wyświetlone dane wyjściowe podobne do następujących:
NAME PROVISIONER RECLAIMPOLICY VOLUMEBINDINGMODE ALLOWVOLUMEEXPANSION AGE
local localdisk.csi.acstor.io Delete WaitForFirstConsumer true 10s
Wdróż pod z uniwersalnym woluminem efemerycznym
Utwórz pod przy użyciu narzędzia Fio (elastycznego testera we/wy) do testowania porównawczego i symulacji obciążenia przy użyciu ogólnego woluminu efemerycznego.
Użyj ulubionego edytora tekstów, aby utworzyć plik manifestu YAML, taki jak
code fiopod.yaml.Wklej następujący kod i zapisz plik.
kind: Pod apiVersion: v1 metadata: name: fiopod spec: nodeSelector: "kubernetes.io/os": linux containers: - name: fio image: mayadata/fio args: ["sleep", "1000000"] volumeMounts: - mountPath: "/volume" name: ephemeralvolume volumes: - name: ephemeralvolume ephemeral: volumeClaimTemplate: spec: volumeMode: Filesystem accessModes: ["ReadWriteOnce"] storageClassName: local resources: requests: storage: 10GiZastosuj plik manifestu YAML, aby wdrożyć pod.
kubectl apply -f fiopod.yaml
Weryfikowanie wdrożenia i uruchamianie testów porównawczych
Sprawdź, czy pod jest uruchomiony:
kubectl get pod fiopod
Powinieneś zobaczyć pod w stanie Działający. Po uruchomieniu możesz wykonać test porównawczy fio:
kubectl exec -it fiopod -- fio --name=benchtest --size=800m --filename=/volume/test --direct=1 --rw=randrw --ioengine=libaio --bs=4k --iodepth=16 --numjobs=8 --time_based --runtime=60
Teraz wdrożyłeś pod korzystający z lokalnego NVMe jako pamięci masowej i może być używany w obciążeniach Kubernetes.
Aby dowiedzieć się więcej o usłudze Azure Container Storage, zobacz Co to jest usługa Azure Container Storage?
Czyszczenie zasobów
W pozostałej części tej serii samouczków nie będzie potrzebna usługa Azure Container Storage, dlatego zalecamy jego usunięcie, aby uniknąć naliczania niepotrzebnych opłat za platformę Azure.
Usuń pod.
kubectl delete pod fiopodUsuń ogólny wolumin efemeryczny.
kubectl delete pv ephemeralvolumeUsuń wystąpienie rozszerzenia.
az aks update -n myAKSCluster -g myResourceGroup --disable-azure-container-storage
Następny krok
W tym samouczku wdrożyłeś Azure Container Storage w klastrze AKS. Nauczyłeś się, jak:
- Włącz usługę Azure Container Storage w klastrze usługi AKS.
- Wdróż zasobnik z efemerycznym ogólnym woluminem.
W następnym samouczku dowiesz się, jak wdrożyć aplikację w klastrze.