

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 오류 또는 실패를 유발하는 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 구성 문제 중 하나는 로캘 설정과 관련이 있습니다. 다음과 같은 오류가 표시되는 경우:

```
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 구성 변경으로 인해 클러스터 장애가 발생할 위험을 최소화하고 발생하는 문제를 보다 효과적으로 해결할 수 있습니다.