본문 바로가기
반응형

k8s5

devops problem solving(이슈해결 역량 기르기 팁) 필자가 k8s 등 여러 클라우드 이슈들을 경험하면서 정리한 이슈 대응 방법 절차이다. 정답은 아니니 참고하면 좋겠다.요약1. 우선순위를 판단한다(critical, major, minor)- 현상해결이 원인분석에 우선한다.- 조직 내 전파가 필요한지 판단2. 히스토리를 확인한다.3. 각종 정보(지표 등)를 확인한다.4. 가설을 세우고 증명하기(원인 파악하기)5. 해결되면 생각해볼 것들6. 미해결 이슈 공유우선순위 판단Critical: 장애상황, 서비스 중단. 사용자가 바로 알아차릴수 있음Major: 일부 극소수 사용자가 알아차릴수 있음. 서비스는 계속 제공가능Minor: 사용자가 알아차리지 못함. 서비스 계속 제공가능원인분석보다 현상해결이 우선이다. 예를 들어, 어떤 k8s 노드가 문제라서 장애라면 스케줄.. 2024. 11. 14.
모든 워커노드에서 특정 컨테이너 이미지 삭제 방법 쿠버네티스에 이미지를 배포할때 imagePullPolicy를 보통 IfNotPresent로 하게 된다. 이때 만약 부득이한 상황으로 이미지 태그를 업데이트하지 않고 다시 빌드해서 레지스트리에 올렸을 때, 정상적으로 이미지가 재배포되지 않는다. 개발용으로 빌드할때도 이런 경우를 마주할수 있는데, 모든 워커노드에서 다운로드된 특정 컨테이너 이미지를 찾아서 삭제해주는 방법을 공유한다.이 방식은 Containerd를 런타임으로 사용하는 쿠버네티스 1.24 버전부터 사용가능하다.먼저, crictl (Containerd ctl) 을 가지고 이미지를 만들어야 한다.FROM alpine:latest ARG CRICTL_VERSION="v1.31.1" # https://github.com/kubernetes-sigs/c.. 2024. 11. 6.
Jupyterhub with spark on k8s 설치 삽질기 & 팁 주피터 노트북과 스파크는 워낙 잘 알려진 오픈소스이므로 이에 대한 설명은 굳이 언급하지 않으려 한다. 여기서는 k8s 상에 주피터를 어떻게 잘 설치할 수 있으며, 주피터 상에서 스파크 executor 를 어떻게 실행할수 있는지, 단순히 혼자서 쓰는게 아닌 여러명이 어떻게 공간을 분리(멀티테넌트)하여 제한된 리소스로 사용하도록 As a service 형태로 제공할수 있는지 설명한다. (보안측면에서는 자세히 다루지 않는다. k8s에서 networkPolicy 등 세밀한 설정이 필요하겠지만 그건 필요에 따라 레벨이 달라지기 때문이기도 하고, 자칫하다가는 주피터 노트북의 기본 동작 조차 안되는게 있을 수도 있다)또한 스파크의 배포형상에 대해서도 논하지 않는다. 주피터 노트북에서는 cluster 모드 보다는 c.. 2024. 10. 26.
nginx reload와 keep-alive (부제: zero-downtime은 사기일까?) * 분석내용이 틀릴 수도 있습니다. 지적해주시면 감사하겠습니다. 해당 이슈를 얘기하기 전에 Ingress 리소스정보 변경에 따른 Ingress-nginx controller 의 config reload flow를 먼저 설명한다.예를 들어, Ingress의 host를 변경한다고 가정하자. 변경이 되면 Ingress 리소스를 watch하는 Ingress-nginx controller(nginx가 아니다!)에서 Ingress를 읽어 nginx.conf를 새로 만든다. 그리고나서 nginx -s reload 명령을 날리게 된다. 이 때, nginx 에서는 어떤 방식으로 config을 반영할까? 구글링으로 reload 시 내부적으로 일어나는 구체적인 flow를 찾을 수 있었다.serverfault.com/ques.. 2021. 1. 16.
Kubernetes 에서 Monitoring System(Prometheus) 운영경험기 필자는 2017년 초부터 현재까지 약 2년 6개월에 가까운 기간동안 kubernetes 기반 모니터링 시스템을 운영하였다.(실제 Prometheus로 운영한 것은 2019년 2월부터)기간으로만 따지면 매우 긴 기간이지만 그에 비해 경험이 충분하지 않다고 생각한다.(전체 시스템 Scalability에 한계가 있음) 하지만 k8s에서의 모니터링 시스템 운영할 예정이거나 운영하고 계시는 분들에게 미약하게나마 도움이 되고자 사용 경험담(실수, 팁 등)을 공유하고자 한다. 전체를 크게 3개 부분으로 나누었다.1. Kubernetes 사용 관련2. Prometheus 설치/운영 관련3. Prometheus Query, Grafana 사용 관련  각각의 세부 내용은 중요하다고 생각하는 부분을 흐름이나 순서없이 나열하.. 2019. 11. 27.
반응형