Instala el catálogo de servicios

En esta página, se explica cómo instalar el catálogo de servicios de Kubernetes y registrar el agente del servicio de Google Cloud Platform (GCP) en el clúster de tu Google Kubernetes Engine.

El catálogo de servicios te permite aprovisionar otros servicios de GCP, como Cloud Pub/Sub, desde tu clúster de GKE cuando te conectas al agente del servicio.

Para obtener más información sobre el catálogo de servicios, consulta la documentación del catálogo de servicios de Kubernetes.

Requisitos previos

  • Asegúrate de haber instalado y también inicializado el SDK de Cloud.
  • Ejecuta gcloud components install kubectl para instalar el componente kubectl.
  • Ejecuta gcloud auth application-default login a fin de obtener las credenciales usadas para llamar a las API de Google.
  • Sigue la guía de inicio rápido de Kubernetes para habilitar la facturación, establecer la configuración predeterminada, crear un clúster de Kubernetes y obtener las credenciales de autenticación necesarias para acceder al clúster.
  • Ejecuta gcloud config set project [PROJECT_ID] para asegurarte de que el proyecto de GCP que usas con el catálogo de servicios de Kubernetes esté configurado de forma predeterminada con gcloud.

Descripción general

El instalador del catálogo de servicios (sc) es una herramienta de línea de comandos que te permite instalar con facilidad el catálogo de servicios y agregar el agente del servicio a un clúster de Kubernetes. El catálogo de servicios te permite enumerar, aprovisionar y vincularte con otros servicios de GCP.

Cómo instalar el catálogo de servicios y el agente del servicio

Descarga el instalador del catálogo de servicios

Descarga el archivo del instalador del catálogo de servicios para tu plataforma y, luego, instala los contenidos de tu PATH. El archivo contiene la herramienta del instalador sc.

Para tu comodidad, el archivo también contiene los objetos binarios cfssl y cfssljson del kit de herramientas PKI de CloudFlare. También puedes descargar cfssl y cfssljson para tu plataforma desde la página Lanzamientos de CloudFlare y, luego, instalarlos en tu PATH.

Comprueba si se instalaron todas las dependencias para sc:

sc check

Si la verificación es correcta, se mostrará el siguiente mensaje:

Dependency check passed. You are good to go.

Establece permisos de RBAC en tu clúster

Otorga la función administrador de clúster (cluster-admin) a tu cuenta de GCP. Este comando te da permiso para instalar el catálogo de servicios en tu clúster:

kubectl create clusterrolebinding cluster-admin-binding --clusterrole=cluster-admin --user=$(gcloud config get-value account)

En la documentación de Kubernetes, encontrarás información adicional sobre el control de acceso basado en funciones.

Instala el catálogo de servicios

Instala el catálogo de servicios de Kubernetes en tu clúster de Kubernetes con el siguiente comando:

sc install

Este comando crea varias implementaciones de Kubernetes dentro de un espacio de nombres service-catalog. Las implementaciones admiten la integración de agentes del servicio abiertos con Kubernetes.

Después de que el comando sc install se ejecute de forma correcta, pueden pasar unos minutos hasta que el catálogo de servicios se inicie en tu clúster. Para verificar el estado, ejecuta este comando:

kubectl get deployment -n service-catalog

Los componentes del catálogo de servicios están listos una vez que todas las implementaciones se reporten AVAILABLE como en el resultado de ejemplo:

NAME                          DESIRED   CURRENT   UP-TO-DATE   AVAILABLE   AGE
apiserver                     1         1         1            1           3m
controller-manager            1         1         1            1           3m
etcd-cluster-backup-sidecar   1         1         1            1           3m
etcd-operator                 1         1         1            1           3m

Registra el agente del servicio de Google Cloud Platform con el catálogo de servicios

Para registrar el agente del servicio con el catálogo de servicios de Kubernetes, ejecuta:

sc add-gcp-broker

Este comando realiza las siguientes acciones:

  • Habilita varias API de GCP.
  • Crea un recurso de agente del servicio específico para tu proyecto.
  • Registra el agente del servicio de Google Cloud Platform con el catálogo de servicios en tu clúster.
  • Instala una extensión de autenticación de OAuth, que permite que el catálogo de servicios de Kubernetes se autentique con agentes que requieren OAuth.

Si es correcto, se mostrará el siguiente mensaje:

The Service Broker added successfully.

Verifica que el agente del servicio esté disponible y listo:

kubectl get clusterservicebrokers -o 'custom-columns=BROKER:.metadata.name,STATUS:.status.conditions[0].reason'

El STATUS del gcp-broker puede cambiar a través de varios valores a medida que el catálogo del servicio establece comunicación con el agente y obtiene su catálogo de servicios. Si se ejecuta de forma correcta, este comando genera el estado FetchedCatalog como se muestra a continuación:

BROKER       STATUS
gcp-broker   FetchedCatalog

Establece la función para la cuenta de servicio del proyecto

Encuentra tu ID del proyecto y tu número del proyecto:

GCP_PROJECT_ID=$(gcloud config get-value project)
GCP_PROJECT_NUMBER=$(gcloud projects describe $GCP_PROJECT_ID --format='value(projectNumber)')

También puedes encontrar estos valores en Cloud Console.

Otorga la función Propietario (roles/owner) a la cuenta de servicio cloudservices para que pueda otorgar permisos de IAM. El agente del servicio otorga permisos de IAM como parte de la vinculación a las instancias de servicio.

gcloud projects add-iam-policy-binding ${GCP_PROJECT_ID} \
    --member serviceAccount:${GCP_PROJECT_NUMBER}@cloudservices.gserviceaccount.com \
    --role=roles/owner

Instala la herramienta svcat de la CLI (opcional)

La herramienta de línea de comandos svcat es la forma recomendada de interactuar con el catálogo de servicios. Simplifica la interacción con el catálogo de servicios de Kubernetes, que incluye los servicios de aprovisionamiento y vinculación.

Puedes encontrar las instrucciones de instalación de svcat en la documentación del catálogo de servicios.

Pasos siguientes

¿Te ha resultado útil esta página? Enviar comentarios:

Enviar comentarios sobre...

Documentación de Kubernetes Engine