コンテナ化されたCloud Exchange展開をスタンドアロンまたはHAの最新バージョンに移行するには、次の手順を使用します。サポートされている移行パスとその他の展開タイプについては、Migrate Cloud Exchangeを参照してください。
重要
Cloud Exchange のインストール、展開、構成、移行に関して質問がある場合は、SE/AM にコンタクトしてください。
前提条件
- 移行を始める前に、インスタンスが「Cloud Exchange システム要件」を満たしていることを確認してください。
- Cloud Exchangeのインストールディレクトリにアクセスしてください:
ta_cloud_exchange - 次のコマンドを実行して、アップグレード/移行チェックスクリプトをダウンロードし、そのスクリプトを実行可能にします。
curl -fsSL -O https://raw.githubusercontent.com/netskopeoss/ta_cloud_exchange/main/ce_healthcheck chmod +x ce_healthcheck
- アップグレード/移行チェックスクリプトを実行します。出力の詳細については、結果の理解を参照してください。
sudo python3 ./ce_healthcheck
- セカンダリノードの場合は、以下のコマンドを実行します。これは HA デプロイメントにのみ適用されます。
sudo python3 ./ce_healthcheck --deployment HA
注記
いずれかのチェックが失敗した場合は、次のステップに進む前にそれらに対処してください。
- セカンダリノードの場合は、以下のコマンドを実行します。これは HA デプロイメントにのみ適用されます。
- すべてのモジュールのすべてのソースプラグインを無効にし、キューに入れられたタスクが完了するのを待ちます:
- ソースプラグインを無効にした後、20~30分待ちます。
- Settings > Loggingに移動してFilter Queryをクリックし、フィルターフィールドにこのフィルターを入力して、Loadをクリックします。
message Like "Ingested " || message Like "Stored " || message Like "task(s)" || message Like "Completed storing"
- フィルタリングされたログを監視します。新しいログが表示されない場合は、移行を続行してください。
- 移行が完了したら、無効にしたソースプラグインを有効にします。
- メンテナンスパスワードを手元に用意してください。いくつかの手順を完了するために必要です。
重要
メンテナンスパスワードを紛失した場合、既存のデータを保持できません。
RabbitMQのデータ移行は、キュータイプがClassicからQuorumに変更されたため、サポートされていません。
スタンドアロン展開
v5.1.1からv7.0.0へ、v5.1.2、v6.0.0、v6.0.1、v6.1.0スタンドアロン展開
migrate_ce スクリプトは、現在のデプロイメントを最新の Cloud Exchange スタンドアロンデプロイメントに移行します。新しい(送信先)マシンでスクリプトを実行します。
スクリプトを実行する前に、以下を確認してください:
- Cloud Exchangeがインストールされている古いマシンのSSHクレデンシャル(rootパスワードまたはPEMファイル)を持っている。
- 最新の Cloud Exchange リポジトリが新しいマシンにクローンされます。クローンを作成するには、次を実行します:
git clone https://github.com/netskopeoss/ta_cloud_exchange
- 新しいマシンで、最新の Cloud Exchange をクローンしたディレクトリに移動します。設定ファイルの例をコピーして開き、編集します。
cp cloudexchange.config.example cloudexchange.config vi cloudexchange.config
cloudexchange.configで、これらのフィールドの値を設定します。プロキシ設定やUIポートなど、使うまたはカスタマイズするオプションフィールドも設定します。MAINTENANCE_PASSWORD=<old cloud exchange maintenance password> JWT_SECRET=<old cloud exchange JWT secret>
JWT_SECRETはオプションです。空のままにすると、セットアップスクリプトは新しいJWTシークレットを生成します。- 新しいマシンで、マイグレーションスクリプトを実行します:
sudo ./migrate_ce
- プロンプトが表示されたら、古いマシンのユーザー名、IP アドレス、および認証方法を入力します。次に、パスワード認証の場合はユーザーのパスワードを入力し、PEM ファイル認証の場合は PEM ファイルへのパスを入力します。
- スクリプトが完了するまで待機します。古いマシンに接続した後、スクリプトは以下の処理を行います:
- 古いマシンで停止スクリプトを実行します。
- 古いマシンの既存のデータをzip圧縮し、新しいマシンに転送します。
- 新しいマシンのインストールフォルダーにデータを解凍します。
- セットアップスクリプトを実行します。このスクリプトは、最新の Cloud Exchange を起動するために必要な入力を求めます。
- 開始スクリプトを実行します。
- コンテナの状態を確認します。Podman を使う場合は、代わりに
sudo podman psを実行してください。sudo docker ps
- ブラウザで移行された Cloud Exchange の UI を開きます。既存の Cloud Exchange クレデンシャルでログインし、設定とデータが存在し、機能していることを確認します。
HA展開
v5.1.1からv7.0.0へ、v5.1.2、v6.0.0、v6.1.0スタンドアロン展開
スタンドアロン展開から最新のコンテナ化されたHA展開に移行するには、古いスタンドアロンマシンのデータを新しいプライマリノードになるノードにコピーします。
HAパラメータの詳細およびクラスタの設定方法については、『Cloud Exchange High Availability』を参照してください。
古いスタンドアロンマシンで
ta_cloud_exchangeディレクトリに移動します。cd ta_cloud_exchange
- コンテナを停止します。
sudo ./stop
- データディレクトリに移動します:
cd data
- データのzipファイルを作成します。
sudo zip -r ce_backup.zip mongo-data/ repos/ plugins/
- カスタムプラグインを使う場合は、zipファイルに追加してください:
sudo zip -r ce_backup.zip custom_plugins
- 新しいプライマリノードにzipファイルをコピーします。
sudo scp ce_backup.zip <username>@<ip-of-vm>:<ta_cloud_directory>/data
新しいプライマリノードで
プライマリノードにするノードでこれらの手順を実行します。
- 最新のCloud Exchangeのデータディレクトリに移動します。
cd <ta_cloud_directory>/data
- データを抽出します:
sudo unzip ce_backup.zip "mongo-data/*" -d . sudo mkdir /opt/shared/data/ -p sudo unzip ce_backup.zip "plugins/*" "repos/*" "custom_plugins/*" -d /opt/shared/data/
- 元の作業ディレクトリに戻ります:
cd ..
- 設定ファイルの例をコピーして、編集用に開きます。
cp cloudexchange.config.example cloudexchange.config vi cloudexchange.config
cloudexchange.configで、これらのフィールドの値を設定します。プロキシ設定やUIポートなど、使うまたはカスタマイズするオプションフィールドも設定します。MAINTENANCE_PASSWORD=<old cloud exchange maintenance password> JWT_SECRET=<old cloud exchange JWT secret>
JWT_SECRETはオプションです。空のままにすると、セットアップスクリプトは新しいJWTシークレットを生成します。- セットアップスクリプトを実行します。最初にプライマリノードで実行します。
sudo python3 ./setup
- Cloud Exchange開始:
sudo ./start
- ブラウザで
https://<ip>:<port>からプライマリノードのUIを開き、既存のCloud Exchangeクレデンシャルでログインします。 - Settings > General Settings > Node Configurations に移動し、Enable HA トグルを有効にします。アクションの確認ポップアップで、変更が必要な場合にのみ Cloud Exchange IP アドレスまたは FQDN を入力し、Enable HA をクリックします。
重要
HAが有効になっている間、Cloud Exchangeは一時的に使用できなくなり、数回再起動する可能性があります。

