Iniciar sesión

En esta página se explica cómo acceder a tus cargas de trabajo y recursos, y cómo gestionarlos en Google Distributed Cloud (GDC) aislado. Describe cómo autenticar, generar archivos kubeconfig para recursos zonales y globales, y gestionar la inactividad de las sesiones. Conocer estos procesos garantiza un acceso seguro y fiable a tus proyectos y cargas de trabajo.

Esta página está dirigida a audiencias que pertenecen al grupo de administradores de la plataforma (como los administradores de TI) o al grupo de operadores de aplicaciones (como los desarrolladores de aplicaciones) y que quieren usar recursos de GDC. Para obtener más información, consulta Audiencias de la documentación aislada de GDC.

Puedes acceder a las cargas de trabajo mediante la consola de GDC, la CLI de gdcloud o la CLI de kubectl.

Autenticar tu cuenta para obtener acceso

Para iniciar sesión en la consola de GDC o en un clúster, sigue estos pasos:

Consola

Abre la siguiente URL en una nueva pestaña del navegador para acceder a la interfaz de usuario de Distributed Cloud:

https://GDC_URL

Sustituye GDC_URL por el nombre de dominio que usas para acceder a Distributed Cloud que proporciona el operador de infraestructura (IO). Cuando abres una URL por primera vez, Distributed Cloud te redirige a la página de inicio de sesión de tu proveedor de identidades si el operador de infraestructura (IO) ha configurado la página.

Por ejemplo, en la siguiente imagen se inicia sesión en la interfaz de usuario de la consola de una organización llamada org-1:

Interfaz de usuario de la consola que muestra la pantalla de bienvenida del proyecto org-1.

CLI

Cuando inicies sesión en la CLI de gdcloud, usa el comando gdcloud auth login para autenticar un principal en la CLI de gdcloud. La CLI de gdcloud usa esa entidad para la autenticación y la autorización con el fin de gestionar Google Cloud recursos y servicios.

Antes de iniciar sesión, haz lo siguiente:

  • Descarga el archivo binario de la CLI de gdcloud e instálalo en tu sistema. Para obtener más información, consulta Descargar la CLI de gdcloud.
  • Configura e inicializa la configuración predeterminada de la CLI de gdcloud. Asegúrate de definir la URL de la organización correcta, que se usa para obtener el endpoint de configuración de inicio de sesión. Para obtener más información, consulta Instalación de la CLI de gdcloud.
  • Instala el complemento de autenticación gdcloud-k8s-auth-plugin. Para obtener más información, consulta Autenticación de la CLI de gdcloud.

