Open Service Mesh habilitado para o Azure Arc
A OSM (Malha de Serviço Aberta) é uma malha de serviço nativa da nuvem leve e extensível que permite aos usuários gerenciar, proteger e obter recursos de observação inovadores para ambientes de microatendimento altamente dinâmicos.
A OSM executa um plano de controle baseado em Envoy no Kubernetes, pode ser configurado com APIs SMI e funciona injetando um proxy Envoy como um contêiner sidecar próximo a cada instância do seu aplicativo. Leia mais sobre os cenários de malha de serviço habilitados por Malha de Serviço Aberta.
Todos os componentes de OSM habilitado para Azure Arc são implantados em zonas de disponibilidade, conferindo a eles redundância de zona.
Opções e requisitos de instalação
O Open Service Mesh habilitado para Azure Arc pode ser implantado por meio do portal do Azure, da CLI do Azure, de um modelo do ARM ou de uma política interna do Azure.
Pré-requisitos
- Verifique se todos os pré-requisitos comuns para extensões de cluster listados aqui são atendidos.
- Use a
az k8s-extension
versão da extensão da CLI do Azure>= v1.0.4
Limitações de suporte atuais
- É possível implantar somente uma instância da Malha de Serviço Aberta em um cluster do Kubernetes conectado ao Azure Arc.
- O suporte está disponível para as duas versões secundárias lançadas mais recentemente do Mesh do Serviço Aberto habilitado para Arc. Encontre a versão mais recente aqui. Versões de lançamento com suporte são acrescentadas com observações. Ignore as marcas associadas a versões intermediárias.
- As seguintes distribuições do Kubernetes são compatíveis no momento:
- Mecanismo do AKS (Serviço de Kubernetes do Azure)
- Clusters do AKS no Azure Stack HCI
- AKS habilitado pelo Azure Arc
- API de Cluster do Azure
- Mecanismo Kubernetes do Google
- Distribuição Canonical Kubernetes
- Mecanismo Kubernetes do Rancher
- Distribuição Kubernetes do OpenShift
- Amazon Elastic Kubernetes Service
- Grade Kubernetes do VMware Tanzu
- A integração do Azure Monitor com o Open Service Mesh habilitado para Azure Arc está disponível em versão prévia com suporte limitado.
Instalação básica usando o portal do Azure
Para implantar usando o portal do Azure, após conectar um cluster ao Arc, vá para a seção Open Service Mesh.
Selecione o botão Instalar extensão para implantar a versão mais recente da extensão.
Como alternativa, você pode usar a experiência da CLI capturada abaixo. Para integração em escala, leia mais neste artigo sobre a implantação usando o modelo do ARM e usando o Azure Policy.
Instalação básica usando a CLI do Azure
As etapas a seguir pressupõem que você já tenha um cluster com uma distribuição do Kubernetes com suporte conectada ao Azure Arc. Verifique se a variável de ambiente KUBECONFIG aponta para o kubeconfig do cluster Kubernetes habilitado para Arc.
Defina as variáveis de ambiente:
export CLUSTER_NAME=<arc-cluster-name>
export RESOURCE_GROUP=<resource-group-name>
Se estiver usando um cluster do OpenShift, ignore as etapas de instalação do OpenShift.
Crie a extensão:
Observação
Para fixar uma versão específica de OSM, adicione o sinalizador --version x.y.z
ao comando create
. Observe que isso definirá o valor de auto-upgrade-minor-version
para falso.
az k8s-extension create --cluster-name $CLUSTER_NAME --resource-group $RESOURCE_GROUP --cluster-type connectedClusters --extension-type Microsoft.openservicemesh --scope cluster --name osm
Você verá uma saída semelhante a este exemplo. Pode demorar de 3 a 5 minutos para que o gráfico helm da OSM real seja implantado no cluster. Até que essa implantação aconteça, installState
permanecerá como Pending
.
{
"autoUpgradeMinorVersion": true,
"configurationSettings": {},
"creationTime": "2021-04-29T17:50:11.4116524+00:00",
"errorInfo": {
"code": null,
"message": null
},
"extensionType": "microsoft.openservicemesh",
"id": "/subscriptions/<subscription-id>/resourceGroups/$RESOURCE_GROUP/providers/Microsoft.Kubernetes/connectedClusters/$CLUSTER_NAME/providers/Microsoft.KubernetesConfiguration/extensions/osm",
"identity": null,
"installState": "Pending",
"lastModifiedTime": "2021-04-29T17:50:11.4116525+00:00",
"lastStatusTime": null,
"location": null,
"name": "osm",
"releaseTrain": "stable",
"resourceGroup": "$RESOURCE_GROUP",
"scope": {
"cluster": {
"releaseNamespace": "arc-osm-system"
},
"namespace": null
},
"statuses": [],
"type": "Microsoft.KubernetesConfiguration/extensions",
"version": "x.y.z"
}
Em seguida, valide a instalação.
Instalações personalizadas
As seções a seguir descrevem determinadas instalações personalizadas da OSM habilitada para Azure Arc. Instalações personalizadas exigem a configuração de valores de OSM em um arquivo JSON e a passagem deles para o comando da CLI k8s-extension create
, conforme descrito abaixo.
Instalar a OSM em um cluster OpenShift
Copie e salve o conteúdo a seguir em um arquivo JSON. Se você já criou um arquivo de definições de configuração, adicione a seguinte linha ao arquivo existente para preservar as alterações anteriores.
{ "osm.osm.enablePrivilegedInitContainer": "true" }
Adicione a restrição de contexto de segurança privilegiada a cada conta de serviço para os aplicativos na malha.
oc adm policy add-scc-to-user privileged -z <service account name> -n <service account namespace>
Pode demorar de 3 a 5 minutos para que o gráfico helm da OSM real seja implantado no cluster. Até que essa implantação aconteça, installState
permanecerá como Pending
.
Para garantir que a configuração de contêiner de inicialização com privilégios não seja revertida para o padrão, passe a "osm.osm.enablePrivilegedInitContainer" : "true"
configuração para todos os comandos subsequentes az k8s-extension create
.
Habilitar recursos de alta disponibilidade na instalação
Os componentes do painel de controle da OSM foram projetados com a alta disponibilidade e a tolerância a falhas em mente. Esta seção descreve como habilitar o HPA (Dimensionamento Automático de Pod Horizontal) e o PDB (Orçamento de Interrupção de Pod) durante a instalação. Leia mais sobre as considerações de design de alta disponibilidade da OSM aqui.
HPA (Dimensionamento Automático de Pod Horizontal)
O HPA escala vertical ou horizontalmente de modo automático os pods do painel de controle com base na utilização média da CPU de destino (%) e na utilização média de memória de destino (%) definida pelo usuário. Para habilitar o HPA e definir valores aplicáveis nos pods do painel de controle da OSM durante a instalação, crie ou acrescente o conteúdo abaixo ao arquivo de configurações JSON existente, repetindo os pares chave/valor para cada pod do painel de controle (osmController
, injector
) em que você deseja habilitar o HPA.
{
"osm.osm.<control_plane_pod>.autoScale.enable" : "true",
"osm.osm.<control_plane_pod>.autoScale.minReplicas" : "<allowed values: 1-10>",
"osm.osm.<control_plane_pod>.autoScale.maxReplicas" : "<allowed values: 1-10>",
"osm.osm.<control_plane_pod>.autoScale.cpu.targetAverageUtilization" : "<allowed values 0-100>",
"osm.osm.<control_plane_pod>.autoScale.memory.targetAverageUtilization" : "<allowed values 0-100>"
}
Agora, instale o OSM com valores personalizados.
PDB (Orçamento de Interrupção de Pod)
Para evitar interrupções durante interrupções planejadas, os pods do painel de controle osm-controller
e osm-injector
têm um PDB que garante que sempre haja, pelo menos, um pod correspondente a cada aplicativo do painel de controle.
Para habilitar o PDB, crie ou acrescente o seguinte ao arquivo de configurações JSON existente para cada pod do painel de controle desejado (osmController
, injector
):
{
"osm.osm.<control_plane_pod>.enablePodDisruptionBudget" : "true"
}
Agora, instale o OSM com valores personalizados.
Instale o OSM com cert-manager para gerenciamento de certificados
O cert-manager é um provedor que pode ser usado para emitir certificados assinados para a OSM sem a necessidade de armazenar chaves privadas no Kubernetes. Veja a documentação sobre cert-manager da OSM e a demonstração para saber mais.
Observação
Use com atenção os comandos fornecidos na documentação do OSM no GitHub. Verifique se você está usando o namespace correto nos comandos ou especifique com --osm-namespace arc-osm-system
.
Para instalar a OSM com o cert-manager como o provedor de certificados, crie ou acrescente ao arquivo de configurações JSON existente o valor certificateProvider.kind
definido como cert-manager, conforme mostrado abaixo. Se você quiser alterar os valores padrão do cert-manager especificados na documentação da OSM, também inclua e atualize as linhas certmanager.issuer
subsequentes.
{
"osm.osm.certificateProvider.kind" : "cert-manager",
"osm.osm.certmanager.issuerName" : "<issuer name>",
"osm.osm.certmanager.issuerKind" : "<issuer kind>",
"osm.osm.certmanager.issuerGroup" : "<issuer group>"
}
Agora, instale o OSM com valores personalizados.
Instale o OSM com Contour para entrada
A OSM fornece várias opções para expor serviços de malha que usam externamente a entrada. A OSM pode usar o Contour, que funciona com o controlador de entrada instalado fora da malha e provisionado com um certificado para participar da malha. Veja a documentação de entrada da OSM e a demonstração para saber mais.
Observação
Use com atenção os comandos fornecidos na documentação do OSM no GitHub. Verifique se você está usando o namespace correto nos comandos ou especifique com --osm-namespace arc-osm-system
.
Para definir os valores necessários para configurar o Contour durante a instalação da OSM, acrescente o seguinte ao arquivo de configurações JSON:
{
"osm.osm.osmNamespace" : "arc-osm-system",
"osm.contour.enabled" : "true",
"osm.contour.configInline.tls.envoy-client-certificate.name" : "osm-contour-envoy-client-cert",
"osm.contour.configInline.tls.envoy-client-certificate.namespace" : "arc-osm-system"
}
Como definir valores durante a instalação da OSM
Qualquer valor que precise ser definido durante a instalação da OSM precisa ser salvo em um arquivo JSON individual e transmitido por meio do comando install da CLI do Azure.
Depois de criar um arquivo JSON com valores aplicáveis, conforme descrito nas seções de instalação personalizada acima, defina o caminho do arquivo como uma variável de ambiente:
export SETTINGS_FILE=<json-file-path>
Execute o comando az k8s-extension create
para criar a extensão da OSM, passando o arquivo de configurações usando o sinalizador --configuration-settings-file
:
az k8s-extension create --cluster-name $CLUSTER_NAME --resource-group $RESOURCE_GROUP --cluster-type connectedClusters --extension-type Microsoft.openservicemesh --scope cluster --name osm --configuration-settings-file $SETTINGS_FILE
Instalar a OSM habilitada para Azure Arc usando o modelo do ARM
Depois de conectar o cluster ao Azure Arc, crie um arquivo json com o seguinte formato, certificando-se de atualizar os valores <cluster-name>
e <osm-arc-version>
:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"ConnectedClusterName": {
"defaultValue": "<cluster-name>",
"type": "String",
"metadata": {
"description": "The Connected Cluster name."
}
},
"ExtensionInstanceName": {
"defaultValue": "osm",
"type": "String",
"metadata": {
"description": "The extension instance name."
}
},
"ExtensionVersion": {
"defaultValue": "<osm-arc-version>",
"type": "String",
"metadata": {
"description": "The extension type version."
}
},
"ExtensionType": {
"defaultValue": "Microsoft.openservicemesh",
"type": "String",
"metadata": {
"description": "The extension type."
}
},
"ReleaseTrain": {
"defaultValue": "Stable",
"type": "String",
"metadata": {
"description": "The release train."
}
}
},
"functions": [],
"resources": [
{
"type": "Microsoft.KubernetesConfiguration/extensions",
"apiVersion": "2020-07-01-preview",
"name": "[parameters('ExtensionInstanceName')]",
"properties": {
"extensionType": "[parameters('ExtensionType')]",
"releaseTrain": "[parameters('ReleaseTrain')]",
"version": "[parameters('ExtensionVersion')]"
},
"scope": "[concat('Microsoft.Kubernetes/connectedClusters/', parameters('ConnectedClusterName'))]"
}
]
}
Defina as variáveis de ambiente:
export TEMPLATE_FILE_NAME=<template-file-path>
export DEPLOYMENT_NAME=<desired-deployment-name>
Execute este comando para instalar a extensão de OSM:
az deployment group create --name $DEPLOYMENT_NAME --resource-group $RESOURCE_GROUP --template-file $TEMPLATE_FILE_NAME
Agora, você pode exibir os recursos da OSM e usar a extensão OSM no cluster.
Instale o OSM habilitado para Azure Arc usando a política interna
Uma política interna está disponível no portal do Azure na categoria Kubernetes: Kubernetes habilitados para Azure Arc que devem ter a extensão de Malha de Serviço Aberta instalada. Essa política pode ser atribuída no escopo de uma assinatura ou de um grupo de recursos.
A ação padrão dessa política é Implantar se não existir. Mas, você pode escolher simplesmente auditar os clusters para as instalações de extensão alterando os parâmetros durante a atribuição. Você também será solicitado a especificar a versão que deseja instalar (v1.0.0-1 ou superior) como um parâmetro.
Validar a instalação
Execute o comando a seguir.
az k8s-extension show --cluster-type connectedClusters --cluster-name $CLUSTER_NAME --resource-group $RESOURCE_GROUP --name osm
Você deverá ver uma saída semelhante a esta:
{
"autoUpgradeMinorVersion": true,
"configurationSettings": {},
"creationTime": "2021-04-29T19:22:00.7649729+00:00",
"errorInfo": {
"code": null,
"message": null
},
"extensionType": "microsoft.openservicemesh",
"id": "/subscriptions/<subscription-id>/resourceGroups/$RESOURCE_GROUP/providers/Microsoft.Kubernetes/connectedClusters/$CLUSTER_NAME/providers/Microsoft.KubernetesConfiguration/extensions/osm",
"identity": null,
"installState": "Installed",
"lastModifiedTime": "2021-04-29T19:22:00.7649731+00:00",
"lastStatusTime": "2021-04-29T19:23:27.642+00:00",
"location": null,
"name": "osm",
"releaseTrain": "stable",
"resourceGroup": "$RESOURCE_GROUP",
"scope": {
"cluster": {
"releaseNamespace": "arc-osm-system"
},
"namespace": null
},
"statuses": [],
"type": "Microsoft.KubernetesConfiguration/extensions",
"version": "x.y.z"
}
Para conhecer mais comandos que você pode usar para validar e solucionar problemas de implantação dos componentes de extensão da OSM (Malha de Serviço Aberta) em seu cluster, consulte nosso guia de solução de problemas
Configuração do controlador OSM
O OSM implanta um recurso MeshConfig osm-mesh-config
como parte do respectivo painel de controle no namespace arc-osm-system
. A finalidade desse MeshConfig é fornecer ao proprietário/operador da malha a capacidade de atualizar algumas das configurações de malha com base em suas necessidades. Para exibir os valores padrão, use o comando a seguir.
kubectl describe meshconfig osm-mesh-config -n arc-osm-system
A saída mostra os valores padrão:
Certificate:
Cert Key Bit Size: 2048
Service Cert Validity Duration: 24h
Feature Flags:
Enable Async Proxy Service Mapping: false
Enable Egress Policy: true
Enable Envoy Active Health Checks: false
Enable Ingress Backend Policy: true
Enable Multicluster Mode: false
Enable Retry Policy: false
Enable Snapshot Cache Mode: false
Enable WASM Stats: true
Observability:
Enable Debug Server: false
Osm Log Level: info
Tracing:
Enable: false
Sidecar:
Config Resync Interval: 0s
Enable Privileged Init Container: false
Log Level: error
Resources:
Traffic:
Enable Egress: false
Enable Permissive Traffic Policy Mode: true
Inbound External Authorization:
Enable: false
Failure Mode Allow: false
Stat Prefix: inboundExtAuthz
Timeout: 1s
Inbound Port Exclusion List:
Outbound IP Range Exclusion List:
Outbound Port Exclusion List:
Para obter mais informações, consulte Configure API Reference.. Observe que spec.traffic.enablePermissiveTrafficPolicyMode
está definido como true
. Quando o OSM estiver no modo de política de tráfego permissivo, a aplicação da política de tráfego, SMI será ignorada. Nesse modo, a OSM descobre automaticamente os serviços que fazem parte das regras de política de tráfego de programas e malha de serviço em cada sidecar de proxy Envoy para poder se comunicar com esses serviços.
osm-mesh-config
também pode ser visualizado no portal do Azure selecionando Editar configuração na seção Open Service Mesh do cluster.
Fazendo alterações na configuração do controlador OSM
Observação
Os valores no MeshConfig osm-mesh-config
são persistidos entre as atualizações.
Alterações a serem osm-mesh-config
feitas usando o kubectl patch
comando. No exemplo a seguir, o modo de política de tráfego permissivo é alterado para false.
kubectl patch meshconfig osm-mesh-config -n arc-osm-system -p '{"spec":{"traffic":{"enablePermissiveTrafficPolicyMode":false}}}' --type=merge
Se um valor incorreto for usado, as validações no MeshConfig CRD impedirão a alteração com uma mensagem de erro explicando por que o valor é inválido. Por exemplo, este comando mostra o que acontece se aplicarmos patch enableEgress
a um valor não booliano:
kubectl patch meshconfig osm-mesh-config -n arc-osm-system -p '{"spec":{"traffic":{"enableEgress":"no"}}}' --type=merge
# Validations on the CRD will deny this change
The MeshConfig "osm-mesh-config" is invalid: spec.traffic.enableEgress: Invalid value: "string": spec.traffic.enableEgress in body must be of type boolean: "string"
Como alternativa, para editar osm-mesh-config
no portal do Azure, selecione Editar configuração na seção do Open Service Mesh do cluster.
Como usar a OSM habilitada para Azure Arc
Para começar a usar os recursos OSM, primeiro é necessário integrar os namespaces do aplicativo à malha de serviço. Baixe a CLI da OSM da página de versões do GitHub do OSM. Quando os namespaces forem adicionados à malha, será possível configurar as políticas de SMI para atingir a capacidade de OSM desejada.
Carregar os namespaces para a malha de serviço
Adicione namespaces à malha, executando o seguinte comando:
osm namespace add <namespace_name>
Os namespaces também poderão ser integrados pelo portal do Azure selecionando +Adicionar na seção do Open Service Mesh do cluster.
Para obter mais informações sobre serviços de integração, consulte a documentação de Malha de serviço aberta.
Configurar a OSM com políticas de SMI (Interface de Malha de Serviço)
Você pode começar com um aplicativo de exemplo ou usar o ambiente de teste para experimentar as políticas de SMI.
Observação
Se você usar aplicativos de exemplo, verifique se as versões correspondem à versão da extensão de OSM instalada no cluster. Por exemplo, se estiver usando a v1.0.0 da extensão de OSM, use o manifesto bookstore da ramificação release-v1.0 do repositório upstream de OSM.
Configurar as próprias instâncias Jaeger, Prometheus e Grafana
A extensão OSM não instala complementos como Jaeger, Prometheus, Grafana e Flagger. Em vez disso, você pode integrar o OSM às suas próprias instâncias em execução dessas ferramentas. Para integrar com suas próprias instâncias, verifique a seguinte documentação:
- Instância BYO-Jaeger
- Instância BYO-Prometheus
- Painel do BYO-Grafana
- Entrega Progressiva do OSM com Sinalizador
Observação
Use com atenção os comandos fornecidos na documentação do OSM no GitHub. Verifique se está usando o nome correto do namespace arc-osm-system
ao fazer alterações no osm-mesh-config
.
Aplicativo de monitoramento usando o Azure Monitor e o Applications Insights (versão prévia)
Tanto o Azure Monitor quanto o Azure Application Insights ajudam você a maximizar a disponibilidade e o desempenho dos aplicativos e serviços, fornecendo uma solução abrangente para coletar, analisar e agir na telemetria de seus ambientes locais e de nuvem. A Malha de Serviço Aberta habilitada para Azure Arc tem integrações profundas em ambos os serviços do Azure. Essa integração fornece uma experiência perfeita do Azure para exibir e responder a KPIs críticos fornecidos por métricas de OSM.
Importante
As versões prévias do recurso Kubernetes habilitadas para o Azure Arc estão disponíveis com base em autoatendimento e aceitação. As versões prévias são fornecidas “no estado em que se encontram” e “conforme disponíveis” e são excluídas dos contratos de nível de serviço e da garantia limitada. As versões prévias do Kubernetes habilitadas para o Azure Arc são parcialmente cobertas pelo suporte ao cliente com base no melhor esforço.
Siga as etapas abaixo para permitir que o Azure Monitor extraia os pontos de extremidade do Prometheus para coletar as métricas de aplicativo.
Siga as diretrizes disponíveis aqui para garantir que os namespaces do aplicativo que você quer monitorar estejam integrados à malha.
Exponha os pontos de extremidade do Prometheus para namespaces de aplicativos.
osm metrics enable --namespace <namespace1> osm metrics enable --namespace <namespace2>
Instale a extensão do Azure Monitor usando as diretrizes disponíveis aqui.
Crie um ConfigMap no namespace
kube-system
que permite que o Azure Monitor monitore seus namespaces. Por exemplo, crie umcontainer-azm-ms-osmconfig.yaml
com o seguinte para monitorar<namespace1>
e<namespace2>
:kind: ConfigMap apiVersion: v1 data: schema-version: v1 config-version: ver1 osm-metric-collection-configuration: |- # OSM metric collection settings [osm_metric_collection_configuration] [osm_metric_collection_configuration.settings] # Namespaces to monitor monitor_namespaces = ["<namespace1>", "<namespace2>"] metadata: name: container-azm-ms-osmconfig namespace: kube-system
Execute o seguinte comando kubectl
kubectl apply -f container-azm-ms-osmconfig.yaml
Pode demorar até 15 minutos para que as métricas apareçam no Log Analytics. Você pode tentar consultar a tabela InsightsMetrics.
InsightsMetrics
| where Name contains "envoy"
| extend t=parse_json(Tags)
| where t.app == "namespace1"
Navegar no painel OSM
- Acesse o cluster do Kubernetes conectado ao Arc usando este link.
- Vá para o Azure Monitor e navegue até a guia Relatórios para acessar a pasta de trabalho de OSM.
- Selecione o intervalo de tempo e o namespace para definir o escopo de seus serviços.
Guia Solicitações
A guia Solicitações mostra um resumo de todas as solicitações http enviadas via serviço para o serviço no OSM.
- Você pode exibir todos os serviços selecionando o serviço na grade.
- É possível exibir o total de solicitações, a taxa de erro de solicitação e a latência P90.
- É possível fazer busca detalhada até o destino e exibir as tendências para o código de êxito/erro de HTTP, a taxa de êxito, a utilização de recursos de pod e as latências em diferentes percentis.
Guia Conexões
A guia Conexões fornece um resumo de todas as conexões entre os seus serviços em Malha de Serviço Aberta.
- Conexões de saída: número total de conexões entre os serviços de origem e destino.
- Conexões ativas de saída: última contagem de conexões ativas entre a origem e o destino no intervalo de tempo selecionado.
- Conexões com falha de saída: número total de conexões com falha entre o serviço de origem e de destino.
Atualize para uma versão específica de OSM
Durante as atualizações poderá haver algum tempo de inatividade do painel de controle. O plano de dados só é afetado durante atualizações de CRD.
Atualizações com suporte
A extensão de OSM pode ser atualizada manualmente em versões principais e secundárias. No entanto, a atualização automática (se habilitada) só funciona em versões secundárias.
Atualizar manualmente para uma versão de OSM específica
O comando a seguir atualizará a extensão OSM-Arc para uma versão específica:
az k8s-extension update --cluster-name $CLUSTER_NAME --resource-group $RESOURCE_GROUP --cluster-type connectedClusters --release-train stable --name osm --version x.y.z
Habilitar as atualizações automáticas
Se as atualizações automáticas não estiverem habilitadas por padrão, o comando a seguir poderá ser executado para habilitá-las. É possível verificar o valor atual de --auto-upgrade-minor-version
executando o comando az k8s-extension show
conforme detalhado no estágio de Validar instalação.
az k8s-extension update --cluster-name $CLUSTER_NAME --resource-group $RESOURCE_GROUP --cluster-type connectedClusters --release-train stable --name osm --auto-upgrade-minor-version true
Como desinstalar a OSM habilitada para Azure Arc
Use o seguinte comando:
az k8s-extension delete --cluster-type connectedClusters --cluster-name $CLUSTER_NAME --resource-group $RESOURCE_GROUP --name osm -y
Verifique se a instância de extensão foi excluída:
az k8s-extension list --cluster-type connectedClusters --cluster-name $CLUSTER_NAME --resource-group $RESOURCE_GROUP
Essa saída não deve incluir a OSM. Se não houver outras extensões instaladas no cluster, será apenas uma matriz vazia.
Quando você usa o comando az k8s-extension
para excluir a extensão OSM, o namespace arc-osm-system
não é removido e os recursos reais dentro do namespace (como a configuração mutante do webhook e o pod do controlador osm) levam cerca de 10 minutos para serem excluídos.
Observação
Use a CLI az k8s-extension para desinstalar os componentes OSM gerenciados pelo Arc. O uso do OSM CLI para desinstalar não é suportado pelo Arc e pode resultar em um comportamento indesejável.
Próximas etapas
- Quer apenas experimentar as novidades? Comece rapidamente com um cenário Azure Arc Jumpstart usando a API de Cluster.
- Obtenha ajuda para solução de problemas para o OSM habilitado para Azure Arc.
-
- Explore outras extensões para o Kubernetes habilitado para Arc.