7.. 設定ファイルを生成

完了までの推定時間: 3 日

操作可能なコンポーネントの所有者: INV

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

cellconfig は、Google Distributed Cloud(GDC)エアギャップ インスタンスをブートストラップするために必要です。インスタンスのハードウェア デバイスやネットワーク構成など、Distributed Cloud API オブジェクトの初期セットを定義します。

cellconfig は、YAML ファイルのディレクトリ内に整理された Kubernetes カスタム リソースのセットとしてフォーマットされます。

gdcloud CLI コマンドを実行するには、/root フォルダに作業ディレクトリを作成し、次のコマンドで $PATH 変数を変更する必要があります。

PATH=$PATH:/root/WORKING_DIRECTORY

7.1. 概要

Distributed Cloud cellconfig を作成するには、次の操作を行います。

  1. ハードウェア デバイス仕様ファイル(devices.csv)の受領を確認します。
  2. ネットワーク ケーブル仕様ファイル(cables.csv)の受信を確認します。
  3. お客様入力アンケート(CIQ)ファイル ciq.yaml を生成します。
  4. インスタンス シークレット ファイル(secrets.yaml)を生成します。
  5. デバイス ライセンス ディレクトリ(licenses/)の受信を確認します。
  6. 上記の入力を使用して gdcloud system assets create コマンドを実行し、cellconfig を作成します。

devices.csv(デバイス識別)ファイルは、以前は deid.csv ファイルと呼ばれていました。gdcloud system assets format-deid コマンドを使用すると、以前のファイルを新しいファイル形式に変換できます。

7.1.1. devices.csv

devices.csv ファイルには、Distributed Cloud インスタンス内のすべてのハードウェア デバイスが指定されています。ファイルとその想定される形式の詳細については、devices.csv のドキュメントをご覧ください。

7.1.2. cables.csv

cables.csv ファイルには、Distributed Cloud インスタンス内のハードウェア デバイス間のすべての接続の詳細が記載されています。ファイルとその想定される形式の詳細については、cables.csv のドキュメントをご覧ください。

ciq で指定された設定に応じて、cables.csv ファイルで指定されたデータ接続のセットを変更します。

まず、必要なデータ アップリンクの数を決定します。

  • すべての Distributed Cloud インスタンスで、顧客データ ネットワークへの接続を提供するには、各ボーダー リーフ スイッチに 2 つのアップリンク(合計 4 つ)が必要です。
  • ローカル OCIT インスタンスへの接続が構成されている場合は、各ボーダー リーフ スイッチに 2 つのアップリンク(合計 4 つ)が必要です。
  • リモート OIC 接続には、各ボーダー リーフスイッチに 2 つのアップリンク(合計 4 つ)が必要です。

次に、必要な管理アップリンクの数を決定します。

  • ローカル OIC インスタンスへの接続が構成されている場合は、各管理アグリゲーション スイッチに 2 つのアップリンク(合計 4 つ)が必要です。
  • リモート OCIT への接続が構成されている場合は、各管理アグリゲーション スイッチに 2 つのアップリンク(合計 4 つ)が必要です。

たとえば、現在の Distributed Cloud インスタンスがローカル OCIT に接続され、マルチゾーン相互接続を使用して他の Distributed Cloud インスタンスとピアリングされ、リモート OCIT インスタンスにも接続されている場合:

  • 各ボーダー リーフ スイッチに 6 つのアップリンクが必要(合計 12 個のデータ アップリンク)
  • 各管理アグリゲーション スイッチに 4 つのアップリンクが必要(合計 8 つの管理アップリンク)

