- 인쇄
- PDF
일반적인 문제
- 인쇄
- PDF
Ncloud Kubernetes Service를 이용하면서 다음과 같은 문제를 겪을 수 있습니다. 문제별 원인과 해결 방법을 확인하고 적절하게 조치해 주십시오.
클러스터 상태 이상
Ncloud Kubernetes Service의 클러스터가 오랜 시간 동안 작업 중 상태로 유지됩니다.
원인
사용자의 작업 환경에 따라 다양한 원인이 있을 수 있습니다.
해결 방법
신규 클러스터 생성 및 삭제, 노드풀 스케일 인아웃, 클러스터 업그레이드 중 오랜 시간 동안 작업 중 상태를 유지하는 경우, 네이버 클라우드 플랫폼 포털의 고객 문의로 문의해 주십시오.
클러스터 생성 이후 Cilium-Operator 파드가 Pending 상태
Ncloud Kubernetes Service의 클러스터 생성 이후 Cilium-Operator 파드가 Pending 상태입니다.
원인
Ncloud Kubernetes Service는 CNI인 Cilium의 안정적인 동작을 위하여 Operator의 개수가 2개로 설정되어 있습니다. 따라서 워커 노드가 1개인 클러스터의 경우 한 개의 Cilium Operator가 Pending 상태를 가지게 됩니다. 이는 의도된 바이며 실제 Cilium의 동작에 영향을 끼치지 않습니다.
해결 방법
Cilium-Operator의 Scale을 조정하거나 워커 노드의 개수를 증가시켜 주십시오.
워커 노드가 Not Ready 상태
Ncloud Kubernetes Service의 워커 노드가 Not Ready 상태입니다.
원인
다양한 원인이 있을 수 있으나, 대부분 워커 노드의 높은 리소스 사용량으로 인해 발생합니다.
해결 방법
워커 노드의 리소스 사용량을 확인한 후 워커 노드에 위치한 파드를 다른 워커 노드로 스케줄링하거나 스케일을 줄여 리소스 사용량을 감소시켜 주십시오. 이후 워커 노드를 재기동하여 상태가 Ready로 변경되는지 확인해 주십시오.
높은 리소스 사용량으로 인해 워커 노드에 문제가 생기는 것을 방지하기 위해, 다음과 같은 Kubernetes 기능을 사용하는 것을 권장합니다.
Cloud Insight에서 기본 제공되는 서버 위젯은 메모리 사용량을 모니터링할 때 buff/cache가 고려되지 않으므로, 실제 메모리 사용량과 차이가 발생할 수 있습니다. buff/cache는 메모리 사용량이 높을 경우 반환되지 않아 OOM (Out Of Memory) 상황이 발생할 가능성이 높습니다. 이 점을 감안하여 모니터링을 진행해야 합니다.
Evict 상태의 파드 생성
Evict 상태를 가진 파드가 생성되었거나 생성되고 있습니다.
원인
Evict 상태란 kubelet이 파드를 중단시킨 상태를 의미합니다. Kubernetes의 컴포넌트인 kubelet은 노드의 자원을 모니터링합니다. 모니터링 대상 노드 자원이 임계치에 도달하는 경우, kubelet은 파드를 중단시켜 자원을 회수합니다.
해결 방법
파드가 Evict 상태인 경우 노드의 자원을 모니터링하여 임계치 아래로 떨어뜨려 주십시오.
Ncloud Kubernetes Service의 임계값은 Kubernetes의 기본 설정을 따릅니다. 자세한 내용은 Node-pressure Eviction를 참조해 주십시오.
ncp-iam-authenticator를 통해 Kubernetes Cluster에 접근 불가
ncp-iam-authenticator를 통해 Kubernetes Cluster에 접근할 수 없습니다.
원인
ncp-iam-authenticator
이용 시 노출된 오류 메시지에 따라 원인 및 해결 방법이 달라집니다.
해결 방법
각 오류 메시지의 원인 및 해결 방법은 다음과 같습니다.
- Cluster is undefined (400): 올바르지 않은 클러스터 UUID가 입력되는 경우 발생합니다.
- Authentication Failed (200): 올바르지 않은 인증키 값을 사용할 때 발생합니다. ncp-iam-authenticator은
~/.ncloud/configure
이하의 인증키 값을 사용하며 만료된 인증키, 삭제된 인증키, 사용 중지된 인증키, 잘못 기재된 인증키가 아닌지 확인해 주십시오. - Not Found Exception (404):
ncloud_api_url
과region
값을 확인해 주십시오. - You must be logged in to the server (Unauthorized): 접근 계정이 클러스터에 관련 권한을 가지고 있지 않을 때 발생합니다. IAM 인증 사용자 관리에서 접근 계정에 대해 권한 설정을 진행해 주십시오.
Kubernetes 대시보드 접근 오류
- Kubernetes 대시보드에 접근 시 리소스가 조회되지 않습니다.
- 서브 계정으로 Kubernetes 대시보드 접근이 안 됩니다.
- Kubernetes 대시보드에 'Unauthorized'가 나타납니다.
원인
Ncloud Kubernetes Service에서 제공하는 대시보드(Kubernetes Dashboard)의 접근 권한은 클러스터 내부 권한과 동일합니다. 대시보드를 이용하기 위해선느 접근 계정이 알맞은 클러스터 사용 권한을 가지고 있어야 합니다.
해결 방법
IAM 인증 사용자 관리를 참조하여 접근 계정에게 클러스터 권한을 부여해 주십시오.
PVC 사이즈 변경 불가
PVC 사이즈 변경이 되지 않습니다.
원인
리사이징하고자 하는 볼륨이 사용 중인 경우 변경이 불가능합니다.
해결 방법
워커 노드의 replica 값을 0으로 조정해 주십시오.
해당 PVC와 연결된 스토리지를 사용하는 워커 노드의 replica 값을 0으로 줄여야 스토리지가 사용 가능 상태가 되고, 스토리지가 사용 가능 상태가 되어야 PVC 볼륨을 리사이징할 수 있습니다.
StorageClass 설정 변경 불가
StorageClass의 설정이 변경되지 않습니다.
원인
이미 생성된 StorageClass는 변경이 불가능합니다.
해결 방법
필요한 설정을 갖춘 StorageClass를 신규로 생성하여 이용해 주십시오.
Ncloud Kubernetes Service에서 제공하는 StorageClass의 기본 명세를 참고할 수 있습니다.
- Block Stroage
allowVolumeExpansion: true
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: nks-block-storage
parameters:
type: SSD
provisioner: blk.csi.ncloud.com
reclaimPolicy: Delete
volumeBindingMode: WaitForFirstConsumer
- NAS
allowVolumeExpansion: true
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: nks-nas-csi
mountOptions:
- hard
- nolock
- nfsvers=3
provisioner: nas.csi.ncloud.com
reclaimPolicy: Delete
volumeBindingMode: WaitForFirstConsume
이 가이드에서 필요한 정보를 찾지 못했거나 추가로 필요한 정보가 있으신 경우, 언제든지 아래의 피드백 아이콘을 클릭하여 의견을 보내 주십시오. 전달해 주신 의견을 참고하여 더 유용한 정보를 제공하겠습니다.