19. ルート管理クラスタのブートストラップ

完了までの推定時間: 7 時間

操作可能なコンポーネントのオーナー: KUB/SERV/OBJ/FILE/PNET

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

このガイドでは、内部クラスタと組織のインフラストラクチャ クラスタのコントロール プレーンとして機能するルート管理クラスタを作成します。

19.1. ルーティング構成を設定する

ブートストラップ サーバーのインストール中に静的ルートが追加されたことを確認します。静的ルートがない場合は、ブートストラッパーに静的ルートを追加します。

DATA_CIDR=$(kubectl get cidrclaim -n gpc-system instance-external-cidr -o jsonpath={.spec.ipv4Spec.staticCidrBlocks[0]})
DATA_GATEWAY=$(kubectl get subnetclaims -n root control-plane-subnet -o jsonpath={.status.ipv4SubnetStatus.gateway})
ip route replace ${DATA_CIDR} via ${DATA_GATEWAY}

このルートは、ブートストラップのデータプレーン インターフェースからルート管理クラスタの API サーバーへのアクセスを提供します。GDC の API サーバーの詳細については、グローバル API サーバーとゾーン API サーバーをご覧ください。

19.2. ルート管理クラスタを作成する

次のコマンドは、3 つのコントロール プレーン ノードを持つルート管理クラスタを作成します。デフォルトのテナント モードはマルチテナント モードです。

gdcloud system admin-cluster install -v=3 \
  --tenant-mode=multi \
  --root-admin-node-count=3 \
  --generate-admin-yaml \
  --addon-manager-manifests-set harbor.postgresqlHA.enabled=true \
  --addon-manager-manifests-set harbor.productionEnvironment.enabled=true \
  --addon-manager-manifests-set storage.mode=ontap \
  --addon-manager-manifests-set gpuFeature.enabled=true \
  --addon-manager-manifests-set rootAdmin.controller.adminLBPoolSize=23 \
  --addon-manager-manifests-set rootAdmin.controller.systemLBPoolSize=60 \
  --addon-manager-manifests-set network.noInternalSubnet=false \
  --addon-manager-manifests-set minStage=FEATURE_THRESHOLD

ルート管理クラスタを作成するには、クラスタ CR の構成ファイルが必要です。デフォルトでは、構成は自動的に生成されます。フラグ --generate-admin-yamlfalse に設定し、--admin-yaml-path を指定してターゲット構成パスを参照するようにすることで、クラスタ構成をカスタマイズすることもできます。

ルート管理クラスタのインストールが完了すると、ルート管理クラスタの kubeconfig/root/release/root-admin/root-admin-kubeconfig に保存されます。

クラスタのインストール後に、ユーザー管理者ユーザー インターフェース(UI)の URL が出力されます。後のオペレーションで使用するために、この値を覚えておきます。次のコマンドを使用して取得することもできます。

gdcloud system admin-cluster describe

19.3. コンポーネントをルート管理クラスタにデプロイする

次のコマンドは、操作可能なコンポーネント ライフサイクル テンプレートをルート管理クラスタにデプロイします。

gdcloud system component deploy --kubeconfig KUBECONFIG --names=* --pivot-from=/root/.kube/config

19.4. ルート管理者の機能ゲートを構成する

production と異なる機能ステージのしきい値がある場合は、OOPS-P0072 に従って、しきい値に合わせて機能ゲートを更新する必要があります。

19.5. ブートストラッパーでスタブ リゾルバを構成する

次のコマンドを使用して、ブートストラップで DNS スタブ リゾルバを設定します。コンソールにアクセスするには、このスタブ リゾルバが必要です。

gdcloud system dns install

この構成により、次の図に示すように、すべての組織のドメイン名がブートストラッパーから解決可能になります。

19.6. iLo IP アドレスを設定する

