创建配置文件

本页面介绍了如何创建用于配置 Google Distributed Cloud (GDC) 气隙设备的输入配置文件。

创建输入配置文件

  1. 设备配置流程使用输入 YAML 文件。创建此文件时,请务必采用与所提供的模板完全相同的格式。标记为“可选”的字段或部分必须省略,而不能留空。

  2. 以下是一个输入配置文件示例。

    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
    

边界网关协议 (BGP) 信息

边界网关协议 (BGP) 可与外部网络交换路由信息。这些网络通过自治系统编号 (ASN) 进行标识。 为确保 GDC 空气隔离设备与外部网络之间的连接正常,所有 ASN 值都必须是全局唯一的。

  1. DATAPLANE_ASN:分配给 GDC 经过网闸隔离的设备实例的数据平面的 ASN。例如:65204

  2. CUSTOMER_ASN:分配给客户网络的数据平面的 ASN。例如 4200002002

上行链路配置是用于将 GDC 空气隔离设备实例外部连接到其他服务(例如客户网络和其他 GDC 空气隔离设备实例)的对等互连连接。这些来自 GDC 空气隔离设备实例的上行链路配置和布线对于确保与外部网络的正确连接至关重要。

  1. 对于客户对等互连所需的每个上行链路,请在 customer Peer Subnets 字段中填写上行链路项部分。如果您提供的数量与预期上行链路数量 (2) 不符,则剩余的上行链路将从外部数据平面子网分配。
  2. 对于上行链路,请指定以下内容:
    1. UPLINK_IP_FAMILY_1UPLINK_IP_FAMILY_2:指定 IP 系列子网。必须是 IPv4DualStack
      1. 如果您选择 IPv4
        1. UPLINK_IPV4_PEER_1 IPUPLINK_IPV4_PEER_2 IP:描述了在路由端口上分配的 IP 地址。如果留空,则会从对等子网块中获取。
        2. UPLINK_IPV4_NET_1UPLINK_IPV4_NET_2:输入为所提供的交换机和端口链路在客户网络上配置的对等子网块。这是一个 /31 子网。例如 172.16.255.148/31
        3. UPLINK_IPV4_GW_1UPLINK_IPV4_GW_2:输入表示 /31 对等子网中面向客户的 IP 地址的 IP 地址。例如 172.16.255.148
      2. 如果您选择 DualStack
        1. UPLINK_IPV4_PEER_1 IPUPLINK_IPV4_PEER_2 IP:描述了在路由端口上分配的 IPv4 地址。如果留空,则会从对等子网块中获取。
        2. UPLINK_IPV4_NET_1UPLINK_IPV4_NET_2:对于 IPv4,请输入为所提供的交换机和端口链路在客户网络上配置的对等子网块。这是一个 /31 子网。例如 172.16.255.148/31
        3. UPLINK_IPV4_GW_1UPLINK_IPV4_GW_2:对于 IPv4,请输入表示/31对等子网中面向客户的 IP 地址的 IPv4 地址。例如 172.16.255.148
        4. UPLINK_IPV6_PEER_1 IPUPLINK_IPV6_PEER_2 IP:描述了在路由端口上分配的 IPv6 地址。如果留空,则会从对等子网块中获取。
        5. UPLINK_IPV6_NET_1UPLINK_IPV6_NET_2:对于 IPv6,请输入为所提供的交换机和端口链接在客户网络上配置的对等子网块。这是一个 /127 子网。例如 FC00::/127
        6. UPLINK_IPV6_GW_1UPLINK_IPV6_GW_2:对于 IPv6,请输入表示 /127 对等子网中面向客户的 IP 地址的 IPv6 地址。例如 FC00::

域名系统 (DNS) 信息

  1. DELEGATED_SUBDOMAIN:从父 DNS 服务器为 GDC 气隙设备实例输入 DNS 委托的子域名。此完全限定域名用作 GDC 气隙设备服务(例如集群管理)的后缀。预期格式为 LOCATION.SUFFIX

    替换以下内容:

    • LOCATION:GDC 气隙式设备部署的可用区标识符,例如 us-central1-a
    • SUFFIX:任何有效的 DNS 后缀,例如 zone1.google.gdch.testus-central1-a.gdch.customer

数据平面网络(外部 CIDR)

  1. 对于数据平面 IP 系列网络,请指定子网是 IPv4 还是 DualStack。在 externalCIDR 部分中,将 IP_FAMILY 替换为 IPv4DualStack
    1. 如果您选择 IPv4,
      1. 输入最小大小为 23 的 IPv4 网络地址,用于外部数据平面网络。此网络用于外部可访问的服务,例如管理 API 服务器和存储接口。网络地址必须是网络中预先分配的连续 IP 块。例如,将 EXTERNAL_NETWORK_IPV4 替换为 10.100.101.0/23
    2. 如果您选择 DualStack,请执行以下操作:
      1. 输入最小大小为 23 的 IPv4 网络地址,用于外部数据平面网络。此网络用于外部可访问的服务,例如管理 API 服务器和存储接口。网络地址必须是网络中预先分配的连续 IP 块。例如,将 EXTERNAL_NETWORK_IPV4 替换为 10.100.101.0/23
      2. 输入最小大小为 64 的 IPv6 网络地址。此 IP 块分为两部分,前半部分用作外部数据平面网络,后半部分用作内部数据平面网络。例如,将 EXTERNAL_NETWORK_IPV6 替换为 FC00::/64

