エラーや障害の原因となる OS 設定変更の解決 - AWS ParallelCluster

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

エラーや障害の原因となる OS 設定変更の解決

AWS ParallelCluster ノードに OS 設定を変更すると、クラスターの作成、更新、またはオペレーションの失敗の原因となるさまざまな問題が発生する可能性があります。このセクションでは、一般的な OS 設定関連の問題を特定して解決するためのガイダンスを提供します。

OS 設定に関する一般的な問題

ロケール設定の問題

OS 設定の最も一般的な問題の 1 つは、ロケール設定に関連しています。次のようなエラーが表示される場合:

cannot change locale (en_US.utf-8) because it has an invalid name

これは通常、次の場合に発生します。

  • yum インストールプロセスが失敗し、ロケール設定が不整合な状態のままになった

  • ユーザーがインストールプロセスを途中で終了しました

  • ロケールパッケージがないか、破損しています

診断方法

  1. pcluster-admin ユーザーに切り替えることができるかどうかを確認します。

    $ su - pcluster-admin

    のようなエラーが表示された場合はcannot change locale...no such file or directory、問題が確認されます。

  2. 利用可能なロケールを確認します。

    $ localedef --list

    これが空のリストを返すか、デフォルトのロケールが含まれていない場合、ロケール設定は壊れています。

  3. 最後のyumコマンドを確認します。

    $ yum history $ yum history info #ID

    最後の ID に Return-Code: Success が含まれていない場合、インストール後のスクリプトが正常に実行されていない可能性があります。

解決方法

言語パックを再インストールしてロケールを再構築します。

$ sudo yum reinstall glibc-all-langpacks

再構築後、以下を実行して問題が修正されていることを確認します。

$ su - pcluster-admin

エラーや警告が表示されない場合、問題は解決されています。

OS パッケージの競合

カスタムパッケージをインストールしたり、システムパッケージを変更したりすると、適切なクラスターオペレーションを妨げる競合が発生する可能性があります。

診断方法

  1. chef-client ログでパッケージ関連のエラーを確認します。

    $ less /var/log/chef-client.log
  2. cfn-init ログでパッケージの依存関係の競合を探します。

    $ less /var/log/cfn-init.log

解決方法

  1. 特定のパッケージで問題が発生した場合は、再インストールしてみてください。

    $ sudo yum reinstall package-name
  2. 依存関係の競合の場合、競合するパッケージを削除する必要がある場合があります。

    $ sudo yum remove conflicting-package
  3. 問題が解決しない場合は、 pcluster build-image コマンドを使用して必要なパッケージをプリインストールしたカスタム AMI を作成することを検討してください。詳細については、「AWS ParallelCluster AMI のカスタマイズ」を参照してください。

システム設定ファイルの変更

重要なシステム設定ファイルを変更すると、特にこれらのファイルが によって管理されている場合、クラスターの障害が発生する可能性があります AWS ParallelCluster。

診断方法

  1. chef-client ログに、特定の設定ファイルに関するエラーがないか確認します。

    $ grep -i "config" /var/log/chef-client.log
  2. 設定ファイルでアクセス許可または構文エラーを探します。

    $ less /var/log/cfn-init.log

解決方法

  1. 変更された設定ファイルを元の状態に復元します。

    $ sudo cp /etc/file.conf.bak /etc/file.conf
  2. システム設定ファイルを永続的に変更する必要がある場合は、ファイルを直接変更するのではなく、カスタムブートストラップアクションを使用します。

    HeadNode: CustomActions: OnNodeConfigured: Script: s3://bucket-name/config-script.sh

    詳細については、「カスタムブートストラップアクション」を参照してください。

  3. システムファイルに直接設定変更を加える必要がある場合は、カスタム AMI の作成を検討してください。詳細については、「AWS ParallelCluster AMI のカスタマイズ」を参照してください。

カーネルの更新と互換性の問題

カーネルの更新により、特定の AWS サービス、特に Amazon FSx for Lustre との互換性の問題が発生する可能性があります。

診断方法

  1. カーネルの更新が適用されているかどうかを確認します。

    $ uname -r
  2. ログで Amazon FSx マウントの失敗を探します。

    $ grep -i "fsx" /var/log/chef-client.log

解決方法

  1. Ubuntu 22.04 では、そのカーネルに Amazon FSx クライアントがないため、最新のカーネルに更新しないでください。詳細については、「オペレーティングシステムに関する考慮事項」を参照してください。

  2. カーネルをすでに更新していて、問題が発生した場合は、互換性のあるカーネルバージョンにダウングレードすることを検討してください。

    $ sudo apt install linux-image-previous-version
  3. カーネルを永続的にカスタマイズするには、必要な特定のカーネルバージョンを使用してカスタム AMI を作成します。詳細については、「AWS ParallelCluster AMI のカスタマイズ」を参照してください。

OS 設定変更のベストプラクティス

OS 設定を変更する際の問題を最小限に抑えるには:

  1. カスタムブートストラップアクションを使用する: システムファイルを直接変更する代わりに、 OnNodeStartまたは OnNodeConfiguredスクリプトを使用して制御された方法で変更を行います。詳細については、「カスタムブートストラップアクション」を参照してください。

  2. カスタム AMIs: OS を大幅に変更するには、実行中のインスタンスを変更するのpcluster build-imageではなく、 を使用してカスタム AMI を作成します。詳細については、「AWS ParallelCluster AMI のカスタマイズ」を参照してください。

  3. 最初に変更をテストする: 本番稼働用クラスターに変更を適用する前に、小さなテストクラスターでテストして互換性を確認します。

  4. ドキュメントの変更: トラブルシューティングを容易にするために行われたすべての OS 設定の変更を追跡します。

  5. バックアップ設定ファイル: システム設定ファイルを変更する前に、バックアップを作成します。

    $ sudo cp /etc/file.conf /etc/file.conf.bak
  6. 変更後のログを確認する: OS 設定を変更した後、エラーがないかログを確認します。

    $ less /var/log/cfn-init.log $ less /var/log/chef-client.log

これらのガイドラインに従うことで、クラスターの障害を引き起こす OS 設定変更のリスクを最小限に抑え、発生した問題をより効果的にトラブルシューティングできます。