次の手順では、管理ノードの ILO IP アドレスを static に設定します。

  ADMIN_NODE=NODE NAME
  RACK=$(kubectl --kubeconfig KUBECONFIG get servers -n gpc-system $ADMIN_NODE -o jsonpath='{.metadata.labels.system\.private\.gdc\.goog/rack-name}')
  ILO_IP=$(kubectl --kubeconfig KUBECONFIG get servers -n gpc-system $ADMIN_NODE -o jsonpath='{.spec.bmc.ip}')
  ILO_GATEWAY=$(kubectl --kubeconfig KUBECONFIG get subnetclaims -n root $RACK-mgmtsw01-server-bmc-subnet -o jsonpath='{.status.ipv4SubnetStatus.gateway}')
  BMC_CREDS=$(kubectl --kubeconfig KUBECONFIG get servers -n gpc-system $ADMIN_NODE -o jsonpath='{.spec.bmc.credentialsRef.name}')
  ILO_USER=$(kubectl --kubeconfig KUBECONFIG get secrets -n gpc-system $BMC_CREDS -o jsonpath='{.data.username}' | base64 --decode)
  ILO_PASS=$(kubectl --kubeconfig KUBECONFIG get secrets -n gpc-system $BMC_CREDS -o jsonpath='{.data.password}' | base64 --decode)

  echo Target Server: $ADMIN_NODE
  echo ILO IP: $ILO_IP
  echo ILO Gateway: $ILO_GATEWAY
  echo ILO Username: $ILO_USER
  echo ILO Password: $ILO_PASS

クラスタ内の情報に基づいて、上記の情報が正しいことを確認します。上記の情報が正確な場合は、次のコマンドを実行します。

  1. DHCP を無効にします。

    curl -k -u ${ILO_USER}:${ILO_PASS} -H "Content-Type: application/json" -H "OData-Version: 4.0" -X PATCH https://${ILO_IP}/redfish/v1/Managers/1/EthernetInterfaces/1 --data '{"DHCPv4": {"DHCPEnabled": false}}' | jq '.'
    

    Expected result:

    MessageId: iLO.2.15.ResetRequired

  2. IP アドレスとゲートウェイを構成します。

    curl -k -u ${ILO_USER}:${ILO_PASS} -H "Content-Type: application/json" -H "OData-Version: 4.0" -X PATCH https://${ILO_IP}/redfish/v1/Managers/1/EthernetInterfaces/1 --data '{"IPv4Addresses":[{"Address":"'${ILO_IP}'","Gateway":"'${ILO_GATEWAY}'","SubnetMask":"255.255.255.0"}],"IPv4StaticAddresses": [{"Address": "'${ILO_IP}'", "Gateway": "'${ILO_GATEWAY}'", "SubnetMask": "255.255.255.0"}]}' | jq .
    

    Expected result:

    MessageId: Base.1.4.Success

  3. iLO マネージャーをリセットします。

    curl -k -u ${ILO_USER}:${ILO_PASS}  -H "Content-Type: application/json" -H "OData-Version: 4.0" https://${ILO_IP}/redfish/v1/Managers/1/Actions/Manager.Reset --data '{"ResetType":"ForceRestart"}' -X POST | jq .
    

    Expected result:

    MessageId: iLO.2.15.ResetInProgress

  4. イーサネットの設定が適用されていることを確認します。レスポンスがハングしている場合は、リセットが完了していません。現在の curl コマンドをキャンセルし、20 秒待ってからもう一度お試しください。

    curl --insecure -u ${ILO_USER}:${ILO_PASS} https://${ILO_IP}/redfish/v1/Managers/1/EthernetInterfaces/1 -X GET | jq .
    

各ステップの HTTP 戻り値が想定される結果と一致することを確認して、成功を確認します。

クラスタに存在するすべてのルート管理者ノードに対して、前の手順を繰り返します。

19.7. OI ネットワークと Google Distributed Cloud(GDC)のエアギャップ接続を確立する

このセクションでは、接続を確立するために Operations Suite Infrastructure(OI)と Distributed Cloud ネットワークに構成ファイルをプロビジョニングする方法について説明します。

