본문 바로가기

개발/AWS EKS6

[Kubernetes] initContainer 와 containers의 volume 공유 안녕하세요? Kubernetes에서 작업을 하다 보면, 종종 GIT에서 소스를 가져와서 간단한 Job들을 돌릴 경우가 있습니다. 제가 그랬는데요. CronJob을 돌리기 위한 소스를 매번 GIT에서 가져와서 실행을 하고자 했습니다. 소스가 변경되는 것에 따라서 컨테이너 이미지를 매번 빌드할 정도의 Job 보다는 빠른 반영을 위해서, Kubernetes에서 제공하는 ephemeral storage 중 하나인 emptyDir과 init container를 활용해서 만들어 보기로 했습니다. init container에서 ephemeral storage에 git clone한 소스를 저장하고, 메인 container에서는 해당 소스를 기반으로 python code를 실행시키는 Pod/Cronjob을 만들면 됩니.. 2024. 2. 7.
Containerd와 AWS ECR login 방법 안녕하세요? AWS EKS를 사용하다 보면, 간혹 워커 노드에 접속해서 디버깅을 할 때가 있습니다. EKS는 1.24 버전 부터는 Dockershim을 더이상 지원하지 않고 Containerd만을 지원하도록 되었습니다. (https://docs.aws.amazon.com/ko_kr/eks/latest/userguide/dockershim-deprecation.html) 그런데, 저는 Docker만 주로 사용했고, Containerd의 ctr cli는 잘 몰라서 많은 부분을 고생했는데요. (이러한 부분을 고려해서, nerdctl이라는 것도 있는데요. 이부분은 추가로 다루도록 하겠습니다.) 관련해서, ctr cli에서 AWS ECR(Elastic Container Registry)에 로그인해서 이미지를 다.. 2024. 1. 31.