Crea el archivo de configuración.

En esta página se describe cómo crear el archivo de configuración de entrada que se usa para configurar el dispositivo con air gap de Google Distributed Cloud (GDC).

Crear el archivo de configuración de entrada

  1. El proceso de configuración del dispositivo usa un archivo YAML de entrada. Crea este archivo con el mismo formato que la plantilla proporcionada. Los campos o las secciones que se indican como "Opcional" deben omitirse, no dejarse vacíos.

  2. A continuación, se muestra un ejemplo de archivo de configuración de entrada.

    bgp:
      dataASN: DATAPLANE_ASN
    interconnects:
      customerData:
        asn: CUSTOMER_ASN
        customerPeerSubnets:
        - ipFamily: UPLINK_IP_FAMILY_1
          ipv4:
            ip: UPLINK_IPV4_PEER_1
            subnet:
              gateway: UPLINK_IPV4_GW_1
              subnet: UPLINK_IPV4_NET_1
          # Optional: Only specify ipv6 for DualStack ipFamily
          ipv6:
            ip: UPLINK_IPV6_PEER_1
            subnet:
              gateway: UPLINK_IPV6_GW_1
              subnet: UPLINK_IPV6_NET_1
        - ipFamily: UPLINK_IP_FAMILY_2
          ipv4:
            ip: UPLINK_IPV4_PEER_2
            subnet:
              gateway: UPLINK_IPV4_GW_2
              subnet: UPLINK_IPV4_NET_2
          # Optional: Only specify ipv6 for DualStack ipFamily
          ipv6:
            ip: UPLINK_IPV6_PEER_2
            subnet:
              gateway: UPLINK_IPV6_GW_2
              subnet: UPLINK_IPV6_NET_2
    dns:
      delegatedSubdomain: DELEGATED_SUBDOMAIN
    externalCIDR:
      ipFamily: IP_FAMILY
      ipv4: EXTERNAL_NETWORK_IPV4
      ipv6: EXTERNAL_NETWORK_IPV6
    
    # Optional: External hardware security module (HSM) information
    externalHSM:
      primaryAddress:  EXTERNAL_HSM_PR_ADDR
      secondaryAddresses:
        - EXTERNAL_HSM_SE_ADDR
      caCert: EXTERNAL_HSM_CA_CERT
      clientCert: EXTERNAL_HSM_CLIENT_CERT
      clientKey: EXTERNAL_HSM_CLIENT_KEY
    
    # Optional: External IdP information
    externalIDP:
      name: EXTERNAL_IDP_NAME
      oidc:
        clientID: EXTERNAL_IDP_CLIENT_ID
        clientSecret: EXTERNAL_IDP_CLIENT_SECRET
        issuerURI: EXTERNAL_IDP_ISSUER_URI
        scopes: EXTERNAL_IDP_SCOPES
        userClaim: EXTERNAL_IDP_USER_CLAIM
        caCert: EXTERNAL_IDP_CA_DATA
      saml:
        idpEntityID: EXTERNAL_IDP_ENTITY_ID
        idpSingleSignOnURI: EXTERNAL_IDP_SSO_URI
        idpCertDataList: EXTERNAL_IDP_CERT_DATA
        userAttribute: EXTERNAL_IDP_USER_ATTRIBUTE
      initialAdmin: EXTERNAL_IDP_INITIAL_ADMIN
    

Información del protocolo de puerta de enlace de frontera (BGP)

El protocolo de puerta de enlace de frontera (BGP) intercambia información de enrutamiento con redes externas. Estas redes se identifican mediante números de sistema autónomo (ASN). Para asegurar una conectividad adecuada entre el dispositivo aislado de GDC y las redes externas, todos los valores de ASN deben ser únicos a nivel global.

  1. DATAPLANE_ASN: el ASN asignado al plano de datos de la instancia del dispositivo GDC con air gap. Por ejemplo, 65204.

  2. CUSTOMER_ASN: el ASN asignado al plano de datos de la red del cliente. Por ejemplo, 4200002002.

