Use o APIG Ingress para expor serviços no 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 ACK gerenciado que executa o Kubernetes 1.18 ou posterior.
Instale o APIG Controller
Faça login no console do ACK. No painel de navegação à esquerda, clique em Clusters.
Na página Clusters, clique no nome do seu cluster. No painel de navegação à esquerda, clique em Components and Add-ons .
Na página Add-ons, pesquise por
APIGe clique em Install no cartão do 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 a especificação
apig.small.x1.ImportanteAo selecionar Create, o sistema cria automaticamente um recurso ApigConfig e uma instância do Cloud-native API Gateway. A exclusão do 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 cria 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 deve estar vinculada a outro cluster. Se a instância que você deseja usar não aparecer na lista, verifique se ela já está vinculada a outro cluster. Instâncias já vinculadas não aparecem na lista. Nesse caso, 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 console do Cloud-native API Gateway, uma instância de gateway chamadaapig-controller-pro-{clusterid}aparece na região correspondente.
Crie um aplicativo de exemplo
Na página Clusters, clique no nome do seu cluster. No painel de navegação à esquerda, clique em .
-
Na página Deployments, clique em Create from YAML. Use o YAML a seguir 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 solicitações ao Servicehttpbine clique em OK.Na página Ingresses, localize o endpoint do Ingress na coluna Endpoint. Acesse
endpoint/versionougateway public IP/versionem um navegador ou CLI. Uma resposta comversion: v1confirma que o Ingress está funcionando.Faça login no console do Cloud-native API Gateway. Na instância de gateway correspondente, localize uma API cujo nome contenha
{gwid}-ingress.