これらの手順では、一部の Distributed Cloud ファイルへのアクセスと、ランタイム ネットワーク情報を取得するための Distributed Cloud インスタンスのルート管理クラスタへの接続が必要です。

19.7.1. 始める前に

デプロイ プロセスのこの段階では、次のすべてが当てはまる必要があります。

  1. 両方の OIR スイッチがケーブル接続され、電源がオンになり、適切なバージョンにアップグレードされ、ベース構成と ACL 構成が適用されている。

  2. 両方の OIF ファイアウォールがケーブル接続され、電源がオンになり、適切なバージョンにアップグレードされ、FIPS-CC モードが有効になり、基本構成が適用されている。

  3. Distributed Cloud 接続のプロビジョニング全体を完了するには、Distributed Cloud インスタンスでネットワーク ブートストラップが完了し、kind クラスタからルート管理者クラスタに移動している必要があります。

19.7.2. 環境を準備する

次の手順に備えて、次の情報を収集し、環境変数を設定して環境を準備します。

OI は、ローカルまたはリモートの 2 つの方法で接続できます。ローカル接続は、同じデータセンター内のラック間のファイバー接続を使用して、OI を Distributed Cloud に直接接続します。リモート接続は、長距離トランスポートを使用して別のロケーションに接続します。この仕様は、Distributed Cloud 相互接続構成のプロビジョニングに必要な interconnect.yaml ファイルで指定できます。このファイルには、GDC 相互接続の構成に必要なすべての情報が含まれています。

19.7.2.1. 相互接続 YAML 仕様

属性
説明

zones
[ ] map
OI デプロイが接続する必要がある Distributed Cloud セルに関する情報。

Distributed Cloud セルのリストに接続するには、各ゾーンの各 Distributed Cloud セルの情報を含む zones のリストを指定します。
ゾーン オプション
例:
zones:
- zoneName: kb
- uplinkSpeed: 10
localInstanceIDs: 2

remoteInstanceIDs:
- 1
- cellCfg: path/to/cellcfg

- zoneName: ah
- uplinkSpeed: 100
localInstanceIDs: 3

- cellCfg: path/to/cellcfg

19.7.2.2. ゾーン オプション

interconnect.yaml ファイル内の Distributed Cloud セルに関する情報を伝えます。

属性
説明
使用量
zoneName
文字列
OI デプロイが接続する必要がある Distributed Cloud セルの略称。
zones:
- zoneName: kb
uplinkSpeed
uint32
(省略可)接続の上りリンク速度(10 または 100)を指定します。 値:10100
デフォルト: 10

uplinkSpeed: 100
localInstance
int
ocit.yaml ファイルの OI デプロイ サイトの InstanceID
ローカル接続は、同じデータセンター内のラック間の光ファイバー接続を使用して、オペレーション スイート インフラストラクチャ コア ラック(OIR)サイトを Distributed Cloud に直接接続します。
zones:
- zoneName: kb
localInstanceIDs: 1
remoteInstance
[ ] int
ocit.yaml ファイルの OI デプロイサイトの InstanceID(s)
リモート接続は、長距離転送を使用して別のロケーションに接続します。remoteInstance 値のリストを指定して、すべての OIR サイトの構成を生成し、指定された Distributed Cloud セルに接続できます。
zones:
- zoneName: kb
remoteInstanceIDs:
- 1



zones:
- zoneName: kb
remoteInstanceIDs:
- 1

- 2

- 3



ローカル接続の場合は、interconnect.yaml ファイルを次のように構成します。

zones:
  - zoneName: ah
    uplinkSpeed: 100
    localInstanceID: 1
    cellCfg: /path/to/cellcfg

リモート接続の場合は、interconnect.yaml ファイルを次のように構成します。

zones:
  - zoneName: ah
    uplinkSpeed: 100
      remoteInstanceIDs:
      - 2
    cellCfg: /path/to/cellcfg

マルチサイト OI デプロイの場合は、interconnect.yaml ファイルを次のように指定します。

zones:
  - zoneName: ah
    uplinkSpeed: 100
    localInstanceID: 1
    remoteInstanceIDs:
      - 2
    cellCfg: /path/to/cellcfg

