

 **이 페이지 개선에 도움 주기** 

이 사용자 가이드에 기여하려면 모든 페이지의 오른쪽 창에 있는 **GitHub에서 이 페이지 편집** 링크를 선택합니다.

# EC2 인스턴스 저장소로 구성된 AWS Outposts의 Amazon EKS 로컬 클러스터 문제 해결
<a name="eks-outposts-instance-store-troubleshooting"></a>

이 주제에서는 EC2 인스턴스 저장소로 구성된 AWS Outposts에서 로컬 Amazon EKS 클러스터를 사용하는 동안 발생할 수 있는 몇 가지 일반적 오류와 문제를 해결하는 방법을 설명합니다.

## `kubeconfig` 구성 후 `kubectl`이 작동하지 않음
<a name="eks-outposts-instance-store-troubleshooting-kubectl"></a>

`aws eks update-kubeconfig` 실행 후 다음 오류가 표시되는 경우:

```
Either parameter --cluster-name or --cluster-id must be specified.
```

또는 다음과 같습니다.

```
couldn't get current server API group list: getting credentials: exec: executable aws failed with exit code 1
```

`kubeconfig`(`~/.kube/config`)가 `exec` args에서 `--cluster-id`가 아닌 `--cluster-name`을 지정하는지 확인합니다.

```
      args:
        - --region
        - region-code
        - eks
        - get-token
        - --cluster-name
        - my-cluster
        - --output
        - json
      command: aws
```

## 클러스터에 조인하지 않는 노드
<a name="eks-outposts-instance-store-troubleshooting-nodes-not-joining"></a>

`kubectl get nodes`를 실행할 때 노드가 표시되지 않는 경우:

1.  **노드에서 `kubelet` 로그를 확인합니다.** SSM 또는 SSH를 사용하여 노드에 액세스하고 다음을 실행합니다.

   ```
   systemctl status kubelet -l
   ```

1.  **승인되지 않은 오류가 있는지 확인합니다.** 승인되지 않은 오류는 노드 역할 권한 누락 또는 `aws-auth` ConfigMap 문제를 나타낼 수 있습니다. 노드의 인스턴스 역할이 `aws-auth` ConfigMap에서 올바르게 매핑되어 있는지 확인합니다.

1.  **CSR 상태를 확인합니다.** 노드의 인증서 서명 요청이 승인되었는지 확인합니다.

   ```
   kubectl get csr
   ```

   CSR이 `Pending` 상태이면 승인합니다.

   ```
   kubectl certificate approve node-csr-EXAMPLE
   ```

## 클러스터가 `CREATING` 상태에서 멈춤
<a name="eks-outposts-instance-store-troubleshooting-creating"></a>

클러스터가 FAILED 상태가 되는 경우:
+  **용량 부족:** 지정된 인스턴스 유형의 컨트롤 플레인 인스턴스 6개(3개 `etcd` \+ 3개 API 서버)에 충분한 가상화 용량이 Outpost에 있는지 확인합니다. 인스턴스 유형은 Outposts에 배정되어 있어야 합니다.
+  **분산 토폴로지를 충족할 수 없음:** `host`의 `spreadLevel`을 지정한 경우 선택한 인스턴스 유형으로 호스트가 3개 이상 구성되어 있는지 확인합니다. `rack`을 지정한 경우 3개 이상의 랙에 선택한 인스턴스 유형의 호스트가 있는지 확인합니다.
+  **서브넷 문제:** 지정한 서브넷이 Outpost가 호밍되는 가용 영역에 있고 각 서브넷에 사용 가능한 IP 주소가 3개 이상 있는지 확인합니다. [EC2 인스턴스 저장소로 구성된 AWS Outposts의 Amazon EKS 로컬 클러스터를 위한 VPC 및 서브넷 생성](eks-outposts-instance-store-vpc-subnet-requirements.md)을(를) 참조하세요.

## 클러스터가 `UPDATING` 상태에서 멈춤
<a name="eks-outposts-instance-store-troubleshooting-updating"></a>

Kubernetes 버전 또는 플랫폼 버전 업데이트 중에 클러스터가 `UPDATING` 상태로 유지되는 경우:
+  **용량 부족:** 업데이트 중에 컨트롤 플레인 인스턴스가 재인스턴스화 전에 삭제됩니다. 대체 인스턴스를 프로비저닝하기 전에 다른 워크로드가 여유 용량을 사용하는 경우 업데이트가 중지됩니다. Outpost에 컨트롤 플레인 인스턴스 유형에 사용할 수 있는 용량이 있는지 확인합니다.

## `etcd` 쿼럼 손실
<a name="eks-outposts-instance-store-troubleshooting-etcd-quorum"></a>

Kubernetes API 작업을 수행할 수 없게 되고 Outpost 연결이 해제된 경우:
+  `etcd`에서 쿼럼이 손실되었을 수 있습니다. 연결 해제 중에 둘 이상의 `etcd` 인스턴스를 사용할 수 없게 되는 경우 이 현상이 발생합니다.
+ 이미 실행 중인 워크로드는 계속 작동하지만 Kubernetes API 작업은 사용할 수 없습니다.
+ 연결이 복원되면 Amazon EKS는 최신 `etcd` 스냅샷에서 클러스터 상태를 복구합니다.

[AWS 지원 센터](https://console.aws.amazon.com/support/home)에 문의하세요.