Las configuraciones de enlace ascendente son conexiones de peering que se usan para conectar externamente instancias de dispositivos aislados de GDC a otros servicios, como redes de clientes y otras instancias de dispositivos aislados de GDC. Estas configuraciones de enlace ascendente y el cableado de una instancia de dispositivo aislada de GDC son importantes para asegurar una conectividad adecuada con la red externa.

  1. Por cada enlace ascendente necesario para el peering de clientes a la instancia del dispositivo aislado de GDC, rellene una sección de elemento de enlace ascendente en el campo Subredes de peering de clientes. Si el número que has proporcionado no coincide con el número esperado de enlaces ascendentes (2), los enlaces ascendentes restantes se asignarán desde la subred del plano de datos externo.
  2. En el caso de los enlaces ascendentes, especifique lo siguiente:
    1. UPLINK_IP_FAMILY_1, UPLINK_IP_FAMILY_2: especifica la familia de IPs subred. Debe ser IPv4 o DualStack.
      1. Si seleccionas IPv4,
        1. UPLINK_IPV4_PEER_1 IP, UPLINK_IPV4_PEER_2 IP: describe la dirección IP asignada en el puerto enrutado. Si se deja en blanco, se tomará del bloque de subred del mismo nivel.
        2. UPLINK_IPV4_NET_1, UPLINK_IPV4_NET_2: introduce el bloque de subred del peer configurado en la red del cliente para el enlace de switch y puerto proporcionado. Esta es una subred /31. Por ejemplo, 172.16.255.148/31.
        3. UPLINK_IPV4_GW_1, UPLINK_IPV4_GW_2: introduce la dirección IP que representa la dirección IP de cara al cliente en la subred de par /31. Por ejemplo, 172.16.255.148.
      2. Si seleccionas DualStack,
        1. UPLINK_IPV4_PEER_1 IP, UPLINK_IPV4_PEER_2 IP: describe la dirección IPv4 asignada al puerto enrutado. Si se deja en blanco, se tomará del bloque de subred del mismo nivel.
        2. UPLINK_IPV4_NET_1, UPLINK_IPV4_NET_2: En el caso de IPv4, introduce el bloque de subred del peer configurado en la red del cliente para el enlace de switch y puerto proporcionado. Esta es una subred /31. Por ejemplo, 172.16.255.148/31.
        3. UPLINK_IPV4_GW_1, UPLINK_IPV4_GW_2: En el caso de IPv4, introduce la dirección IPv4 que representa la dirección IP visible para el cliente en la subred del peer /31. Por ejemplo, 172.16.255.148.
        4. UPLINK_IPV6_PEER_1 IP, UPLINK_IPV6_PEER_2 IP: describe la dirección IPv6 asignada al puerto enrutado. Si se deja en blanco, se tomará del bloque de subred del mismo nivel.
        5. UPLINK_IPV6_NET_1, UPLINK_IPV6_NET_2: En el caso de IPv6, introduce el bloque de subred del mismo nivel configurado en la red del cliente para el enlace de switch y puerto proporcionado. Esta es una subred /127. Por ejemplo, FC00::/127.
        6. UPLINK_IPV6_GW_1, UPLINK_IPV6_GW_2: En el caso de IPv6, introduzca la dirección IPv6 que representa la dirección IP orientada al cliente en la subred de par /127. Por ejemplo, FC00::.

Información del sistema de nombres de dominio (DNS)

  1. DELEGATED_SUBDOMAIN: introduce el nombre de subdominio delegado por DNS de la instancia del dispositivo aislado de GDC desde el servidor DNS principal. Este nombre de dominio completo se usa como sufijo para los servicios de dispositivos aislados de GDC, como la gestión de clústeres. El formato esperado es LOCATION.SUFFIX.

    Haz los cambios siguientes:

    • LOCATION: el identificador de zona de la implementación del dispositivo aislado de la red de GDC, como us-central1-a
    • SUFFIX: cualquier sufijo DNS válido, como zone1.google.gdch.test o us-central1-a.gdch.customer