19.7.3. スイッチ構成を生成する

これらの手順では、Distributed Cloud への接続をプロビジョニングするためにネットワーク デバイスに適用するパッチ構成が生成されます。

occonfigtool generate cell config -c /path/to/interconnect.yaml -o path/to/ocit.yaml

これにより、サイトごとに次の構成ファイルが生成されます。

構成ファイル デバイス 関数
occoresw101.incremental occoresw101 Distributed Cloud インスタンスへの接続用にデバイスにパッチを適用する構成
occoresw101.acl occoresw101 分散クラウド ネットワークでトラフィックの適用を行うための ACL をパッチ適用する構成。
occoresw102.incremental occoresw102 Distributed Cloud インスタンスへの接続用にデバイスにパッチを適用する構成
occoresw102.acl occoresw102 分散クラウド ネットワークでトラフィックの適用を行うための ACL をパッチ適用する構成。
ocsw101.incremental ocs1w01 Distributed Cloud インスタンスへの接続用にデバイスにパッチを適用する構成
ocsw101.acl ocsw101 分散クラウド ネットワークでトラフィックの適用を行うための ACL をパッチ適用する構成。
ocsw102.incremental ocsw102 Distributed Cloud インスタンスへの接続用にデバイスにパッチを適用する構成
ocsw102.acl ocsw102 分散クラウド ネットワークでトラフィックの適用を行うための ACL をパッチ適用する構成。

19.7.4. ファイアウォール ポリシーを生成する

ファイアウォール ルールを生成するには、occonfigtool がルート管理クラスタの Kubernetes API にアクセスする必要があります。KUBECONFIG 環境変数が root-admin-kubeconfig に設定されていることを確認します。

export KUBECONFIG=/root/release/root-admin/root-admin-kubeconfig
export OCIT_CONFIG_FILE=/path/to/ocit.yaml

次のコマンドを実行して、ファイアウォール ルールを生成します。

occonfigtool generate fwrules -o ${OCIT_CONFIG_FILE:?}
構成ファイル デバイス 関数
firewall-rules.base occorefw01 Distributed Cloud インスタンスへの接続用にデバイスにパッチを適用する構成

19.7.5. 構成を適用する

出力ファイルを使用して、前の手順と同じ手順で、スイッチファイアウォールの各ネットワーク デバイスに構成を適用します。

19.8. Distributed Cloud RoutePolicy リソースを更新する

Distributed Cloud は、ルートポリシーを使用して、ルーティング テーブルにアドバタイズできるネットワークを適用します。

OI を外部ネットワークとして追加する場合は、新しいネットワークを想定するように RoutePolicy CR を更新する必要があります。

これには、kubectl を使用して root-admin-cluster にアクセスする必要があります。適切な KUBECONFIG 変数が設定されていることを確認します。

export KUBECONFIG=/root/deploy/root-admin/root-admin-kubeconfig

確認するには、次の操作を行います。

kubectl get routepolicy -n gpc-system

次のような出力が表示されます。

NAME                                     AGE
customerpeering-routepolicy              19d
datacenter-routepolicy                   19d
mgmtnetworkoperationcenter-routepolicy   19d
networkoperationcenter-routepolicy       19d

これらの手順では、networkoperationcenter-routepolicymgmtnetworkoperationcenter-routepolicy に焦点を当てます。

19.8.1.1. データ ネットワーク ルートポリシーを修正する

ocinfo.opscenter.local.txt から、次のサブネット(ネットワークとプレフィックス長を含む)を取得します。

  • OCCORE-SERVERS(次の例では $OCCORE_SERVERS_NET として使用)
  • OC-WORKSTATIONS(次の例では $OC_WORKSTATIONS_NET として使用)

次の変数を入力して、これらの値を使用してルートポリシーを調整します。

export OCCORE_SERVERS_NET=$OCCORE_SERVERS_NET
export OC_WORKSTATIONS_NET=$OC_WORKSTATIONS_NET