各外部接続は、cables.csv の 2 つの行に対応する 2 本のケーブルで構成されます。

  • スイッチから、スイッチと同じラックにあるパッチパネルの背面まで接続するケーブル 1 本。例:
    • 36,kb-ab-aggsw01,Eth1/31,41,kb-ab-ppl01,c4-smf-port1-bk,(1) R8T17A + (1) R8S79A,(1) QSFP-100G-CWDM4-S + (1) F92ERQ1Q1SNM001,1 meter,,SMF,flag,Right,Link to Customer Border 05 (100G),back,kb-ab-aggsw01:Eth1/31<>kb-ab-ppl01:c4-smf-port1-bk
    • この接続では、パッチパネル デバイスのポートに -bk 接尾辞が付いている必要があります。
  • パッチパネルの前面から「疑似」外部デバイスに接続するケーブル 1 本
    • 36,kb-ab-ppl01,c4-smf-port1-ft,41,ext-kb-ab-aggsw01,Eth1/31,(1) R8T17A + (1) R8S79A,(1) QSFP-100G-CWDM4-S + (1) F92ERQ1Q1SNM001,1 meter,,SMF,flag,Right,Link to Customer Border 05 (100G),front,kb-ab-ppl01:c4-smf-port1-ft<>ext-kb-ab-aggsw01:Eth1/31
    • この接続では、パッチパネル デバイスのポートは最初の接続のポートと同じである必要がありますが、接尾辞は -bk ではなく -ft にする必要があります。
    • この接続では、「疑似」外部デバイスの名前は ext-<name-of-originating-switch> のパターンに従う必要があります。
    • この接続では、「疑似」外部デバイスのポートはスイッチの送信元ポートと一致している必要があります。

必要なアップリンク接続の総数をカウントし、cables.csv 入力ファイルに、両方のボーダー リーフスイッチと両方の管理アグリゲーション スイッチの必要なすべてのアップリンク接続のケーブル仕様が含まれていることを確認します。

新しいアップリンク接続を追加する必要がある場合:

  1. パッチパネルで未使用のポートを見つけます。
  2. 必要なアップリンク接続の新しいケーブル仕様を追加します。
  3. 新しいアップリンク接続用に、Distributed Cloud インスタンスに新しいケーブルを取り付けます。

7.1.3. ciq.yaml

ciq.yaml ファイルには、Distributed Cloud インスタンスの構成に必要なお客様の環境の詳細がすべて含まれています。ファイルとその想定される形式の詳細については、ciq.yaml のドキュメントをご覧ください。

7.1.4. secrets.yaml

secrets.yaml には、Distributed Cloud インスタンスのシークレットが含まれています。上記の入力を使用して、初期の secrets.yaml ファイル テンプレートを生成します。

gdcloud system assets generate-secrets-template \
  --devices ./devices.csv \
  --cables ./cables.csv \
  --ciq ./ciq.yaml \
  --output ./secrets.yaml

secrets.yaml を更新し、すべての TO-BE-FILLED 値を各デバイスで使用するパスワードに置き換える必要があります。8 文字以上のパスワードで保護します。

7.1.5. licenses/

licenses/ ディレクトリには、Distributed Cloud インスタンスのハードウェアとソフトウェア インフラストラクチャ コンポーネントのすべてのライセンスが含まれています。ディレクトリとその想定される形式の詳細については、ライセンスのドキュメントをご覧ください。

7.1.6. cellconfig を作成する

上記のすべての入力を使用して、cellconfig を作成します。

gdcloud system assets create \
  --devices ./devices.csv \
  --cables ./cables.csv \
  --ciq ./ciq.yaml \
  --license-dir ./licenses/ \
  --secrets secrets.yaml \
  --output ./output

詳細については、INV-E1001 または関連するエラーコードのランブックをご覧ください。

スイッチが正しくないという問題がないことを確認するには、次のコマンドを実行します。

gdcloud system preinstall install --config <cellcfg> --config-file-only

7.2. 発生しうる問題

7.2.1. セル構成のセル ID に注意する

要約: devices.csv または cables.csv に誤ったセル識別子が含まれているため、生成されたセル構成ファイルに誤ったリソース名が含まれていることがあります。

回避策: セル構成ファイルを確認して、リソース名の接頭辞が想定どおりであることを確認します。

例: セル識別子が ai の場合、すべてのリソース名は ai- で始まる必要があります。一部の URL の接頭辞が異なる場合は、事前に修正する必要があります。

7.2.2. ファイアウォールの MAC アドレスがありません

