Instalowanie dodatku Open Service Mesh (OSM) przy użyciu interfejsu wiersza polecenia platformy Azure
W tym artykule pokazano, jak zainstalować dodatek Open Service Mesh (OSM) w klastrze usługi Azure Kubernetes Service (AKS). Dodatek OSM instaluje siatkę OSM w klastrze. Siatka OSM to siatka usługi, która zapewnia zarządzanie ruchem, wymuszanie zasad i zbieranie danych telemetrycznych dla aplikacji. Aby uzyskać więcej informacji na temat siatki OSM, zobacz Open Service Mesh.
Uwaga
Po wycofaniu usługi Open Service Mesh (OSM) przez Cloud Native Computing Foundation (CNCF) zalecamy zidentyfikowanie konfiguracji OSM i migrację ich do równoważnej konfiguracji istio. Aby uzyskać informacje na temat migracji z osmu do istio, zobacz Wskazówki dotyczące migracji konfiguracji open Service Mesh (OSM) do istio.
Ważne
W oparciu o wersję platformy Kubernetes, która jest uruchomiona, dodatek OSM instaluje inną wersję osmu.
Wersja platformy Kubernetes | Zainstalowano wersję OSM |
---|---|
1.24.0 lub nowsza | 1.2.5 |
Od 1.23.5 do 1.24.0 | 1.1.3 |
Poniżej 1.23.5 | 1.0.0 |
Starsze wersje OSM mogą nie być dostępne do zainstalowania lub być aktywnie obsługiwane, jeśli odpowiednia wersja usługi AKS osiągnęła koniec życia. Możesz sprawdzić kalendarz wydania usługi AKS Kubernetes, aby uzyskać informacje na temat systemu Windows obsługi wersji usługi AKS.
Wymagania wstępne
- Subskrypcja platformy Azure. Jeśli nie masz subskrypcji Azure, możesz utworzyć bezpłatne konto Azure.
- Zainstalowany interfejs wiersza polecenia platformy Azure.
Instalowanie dodatku OSM w klastrze
Jeśli jeszcze go nie masz, utwórz grupę zasobów platformy Azure przy użyciu
az group create
polecenia .az group create --name myResourceGroup --location eastus
Utwórz nowy klaster usługi AKS z zainstalowanym dodatkiem
az aks create
OSM przy użyciu polecenia i określopen-service-mesh
parametr--enable-addons
.az aks create \ --resource-group myResourceGroup \ --name myAKSCluster \ --enable-addons open-service-mesh \ --generate-ssh-keys
Ważne
Nie można włączyć dodatku OSM w istniejącym klastrze, jeśli w tym klastrze znajduje się już siatka OSM. Przed włączeniem dodatku OSM należy odinstalować wszystkie istniejące siatki OSM w klastrze.
Podczas instalowania w istniejących klastrach użyj az aks enable-addons
polecenia . Poniżej znajduje się kod przykładowy:
az aks enable-addons \
--resource-group myResourceGroup \
--name myAKSCluster \
--addons open-service-mesh
Pobieranie poświadczeń dla klastra
Pobierz poświadczenia dla klastra usługi AKS przy użyciu
az aks get-credentials
polecenia .az aks get-credentials --resource-group myResourceGroup --name myAKSCluster
Sprawdź, czy dodatek OSM jest zainstalowany w klastrze
Sprawdź, czy dodatek OSM jest zainstalowany w klastrze przy użyciu
az aks show
polecenia z poleceniem i określ'addonProfiles.openServiceMesh.enabled'
parametr--query
. W danych wyjściowych w obszarzeaddonProfiles
wartość powinna być wyświetlanaenabled
jakotrue
dlaopenServiceMesh
.az aks show --resource-group myResourceGroup --name myAKSCluster --query 'addonProfiles.openServiceMesh.enabled'
Sprawdź, czy siatka OSM jest uruchomiona w klastrze
Sprawdź wersję, stan i konfigurację siatki OSM uruchomionej w klastrze przy użyciu
kubectl get deployment
polecenia i wyświetl wersję obrazu wdrożenia osm-controller .kubectl get deployment -n kube-system osm-controller -o=jsonpath='{$.spec.template.spec.containers[:1].image}'
W poniższych przykładowych danych wyjściowych przedstawiono wersję 0.11.1 siatki OSM:
mcr.microsoft.com/oss/openservicemesh/osm-controller:v0.11.1
Sprawdź stan składników OSM uruchomionych w klastrze przy użyciu następujących
kubectl
poleceń, aby wyświetlić stanapp.kubernetes.io/name=openservicemesh.io
wdrożeń, zasobników i usług.kubectl get deployments -n kube-system --selector app.kubernetes.io/name=openservicemesh.io kubectl get pods -n kube-system --selector app.kubernetes.io/name=openservicemesh.io kubectl get services -n kube-system --selector app.kubernetes.io/name=openservicemesh.io
Ważne
Jeśli jakiekolwiek zasobniki mają stan inny niż
Running
, taki jakPending
, klaster może nie mieć wystarczającej ilości zasobów do uruchomienia OSM. Przed kontynuowaniem korzystania z osmu w klastrze przejrzyj rozmiar klastra, np. liczbę węzłów i jednostkę SKU maszyny wirtualnej.Sprawdź konfigurację siatki OSM przy użyciu
kubectl get meshconfig
polecenia .kubectl get meshconfig osm-mesh-config -n kube-system -o yaml
W poniższych przykładowych danych wyjściowych przedstawiono konfigurację siatki OSM:
apiVersion: config.openservicemesh.io/v1alpha1 kind: MeshConfig metadata: creationTimestamp: "0000-00-00A00:00:00A" generation: 1 name: osm-mesh-config namespace: kube-system resourceVersion: "2494" uid: 6c4d67f3-c241-4aeb-bf4f-b029b08faa31 spec: certificate: serviceCertValidityDuration: 24h featureFlags: enableEgressPolicy: true enableMulticlusterMode: false enableWASMStats: true observability: enableDebugServer: true osmLogLevel: info tracing: address: jaeger.osm-system.svc.cluster.local enable: false endpoint: /api/v2/spans port: 9411 sidecar: configResyncInterval: 0s enablePrivilegedInitContainer: false envoyImage: mcr.microsoft.com/oss/envoyproxy/envoy:v1.18.3 initContainerImage: mcr.microsoft.com/oss/openservicemesh/init:v0.9.1 logLevel: error maxDataPlaneConnections: 0 resources: {} traffic: enableEgress: true enablePermissiveTrafficPolicyMode: true inboundExternalAuthorization: enable: false failureModeAllow: false statPrefix: inboundExtAuthz timeout: 1s useHTTPSIngress: false
Przykładowe dane wyjściowe pokazują
enablePermissiveTrafficPolicyMode: true
, co oznacza, że osm ma włączony tryb zasad ruchu permisywnego. Po włączeniu tego trybu w siatce OSM:- Wymuszanie zasad ruchu SMI jest pomijane.
- OSM automatycznie odnajduje usługi będące częścią siatki usług.
- OSM tworzy reguły zasad ruchu na każdym sidecar serwera proxy usługi Envoy, aby móc komunikować się z tymi usługami.
Usuwanie klastra
Gdy klaster nie jest już potrzebny, możesz go usunąć przy użyciu
az group delete
polecenia , które usuwa grupę zasobów, klaster i wszystkie powiązane zasoby.az group delete --name myResourceGroup --yes --no-wait
Uwaga
Alternatywnie możesz odinstalować dodatek OSM i powiązane zasoby z klastra. Aby uzyskać więcej informacji, zobacz Odinstalowywanie dodatku Open Service Mesh z klastra usługi AKS.
Następne kroki
W tym artykule pokazano, jak zainstalować dodatek OSM w klastrze usługi AKS i sprawdzić, czy jest zainstalowany i uruchomiony. Za pomocą dodatku OSM zainstalowanego w klastrze możesz wdrożyć przykładową aplikację lub dołączyć istniejącą aplikację do pracy z siatką OSM.
Azure Kubernetes Service