次に例を示します。

export OCCORE_SERVERS_NET=172.21.0.0/24
export OC_WORKSTATIONS_NET=172.21.32.0/24

環境変数を設定したら、次の kubectl コマンドを実行します。

kubectl patch routepolicy/networkoperationcenter-routepolicy -n gpc-system \
  --type=json -p="[
    {
        'op': 'add',
        'path': '/spec/in/ipPrefixList/0',
        'value': {
            'action': 'Permit',
            'ipPrefix': '${OCCORE_SERVERS_NET:?}',
            'prefixLengthMatchers': [
                {
                    'operator': 'LE',
                    'prefixLength': 32
                }
            ]
        }
    }
]"

kubectl patch routepolicy/networkoperationcenter-routepolicy -n gpc-system \
  --type=json -p="[
    {
        'op': 'add',
        'path': '/spec/in/ipPrefixList/0',
        'value': {
            'action': 'Permit',
            'ipPrefix': '${OC_WORKSTATIONS_NET:?}',
            'prefixLengthMatchers': [
                {
                    'operator': 'LE',
                    'prefixLength': 32
                }
            ]
        }
    }
]"

出力例:

routepolicy.system.private.gdc.goog/networkoperationcenter-routepolicy patched

19.8.1.2. パッチ管理ネットワーク ルートポリシー

ocinfo.opscenter.local.txt から、次のサブネット(ネットワークとプレフィックス長を含む)を取得します。

  • OCCORE-JUMPHOSTS(次の例では $OCCORE_JUMPHOSTS_NET として使用)
  • OCCORE-ILOS(次の例では $OCCORE_ILOS_NET として使用)

次の変数を入力して、これらの値を使用してルートポリシーを調整します。

export OCCORE_JUMPHOSTS_NET=$OCCORE_JUMPHOSTS_NET
export OCCORE_ILOS_NET=$OCCORE_ILOS_NET

次に例を示します。

export OCCORE_JUMPHOSTS_NET=172.21.2.0/27
export OCCORE_ILOS_NET=172.21.2.32/27

環境変数を設定したら、次の kubectl コマンドを実行します。

kubectl patch routepolicy/mgmtnetworkoperationcenter-routepolicy -n gpc-system \
  --type=json -p="[
    {
        'op': 'add',
        'path': '/spec/in/ipPrefixList/0',
        'value': {
            'action': 'Permit',
            'ipPrefix': '${OCCORE_JUMPHOSTS_NET:?}',
            'prefixLengthMatchers': [
                {
                    'operator': 'LE',
                    'prefixLength': 32
                }
            ]
        }
    }
]"

kubectl patch routepolicy/mgmtnetworkoperationcenter-routepolicy -n gpc-system \
  --type=json -p="[
    {
        'op': 'add',
        'path': '/spec/in/ipPrefixList/0',
        'value': {
            'action': 'Permit',
            'ipPrefix': '${OCCORE_ILOS_NET:?}',
            'prefixLengthMatchers': [
                {
                    'operator': 'LE',
                    'prefixLength': 32
                }
            ]
        }
    }
]"

出力例:

routepolicy.system.private.gdc.goog/mgmtnetworkoperationcenter-routepolicy patched

19.9. OI Distributed Cloud のネットワーク接続を検証する

このデプロイの時点で、次の条件を満たしている必要があります。

  • occoresw101occoresw102 は、baseaclincrementalincremental-acl の構成ファイルで構成されています。
  • ocsw101ocsw102 の両方が baseaclincrementalincremental-acl の構成ファイルで構成されています。
  • occorefw101occoref102 は、base 構成ファイルと firewall-rules.base 構成ファイルで構成されています。
  • データセンターとオペレーション センター間のアップリンクが接続され、運用可能になっている。
  • Distributed Cloud 間の物理アップリンクが検証されます。

上記の条件のいずれかが満たされていない場合、現在の状態によって出力が大きく異なる可能性があり、本番環境で期待どおりの動作が生成されない可能性があります。

19.9.1. 予想される出力

