

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

# エラーや障害の原因となる OS 設定変更の解決
<a name="resolving-os-configuration-changes"></a>

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

## OS 設定に関する一般的な問題
<a name="common-os-configuration-issues"></a>

### ロケール設定の問題
<a name="locale-configuration-issues"></a>

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

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

これは通常、次の場合に発生します。
+ `yum` インストールプロセスが失敗し、ロケール設定が不整合な状態のままになった
+ ユーザーがインストールプロセスを途中で終了しました
+ ロケールパッケージがないか、破損しています

#### 診断方法
<a name="locale-issues-diagnose"></a>

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

   ```
   $ su - pcluster-admin
   ```

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

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

   ```
   $ localedef --list
   ```

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

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

   ```
   $ yum history
   $ yum history info #ID
   ```

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

#### 解決方法
<a name="locale-issues-resolve"></a>

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

```
$ sudo yum reinstall glibc-all-langpacks
```

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

```
$ su - pcluster-admin
```

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

### OS パッケージの競合
<a name="os-package-conflicts"></a>

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

#### 診断方法
<a name="package-conflicts-diagnose"></a>

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

   ```
   $ less /var/log/chef-client.log
   ```

1. cfn-init ログでパッケージの依存関係の競合を探します。

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

#### 解決方法
<a name="package-conflicts-resolve"></a>

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

   ```
   $ sudo yum reinstall package-name
   ```

1. 依存関係の競合の場合、競合するパッケージを削除する必要がある場合があります。

   ```
   $ sudo yum remove conflicting-package
   ```

1. 問題が解決しない場合は、 `pcluster build-image` コマンドを使用して必要なパッケージをプリインストールしたカスタム AMI を作成することを検討してください。詳細については、「[AWS ParallelCluster AMI のカスタマイズ](custom-ami-v3.md)」を参照してください。

### システム設定ファイルの変更
<a name="system-config-file-modifications"></a>

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

#### 診断方法
<a name="config-file-issues-diagnose"></a>

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

   ```
   $ grep -i "config" /var/log/chef-client.log
   ```

1. 設定ファイルでアクセス許可または構文エラーを探します。

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

#### 解決方法
<a name="config-file-issues-resolve"></a>

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

   ```
   $ sudo cp /etc/file.conf.bak /etc/file.conf
   ```

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

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

   詳細については、「[カスタムブートストラップアクション](custom-bootstrap-actions-v3.md)」を参照してください。

1. システムファイルに対して直接行う必要がある設定変更については、カスタム AMI の作成を検討してください。詳細については、「[AWS ParallelCluster AMI のカスタマイズ](custom-ami-v3.md)」を参照してください。

### カーネルの更新と互換性の問題
<a name="kernel-updates-compatibility"></a>

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

#### 診断方法
<a name="kernel-issues-diagnose"></a>

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

   ```
   $ uname -r
   ```

1. ログで Amazon FSx マウントの失敗を探します。

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

#### 解決方法
<a name="kernel-issues-resolve"></a>

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

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

   ```
   $ sudo apt install linux-image-previous-version
   ```

1. カーネルを永続的にカスタマイズするには、必要な特定のカーネルバージョンを使用してカスタム AMI を作成します。詳細については、「[AWS ParallelCluster AMI のカスタマイズ](custom-ami-v3.md)」を参照してください。

## OS 設定変更のベストプラクティス
<a name="best-practices-os-config-changes"></a>

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

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

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

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

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

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

   ```
   $ sudo cp /etc/file.conf /etc/file.conf.bak
   ```

1. **変更後のログの確認**: OS 設定を変更した後、エラーがないかログを確認します。

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

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