Red del plano de datos (CIDR externo)

  1. En el caso de la red de la familia de IPs del plano de datos, especifica si la subred es IPv4 o DualStack. En la sección externalCIDR, sustituye IP_FAMILY por IPv4 o DualStack.
    1. Si seleccionas IPv4,
      1. Introduce la dirección de red IPv4 con un tamaño mínimo de 23 para la red de plano de datos externa. Usa esta red para servicios accesibles externamente, como el servidor de la API Management y las interfaces de almacenamiento. La dirección de red debe ser un bloque de IPs continuo que se haya preasignado en tu red. Por ejemplo, sustituya EXTERNAL_NETWORK_IPV4 por 10.100.101.0/23.
    2. Si seleccionas DualStack,
      1. Introduce la dirección de red IPv4 con un tamaño mínimo de 23 para la red de plano de datos externa. Usa esta red para servicios accesibles externamente, como el servidor de la API Management y las interfaces de almacenamiento. La dirección de red debe ser un bloque de IPs continuo que se haya preasignado en tu red. Por ejemplo, sustituya EXTERNAL_NETWORK_IPV4 por 10.100.101.0/23.
      2. Introduce la dirección de red IPv6 con el tamaño mínimo de 64. Este bloque de IPs se divide en dos. La primera mitad se usa como red de plano de datos externa y la segunda mitad, como red de plano de datos interna. Por ejemplo, sustituya EXTERNAL_NETWORK_IPV6 por FC00::/64.

Opcional: información del módulo de seguridad de hardware (HSM) externo

Los dispositivos HSM alojan claves de encriptado y realizan operaciones criptográficas mediante KMIP (protocolo de interoperabilidad de gestión de claves). Puedes usar HSM con NetApp ONTAP Select (OTS) para el almacenamiento. Si quieres usar un servidor NTP externo, rellena la sección externalHSM.

Antes de empezar, configura la red del HSM.

  1. EXTERNAL_HSM_PR_ADDR: la dirección del servicio KMIP principal. Sigue el formato (IP|DNS):Puerto. Si se omite el puerto, se usará el puerto predeterminado 5696.

    • En IP, introduce la dirección de red IP del servicio KMIP. Por ejemplo, 8.8.8.8:5696.
    • En Nombre de DNS, introduce el nombre de dominio completo del servicio KMIP. Por ejemplo, te.us-central1-a:5696.
  2. EXTERNAL_HSM_SE_ADDR: las direcciones de los servicios KMIP secundarios. Sigue el formato (IP|DNS):Puerto. Si se omite el puerto, se usará el puerto predeterminado 5696. Puedes especificar hasta 3 direcciones secundarias separadas por comas.

  3. EXTERNAL_HSM_CA_CERT: introduce el CACert. El certificado de la CA es el certificado firmado del servicio KMIP.

  4. EXTERNAL_HSM_CLIENT_CERT: introduce el certificado de cliente para conectarte al HSM externo.

  5. EXTERNAL_HSM_CLIENT_KEY: introduce la clave de cliente asociada al certificado de cliente para conectarte al HSM externo.

Opcional: Conectar un proveedor de identidades