次のスニペットは、次のコマンドの既知の良好な環境からの出力を示しています。

  • show ip bgp summary vrf all
  • show ip bgp vrf all
  • show ip route vrf all
  • show lldp neighbors

これらのスニペットは、同じコマンドを使用して本番環境と比較できます。

19.9.2. キーの検証

次の出力で確認すべき主な事項は次のとおりです。

  • BGP セッションが IdleActiveClosing の状態になっていない。
  • すべての BGP セッションで State/PrxRcd 値が 0 より大きい。
  • すべての BGP セッションに、継続的に増加する Up/Down タイマーが表示されます。
  • 分散クラウドの externalCIDR プレフィックス(CIQ にあります)は、GDCH-DATAGDCH-DATA-TRANSITOC-WORKSTATIONSOCCORE-SERVERS の各 VRF のルーティング テーブルと BGP テーブルに存在します。
  • Distributed Cloud oobManagementCIDRsCIQ にあります)は、GDCH-MGMTGDCH-MGMT-TRANSITHW-INFRA の各 VRF のルーティング テーブルと BGP テーブルに存在します。

19.9.3. OCCORESW

次の表に、Distributed Cloud 相互接続の各 occore switch で想定される出力を示します。この手順の前に、すべてのネットワーク検証を完了する必要があります。ここで説明する BGP ネイバーとルートは、前述の BGP ネイバーとルートとともに存在する必要があります。すべてのスイッチで出力を検証します。

VRF
BGP ネイバー
BGP ネイバーから受信した想定ルート
BGP ネイバーにアドバタイズされるルート
GDCH-DATA-TRANSIT AGGSW01
  • Distributed Cloud セルのサブネット /19 を使用して集約された概要アドレス
  • OCCORE-SERVERS プレフィックス
  • OC-WORKSTATION 接頭辞
GDCH-DATA-TRANSIT AGGSW02
  • Distributed Cloud セルのサブネット /19 を使用して集約された概要アドレス
  • OCCORE-SERVERS プレフィックス
  • OC-WORKSTATION 接頭辞
GDCH-DATA-TRANSIT OCCOREFW から OC-DATA VRF への HairPinned BGP セッション
  • Distributed Cloud セルの集約概要アドレス(サブネット /19 を含む)
OC-DATA OCSW01 BGP セッション
  • Distributed Cloud セルの集約概要アドレス(サブネット /19 を含む)
OC-DATA OCSW02 BGP セッション
  • Distributed Cloud セルの集約概要アドレス(サブネット /19 を含む)
OC-DATA OCCORESW BGP セッション
  • Distributed Cloud セルの集約概要アドレス(サブネット /19 を含む)
GDCH-MGMT-TRANSIT MGMTAGGSW01
  • すべての GDCH OOB 管理ネットワークの集約された概要アドレス(サブネット /24 を含む)
  • OCCORE-JUMPHOSTS プレフィックス
  • OCCORE-ILOS 接頭辞
GDCH-MGMT-TRANSIT MGMTAGGSW02
  • すべての Distributed Cloud OOB 管理ネットワークの集約された概要アドレス(サブネット /24 を含む)
  • OCCORE-JUMPHOSTS プレフィックス
  • OCCORE-ILOS 接頭辞
GDCH-MGMT-TRANSIT OCCORF を使用して HW-INFRA VRF にヘアピン接続された BGP セッション
  • すべての Distributed Cloud OOB 管理ネットワークの集約された概要アドレス(サブネット /24 を含む)

19.9.4. OCSW

次の表に、Distributed Cloud 相互接続手順の実行後の各 oc switch の出力の予想を示します。この手順の前に、すべてのネットワーク検証を完了する必要があります。ここで説明する BGP ネイバーとルートは、前述の BGP ネイバーとルートとともに存在する必要があります。すべてのスイッチで出力を検証します。

VRF
BGP ネイバー
BGP ネイバーから受信した想定ルート
OC-DATA OCCORESW01 BGP セッション
  • GDCH セルの集約された概要アドレス(サブネット /19)
