22. グローバル エニーキャスト GlobalAddressPoolClaim を作成する

推定所要時間: 15 分

操作可能なコンポーネントのオーナー: KUB

スキル プロファイル: デプロイ エンジニア

GlobalAddressPoolClaim リソースは、Google Distributed Cloud(GDC)のエアギャップ デプロイですべてのエニーキャスト IP アドレスを割り当てるソースです。

グローバル コントロール プレーンのブートストラップ中に初期 GlobalAddressPoolClaim リソースを作成するには、エニーキャスト CIDR が必要です。anycastCIDR フィールドは、マルチゾーン エニーキャスト ネットワークに使用される IP アドレスのブロックです。

GlobalAddressPoolClaim リソースを作成する手順は次のとおりです。

  1. GlobalAddressPoolClaim カスタム リソースを作成します。

    gdcloud system ipam create-gapc --anycast-cidr ANYCAST_CIDR --output-file OUTPUT_FILE
    

    次のように置き換えます。

    • ANYCAST_CIDR: GDC デプロイ内のすべてのエニーキャスト IP アドレスの割り振り元となる最初の GlobalAddressPoolClaim の作成に使用されるエニーキャスト CIDR。例: 10.8.0.0/24
    • OUTPUT_FILE: 出力ファイルの名前。例: global-address-pool-claim.yaml

    生成された GlobalAddressPoolClaim カスタム リソース YAML ファイルの例は次のようになります。

    apiVersion: ipam.global.private.gdc.goog/v1alpha1
    kind: GlobalAddressPoolClaim
    metadata:
      namespace: gpc-system
      name: global-anycast-pool-ipv4-gapc
    spec:
      ipFamily: IPv4
      staticIPRanges:
      - size: 256
        startIPAddress: 10.8.0.0
    
  2. OUTPUT_FILE で、global-anycast-pool-ipv4-gapc から区切る「---」行を 1 つ追加して、GlobalAddressPoolClaim をもう 1 つ追加します。追加部分は次のとおりです。

    ---
    apiVersion: ipam.global.private.gdc.goog/v1alpha1
    kind: GlobalAddressPoolClaim
    metadata:
      namespace: gpc-system
      name: root-anycast-pool-ipv4-gapc
    spec:
      ipFamily: IPv4
      parentReference:
        name: global-anycast-pool-ipv4-gapc
        type: GlobalAddressPoolClaim
      size: 30
    
  3. ルート管理クラスタの管理者 Kubernetes 構成を使用して、グローバル API の管理者 Kubernetes 構成を取得します。

    kubectl get secrets -n global-kube-system kube-admin-test-kubeconfig -ojsonpath="{.data.value}" | base64 -d > HOME_DIRECTORY/root-global-kubeconfig
    
  4. ルート管理クラスタの管理者 Kubernetes 構成を使用して、グローバル API のポートを転送します。

    kubectl port-forward -n global-kube-system service/kube-svc 6449:6449 &> /dev/null &
    

    このステップでは、ポート転送コマンドがバックグラウンドで実行されます。プロセスが予期せず停止した場合は、同じコマンドを再実行して再起動できます。

  5. OUTPUT_FILE をグローバル ルート管理クラスタに適用します。

     kubectl apply -f OUTPUT_FILE --kubeconfig=GLOBAL_ROOT_ADMIN_KUBECONFIG
    
  6. GlobalAddressPoolClaim リソースが GDC 環境で使用可能であることを確認します。

    kubectl --kubeconfig HOME_DIRECTORY/root-global-kubeconfig get globalAddressPoolClaim -A
    

    出力には、次の 2 つのエントリが含まれている必要があります。READYTrue として表示されます。

    NAMESPACE      NAME                                        PARENTNAME                      READY   STARTIP
    gpc-system     global-anycast-pool-ipv4-gapc                                               True    10.201.128.0
    gpc-system     root-anycast-pool-ipv4-gapc                 global-anycast-pool-ipv4-gapc   True    10.201.128.0