Puedes conectarte a tu proveedor de identidades (IdP) para gestionar la identidad y el acceso o configurar un IdP de Keycloak integrado. Si quieres usar tu propio proveedor de identidades, rellena la sección externalIDP.

  1. Elige el tipo de proveedor de identidades al que te vas a conectar: OIDC (OpenID Connect) o SAML (Security Assertion Markup Language).
  2. Si elige un proveedor de OIDC, especifique los siguientes parámetros:
    1. EXTERNAL_IDP_NAME: introduce el nombre del proveedor de identidades. El nombre que proporciones aquí es el alias de la identidad en el sistema.
    2. EXTERNAL_IDP_ISSUER_URI: introduce el URI del emisor. El URI del emisor debe apuntar al nivel de .well-known/openid-configuration. Las aplicaciones cliente envían solicitudes de autorización a esta URL. El servidor de la API de Kubernetes usa esta URL para descubrir las claves públicas y verificar los tokens.
    3. EXTERNAL_IDP_CA_DATA: Introduzca un certificado codificado con PEM y con base64 para los datos de la autoridad de certificación del IdP. Para obtener más información, consulta https://en.wikipedia.org/wiki/Privacy-Enhanced_Mail.
      1. Para crear la cadena, codifica el certificado, incluidos los encabezados, en base64.
      2. Incluye la cadena resultante en una sola línea. Ejemplo: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tC...k1JSUN2RENDQWFT==
    4. EXTERNAL_IDP_CLIENT_ID: introduce el ID de cliente de la aplicación cliente que envía solicitudes de autenticación al IdP.
    5. EXTERNAL_IDP_CLIENT_SECRET: introduce el secreto de cliente, que es un secreto compartido entre tu IdP y el dispositivo aislado de GDC.
    6. EXTERNAL_IDP_USER_CLAIM: introduce el campo user claim para identificar a cada usuario. Es el nombre de la reclamación del token de ID de OIDC que contiene el nombre de usuario. Si falta esta reclamación en el token de ID, los usuarios no podrán autenticarse. La reclamación predeterminada de muchos proveedores es sub. Puedes elegir otras reclamaciones, como email o name, en función del proveedor de identidades. Las reclamaciones que no sean email tienen el prefijo de la URL del emisor para evitar conflictos de nombres.
    7. EXTERNAL_IDP_SCOPES: Si tu proveedor de identidades requiere ámbitos adicionales, introduce una lista de ámbitos separados por comas para enviarlos al IdP. Por ejemplo, Microsoft Azure y Okta requieren el permiso offline_access.
  3. Si elige un proveedor de SAML, especifique los siguientes parámetros:
    1. EXTERNAL_IDP_NAME: introduce el nombre del proveedor de identidades. El nombre que proporciones aquí es el alias de la identidad en el sistema.
    2. EXTERNAL_IDP_ENTITY_ID: Introduce el ID de entidad del proveedor de SAML, especificado en formato URI, como: https://www.idp.com/saml.
    3. EXTERNAL_IDP_SSO_URI: introduce el URI de SSO, que es el URI del endpoint de SSO del proveedor de SAML, como https://www.idp.com/saml/sso.
    4. EXTERNAL_IDP_CERT_DATA: introduce una lista de los certificados del proveedor de identidades que se usan para verificar la respuesta SAML. Estos certificados deben estar codificados en Base64 estándar y tener formato PEM. Se admiten un máximo de dos certificados para facilitar la rotación de certificados del proveedor de identidades.
    5. EXTERNAL_IDP_USER_ATTRIBUTE: Introduce el atributo de usuario, que es el nombre del atributo de la respuesta SAML que contiene el nombre de usuario. Si falta este atributo en la respuesta SAML, la autenticación falla.
  4. EXTERNAL_IDP_INITIAL_ADMIN: En el caso de los proveedores de SAML y OIDC, introduce la cuenta del administrador inicial. El administrador inicial es la primera cuenta a la que se le concede acceso al sistema una vez completada la instalación. El valor que introduzcas debe coincidir con el tipo de reclamación. Por ejemplo, si la reclamación de usuario de un proveedor de OIDC es email, debes introducir una dirección de correo.

    Anota el nombre del administrador inicial, ya que necesitarás esta información para iniciar sesión en el sistema por primera vez una vez completada la instalación.