Todos os produtos
Search
Central de documentação

Alibaba Cloud Service Mesh:Access Istio resources via data plane KubeAPI

Última atualização: Jun 28, 2026

O ASM permite executar operações de criação, leitura, atualização e exclusão (CRUD) em recursos do Istio por meio da API do Kubernetes (KubeAPI) dos clusters do plano de dados. Também é possível usar o Helm para gerenciar aplicações. Este tópico descreve como acessar recursos do Istio pela KubeAPI de um cluster do plano de dados.

Pré-requisitos

Contexto

A API do Kubernetes é uma interface programática baseada em recursos, servida via HTTP. Ela suporta verbos HTTP padrão (POST, PUT, PATCH, DELETE e GET) para recuperar, criar, atualizar e excluir recursos primários do cluster, como Deployments e Services. Para mais informações, consulte Kubernetes API.

Observações

  • Recomendamos o uso deste recurso no modo de cluster único. Se a instância do ASM possuir vários clusters no plano de dados, execute operações CRUD em recursos do Istio a partir de qualquer um desses clusters.

  • Após ativar este recurso, não será mais possível excluir o namespace istio-system do cluster do plano de dados. Para excluir o namespace, remova primeiro o cluster do plano de dados da instância do ASM.

  • Após a ativação deste recurso, o plano de dados leva de um a dois minutos para se preparar.

  • Excluir um namespace no plano de dados não remove o namespace correspondente nem seus recursos do Istio no plano de controle.

  • Para executar operações CRUD em recursos do Istio, o namespace de destino deve existir no plano de dados. Se o namespace existir apenas no plano de controle, crie-o primeiro no plano de dados. Caso contrário, o sistema retornará uma mensagem de erro semelhante à seguinte:

    Error from server (NotFound): error when creating "xx.yaml": namespaces "daily-01" not found
  • Se você criar um recurso do Istio em um namespace no plano de dados e esse namespace não existir no plano de controle do ASM, o namespace será criado automaticamente no plano de controle.

  • Os recursos do Istio criados pela KubeAPI de um cluster do plano de dados são armazenados no plano de controle. Portanto, ao criar ou atualizar um recurso do Istio, não adicione um campo ownerReferences que aponte para um recurso do plano de dados. Do contrário, o recurso do Istio no plano de controle pode ser removido pelo garbage collector porque seu proprietário não será encontrado.

Ative o acesso à KubeAPI do plano de dados

Para novas instâncias do ASM

Para instâncias criadas após novembro de 2024, este recurso vem ativado por padrão. Para instâncias criadas antes dessa data, siga os passos em Para instâncias existentes do ASM.

Para instâncias existentes do ASM

  1. Faça login no console do ASM.

  2. No painel de navegação à esquerda, escolha Service Mesh > Mesh Management.

  3. Na página Mesh Management, localize a instância do ASM que deseja configurar. Clique no nome da instância do ASM ou clique em Manage na coluna Actions.

  4. Na página Basic Information, clique em Enable ao lado de Enable Data-plane KubeAPI access.

  5. Na caixa de diálogo Confirm to enable data-plane cluster KubeAPI access, clique em OK.

Caso de uso 1: Gerencie recursos do Istio com kubectl

Após ativar o acesso à KubeAPI do plano de dados, conecte-se a um cluster do plano de dados usando kubectl e utilize o KubeConfig do cluster para criar, consultar, modificar e excluir recursos do Istio. Esta seção usa um VirtualService como exemplo.

  • Para criar um VirtualService, execute o seguinte comando:

    kubectl apply -f <VirtualService-YAML-filename>
  • Para consultar VirtualServices, execute o seguinte comando:

    kubectl get VirtualService
  • Para modificar um VirtualService, execute o seguinte comando:

    kubectl edit VirtualService <VirtualService-name>
  • Para excluir um VirtualService, execute o seguinte comando:

    kubectl delete VirtualService <VirtualService-name>

Caso de uso 2: Implante aplicações com Helm

Depois de ativar o acesso à KubeAPI do plano de dados, o Helm pode usar o KubeConfig do cluster para instalar aplicações no cluster e implantar recursos do Istio no ASM simultaneamente.

  1. Conecte-se ao cluster ACK usando kubectl. Para mais informações, consulte Obter o arquivo kubeconfig de um cluster e usar kubectl para conectar-se ao cluster.

  2. Instale o Helm em sua máquina local. Para mais informações, consulte Helm.

    Nota

    Após conectar-se ao cluster usando kubectl, o cliente Helm utiliza automaticamente o mesmo KubeConfig para estabelecer a conexão com o cluster.

  3. Baixe e extraia o modelo Helm de exemplo istio-bookinfo.

  4. Navegue até o diretório istio-bookinfo e execute o comando a seguir para instalar a aplicação:

    helm install -f values.yaml istio-bookinfo ./

    Saída esperada:

    NAME:istio-bookinfo
    LAST DEPLOYED:THU May 26 16:44:19 2022
    NAMESPACE:default
    STATUS:deployed
    REVISION:1
    TEST SUITE:None
  5. Verifique a implantação.

    1. Verifique a aplicação Bookinfo no console do ACK.

      1. Faça login no console do ACK. No painel de navegação à esquerda, clique em Clusters.

      2. Na página Clusters, clique no nome do seu cluster. No painel de navegação à esquerda, clique em Workloads > Deployments.

      3. Na página Deployments, defina o Namespace como default.

        As aplicações instaladas pelo Helm, como details, productpage e ratings, estarão visíveis.

        Nota

        No painel de navegação à esquerda da página de gerenciamento do cluster, escolha Application > Helm. Na página Helm, visualize a release do Helm.

        Isso inclui as versões reviews-v1 e reviews-v2. Cada Deployment possui 1/1 pods, o que indica que a aplicação de exemplo Bookinfo está em execução conforme o esperado.

    2. Verifique o VirtualService e o Gateway no console do ASM.

      1. Faça login no console do ASM.

      2. No painel de navegação à esquerda, escolha Service Mesh > Mesh Management.

      3. Na página Mesh Management, localize a instância do ASM que deseja configurar. Clique no nome da instância do ASM ou clique em Manage na coluna Actions.

      4. No painel de navegação à esquerda da página de detalhes da malha, escolha Traffic Management Center > Virtual Service.

        Na página VirtualService, o VirtualService bookinfo instalado pelo Helm é exibido. Esta página lista os recursos VirtualService existentes com seus namespaces, serviços associados, escopos e horários de criação. Crie um novo VirtualService clicando em Create ou Create with YAML, ou gerencie os recursos existentes usando as opções View YAML, Version Management e Delete.

      5. No painel de navegação à esquerda da página de detalhes da malha, escolha ASM Gateways > Gateway.

        Na página Gateway, o Gateway bookinfo-gateway instalado pelo Helm é exibido. Esta página lista os recursos de Gateway existentes com seus nomes de regra, namespaces, seletores de instância de gateway, protocolos e portas. Crie um novo Gateway clicando em Create ou Create with YAML, ou gerencie os recursos existentes usando as opções View YAML, Version Management e Delete.

Operações relacionadas

  • Execute o comando a seguir para visualizar a lista de releases do Helm:

    helm list
  • Execute o comando a seguir para atualizar um modelo do Helm:

    helm upgrade -f values.yaml istio-bookinfo ./