728x90
반응형
EKS 1.24 이후부터 EKS optimized AMI에 docker 명령어가 포함되지 않습니다.
간혹 테스트를 위해 파드의 컨테이너가 실행된 user가 아닌 root user로 컨테이너에 접근이 필요할 때 아래 방법을 사용할 수 있습니다.
방법 1) ctr 명령어
1. 접근 필요한 파드가 배포된 노드에 ssh로 접속
2. 컨테이너 id 및 task 확인
## container id
$ ctr -n k8s.io containers list | grep -i <image 명>
## task id
$ ctr -n k8s.io task ls | grep <ContainerID>
3. 컨테이너 접속
$ ctr -n k8s.io task exec -t --exec-id 0 --user root <ContainerID> /bin/bash
방법 2) runc 명령어
1. 컨테이너 id 확인
$ kubectl describe po <Pod명> -n <Namespace>
2. 접근 필요한 파드가 배포된 노드에 ssh로 접속
3. 컨테이너 접속
$ runc --root /run/containerd/runc/k8s.io/ exec -t -u 0 <ContainerID> sh
728x90
'Kubernetes' 카테고리의 다른 글
여러 노드와 존에 파드를 분산하여 배포하는 방법 (0) | 2024.04.06 |
---|---|
파드의 컨테이너 pid 및 cgroup에 할당된 cpu, mem 확인 방법(containerd) (1) | 2024.03.12 |
EKS Node의 최대 Pod 수 (0) | 2022.08.01 |
EFS 권장 옵션을 포함한 EKS 내 PV 생성 (0) | 2022.06.24 |
EFK Stack 구성하기 2 (Kinesis Firehose 추가) (2) | 2022.05.25 |