セカンダリノード上
各セカンダリノードで手順 1 ~ 6 を完了します。次に、プライマリノードの UI からセカンダリノードを追加します。
- 最新のCloud Exchangeバージョンがある
ta_cloud_exchangeディレクトリに移動します:cd <ta_cloud_exchange-dir>
- プライマリノードで、CAキーファイルの内容をコピーします。
<ta_cloud_exchange-dir>/data/ssl_certs/mongodb_rabbitmq_certs/tls_cert_ca.key
- セカンダリノードで、CAキーファイルを作成し、コピーしたキーを貼り付けて、ファイルを保存します。一致するCAキーにより、セカンダリノードはHAクラスタと通信できます。
sudo vi data/ssl_certs/mongodb_rabbitmq_certs/tls_cert_ca.key
- 設定ファイルの例をコピーして、編集用に開きます。
cp cloudexchange.config.example cloudexchange.config vi cloudexchange.config
cloudexchange.configで、これらのフィールドの値を設定します。重要
セカンダリノードのJWTシークレットとCAキーは、プライマリノードと一致している必要があります。一致していない場合、セカンダリノードをHAクラスターに追加すると認証エラーで失敗します。プライマリノードのJWTシークレットが不明な場合は、新しいシークレットを生成して適用してください。手順については、「Cloud Exchangeのトラブルシューティング」を参照してください。
JWT_SECRET=<JWT_SECRET value of the primary node> MAINTENANCE_PASSWORD=<old maintenance password>
- セットアップスクリプトを実行します。
sudo python3 ./setup
- プライマリノードのUIで、Settings > General Settings > Node Configurationsに移動し、セカンダリノードを1つずつ追加します。
セカンダリノードでスタートスクリプトを実行する必要はありません。これは、プライマリノードの UI からセカンダリノードを追加するときに自動的に実行されます。
v5.1.1からv7.0.0へ、v5.1.2、v6.0.0、v6.0.1、v6.1.0HA展開
現在のコンテナ化されたHAデプロイメントから最新のコンテナ化されたHAデプロイメントに移行するには、現在のプライマリノードから新しいプライマリノードにデータをコピーします。
現在のHA展開について
- コンテナが正常にシャットダウンするように、セカンダリノードを最初に停止し、次にプライマリノードを停止します:
sudo ./stop
- プライマリノードでデータディレクトリに移動し、MongoDB データの zip ファイルを作成します。
cd <ta_cloud_exchange_directory_path>/data sudo zip -r ce_backup.zip mongo-data/
- 共有ドライブに移動し、
reposフォルダーとpluginsフォルダーをzipファイルに追加します。v6.0.0以降の場合、共有ドライブのパスは/opt/shared/data/です。cd <shared_drive> sudo zip -r <ce_backup_zip_location>/ce_backup.zip repos/ plugins/
- カスタムプラグインを使う場合は、zipファイルに追加してください:
sudo zip -r <ce_backup_zip_location>/ce_backup.zip custom_plugins/
- 現在のプライマリノードから新しいプライマリノードにzipファイルをコピーします。新しいプライマリノードには最新のCloud Exchangeバージョンがあります:
sudo scp <ce_backup_zip_location>/ce_backup.zip <username>@<ip-of-vm>:<ta_cloud_exchange_directory_path>/data
新しいプライマリノードで
- データディレクトリに移動します:
cd <ta_cloud_exchange_directory_path>/data
- データを抽出します:
sudo unzip ce_backup.zip "mongo-data/*" -d . sudo mkdir /opt/shared/data/ -p sudo unzip ce_backup.zip "plugins/*" "repos/*" "custom_plugins/*" -d /opt/shared/data/
- 元の作業ディレクトリに戻ります:
cd ..
- 設定ファイルの例をコピーして、編集用に開きます。
cp cloudexchange.config.example cloudexchange.config vi cloudexchange.config
cloudexchange.configで、これらのフィールドの値を設定します。プロキシ設定やUIポートなど、使うまたはカスタマイズするオプションフィールドも設定します。HA_ENABLED=True HA_CURRENT_NODE=<current node ip> HA_PRIMARY_NODE_IP=<current node ip> HA_IP_LIST=<current node ip> MAINTENANCE_PASSWORD=<old maintenance password> JWT_SECRET=<old cloud exchange JWT secret>
JWT_SECRETはオプションです。空のままにすると、セットアップスクリプトは新しいJWTシークレットを生成します。- セットアップスクリプトを実行します。
sudo python3 ./setup
- MongoDBデータを移行します。このコマンドは1回だけ実行してください。
sudo ./restore_ha_backup
- Cloud Exchange開始:
sudo ./start
セカンダリノード上
各セカンダリノードで手順 1 ~ 6 を完了します。次に、プライマリノードの UI からセカンダリノードを追加します。
ta_cloud_exchangeディレクトリに移動します。cd <ta_cloud_exchange_directory_path>
- プライマリノードで、CAキーファイルの内容をコピーします。
<ta_cloud_exchange_directory_path>/data/ssl_certs/mongodb_rabbitmq_certs/tls_cert_ca.key
- セカンダリノードで、CAキーファイルを作成し、コピーしたキーを貼り付けて、ファイルを保存します。一致するCAキーにより、セカンダリノードはHAクラスタと通信できます。
sudo vi data/ssl_certs/mongodb_rabbitmq_certs/tls_cert_ca.key
- 設定ファイルの例をコピーして、編集用に開きます。
cp cloudexchange.config.example cloudexchange.config vi cloudexchange.config
cloudexchange.configで、これらのフィールドの値を設定します。重要
セカンダリノードのJWTシークレットとCAキーは、プライマリノードと一致している必要があります。一致していない場合、セカンダリノードをHAクラスターに追加すると認証エラーで失敗します。プライマリノードのJWTシークレットが不明な場合は、新しいシークレットを生成して適用してください。手順については、「Cloud Exchangeのトラブルシューティング」を参照してください。
JWT_SECRET=<JWT_SECRET value of the primary node> MAINTENANCE_PASSWORD=<old maintenance password>
- セットアップスクリプトを実行します。
sudo python3 ./setup
- プライマリノードのUIで、Settings > General Settings > Node Configurationsに移動し、セカンダリノードを1つずつ追加します。
セカンダリノードでスタートスクリプトを実行する必要はありません。これは、プライマリノードの UI からセカンダリノードを追加するときに自動的に実行されます。

