15.5. オブジェクトストレージノードの置き換え
本項の手順で、クラスターの整合性に影響を与えずにオブジェクトストレージノードを置き換える方法を説明します。以下の例では、3 台のノードで構成されるオブジェクトストレージクラスターで、overcloud-objectstorage-1
ノードを置き換えます。この手順の目的は、ノードを 1 台追加し、その後 overcloud-objectstorage-1
ノードを削除することです。overcloud-objectstorage-1
ノードが新しいノードに置き換えられます。
手順
ObjectStorageCount
パラメーターを使用してオブジェクトストレージ数を増やします。このパラメーターは、通常ノード数を指定する環境ファイルのnode-info.yaml
に含まれています。parameter_defaults: ObjectStorageCount: 4
ObjectStorageCount
パラメーターで、環境内のオブジェクトストレージノードの数を定義します。今回の例では、オブジェクトストレージノードの数を3
から4
にスケーリングします。更新した
ObjectStorageCount
パラメーターを使用して、デプロイメントコマンドを実行します。$ source ~/stackrc (undercloud) $ openstack overcloud deploy --templates -e node-info.yaml ENVIRONMENT_FILES
- デプロイメントコマンドの実行が完了すると、オーバークラウドには追加のオブジェクトストレージノードが含まれるようになります。
新しいノードにデータを複製します。ノードを削除する前に (ここでは
overcloud-objectstorage-1
)、複製のパスが新規ノードで完了するのを待ちます。/var/log/swift/swift.log
ファイルで複製パスの進捗を確認することができます。パスが完了すると、Object Storage サービスは以下の例のようなエントリーをログに残します。Mar 29 08:49:05 localhost object-server: Object replication complete. Mar 29 08:49:11 localhost container-server: Replication run OVER Mar 29 08:49:13 localhost account-server: Replication run OVER
リングから不要になったノードを削除するには、
ObjectStorageCount
パラメーターの数を減らして不要になったノードを削除します。この例では、ObjectStorageCount
パラメーターを3
に減らします。parameter_defaults: ObjectStorageCount: 3
新規環境ファイル (
remove-object-node.yaml
) を作成します。このファイルでオブジェクトストレージノードを特定し、そのノードを削除します。以下の内容ではovercloud-objectstorage-1
の削除を指定します。parameter_defaults: ObjectStorageRemovalPolicies: [{'resource_list': ['1']}]
デプロイメントコマンドに
node-info.yaml
ファイルとremove-object-node.yaml
ファイルの両方を含めます。(undercloud) $ openstack overcloud deploy --templates -e node-info.yaml ENVIRONMENT_FILES -e remove-object-node.yaml
director は、オーバークラウドからオブジェクトストレージノードを削除して、オーバークラウド上の残りのノードを更新し、ノードの削除に対応します。
オーバークラウドの初回作成時に使用した環境ファイルおよびオプションをすべて含めます。これには、コンピュート以外のノードに対する同様のスケジューリングパラメーターが含まれます。