소개
글로벌 커뮤니케이션 소셜 서비스를 운영하는 SRE(Site Reliability Engineer)로서 쿠버네티스 멀티 클러스터 관리 방법론과 쿠버네티스 구현체(CAPI, OCI)에 대한 명세와 컨테이너 리소스 격리 방법에 대한 연구를 병행하고 있다.
이런 연구 활동을 기반으로 쿠버네티스 볼륨 테스트 파트에 컨트리뷰션 했다.
본업은 쿠버네티스 오퍼레이터와 같은 CRD(커스텀 리소스)를 개발해 현업에서 쿠버네티스를 좀 더 편리하게 사용할 수 있도록 돕는 일이다. 최근에는 분산 데이터베이스를 쿠버네티스 클러스터에서 글로벌 리전 단위로 운영하는 업무를 병행하고 있다.
또한, 페이스북 그룹 ‘코딩이랑 무관합니다만'과 ‘IT 인프라 엔지니어 그룹'의 운영진을 맡고 있다.
강의
전체2수강평
- 상세한 설명 좋았습니다.
yeonhong.min
2024.05.25
2
- 알찬 강의 감사합니다.
yeonhong.min
2024.05.16
1
게시글
질문&답변
2024.08.10
operator alertmanager 연결 관련 문의
안녕하세요. 현재 여러 프로메테우스 인스턴스에서 하나의 Alertmanager를 사용하여 알림을 보내고자 하는 환경을 구성하려고 하시는 것으로 이해했습니다. 이러한 구성에 대해 관심이 있는 분들을 위해 일반적인 구성 방법을 설명드리겠습니다. 실무에서는 일반적으로 하나의 프로메테우스 인스턴스에 하나의 Alertmanager를 연결하는 방식을 사용합니다. 여러 프로메테우스를 통합하여 하나의 프로메테우스로 데이터를 집계한 후, 이 통합된 프로메테우스에서 Alertmanager로 알림을 전달하는 방법도 많이 사용됩니다. 이를 위해 Grafana Mimir, Prometheus Agent 모드, remote_write/remote_read 등의 방법을 고려해보실 수 있습니다. 현재 구성하신 환경에 대해 몇 가지 점검해보시면 좋을 것 같습니다. 프로메테우스 설정에서 Alertmanager 설정이 제대로 동기화되었는지 확인합니다. 알림 규칙(alert-rule)이 적용되었고, 알림이 발생할 때 Alertmanager로 제대로 전달되는지 확인합니다. 이를 위해 Prometheus와 Alertmanager의 로그를 확인해보시는 것도 좋습니다. 제가 드린 가이드가 강의 외 실습 환경에서는 쿠버네티스 클러스터 버전, 네트워크, 보안 정책 등 다양한 요인으로 인해 동작이 달라질 수 있습니다. 그에 따라 일부 모호한 영역의 트러블슈팅 가이드를 제공하기 어려운 점 양해 부탁드립니다. 경우에 따라서, 다른 구현 방법을 고려해보시는 것도 좋은 방법이 될 수 있습니다. 감사합니다.
- 0
- 1
- 91
질문&답변
2024.05.05
helm으로 프로메테우스 설치 시 PVC 관련 질문
안녕하세요 김연규 님 쿠버네티스의 pvc가 생성 될 때 storageclass를 통해서 pv를 프로비저닝 하고 있습니다. 이 때 사용되는 프로비저닝 설정을 관리하는 것이 바로 storageclass 인데요. storageclass의 경우 애너테이션을 통해서 아무런 설정없이 바로 사용할 default storageclass를 설정할 수 있습니다. [1] 현재 실습에서는 2.1 에서 vagrant up으로 실습환경을 구성할 때 위와 같은 설정이 적용되어 있기 때문에, 명시적으로 pvc에서 사용할 storageclass를 지정하지 않아도 nfs를 통해서 pv 설정이 가능한 것입니다. 관련하여 아래의 코드와 참고자료를 확인해보시면 이해에 도움이 되실 것 같습니다. 코드 https://github.com/SeongJuMoon/_Lecture_prom_learning.kit/blob/d447c21a64bc35d6c0570716eb550c83fb118d7a/ch2/2.1/extra-k8s-pkgs.sh#L45C1-L45C99 kubectl annotate storageclass managed-nfs-storage storageclass.kubernetes.io/is-default-class=true 참고자료 [1] https://kubernetes.io/docs/concepts/storage/storage-classes/#default-storageclass 학습에 도움이 되시길 바랍니다. 감사합니다.
- 0
- 2
- 246
질문&답변
2024.04.03
kube-prometheus 란 무엇인가요?
안녕하세요 mc1.shin 님 kube-prometheus 레포지토리는 prometheus-operator를 활용해서 쿠버네티스 내부를 모니터링하는 모니터링 설정(YAML), 그런 설정들을 반복적으로 만드는 템플릿 도구(jsonnet), 이를 적용하기 위한 문서(docs)가 담긴 레포지토리입니다. 따라서 문서 레포(kube-prometheus) 원본은 https://github.com/prometheus-operator/prometheus-operator 에서 빌드된 것이므로, 이미지 자체는 편하신 곳에서 다운로드 받아 구성하시면 됩니다. 내려받은 두 곳에서의 오퍼레이터 동작이 다른 경우 오퍼레이터 버전에 따른 동작 차이 일 수 있으니 강의에서 제공드린 버전의 오퍼레이터를 설치하시길 권고드립니다. 감사합니다. 문성주 드림
- 0
- 1
- 132
질문&답변
2024.02.09
9.9 강의 그라파나 대시보드에 JSON 파일 import 오류
안녕하세요 dldmschd222 님 문의 주신 9.9 강의에서의 대시보드를 임포트 했을 때 No alerts matching filters 에러가 나타나는 것은 현재 프로메테우스에 경보 규칙이 생성되어 있지 않아서 발생하는 문제인 것으로 확인됩니다 9.9 실습에서는 프로메테우스 오퍼레이터 환경에서 배포한 경보(alert)을 보여주고 있기 때문에 No alerts matching filters이 생성되지 않은 상황이라면 현재 실습 환경에 네이티브 프로메테우스 환경이신지 확인 한번 부탁 드립니다. 만약 네이티브 프로메테우스 환경에서 실습을 진행하고 계시다면 9.6.프로메테우스-스택으로 구성 변경하기 를 참고하셔서 환경을 변경한 다음에 실습을 진행해주시면 문제가 해결될 것으로 보입니다. 감사합니다. 즐거운 설 연휴 보내세요. 문성주 드림
- 0
- 1
- 184
질문&답변
2024.01.15
5.7 table 패널 실습문의
안녕하세요 bj jung 님 혹시 table 패널 쿼리 입력기에서 Run Queries 를 다시 눌러도 현상이 비슷하실까요? 현상이 동일하다면 현재 실습 환경에서 프로메테우스가 정상적으로 배포되어 있는지 확인이 필요할 것 같아요. 우선 위 두 가지 방식을 통해서 문제가 해소되는지 확인해주실 수 있나요? 감사합니다. 문성주 드림
- 0
- 1
- 138