Para iniciar sesión en un servidor de la API Management o en un clúster de Kubernetes, sigue estos pasos:

  • Servidor de la API Management:
  1. Exporta la ruta en la que quieras almacenar el archivo kubeconfig del servidor de la API Management:

    export KUBECONFIG=MANAGEMENT_API_SERVER
    

    Sustituye MANAGEMENT_API_SERVER por la ruta al directorio en el que se almacenará el archivo kubeconfig.

  2. Autentica tu instancia de la CLI de gdcloud para iniciar sesión. Hay dos formas de autenticarte:

    • Inicio de sesión estándar en el navegador: usa este flujo de autenticación cuando inicies sesión desde un navegador.

      gdcloud auth login
      
    • Inicio de sesión en un dispositivo secundario: usa este flujo de autenticación si tu dispositivo principal no tiene un navegador disponible. Este flujo inicia la sesión en el dispositivo principal sin acceso al navegador y continúa la sesión en el dispositivo secundario, que sí tiene acceso al navegador.

      Inicia sesión en tu dispositivo principal sin navegador:

      gdcloud auth login --no-browser
      

      La variable de entorno KUBECONFIG se actualiza con los archivos kubeconfig de todos los servidores de la API y clústeres de la organización. Si la variable KUBECONFIG no está definida, la CLI de kubectl usa el archivo kubeconfig predeterminado almacenado en $HOME/.kube/config.

      Para saltarte la edición de los archivos kubeconfig, añade la marca --skip-kubeconfig-update al comando. Por ejemplo:

      gdcloud auth login --no-browser --skip-kubeconfig-update
      

      Copia el resultado del comando de la CLI de gdcloud que se imprime y ejecútalo en una máquina con acceso al navegador.

  3. Sigue las instrucciones de la página web para completar el proceso de inicio de sesión.

    Cuando se haya completado el inicio de sesión, el navegador mostrará el mensaje Autenticación correcta. Cierra esta ventana.

  4. Sigue las instrucciones del terminal. Si el inicio de sesión se realiza correctamente, la terminal mostrará el mensaje Has iniciado sesión.

  • Clúster de Kubernetes:
  1. Autentica tu instancia de la CLI de gdcloud para iniciar sesión. Hay dos formas de autenticarte:

    • Inicio de sesión estándar en el navegador: usa este flujo de autenticación cuando inicies sesión desde un navegador.

      gdcloud auth login
      
    • Inicio de sesión en un dispositivo secundario: usa este flujo de autenticación si tu dispositivo principal no tiene un navegador disponible. Este flujo inicia la sesión en el dispositivo principal sin acceso al navegador y continúa la sesión en el dispositivo secundario, que sí tiene acceso al navegador.

      1. Inicia sesión en tu dispositivo principal sin navegador:

        gdcloud auth login --no-browser
        

        El comando del dispositivo principal imprime otro comando gdcloud que debes ejecutar en el dispositivo secundario en el paso c.

      2. Repite el paso 1 para descargar el certificado en el dispositivo secundario.

      3. Completa el inicio de sesión en el dispositivo secundario introduciendo el comando que se muestra en el dispositivo principal en el paso a.

    Se abrirá un navegador para iniciar sesión en el proveedor de identidades (IdP) configurado. Proporciona el usuario y la contraseña que definiste durante la configuración inicial de la CLI de gdcloud para iniciar sesión.

  2. Exporta tu archivo kubeconfig de identidad de usuario como una variable:

    export KUBECONFIG=/tmp/CLUSTER_NAME-ZONE-kubeconfig-with-user-identity.yaml
    
  3. Genera un archivo kubeconfig para un clúster zonal con tu identidad de usuario:

    gdcloud clusters get-credentials CLUSTER_NAME --zone ZONE
    

    Sustituye ZONE por el nombre de la zona.

    Se genera un archivo kubeconfig con tu identidad de usuario. En el siguiente archivo YAML se muestra un ejemplo:

    apiVersion: v1
    clusters:
    - cluster:
      certificate-authority-data: <REDACTED>
      server: https://10.200.0.32:443
    name: cluster-name
    contexts:
    - context:
      cluster: cluster-name
      user: cluster-name-anthos-default-user
    name: cluster-name-cluster-name-anthos-default-user
    current-context: cluster-name-cluster-name-anthos-default-user
    kind: Config
    preferences: {}
    users:
    - name: cluster-name-anthos-default-user
    user:
      exec:
        apiVersion: client.authentication.k8s.io/v1
        args:
        - --audience=root-admin
        command: gdcloud-k8s-auth-plugin
        env: null
        installHint: Run 'gdcloud components install gdcloud-k8s-auth-plugin' to use plugin
        interactiveMode: Never
        provideClusterInfo: false
    
  4. Para verificar que puedes acceder al clúster, inicia sesión con el archivo kubeconfig generado con una identidad de usuario:

    kubectl --kubeconfig /tmp/admin-kubeconfig-with-user-identity.yaml version
    

Cierra sesión

Para cerrar sesión en la consola de GDC, sigue estos pasos:

Consola

En la barra de menús, haga clic en Cerrar sesión.

CLI

Cierra sesión en la CLI:

gdcloud auth revoke

Generar manualmente el archivo kubeconfig

