반응형 Development35 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. Grafana API Call Flow 분석 Grafana는 모니터링 대시보드로서 거의 반표준으로 사용되고 있다. 지원되는 기능이 많아 수정하는 경우가 별로 없지만, 필자의 경우 Grafana에서 지원하는 기본 Multi-Tenant 로는 부족하여 API를 직접 구현/추가하였다. 이를 위해 먼저 Grafana API 호출 흐름을 이해하고 있어야 한다. 여기서는 Grafana Backend의 API Call 흐름을 간단하게 분석해보고자 한다. Grafana의 Backend는 Golang으로 작성되어 있으며, Frontend는 AngularJS로 되어있다.AngularJS는 Framework이라 구조에 대해 별로 평할게 없지만, Backend는 Golang을 모르더라도, 정말 쉽게 이해할수 있도록 가독성 높게 구현되어 있다.Grafana Git Clo.. 2019. 1. 17. Prometheus Operator #2 - 설치 및 사용 여기서는 Prometheus Operator를 Helm Chart로 설치해보고 형태를 간략히 살펴보도록 하겠다. Operator를 OLM(Operator Lifecycle Manager)으로 설치/관리할 수도 있겠으나 필자는 현재 해당 방법으로는 해본적이 없고 Harbor, Spinnaker등의 Registry, CD 플랫폼과 연계하려다보니 Helm Chart로 하는게 적합하다 싶어 해당 방법으로만 설명한다.사전 준비조건Kubernetes v1.11HelmPrometheus Operator 다운받기Stable Helm chart를 곧바로 사용하면 좋겠으나, 그대로 사용하기에는 환경에 따라 수정을 해야할 필요가 많기 때문에(예를들어 k8s api 버전에 따라 최신 chart가 동작하지 않음) 해당 char.. 2019. 1. 2. Prometheus Operator #1 - 소개 Operator Framework 란?Prometheus Operator를 소개하기 전에 먼저 Operator Framework를 알아보자. Container의 Lifecycle을 관리하기 위해 Kubernetes(k8s)가 나왔으며, 많은 각광을 받고 있다. 그러나 사람이 직접 유지보수해야 하는 부분은 존재한다. 예를 들어 Configuration 변경이나 stateful application의 scale-out 등이 필요할때, 단순히 Configmap을 수정하고 Pod을 재시작하는 방식으로는 매끄러운 관리가 되지 않는다. 사람이 Manual로 작업해야 하는 부분이 있을 수 있는데, 문제는 이러한 Manual 작업이 반복될 수 밖에 없다는 것이다. 이러한 문제를 해결하기 위해 만들어진 것이 바로 Ope.. 2018. 12. 28. Dockerfile Tips(Best Practice) - 이미지 크기 최소화 Docker가 업계에서 매우 빠르게 퍼지면서 이제는 분야 관계없이 개발자들은 기본적으로 Docker개념을 알고 있어야 한다.프론트엔드 개발자도, 백엔드 개발자도 자신의 어플리케이션을 배포하려면 Dockerfile을 직접 작성해야 한다는 것이다.자신이 만든 어플리케이션의 환경구성이나 서비스 탐색(Service Discovery)은 자신이 직접 해야지 다른 누군가가 해주지 않는다.(서비스를 찾는 탐색기능 자체는 물론 PaaS에서 지원해줘야 하는 거겠지만) 요즘은 docker-compose도 나와서 docker image생성 뿐만 아니라, 테스트/배포 자동화가 더 편리해졌다. Kubernetes같은 PaaS의 장점까지도 흡수하며 발전하는 Docker를 보면 무섭기까지 하다. 처음 Dockerfile을 작성하는.. 2017. 1. 27. 이전 1 ··· 3 4 5 6 다음 반응형