Num universo isolado do Google Distributed Cloud (GDC), pode criar organizações v1 ou v2 que abrangem várias zonas. No entanto, existem dois cenários de criação de organizações que requerem configurações de CIDR adicionais antes da criação da organização:
- Crie uma organização da v1 numa nova zona.
- Crie uma organização v2 numa zona que tinha anteriormente uma organização v1.
As secções seguintes abordam estes cenários e os pré-requisitos que tem de concluir antes de criar a organização.
Configure as definições de CIDR para a organização v1 na nova zona
Por predefinição, não pode aprovisionar uma organização v1 numa nova zona, uma vez que muitas reivindicações CIDR necessárias para a organização v1 já estão atribuídas à organização raiz.
Também tem de usar a funcionalidade de endereço IP personalizado existente para a organização da v1.
Planeie as definições de CIDR
Reúna as definições de CIDR existentes configuradas na sua zona para poder evitar a sobreposição de CIDR na sua nova organização v1.
Imprima o recurso
zone-infra-cidrCIDRClaimexistente:kubectl --kubeconfig=ROOT_ADMIN_KUBECONFIG get cidrclaim \ -n gpc-system zone-infra-cidrVerifique os campos
status.ipv4AllocationStatus.cidrBlocksestatus.ipv6AllocationStatus.cidrBlocksdo recursoCIDRClaimno resultado.Por exemplo, o recurso
CIDRClaimseguinte reservou os blocos CIDR192.0.2.0/21,198.51.100.0/26,203.0.113.0/23e2001:db8::/66:apiVersion: system.private.gdc.goog/v1alpha1 kind: CIDRClaim metadata: name: zone-infra-cidr namespace: gpc-system spec: ipv4Spec: staticCidrBlocks: - 192.0.2.0/21 - 198.51.100.0/26 - 203.0.113.0/23 ipv6Spec: staticCidrBlocks: - 2001:db8::/66 status: ipv4AllocationStatus: cidrBlocks: - 192.0.2.0/21 - 198.51.100.0/26 - 203.0.113.0/23 ipv6AllocationStatus: cidrBlocks: - 2001:db8::/66Tome nota destes blocos CIDR para poder evitar usá-los quando criar o CIDR externo personalizado e o CIDR interno personalizado para a sua organização.
Verifique o
zone-infra-cidrde cada zona e repare que os blocos CIDR existentes não são usados para que possa evitar usá-los quando criar o CIDR personalizado para a sua organização. Para mudar os contextos zonais, use a CLI gdcloud.Imprima todas as sub-redes existentes com a etiqueta
network-root-range:kubectl --kubeconfig=GLOBAL_ROOT_ADMIN_KUBECONFIG get subnet \ -l ipam.gdc.goog/usage=network-root-range -AVerifique os campos
status.ipv4Allocation.cidrestatus.ipv6Allocation.cidrpara cada recursoSubnet.Por exemplo, o seguinte
infra-vpc-root-cidrreservou o CIDR192.0.2.0/15:apiVersion: ipam.global.gdc.goog/v1 kind: Subnet metadata: labels: ipam.gdc.goog/usage: network-root-range ipam.gdc.goog/vpc: infra-vpc name: infra-vpc-root-cidr namespace: org-1 spec: ipv4Request: cidr: 192.0.2.0/15 propagationStrategy: None type: Root status: ipv4Allocation: cidr: 192.0.2.0/15Tome nota destes CIDRs para poder evitar usá-los quando criar o CIDR externo personalizado e o CIDR interno personalizado para a sua organização.
Configure um endereço IP personalizado
Como parte do processo de arranque da organização v1, são necessários CIDRs externos personalizados e CIDRs internos personalizados como entrada para o recurso personalizado global para suportar o arranque global da organização v1.OrganizationZonalConfig
Na especificação do recurso OrganizationZonalConfig, tem de adicionar as configurações de endereço IP
personalizadas para o CIDR externo e o CIDR interno. Os CIDRs externos personalizados e internos personalizados são instanciados nas reivindicações de CIDR org-namespace/org-custom-external-cidr e org-namespace/org-custom-internal-cidr, respetivamente, para a organização zonal. Todas as outras reivindicações de CIDR e reivindicações de sub-rede desta organização são secundárias destas duas reivindicações de CIDR:
...
spec:
capacities:
customIPConfig:
externalCIDRs:
- CUSTOM_EXTERNAL_CIDR
internalCIDRs:
- CUSTOM_INTERNAL_CIDR
...
O seguinte tem de ser verdadeiro para o CIDR externo personalizado e o CIDR interno personalizado:
- Único no recurso
OrganizationZonalConfigpara cada zona. - Único no recurso
OrganizationZonalConfigpara cada organização v1 existente em todas as zonas. - Não pode sobrepor-se ao
zone-infra-cidrde cada zona. - Não pode sobrepor-se a nenhuma sub-rede global com a etiqueta
ipam.gdc.goog/usage=network-root-range.
Depois de cumprir estes requisitos, pode continuar os passos de arranque predefinidos da organização para arrancar a organização v1 na nova zona.
Configure as definições de CIDR para a organização v2 na zona existente
Para aprovisionar uma organização v2 numa zona existente, tem de criar manualmente o recurso CIDRClaimgpc-system/zone-infra-cidr. Também tem de se certificar de que o bloco CIDR na nova reivindicação CIDR não se sobrepõe ao seguinte:
As
gpc-system/instance-reivindicações de CIDR na zona.Quaisquer reivindicações de CIDR
gpc-system/zone-infra-cidrougpc-system/instance-noutras zonas do universo.
Planeie as definições de CIDR
Imprima os recursos
CIDRClaimexistentes:kubectl --kubeconfig=ROOT_ADMIN_KUBECONFIG get cidrclaim -n gpc-systemVerifique os campos
status.ipv4AllocationStatus.cidrBlocksestatus.ipv6AllocationStatus.cidrBlockspara cada recursoCIDRClaimno resultado.Por exemplo, o recurso
CIDRClaimseguinte reservou os blocos CIDR192.0.2.0/21,198.51.100.0/26,203.0.113.0/23e2001:db8::/66:apiVersion: system.private.gdc.goog/v1alpha1 kind: CIDRClaim metadata: name: instance-external-cidr namespace: gpc-system spec: ipv4Spec: staticCidrBlocks: - 192.0.2.0/21 - 198.51.100.0/26 - 203.0.113.0/23 ipv6Spec: staticCidrBlocks: - 2001:db8::/66 status: ipv4AllocationStatus: cidrBlocks: - 192.0.2.0/21 - 198.51.100.0/26 - 203.0.113.0/23 ipv6AllocationStatus: cidrBlocks: - 2001:db8::/66Tome nota destes blocos CIDR para poder evitar usá-los quando criar o
zone-infra-cidrpara a sua organização v2.
Crie a reivindicação de zone-infra-cidr CIDR
Encontre e tome nota das seguintes reivindicações de CIDR com o espaço de nomes
gpc-systemem cada zona do seu universo:instance-external-cidrinstance-internal-pod-network-cidrinstance-internal-cluster-ip-cidrinstance-internal-physical-network-cidrinstance-internal-cidrzone-infra-cidr
Por exemplo, o comando seguinte devolve as reivindicações de CIDR para a zona atual:
instance-external-cidrkubectl --kubeconfig=ROOT_ADMIN_KUBECONFIG get cidrclaim -n gpc-system instance-external-cidrPara mudar os contextos zonais, use a CLI gdcloud.
Crie um recurso
CIDRClaimdenominadozone-infra-cidrque não se sobreponha às reivindicações de CIDR verificadas anteriormente:kubectl --kubeconfig=ROOT_ADMIN_KUBECONFIG apply -f - <<EOF apiVersion: system.private.gdc.goog/v1alpha1 kind: CIDRClaim metadata: name: zone-infra-cidr namespace: gpc-system spec: ipv4Spec: staticCidrBlocks: - IPV4_CIDR ipv6Spec: staticCidrBlocks: - IPV6_CIDR EOFOs CIDRs IPv4 e IPv6 têm de ser exclusivos e não podem sobrepor-se a nenhuma reivindicação de CIDR existente no espaço de nomes
gpc-systemna zona atual ou em quaisquer outras zonas existentes.instance-Verifique o estado do
zone-infra-cidrpara se certificar de que está pronto:kubectl --kubeconfig=ROOT_ADMIN_KUBECONFIG \ get cidrclaim -n gpc-system zone-infra-cidrApós a reivindicação do CIDR ser
Ready, pode continuar os passos de arranque predefinidos da organização para arrancar a organização v2 na nova zona.