Si gestionas recursos con la CLI de kubectl llamando directamente a las APIs de KRM, debes generar el archivo kubeconfig del clúster o del servidor de la API que aloja tu recurso, en función del tipo de recurso que estés gestionando.

También debes conocer la configuración de tu universo de GDC para determinar las zonas en las que quieres implementar tus recursos zonales o el servidor de la API global para los recursos globales. Para obtener más información, consulta Servidores de APIs globales y zonales.

Determina si el recurso que vas a manipular es global o zonal. Si no lo tienes claro, consulta la documentación específica del recurso para obtener ayuda.

Completa la configuración correspondiente según el tipo de recurso.

Recursos del servidor de la API Zonal Management

Sigue estos pasos para generar el archivo kubeconfig del servidor de la API Management zonal:

  1. Para ver todas las zonas disponibles, haz lo siguiente:

    gdcloud zones list
    

    Anota el nombre de la zona que aloja tu recurso personalizado.

  2. Define la variable de entorno ZONE en la zona que aloja tus recursos zonales:

    export ZONE="ZONE"
    

    Sustituye ZONE por el nombre de la zona.

  3. Define la variable de entorno MANAGEMENT_API_SERVER:

    export MANAGEMENT_API_SERVER="ORG_NAME-admin"
    

    Sustituye ORG_NAME por el nombre de tu organización, como org-1.

  4. Genera el archivo kubeconfig del servidor de la API Management para la zona de destino y valida las credenciales:

    export KUBECONFIG=${HOME}/${MANAGEMENT_API_SERVER:?}-kubeconfig.yaml
    rm ${KUBECONFIG:?}
    gdcloud clusters get-credentials ${MANAGEMENT_API_SERVER:?} --zone ${ZONE:?}
    [[ $(kubectl config current-context) == *${MANAGEMENT_API_SERVER:?}* ]] && echo "Success. Your kubeconfig is at $KUBECONFIG" || echo "Failure"
    

    El comando rm ${KUBECONFIG:?} elimina el archivo kubeconfig del directorio principal. Cuando generas un archivo kubeconfig, se sobrescribe el archivo que ya tenías. Si no quieres sobrescribir ni eliminar el archivo, haz una copia de seguridad en otra ubicación segura.

Recursos de clústeres de Kubernetes zonales

Sigue estos pasos para generar el archivo kubeconfig del clúster de Kubernetes zonal:

  1. Para ver todas las zonas disponibles, haz lo siguiente:

    gdcloud zones list
    

    Anota el nombre de la zona que aloja tu recurso personalizado.

  2. Define la variable de entorno ZONE en la zona que aloja tu clúster de Kubernetes:

    export ZONE="ZONE"
    

    Sustituye ZONE por el nombre de la zona.

  3. Define la variable de entorno KUBERNETES_CLUSTER:

    export KUBERNETES_CLUSTER="KUBERNETES_CLUSTER_NAME"
    

    Sustituye KUBERNETES_CLUSTER_NAME por el nombre de tu clúster de Kubernetes.

  4. Genera el archivo kubeconfig del clúster de Kubernetes para la variable de zona de destino y valida las credenciales:

    export KUBECONFIG=${HOME}/${KUBERNETES_CLUSTER:?}-kubeconfig.yaml
    rm ${KUBECONFIG:?}
    gdcloud clusters get-credentials ${KUBERNETES_CLUSTER:?} --zone ${ZONE:?}
    [[ $(kubectl config current-context) == *${KUBERNETES_CLUSTER:?}* ]] && echo "Success. Your kubeconfig is at $KUBECONFIG" || echo "Failure"
    

    El comando rm ${KUBECONFIG:?} elimina el archivo kubeconfig del directorio principal. Cuando generas un archivo kubeconfig, se sobrescribe el archivo que ya tenías. Si no quieres sobrescribir ni eliminar el archivo, haz una copia de seguridad en otra ubicación segura.

Recursos del servidor de la API global

