BeeGFS サービスのアップグレード
Ansible を使用して、HA クラスターで実行されている BeeGFS バージョンを更新します。
概要
BeeGFSには major.minor.patch`バージョン管理方式が採用されています。BeeGFS HA Ansibleのロールは、サポートされる `major.minor`バージョンごとに用意されています( `beegfs_ha_7_2`やなど `beegfs_ha_7_3)。各HAロールは、Ansibleコレクションのリリース時に利用可能な最新のBeeGFSパッチバージョンに固定されています。
BeeGFSのすべてのアップグレードにはAnsibleを使用する必要があります。これには、BeeGFSのメジャーバージョン、マイナーバージョン、パッチバージョン間の移行も含まれます。BeeGFSをアップデートするには、まずBeeGFS Ansibleコレクションをアップデートする必要があります。これにより、デプロイメント/管理自動化と基盤となるHAクラスタの最新の修正と機能強化も取得されます。コレクションを最新バージョンにアップデートした後でも、 `-e "beegfs_ha_force_upgrade=true"`を設定して `ansible-playbook`を実行するまでBeeGFSはアップグレードされません。各アップグレードの詳細については、現在のバージョンの"BeeGFSアップグレードのドキュメント"を参照してください。
|
|
BeeGFS v8 にアップグレードする場合は、代わりに"BeeGFS v8にアップグレード"手順を参照してください。 |
テスト済みのアップグレードパス
次のアップグレード パスがテストおよび検証されています:
| 元のバージョン | アップグレードバージョン | マルチレール | 詳細 |
|---|---|---|---|
7.2.6. |
7.3.2の場合 |
はい。 |
beegfsコレクションをv3.0.1からv3.1.0にアップグレードすると'マルチレールが追加されました |
7.2.6. |
7.2.8 |
いいえ |
beegfsコレクションをv3.0.1からv3.1.0にアップグレードしています |
7.2.8 |
7.3.1 |
はい。 |
beegfs collection v3.1.0を使用してアップグレードすると、マルチレールが追加されました |
7.3.1 |
7.3.2の場合 |
はい。 |
beegfs collection v3.1.0を使用してアップグレードします |
7.3.2の場合 |
7.4.1 |
はい。 |
beegfs collection v3.2.0を使用してアップグレードします |
7.4.1 |
7.4.2 |
はい。 |
beegfs collection v3.2.0を使用してアップグレードします |
7.4.2 |
7.4.6 |
はい。 |
beegfs collection v3.2.0を使用してアップグレードします |
7.4.6 |
8.0 |
はい。 |
"BeeGFS v8にアップグレード"手順の指示に従ってアップグレードします。 |
7.4.6 |
8.1 |
はい。 |
"BeeGFS v8にアップグレード"手順の指示に従ってアップグレードします。 |
7.4.6 |
8.2 |
はい。 |
"BeeGFS v8にアップグレード"手順の指示に従ってアップグレードします。 |
BeeGFSのアップグレード手順
次のセクションでは、BeeGFS AnsibleコレクションとBeeGFS自体を更新する手順を示します。BeeGFSのメジャーバージョンまたはマイナーバージョンを更新する際は、特に注意してください。
手順1:BeeGFSコレクションをアップグレードする
へのアクセスによる収集のアップグレード "Ansible Galaxy"を使用して、次のコマンドを実行します。
ansible-galaxy collection install netapp_eseries.beegfs --upgrade
オフラインでの収集アップグレードの場合は、から収集をダウンロードします "Ansible Galaxy" 目的のをクリックします Install Version` 次に Download tarball。tarballをAnsibleコントロールノードに転送し、次のコマンドを実行します。
ansible-galaxy collection install netapp_eseries-beegfs-<VERSION>.tar.gz --upgrade
を参照してください "コレクションのインストール" を参照してください。
ステップ2:Ansibleインベントリを更新する
クラスタのAnsibleインベントリファイルに必要な更新や希望する更新を行ってください。具体的なアップグレード要件の詳細については、以下のバージョンのアップグレードに関する注意事項セクションをご覧ください。BeeGFS HAインベントリの設定に関する一般的な情報については、"Ansibleのインベントリの概要"セクションをご覧ください。
手順3:Ansible Playbookを更新する(メジャーバージョンまたはマイナーバージョンを更新する場合のみ)
メジャーバージョンとマイナーバージョンを切り替える場合は、クラスタの導入とメンテナンスに使用するファイルで、 playbook.yml ロールの名前を目的のバージョンに合わせて更新し beegfs_ha_<VERSION> ます。たとえば、BeeGFS 7.4を導入する場合は、次のようになり `beegfs_ha_7_4`ます。
- hosts: all
gather_facts: false
any_errors_fatal: true
collections:
- netapp_eseries.beegfs
tasks:
- name: Ensure BeeGFS HA cluster is setup.
ansible.builtin.import_role: # import_role is required for tag availability.
name: beegfs_ha_7_4
このPlaybookファイルの内容の詳細については、を参照してください"BeeGFS HAクラスタを導入します"。
手順4:BeeGFSのアップグレードを実行する
BeeGFSアップデートを適用するには:
ansible-playbook -i inventory.yml beegfs_ha_playbook.yml -e "beegfs_ha_force_upgrade=true" --tags beegfs_ha
BeeGFS HAの役割では、次の処理が行われます。
-
各BeeGFSサービスが優先ノードに配置された状態で、クラスタが最適な状態であることを確認します。
-
クラスタをメンテナンスモードにします。
-
HAクラスタのコンポーネントを更新します(必要な場合)。
-
各ファイルノードを次のように1つずつアップグレードします。
-
スタンバイにし、サービスをセカンダリノードにフェイルオーバーします。
-
BeeGFSパッケージをアップグレードします。
-
フォールバックサービス。
-
-
クラスタをメンテナンスモードから切り替えます。
バージョンのアップグレードに関する注意事項
BeeGFSバージョン7.2.6または7.3.0からアップグレードしています
接続ベースの認証に対する変更
BeeGFS バージョン 7.3.2 以降では、接続ベースの認証を設定する必要があります。次のいずれかを行わないと、サービスは起動しません:
-
`connAuthFile`の指定、または
-
サービスの構成ファイルで `connDisableAuthentication=true`を設定する。
セキュリティのため、接続ベースの認証を有効にすることを強くお勧めします。詳細については、"BeeGFS Connection Based Authenticationの略"をご覧ください。
`beegfs_ha*`ロールは認証ファイルを自動的に生成し、次の場所に配布します:
-
クラスター内のすべてのファイルノード
-
`<playbook_directory>/files/beegfs/<beegfs_mgmt_ip_address>_connAuthFile`のAnsibleコントロールノード
`beegfs_client`ロールは、このファイルが存在する場合、それを自動的に検出してクライアントに適用します。
|
|
`beegfs_client`ロールを使用してクライアントを設定しなかった場合は、各クライアントに認証ファイルを手動で配布し、 `beegfs-client.conf`ファイル内の `connAuthFile`設定を構成する必要があります。接続ベースの認証がないBeeGFSバージョンからアップグレードする場合、 `group_vars/ha_cluster.yml`で `beegfs_ha_conn_auth_enabled: false`を設定してアップグレード中に接続ベースの認証を無効にしない限り、クライアントはアクセスできなくなります(推奨されません)。 |
追加の詳細と代替構成オプションについては、"Common File Node Configurationを指定します" セクションの接続認証構成手順を参照してください。