De invoegtoepassing Open Service Mesh (OSM) installeren met behulp van Azure CLI
In dit artikel leest u hoe u de invoegtoepassing Open Service Mesh (OSM) installeert op een AKS-cluster (Azure Kubernetes Service). De OSM-invoegtoepassing installeert de OSM-mesh op uw cluster. OsM mesh is een service-mesh die verkeerbeheer, beleidshandhaving en telemetrieverzameling voor uw toepassingen biedt. Zie Open Service Mesh voor meer informatie over osm mesh.
Notitie
Met de buitengebruikstelling van Open Service Mesh (OSM) door de Cloud Native Computing Foundation (CNCF) raden we u aan om uw OSM-configuraties te identificeren en te migreren naar een equivalente Istio-configuratie. Zie Migratierichtlijnen voor Open Service Mesh-configuraties (OSM) naar Istio voor meer informatie over het migreren van OSM naar Istio.
Belangrijk
Op basis van de versie van Kubernetes wordt uw cluster uitgevoerd, installeert de OSM-invoegtoepassing een andere versie van OSM.
Kubernetes-versie | OSM-versie geïnstalleerd |
---|---|
1.24.0 of hoger | 1.2.5 |
Tussen 1.23.5 en 1.24.0 | 1.1.3 |
Onder 1.23.5 | 1.0.0 |
Oudere versies van OSM zijn mogelijk niet beschikbaar voor installatie of worden actief ondersteund als de bijbehorende AKS-versie het einde van de levensduur heeft bereikt. U kunt de AKS Kubernetes-releasekalender controleren op informatie over ondersteuningsvensters voor AKS-versies.
Vereisten
- Een Azure-abonnement. Als u geen Azure-abonnement hebt, kunt u een gratis account maken.
- Azure CLI geïnstalleerd.
De OSM-invoegtoepassing op uw cluster installeren
Als u er nog geen hebt, maakt u een Azure-resourcegroep met behulp van de
az group create
opdracht.az group create --name myResourceGroup --location eastus
Maak een nieuw AKS-cluster waarop de OSM-invoegtoepassing is geïnstalleerd met behulp van de
az aks create
opdracht en geef dezeopen-service-mesh
op voor de--enable-addons
parameter.az aks create \ --resource-group myResourceGroup \ --name myAKSCluster \ --enable-addons open-service-mesh \ --generate-ssh-keys
Belangrijk
U kunt de OSM-invoegtoepassing niet inschakelen op een bestaand cluster als er al een OSM-mesh in uw cluster aanwezig is. Verwijder eventuele bestaande OSM-meshes in uw cluster voordat u de OSM-invoegtoepassing inschakelt.
Gebruik de az aks enable-addons
opdracht wanneer u op een bestaande cluster installeert. In de volgende code ziet u een voorbeeld:
az aks enable-addons \
--resource-group myResourceGroup \
--name myAKSCluster \
--addons open-service-mesh
De referenties voor uw cluster ophalen
Haal de referenties voor uw AKS-cluster op met behulp van de
az aks get-credentials
opdracht.az aks get-credentials --resource-group myResourceGroup --name myAKSCluster
Controleer of de OSM-invoegtoepassing is geïnstalleerd op uw cluster
Controleer of de OSM-invoegtoepassing is geïnstalleerd op uw cluster met behulp van de
az aks show
opdracht met en geef'addonProfiles.openServiceMesh.enabled'
deze op voor de--query
parameter. In de uitvoer, onderaddonProfiles
, moet deenabled
waarde worden weergegeven alstrue
vooropenServiceMesh
.az aks show --resource-group myResourceGroup --name myAKSCluster --query 'addonProfiles.openServiceMesh.enabled'
Controleren of osm mesh wordt uitgevoerd op uw cluster
Controleer de versie, status en configuratie van de OSM mesh die op uw cluster wordt uitgevoerd met behulp van de
kubectl get deployment
opdracht en geef de installatiekopieënversie van de osm-controllerimplementatie weer.kubectl get deployment -n kube-system osm-controller -o=jsonpath='{$.spec.template.spec.containers[:1].image}'
In de volgende voorbeelduitvoer ziet u versie 0.11.1 van de OSM mesh:
mcr.microsoft.com/oss/openservicemesh/osm-controller:v0.11.1
Controleer de status van de OSM-onderdelen die op uw cluster worden uitgevoerd met behulp van de volgende
kubectl
opdrachten om de status van deapp.kubernetes.io/name=openservicemesh.io
implementaties, pods en services weer te geven.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
Belangrijk
Als pods een andere status hebben dan
Running
, zoalsPending
, heeft uw cluster mogelijk niet voldoende resources om OSM uit te voeren. Controleer de grootte van uw cluster, zoals het aantal knooppunten en de SKU van de virtuele machine, voordat u OSM in uw cluster gaat gebruiken.Controleer de configuratie van uw OSM mesh met behulp van de
kubectl get meshconfig
opdracht.kubectl get meshconfig osm-mesh-config -n kube-system -o yaml
In de volgende voorbeelduitvoer ziet u de configuratie van een OSM-mesh:
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
De voorbeelduitvoer toont
enablePermissiveTrafficPolicyMode: true
, wat betekent dat OSM de permissieve verkeersbeleidsmodus heeft ingeschakeld. Als deze modus is ingeschakeld in uw OSM mesh:- Het afdwingen van SMI-verkeersbeleid wordt overgeslagen.
- OSM detecteert automatisch services die deel uitmaken van de service-mesh.
- OSM maakt regels voor verkeersbeleid voor elke Envoy-proxy-sidecar om met deze services te kunnen communiceren.
Uw cluster verwijderen
Wanneer u het cluster niet meer nodig hebt, kunt u het verwijderen met behulp van de
az group delete
opdracht, waarmee de resourcegroep, het cluster en alle gerelateerde resources worden verwijderd.az group delete --name myResourceGroup --yes --no-wait
Notitie
U kunt ook de OSM-invoegtoepassing en de gerelateerde resources uit uw cluster verwijderen. Zie De Open Service Mesh-invoegtoepassing verwijderen uit uw AKS-cluster voor meer informatie.
Volgende stappen
In dit artikel hebt u gezien hoe u de OSM-invoegtoepassing op een AKS-cluster installeert en controleert of deze is geïnstalleerd en wordt uitgevoerd. Als de OSM-invoegtoepassing op uw cluster is geïnstalleerd, kunt u een voorbeeldtoepassing implementeren of een bestaande toepassing onboarden om met uw OSM mesh te werken.
Azure Kubernetes Service