Sigue estos pasos para generar el archivo kubeconfig del servidor de la API global:

  1. Define la variable de entorno GLOBAL_API_SERVER:

    export GLOBAL_API_SERVER="global-api"
    
  2. Genera el archivo kubeconfig del servidor de la API global y valida las credenciales:

    export KUBECONFIG=${HOME}/${GLOBAL_API_SERVER:?}-kubeconfig.yaml
    rm ${KUBECONFIG:?}
    gdcloud clusters get-credentials ${GLOBAL_API_SERVER:?}
    [[ $(kubectl config current-context) == *${GLOBAL_API_SERVER:?}* ]] && echo "Success. Your kubeconfig is at $KUBECONFIG" || echo "Failure"
    

    El comando rm ${KUBECONFIG:?} elimina el archivo kubeconfig del directorio principal. Cuando generas un archivo kubeconfig, se sobrescribe el archivo que ya tenías. Si no quieres sobrescribir ni eliminar el archivo, haz una copia de seguridad en otra ubicación segura.

Cierre de sesión por inactividad

Después de quince minutos o más de inactividad en una sesión, la consola de GDC y la CLI de gdcloud cierran tu sesión. Distributed Cloud considera la inactividad de la sesión como un periodo durante una sesión abierta en la que no hay interacción activa por tu parte, como el movimiento del cursor o el uso del teclado. Una sesión activa dura hasta doce horas si el usuario realiza alguna actividad.

Consola

En caso de inactividad en la sesión, la consola de GDC cierra tu sesión. Dos minutos antes de que la consola de GDC cierre tu sesión por inactividad, recibirás un cuadro de diálogo que te avisará de que se va a cerrar la sesión:

Interfaz de usuario de la consola que muestra un cuadro de diálogo con un temporizador de 99 segundos antes de cerrar la sesión del usuario por inactividad.

Después de cerrar tu sesión por inactividad, verás la siguiente pantalla:

Interfaz de usuario de la consola que muestra la pantalla de inicio de sesión con un banner que contiene el texto de cierre de sesión: &quot;Se ha cerrado la sesión del sistema porque ha estado inactiva durante demasiado tiempo. Vuelve a iniciar sesión o ponte en contacto con tu administrador para obtener ayuda&quot;.

Para volver a iniciar sesión en la consola de GDC, selecciona tu proveedor de identidad y añade tus credenciales de inicio de sesión. Si usas un servicio, como el panel de control de monitorización, y la consola de GDC cierra tu sesión por inactividad, vuelve a iniciar sesión para obtener acceso.

gdcloud

En el caso de inactividad en la sesión, la CLI de gdcloud cierra la sesión. Después de que la CLI de gdcloud cierre tu sesión y tú intentes ejecutar un comando, recibirás un error de autorización:

Error: error when creating kube client: unable to create k8sclient: Unauthorized

Para volver a iniciar sesión en GDC, sigue los pasos de la CLI que se indican en Iniciar sesión.

Si vuelves a iniciar sesión en GDC a través de un servidor de la API Management, tu archivo kubeconfig se actualizará automáticamente. Para evitar que se actualice el archivo kubeconfig, usa la marca --skip-kubeconfig-update en el comando gdcloud auth login.

kubectl

La CLI de gdcloud hace que tus archivos kubeconfig caduquen tras un periodo de inactividad de la sesión. Si intentas ejecutar un comando kubectl después de un periodo de inactividad, recibirás un error de autorización:

error: You must be logged in to the server (Unauthorized)

Para volver a iniciar sesión y usar el archivo kubeconfig, sigue los pasos de la CLI que se indican en Iniciar sesión. Cada vez que se agote el tiempo de espera de una sesión, debes volver a generar los archivos kubeconfig.

Monitorizar las actividades de inicio de sesión y de nuevos usuarios

Las actividades, como iniciar sesión, se exportan como registros de auditoría. Para obtener más información sobre cómo ver los registros de auditoría, consulta el artículo Registros de auditoría.