Configurar un permiso de clúster de GKE

En esta página, se describe cómo usar Cloud DNS para configurar el permiso de un clúster de Google Kubernetes Engine.

Para configurar una zona de DNS con permiso de clúster de GKE mediante Cloud DNS, primero elige una zona de DNS privado existente o crea una nueva zona de DNS privado a la que se conecta un clúster de GKE específico. A continuación, configura la zona de DNS para hacer referencia al nombre del clúster de GKE.

Para obtener más información sobre los permisos, consulta Permisos y jerarquías.

Crea una zona privada para el clúster de GKE

Para crear una nueva zona privada administrada mediante Cloud DNS para el clúster de GKE, completa el siguiente paso.

gcloud

Ejecuta el comando gcloud dns managed-zones create:

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

Reemplaza lo siguiente:

  • NAME: Es el nombre para tu zona
  • DNS_NAME: Es el sufijo DNS para tu zona, como example.private.
  • GKE_CLUSTER: La ruta de acceso a recursos completamente calificados de un clúster de GKE, como projects/my-project/locations/us-east1a/clusters/my-cluster.

API

Envía una solicitud POST con el 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
        },
        ....
    ]
  }
}

Reemplaza lo siguiente:

  • PROJECT_ID: el ID del proyecto en el que creaste la zona administrada
  • NAME: Es el nombre para tu zona
  • DESCRIPTION: Es una descripción para tu zona
  • DNS_NAME: Es el sufijo DNS para tu zona, como example.private.
  • GKE_CLUSTER_NAME_1 y GKE_CLUSTER_NAME_2: la ruta de acceso a recursos completamente calificados de un clúster de GKE, como projects/my-project/locations/us-east1a/clusters/my-cluster

Autoriza al clúster de GKE para consultar una zona privada de Cloud DNS

Para autorizar al clúster de GKE a que consulte una zona privada de Cloud DNS existente, completa el siguiente paso.

gcloud

Ejecuta el comando gcloud dns managed-zones update:

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

Reemplaza lo siguiente:

  • NAME: el nombre de la zona, como my-zone
  • GKE_CLUSTER: La ruta de acceso a recursos completamente calificados de un clúster de GKE, como projects/my-project/locations/us-east1a/clusters/my-cluster.

API

Envía una solicitud PATCH con el 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
        },
        ....
    ]
  }
}

Reemplaza lo siguiente:

  • PROJECT_ID: el ID del proyecto en el que creaste la zona administrada
  • NAME: el nombre de la zona, como my-zone
  • GKE_CLUSTER_NAME_1 y GKE_CLUSTER_NAME_2: la ruta de acceso a recursos completamente calificados de un clúster de GKE, como projects/my-project/locations/us-east1a/clusters/my-cluster

Configura el clúster de GKE para consultar una política de respuesta

Si deseas configurar el clúster de GKE para que consulte una política de respuesta, completa el siguiente paso.

gcloud

Ejecuta el comando gcloud dns response-policies create:

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

Reemplaza lo siguiente:

  • NAME: un nombre para tu política de respuesta, como my-response-policy
  • DESCRIPTION: una descripción para tu política de respuesta, como "my-response-policy-for-gke-5"
  • GKE_CLUSTER: La ruta de acceso a recursos completamente calificados de un clúster de GKE, como projects/my-project/locations/us-east1a/clusters/my-cluster.

API

Envía una solicitud POST con el 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"
    },
  ]
}

Reemplaza lo siguiente:

  • NAME: un nombre para tu política de respuesta, como my-response-policy
  • DESCRIPTION: una descripción para tu política de respuesta, como my-response-policy-for-gke-5
  • GKE_CLUSTER: La ruta de acceso a recursos completamente calificados de un clúster de GKE, como projects/my-project/locations/us-east1a/clusters/my-cluster.

¿Qué sigue?