Instalar el catálogo de servicios

Esta página explica cómo instalar el Catálogo de servicio 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 servicio 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 el gcloud auth application-default login a fin de obtener las credenciales usadas para llamar a las API de Google.
  • Sigue el Quickstart de Kubernetes para habilitar la facturación, ajustar la configuración predeterminada, crear un clúster Kubernetes y obtener las credenciales de autenticación necesarias para acceder al clúster.
  • Asegúrate de que el proyecto de GCP que uses con el catálogo de servicios de Kubernetes esté configurado como predeterminado con gcloud ejecutando el gcloud config set project [PROJECT_ID].

Descripción general

El instalador del catálogo de servicios (sc) es una herramienta de línea de comandos que te permite instalar fácilmente 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 enlazar 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 de instalación del catálogo de servicios para tu plataforma y luego instala los contenidos de tu PATH. El archivo contiene la herramienta de instalación sc.

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

Comprueba si todas las dependencias para sc se instalaron:

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 de 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)

Información adicional sobre el control de acceso basado en funciones está disponible en la documentación de Kubernetes.

Instala el catálogo de servicios

Instala el catálogo de servicios de Kubernetes en tu clúster de Kubernetes ejecutando:

sc install

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

Es posible que pasen unos minutos después de que el comando sc install esté correcto para que el catálogo de servicios se inicie en tu clúster. Para verificar el estado, ejecuta:

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 al catálogo de servicios de Kubernetes autenticarse con corredores 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 intermediario y obtiene su catálogo de servicios. Si es correcto, 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)')

Como alternativa, puedes encontrar estos valores en Cloud Console.

Concede la función de propietario (roles/owner) a la cuenta de servicio cloudservices para que la cuenta de servicio pueda conceder 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

(Opcional) Cómo instalar la herramienta CLI svcat

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 enlace.

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

¿Qué sigue?

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

Enviar comentarios sobre...