HAクラスタとBeeGFSを更新します
Ansibleを使用して、BeeGFSとHAクラスタを更新します。
概要
BeeGFSは、のあとにバージョン管理されます major.minor.patch
サポートされているBeeGFSごとに、バージョン管理スキームとBeeGFS HA Ansibleのロールが用意されています major.minor
バージョン(例 beegfs_ha_7_2
および beegfs_ha_7_3
)。各HAロールは、Ansibleコレクションがリリースされたときに最新のBeeGFSパッチバージョンにピン固定されます。
BeeGFSのメジャーバージョン、マイナーバージョン、パッチバージョン間の移行を含め、すべてのBeeGFSアップグレードにAnsibleを使用する必要があります。BeeGFSを更新するには、まずBeeGFS Ansibleコレクションを更新する必要があります。このコレクションには、導入と管理の自動化と基盤となるHAクラスタに関する最新の修正と機能拡張も含まれています。コレクションの最新バージョンにアップデートした後でも、BeeGFSはそれまでアップグレードされません ansible-playbook
はと一緒に実行されます -e "beegfs_ha_force_upgrade=true"
設定:
BeeGFSのバージョンの詳細については、を参照してください "BeeGFSアップグレードのドキュメント"。 |
テスト済みのアップグレードパス
すべてのコンポーネント間の相互運用性を確保するために、BeeGFSコレクションの各バージョンは、特定のバージョンのBeeGFSでテストされます。また、コレクションの最新バージョンでサポートされているBeeGFSバージョンから最新リリースでサポートされているバージョンへのアップグレードを確実に実行するためにも、テストが実行されます。
元のバージョン | アップグレードバージョン | マルチレール | 詳細 |
---|---|---|---|
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を使用してアップグレードします |
BeeGFSアップグレードの手順
以降のセクションでは、BeeGFSコレクションと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インベントリの設定に関する一般的な情報については、セクションを参照してください。
手順3:Ansible Playbookを更新(メジャーバージョンやマイナーバージョンの更新時のみ)
メジャーバージョンとマイナーバージョンの間を移動する場合は、を参照してください playbook.yml
クラスタの導入と保守に使用するファイルで、の名前を更新します beegfs_ha_<VERSION>
目的のバージョンを反映したロール。たとえば、BeeGFS 7.3を導入する場合は、次のようになります beegfs_ha_7_3
:
- 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_3
この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からアップグレードしています
Connection Based Authenticationの変更点
7.3.1よりあとにリリースされたBeeGFSバージョンでは、を指定しないとサービスを開始できなくなります connAuthFile
または「Setting(設定) connDisableAuthentication=true
サービスの構成ファイル。接続ベースの認証セキュリティを有効にすることを強く推奨します。を参照してください "BeeGFS Connection Based Authenticationの略" を参照してください。
デフォルトでは、です beegfs_ha*
このファイルはロールによって生成されて配布され、さらににAnsibleの制御ノードに追加されます <playbook_directory>/files/beegfs/<beegfs_mgmt_ip_address>_connAuthFile
。。 beegfs_client
また、このファイルが存在するかどうかが確認され、可能な場合はクライアントに提供されます。
状況に応じて beegfs_client ロールはクライアントの設定には使用されていません。このファイルは、各クライアントおよびに手動で配布する必要があります connAuthFile の設定 beegfs-client.conf 使用するように設定されたファイル。接続ベースの認証が有効になっていないBeeGFSの以前のバージョンからアップグレードする場合、設定によって接続ベースの認証が無効になっていない限り、クライアントはアクセスを失うことになります beegfs_ha_conn_auth_enabled: false インチ group_vars/ha_cluster.yml (非推奨)。
|
詳細および代替設定オプションについては、の接続認証を設定する手順を参照してください "Common File Node Configurationを指定します" セクション。