OC-DATA OCCORESW02 BGP セッション
  • GDCH セルの集約された概要アドレス(サブネット /19)

出力コマンド スニペットは、Distributed Cloud の検証コマンドで確認できます。

19.9.5. マルチサイト OI デプロイの検証

以降のセクションでは、相互接続された複数の Distributed Cloud セルを使用してマルチサイト デプロイを検証する方法について説明します。この段階では、2 つのサイトを含むトポロジは次のようになります。

2 つの GDCH セルで相互接続された 2 つの OC IT サイト

  • 青色の接続は、サイト 1 が Distributed Cloud セル 01 とセル 02 に接続されていることを示しています。
  • 赤い接続は、サイト 2 が Distributed Cloud セル 01 とセル 02 に接続されていることを示しています。
  • 緑色の接続は、サイト 1 とサイト 2 の相互接続を示しています。

すべてのスイッチのすべてのサイトで、これらのセクションに記載されている手順を完了する必要があります。

  1. ネットワークの検証
  2. ネットワーク マルチサイトの検証
  3. ネットワーク分散型クラウドの検証

19.10. OI ネットワークの最終手順を実施する

この段階では、すべての構成が生成され、すべてのデバイスに適用されている必要があります。

ネットワーク アクセス リストは、特定の想定されるフローを許可する状態になり、すべてのトラフィックを許可するデフォルト ルールも設定されています。

ここで、デプロイを運用に引き渡す必要があります。Operational Suite の機能、実装、提供されるサービスは、お客様によって異なります。そのため、トラフィック要件はさまざまです。

運用部門がデプロイを承認すると、ACL を処理してネットワーク トラフィック フローを完全に保護するのは運用部門のタスクになります。

これらのタスクを実行するために、運用ランブックが提供されます。

19.11. オブジェクト ストレージをアップグレードする

オブジェクト ストレージのブートストラップ中に、ノードに StorageGRID のサポートされている最新のマイナー バージョンがインストールされました。ただし、ターゲット バージョンを最新のホットフィックス パッチ バージョンに更新する必要がある場合があります。

次のコマンドを使用して、リリース メタデータからターゲット StorageGRID バージョンを特定します。

kubectl get releasemetadata -o jsonpath='{.items[0].spec.infraComponents.objectStorage.storageGridOSImageVersion}'

StorageGRID の現在のバージョンがターゲット バージョンでない場合は、ターゲット バージョンでオブジェクト ストレージのアップグレードを実行します。

19.12. 発生しうる問題

19.12.1. ストレージ仮想マシンが調整されない

要約: ルート管理クラスタの作成中にストレージ仮想マシンが準備完了にならない。

問題: ルート管理クラスタを作成した後、Storage Virtual Machine リソースが調整されず、次のような警告イベントが表示されます。

StorageVirtualMachine Reconcile error, retrying: SVM status update failed,
error: failed to get network interface info: Get
"https://172.22.147.128/api/network/ip/interfaces?fields=%2A%2A&max_records=4096&svm.name=root-admin":
EOF

セキュリティ上の理由で SSL を禁止するストレージ クラスタの構成ミスが原因で、この問題が発生する可能性があります。

回避策:

シリアルに接続するか、SSH を使用してストレージ クラスタに接続し、次のコマンドを実行します。

security ssl modify -server-enabled true -client-enabled true -vserver
CELL_ID-stge-clus-01

接続後、Storage Virtual Machine リソースは調整できます。

19.12.2. ファイアウォール TLS サーバー証明書のインストールでブートストラップが失敗する

ステップ 20 で説明されているルート管理者コントロール プレーンのブートストラップ タスクを実行すると、TLSServerCertification エラーが発生することがあります。

回避策:

ファイアウォール サーバー証明書のインストールを再試行するには、IO サービス マニュアル FW-R1008 に記載されている手順を参照してください。インストールが正常に完了したら、--start-phase コマンドとともに gdcloud コマンドを使用して、root-admin ブートストラップを続行します。