소개
현재 카카오뱅크에서 클라우드 엔지니어(SRE)로 근무하고 있습니다. 서비스를 위한 아키텍처를 설계/제공하고, 조직에서 필요한 다양한 도구들을 만들고 제공하거나 구축하는 등의 일을 하고 있습니다.
문의: 7424069@gmail.com
강의
전체 5수강평
- [2024] [DevOps] 빠르고 안전한 어플리케이션 배포 파이프라인(CI/CD) 만들기
- [2024] 실무에서 사용하는 클라우드 보안 프로그래밍 (AWS, Python, Terraform)
- [2024] 실무에서 사용중인 AWS 클라우드 IAM 이해와 보안
게시글
질문&답변
2024.11.19
Private Subnet과 Gitlab
안녕하세요.질문주신 내용은 제가 제공하는 강의와 관련 없는 내용으로 보입니다.또한, 해당 내용들은 전반적인 환경에 따라 구성이나 설정이 달라질 수 있을 것 같아 제공해주신 내용만으로는 답변드리기도 어려울 것으로 보입니다.강의 내용과 관련된 질문 부탁드리겠습니다.감사합니다.
- 0
- 2
- 14
질문&답변
2024.10.25
docker compose watch가 없는 명령어로 출력됩니다.
안녕하세요!https://docs.docker.com/compose/how-tos/file-watch/위 링크 보면 버전이 2.22.0 이상이어야 되는 것으로 보입니다.https://docs.docker.com/compose/install/linux/#update-compose위 링크 참고하셔서 업데이트 해보시기 바랍니다!감사합니다.
- 1
- 1
- 49
질문&답변
2024.09.09
Bind Mount에서 마운트가 되지 않습니다. (파일/경로 동일)
안녕하세요!디렉토리를 파일에 마운트 하려 했거나, 파일을 디렉토리에 마운트 하려 했을 때 발생하는 오류로 보입니다.file index.html index.html: HTML document text, ASCII text file index.html index.html: directory위와 같이 file 명령을 통해서,로컬 경로에 존재하는 내용이 파일인지 디렉토리인지 확인 부탁드립니다.(오류로 봐서는 index.html이 디렉토리인 것 같아 보입니다.)감사합니다.
- 1
- 2
- 108
질문&답변
2024.08.22
깃허브 액션에서 deploy가 실패해요
안녕하세요!26err: ERROR: failed to solve: failed to read dockerfile: open Dockerfile: no such file or directory 27err: Error response from daemon: No such container: 843371319 28err: Unable to find image 'cokeholic-kim/docker-cicd-test:latest' locally질문 주신 내용의 위 부분을 봤을 때 simple-cicd 스크립트 파일의 아래 부분이 누락되어 있는게 아닌지 의심되네요.(사진)정확히 어떤 셋팅을 하셨는지를 모르는 상황이라서 위 내용 올바르게 들어가 있는지 확인 부탁드리겠습니다.위 내용 외에도 뭔가 스크립트나 도커파일 부분에서 제공해드린 것과 다른 내용이 있는걸로 보입니다. 가능하시다면 활용중이 yaml파일과 도커 파일 내용도 공유해주시면 감사하겠습니다.
- 1
- 2
- 158
질문&답변
2024.08.08
IRSA 의 토큰이 최대 24시간인데 만료되면 어떻게 되나요?
안녕하세요! 좋은 질문 주셔서 감사합니다.먼저 아셔야 하는건 토큰을 발급하고 주입하는 기능은 k8s의 기능이라는 것 입니다.k8s 1.12 버전부터 도입된 ProjectedServiceAccountToken 이라는 기능으로, 자세한 내용은 projected volume 이라는 키워드와 함께 찾아보시길 권장 드립니다. (말 그대로 k8s의 기능이기에...)위의 기능을 AWS의 Identity providers 기능과 연계해서 사용하는게 IRSA라고 보시면 됩니다. (그리고 AWS에 등록된 프로바이더를 통해 검증하기 위해 EKS OIDC 엔드포인트는 무조건 퍼블릭인겁니다.)결과적으로 토큰의 로테이션 또한 k8s의 kubelet이 수행(요청)합니다. 링크로 가셔서 조금 내리면 아래와 같은 문구가 있습니다.The kubelet will: request and store the token on behalf of the Pod; make the token available to the Pod at a configurable file path; and refresh the token as it approaches expiration. The kubelet proactively requests rotation for the token if it is older than 80% of its total time-to-live (TTL), or if the token is older than 24 hours. The application is responsible for reloading the token when it rotates. It's often good enough for the application to load the token on a schedule (for example: once every 5 minutes), without tracking the actual expiry time.대충 요약하면, "kubelet은 토큰의 수명이 80%보다 오래됐거나 24시간을 넘으면 로테이션을 수행한다." 겠죠?결국 중요한 일은 k8s가 모두 수행하는거고, aws-eks-pod-identity-webhook은 볼륨마운트와 환경변수 주입을 수행하는거라고 보시면 됩니다! (실제 적용될 yaml 수정)!꿀팁!을 하나 드리자면, k8s preStop hook 사용 시 토큰 로테이션이 정상적으로 되지 않는 이슈가 있으니 실제 실무에서 사용하실 때에는 안내도 같이 해주시면 같이 일하시는 분들도 좋아하실 것 같습니다! (장애 사전 예방 ㅎㅎ)-추가- 조금 더 정확한 내용은 링크 참고하시면 좋을 것 같네요!감사합니다!
- 1
- 1
- 244