Configurar um escopo de cluster do GKE

Nesta página, descrevemos como usar o Cloud DNS para configurar um escopo de cluster do Google Kubernetes Engine.

Para configurar uma zona de DNS com escopo de cluster do GKE usando o Cloud DNS, primeiro escolha uma zona de DNS particular existente ou crie uma nova zona de DNS particular para anexar um cluster específico do GKE. Em seguida, configure a zona DNS para fazer referência ao nome do cluster do GKE.

Para saber mais sobre escopos, consulte Escopos e hierarquias.

Criar uma zona particular para o cluster do GKE

Para criar uma nova zona particular gerenciada usando o Cloud DNS para o cluster do GKE, conclua a etapa a seguir.

gcloud

Execute o gcloud dns managed-zones createcomando:

gcloud dns managed-zones create NAME \
    --dns-name=DNS_NAME \
    --visibility=private \
    --gkeclusters=GKE_CLUSTER

Substitua:

  • NAME: um nome para a zona;
  • DNS_NAME: o sufixo DNS da sua zona, como example.private..
  • GKE_CLUSTER: o caminho de recurso totalmente qualificado de uma cluster do GKE, como projects/my-project/locations/us-east1a/clusters/my-cluster

API

Envie uma solicitação POST usando o método managedZones.create:

POST https://dns.googleapis.com/dns/v1/projects/PROJECT_ID/managedZones
{

"name": "NAME",
"description": "DESCRIPTION",
"dnsName": "DNS_NAME",
"visibility": "private"
"privateVisibilityConfig": {
    "kind": "dns#managedZonePrivateVisibilityConfig",
    "gkeClusters": [{
            "kind": "dns#managedZonePrivateVisibilityConfigGKEClusters",
            "gkeClusterName": GKE_CLUSTER_NAME_1
        },
        {
            "kind": "dns#managedZonePrivateVisibilityConfigGKEClusters",
            "gkeClusterName": GKE_CLUSTER_NAME_2
        },
        ....
    ]
  }
}

Substitua:

  • PROJECT_ID: o ID do projeto em que você criou a zona gerenciada
  • NAME: um nome para a zona;
  • DESCRIPTION: uma descrição para a zona;
  • DNS_NAME: o sufixo DNS da sua zona, como example.private..
  • GKE_CLUSTER_NAME_1 e GKE_CLUSTER_NAME_2: o caminho de recurso totalmente qualificado de um cluster do GKE, como como projects/my-project/locations/us-east1a/clusters/my-cluster

Autorizar o cluster do GKE a consultar uma zona particular do Cloud DNS

Para autorizar o cluster do GKE a consultar uma zona particular atual do Cloud DNS, conclua a etapa a seguir.

gcloud

Execute o gcloud dns managed-zones updatecomando:

gcloud dns managed-zones update NAME \
    --gkeclusters=GKE_CLUSTER

Substitua:

  • NAME: o nome da zona, como my-zone
  • GKE_CLUSTER: o caminho de recurso totalmente qualificado de uma cluster do GKE, como projects/my-project/locations/us-east1a/clusters/my-cluster

API

Envie uma solicitação PATCH usando o método managedZones.patch:

PATCH https://dns.googleapis.com/dns/v1/projects/PROJECT_ID/managedZones/NAME
{
"privateVisibilityConfig": {
    "gkeClusters": [{
            "kind": "dns#managedZonePrivateVisibilityConfigGKEClusters",
            "gkeClusterName": GKE_CLUSTER_NAME_1
        },
        {
            "kind": "dns#managedZonePrivateVisibilityConfigGKEClusters",
            "gkeClusterName": GKE_CLUSTER_NAME_2
        },
        ....
    ]
  }
}

Substitua:

  • PROJECT_ID: o ID do projeto em que você criou a zona gerenciada
  • NAME: o nome da zona, como my-zone
  • GKE_CLUSTER_NAME_1 e GKE_CLUSTER_NAME_2: o caminho do recurso totalmente qualificado de um cluster do GKE, como projects/my-project/locations/us-east1a/clusters/my-cluster.

Configurar o cluster do GKE para consultar uma política de resposta

Para configurar o cluster do GKE para consultar uma política de resposta, conclua a etapa a seguir.

gcloud

Execute o gcloud dns response-policies createcomando:

gcloud dns response-policies create NAME \
    --description=DESCRIPTION \
    --gkeclusters=GKE_CLUSTER

Substitua:

  • NAME: um nome para a política de resposta, como my-response-policy.
  • DESCRIPTION: uma descrição para sua política de resposta, como "my-response-policy-for-gke-5"
  • GKE_CLUSTER: o caminho do recurso totalmente qualificado de um cluster do GKE, como projects/my-project/locations/us-east1a/clusters/my-cluster.

API

Envie uma solicitação POST usando o método responsePolicies.create:

POST https://dns.googleapis.com/dns/v1/projects/PROJECT_ID/responsePolicies
{
  "responsePolicyName": "NAME",
  "description": "DESCRIPTION",
  "gkeClusters": [
    {
      "kind": "dns#responsePolicyGKECluster",
      "gkeClusterName": "GKE_CLUSTER"
    },
  ]
}

Substitua:

  • NAME: um nome para a política de resposta, como my-response-policy.
  • DESCRIPTION: uma descrição para sua política de resposta, como my-response-policy-for-gke-5
  • GKE_CLUSTER: o caminho do recurso totalmente qualificado de um cluster do GKE, como projects/my-project/locations/us-east1a/clusters/my-cluster.

A seguir