可选:外部硬件安全模块 (HSM) 信息

HSM 设备托管加密密钥,并使用 KMIP(密钥管理互操作性协议)执行加密操作。您可以将 HSM 与 NetApp ONTAP Select (OTS) 搭配使用以进行存储。如果您想使用外部 NTP 服务器,请填写 externalHSM 部分。

开始之前,请先配置 HSM 网络

  1. EXTERNAL_HSM_PR_ADDR:主 KMIP 服务的地址。采用 (IP|DNS):Port 格式。如果省略端口,则系统会使用默认端口 5696。

    • 对于 IP,输入 KMIP 服务的 IP 网络地址。例如 8.8.8.8:5696
    • 对于 DNS 名称,请输入 KMIP 服务的完全限定域名。例如 te.us-central1-a:5696
  2. EXTERNAL_HSM_SE_ADDR:辅助 KMIP 服务的地址。采用 (IP|DNS):Port 格式。如果省略端口,则系统会使用默认端口 5696。您最多可以指定 3 个辅助地址,以英文逗号分隔。

  3. EXTERNAL_HSM_CA_CERT:输入 CACert。CA 证书是 KMIP 服务的签名证书。

  4. EXTERNAL_HSM_CLIENT_CERT:输入用于连接到外部 HSM 的客户端证书

  5. EXTERNAL_HSM_CLIENT_KEY:输入与用于连接到外部 HSM 的客户端证书关联的客户端密钥

可选:关联身份提供方

您可以连接到自己现有的身份提供方 (IdP) 以进行身份和访问权限管理,也可以设置内置的 Keycloak IdP。如果您想使用自己的身份提供方,请填写 externalIDP 部分。

  1. 选择要连接的身份提供方类型:OIDC (OpenID Connect) 或 SAML(安全断言标记语言)。
  2. 如果您选择 OIDC 提供方,请指定以下参数:
    1. EXTERNAL_IDP_NAME:输入 IdP 的名称。您在此处提供的名称是系统中身份的别名。
    2. EXTERNAL_IDP_ISSUER_URI:输入颁发者 URI。颁发者 URI 必须指向 .well-known/openid-configuration 内的级别。客户端应用会向此网址发送授权请求。Kubernetes API 服务器使用此网址来发现用于验证令牌的公钥。
    3. EXTERNAL_IDP_CA_DATA:为 IdP 输入 证书授权机构数据的 base64 编码的 PEM 编码证书。如需了解详情,请参阅 https://en.wikipedia.org/wiki/Privacy-Enhanced_Mail
      1. 如需创建字符串,请将证书(包括标头)进行 base64 编码。
      2. 将生成的字符串添加为单独的一行。例如:LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tC...k1JSUN2RENDQWFT==
    4. EXTERNAL_IDP_CLIENT_ID:输入向 IdP 发出身份验证请求的客户端应用的客户端 ID
    5. EXTERNAL_IDP_CLIENT_SECRET:输入客户端密钥,这是您的 IdP 与 GDC 隔离环境设备之间的共享密钥。
    6. EXTERNAL_IDP_USER_CLAIM:输入用于标识每个用户的用户声明字段。这是 OIDC ID 令牌中包含用户名的声明的名称。如果 ID 令牌缺少此声明,用户将无法进行身份验证。许多提供商的默认声明是 sub。您可以选择其他声明,例如 emailname,具体取决于身份提供方。email 以外的声明会以颁发者网址作为前缀,以防止命名冲突。
    7. EXTERNAL_IDP_SCOPES:如果您的身份提供方需要其他范围,请输入以英文逗号分隔的范围列表,以发送到 IDP。例如,Microsoft Azure 和 Okta 需要 offline_access 范围。
  3. 如果您选择 SAML 提供方,请指定以下参数:
    1. EXTERNAL_IDP_NAME:输入 IdP 的名称。您在此处提供的名称是系统中身份的别名。
    2. EXTERNAL_IDP_ENTITY_ID:以 URI 格式输入 SAML 提供方的实体 ID,例如:https://www.idp.com/saml
    3. EXTERNAL_IDP_SSO_URI:输入 SSO URI,即 SAML 提供方的 SSO 端点的 URI,例如 https://www.idp.com/saml/sso
    4. EXTERNAL_IDP_CERT_DATA:输入用于验证 SAML 响应的 IDP 证书的列表。这些证书必须采用标准的 Base64 编码和 PEM 格式。最多支持两个证书,以便于 IDP 证书轮替。
    5. EXTERNAL_IDP_USER_ATTRIBUTE:输入用户属性,即 SAML 响应中包含用户名的属性的名称。如果 SAML 响应中缺少此属性,则身份验证会失败。
  4. EXTERNAL_IDP_INITIAL_ADMIN:对于 SAML 和 OIDC 提供方,请输入初始管理员的账号。初始管理员是指在安装完成后首次获得系统访问权限的账号。您输入的值必须与声明类型一致,例如,如果 OIDC 提供方的用户声明设置为 email,则您输入的值必须是电子邮件地址。

    记录初始管理员的名称,因为您需要此信息才能在安装完成后首次登录系统。