要約: HPE から受け取った devices.csv ファイルに Palo Alto ファイアウォールの MAC アドレスがありません。

回避策:

初めての場合は、デフォルトの認証情報を使用して Palo Alto アプライアンスにアクセスします。

認証情報が指定されていない場合は、この Palo Alto ガイドに沿って認証情報を設定します。

アクセスしたら、次のコマンドを実行してアプライアンスの MAC アドレスを取得し、devices.csv ファイルの nic3mac 列に追加します。

show system info

7.2.3. HSM の MAC アドレスがありません

要約: HPE から受け取った devices.csv ファイルに HSM デバイスの MAC アドレスがありません。

回避策(HSM デバイスごと):

  1. シリアル コンソール経由でデバイスにログインします。

  2. 管理ネットワーク インターフェースの MAC アドレスを特定します。

    ip -brief link \
        | grep --color=never '^e' \
        | grep -v DOWN \
        | grep -o -E --color=none '([0-9A-Fa-f]{2}:){5}[0-9A-Fa-f]{2}' \
        | grep -vf <(nmcli \
            | grep i40e \
            | cut -d "," -f 2 \
            | sed -e 's/^[[:space:]]*//' \
            | sed 's/[A-Z]/\L&/g'))
    

    次の例は、コマンドの実行後に取得した MAC アドレスの出力例を示しています。

    ksadmin@ciphertrust:~$ ip -brief link \
        | grep --color=never '^e' \
        | grep -v DOWN \
        | grep -o -E --color=none '([0-9A-Fa-f]{2}:){5}[0-9A-Fa-f]{2}' \
        | grep -vf <(nmcli \
            | grep i40e \
            | cut -d "," -f 2 \
            | sed -e 's/^[[:space:]]*//' \
            | sed 's/[A-Z]/\L&/g'))
    00:15:b2:b0:3e:80
    
  3. devices.csv を編集し、デバイスの nic3mac 列に管理 MAC アドレスを入力します。

  4. devices.csv を編集し、デバイスの nic3_MGMT_port_name 列に mgmt0 を入力します。

  5. 最初のデータプレーン ネットワーク インターフェースの MAC アドレスを特定します。

    export DATA0_MAC=$(nmcli | grep i40e | cut -d "," -f 4 \
      | sed 's/port//g' \
      | sed -e 's/^[[:space:]]*//' \
      | sed 's/[A-Z]/\L&/g' \
      | sed 's/.\{2\}/&:/g' \
      | sed 's/:$//g' \
      | sort | head -1); echo ${DATA0_MAC}
    
  6. devices.csv を編集し、デバイスの nic1mac 列に DATA0_MAC アドレスを入力します。

  7. devices.csv を編集し、デバイスの nic1_Data1_port_name 列に data0 を入力します。

  8. 2 番目のデータプレーン ネットワーク インターフェースの MAC アドレスを特定します。

    export DATA1_MAC=$(nmcli | grep i40e | cut -d "," -f 4 \
      | sed 's/port//g' \
      | sed -e 's/^[[:space:]]*//' \
      | sed 's/[A-Z]/\L&/g' \
      | sed 's/.\{2\}/&:/g' \
      | sed 's/:$//g' \
      | sort | tail -1); echo ${DATA1_MAC}
    
  9. devices.csv を編集し、デバイスの nic2mac 列に DATA1_MAC アドレスを入力します。

  10. devices.csv を編集し、デバイスの nic2_Data2_port_name 列に data1 を入力します。

7.2.4. オブジェクト ストレージのシリアル番号がない

要約: HPE から受け取った devices.csv ファイルにオブジェクト ストレージ アプライアンスのシリアル番号がありません。

回避策: 構成の生成時に serial number () should be alphanumeric during cellcfg validation のようなエラーが表示され、xx-ac-objs0n タイプのデバイスが参照される場合は、デバイスのシリアル番号を復元する必要があります。このラベルは、アプライアンスの上部にある印刷されたスライド式ラベルで確認できます。シリアル番号は、devices.csv ファイルの serial_number 列に入力する必要があります。