Use o APIG Ingress para expor serviços internos do cluster por meio do Cloud-native API Gateway.
Por motivos de segurança, o APIG Ingress não permite expor serviços no namespace kube-system.
Pré-requisitos
Você criou um cluster gerenciado do ACK que executa o Kubernetes 1.18 ou posterior.
Instale o APIG Controller
Faça login no ACK console. No painel de navegação à esquerda, clique em Clusters.
Na página Clusters, clique no nome do cluster. No painel de navegação à esquerda, clique em Components and Add-ons .
Na página Add-ons, pesquise
APIGe clique em Install no cartão APIG Controller.-
Na caixa de diálogo Install APIG Controller, configure os parâmetros e clique em OK.
-
Create:
Cria automaticamente uma instância do Cloud-native API Gateway com pagamento conforme o uso e especificação
apig.small.x1.ImportanteAo selecionar Create, o sistema cria automaticamente um recurso ApigConfig e uma instância do Cloud-native API Gateway. Excluir o recurso ApigConfig também remove a instância de gateway associada. Não exclua o recurso ApigConfig.
Se já existir uma IngressClass chamada
apigno cluster, o add-on não criará um recurso ApigConfig nem uma instância de gateway.
-
Select Existing VPC :
Selecione uma instância existente do Cloud-native API Gateway com pagamento conforme o uso. A instância deve estar na mesma VPC do cluster e não pode estar vinculada a outro cluster. Caso a instância desejada não apareça na lista, verifique se ela já está vinculada a outro cluster. Instâncias vinculadas não são exibidas. Nessa situação, selecione Create para criar uma nova instância do Cloud-native API Gateway.
Se ocorrer o erro Failed to pass the precheck. durante a instalação, conceda as permissões necessárias ao APIG Controller .
-
Após a instalação, o sistema cria um recurso ApigConfig chamado
apig-controller-pro-{clusterid}no cluster. No Cloud-native API Gateway console, uma instância de gateway chamadaapig-controller-pro-{clusterid}aparece na região correspondente.
Crie uma aplicação de exemplo
Na página Clusters, clique no nome do cluster. No painel de navegação à esquerda, clique em .
-
Na página Deployments, clique em Create from YAML. Use o YAML abaixo para implantar um Deployment chamado
httpbine um Service chamadohttpbin.apiVersion: apps/v1 kind: Deployment metadata: name: httpbin namespace: default spec: replicas: 1 selector: matchLabels: app: httpbin template: metadata: labels: app: httpbin version: v1 spec: containers: - image: registry.cn-hangzhou.aliyuncs.com/mse-ingress/go-httpbin args: - "--version=v1" imagePullPolicy: Always name: httpbin --- apiVersion: v1 kind: Service metadata: name: httpbin namespace: default spec: ports: - port: 8080 protocol: TCP selector: app: httpbin type: ClusterIP Clique em Visualize e verifique se o status do pod é
Running.
Configure o APIG Ingress
No painel de navegação à esquerda, escolha Ingresses > Ingresses. Na página Ingresses, clique em Create Ingress.
Na caixa de diálogo Create Ingress, defina Gateway Type como APIG Ingress, Ingresses como Prefix Match e Path como
/para encaminhar requisições ao servicehttpbin. Em seguida, clique em OK.Na página Ingresses, localize o endpoint do Ingress na coluna Endpoint. Acesse
endpoint/versionougateway public IP/versionpelo navegador ou CLI. Uma resposta comversion: v1confirma o funcionamento do Ingress.Faça login no Cloud-native API Gateway console. Na instância de gateway correspondente, localize uma API cujo nome contenha
{gwid}-ingress.