OpenShift- 엔터프라이즈 준비 Kubernetes 슬롯개발자의 경우 | 메가 슬롯 -Enterprise -Ready Kubernetes 컨테이너 플랫폼 블로그 커뮤니티 | 개발자 | 슬롯 커뮤니티 -Enterprise -Ready Kubernetes 컨테이너 플랫폼 SCSK 기술자 블로그 | 슬롯 추천 모니터링 환경 건설 에디션 : 애플리케이션 모니터링을위한 Prometheus/Grafana 설정
슬롯 추천 모니터링 환경 건설 에디션 : 애플리케이션 모니터링을위한 Prometheus/Grafana 설정
안녕하세요! 이것은 기술 직원 인 Torikai입니다
이것은 놀라운 일이지만 슬롯 추천 환경을 어떻게 모니터링합니까? 로그 모니터링, 메트릭 모니터링, 추적 모니터링과 같은 다양한 방법이 있습니다 "우리는 컨테이너 워크로드 사용을 고려하고 있지만 베어 메탈 또는 가상 머신보다 더 복잡한 컨테이너 환경을 모니터링하기가 어려워 보입니다"
이 시리즈는 특히 슬롯 추천 환경의 모니터링에 관한 것입니다메트릭 모니터링에 중점을 둘 것입니다 슬롯 추천는 기본적으로 내장 된 강력한 모니터링 기능이 있지만 이번에는특정 응용 프로그램 및 서비스를 위해 Prometheus 및 Grafana를 사용하여 자체 메트릭 모니터링 환경을 구축하는 단계를 시도해 봅시다
[메트릭 모니터링 란 무엇입니까? 】
최근 몇 년 동안 우리는 "관찰 가능성"이라는 용어를 듣기 시작했습니다 관찰 가능성은 일본어로 "관찰 가능성"으로 변환되며 시스템 상태를 나타냅니다외부에서 얼마나 추측하고 이해할 수 있습니까?의 정도를 나타냅니다 문제 해결 및 성능 향상, 시스템 내에서 일어나는 일에 대한 심층적 인 이해를위한 매우 중요한 개념입니다
관찰 가능성은 주로 메트릭, 트레이스 및 로그의 세 가지 기둥으로 구성되며,이를 사용하면 시스템의 관찰 가능성을 높일 수 있습니다
- 메트릭: CPU 사용, 메모리 사용, 요청 수 및 오류율과 같은 특정 시간에 수집 된 수치 데이터 시스템 건강의 지속적인 모니터링 및 이상 징후의 빠른 탐지에 적합합니다
- 추적: 여러 서비스에서 단일 요청의 프로세스를 추적하는 데이터 마이크로 서비스 사이의 병목 현상을 식별하고 분산 시스템의 성능을 분석하는 데 유용합니다
- 로그: 응용 프로그램 및 시스템에 의한 이벤트 출력 기록 문제가 발생하면 특정 오류 메시지를 이해하고 처리 흐름을 자세히 이해하고 원인을 식별해야합니다
[메트릭 모니터링을위한 DEFACTO 표준]
메트릭 모니터링의 사실상 표준은Prometheus시계열 데이터를 효율적으로 수집하고 저장하고 강력한 쿼리 언어 (PROMQL)를 제공합니다
슬롯 추천는 전체 클러스터를 모니터링하기위한 Prometheus가 있습니다표준으로 통합되어 사용됩니다
또한 Prometheus와 함께 수집 한 메트릭을 이해하기 쉽게 만들기 위해,Grafana와 함께 사용됩니다 Grafana는 광범위한 데이터 소스를 지원하며 Prometheus는 그 중 하나입니다
이 시리즈는 아래 개요 다이어그램에 표시된 것처럼 응용 프로그램 메트릭을 얻고 Grafana에서 시각화하는 프로세스를 처리합니다
Prometheus 운영자 및 Grafana 운영자를 설치하고 Prometheus Server 및 Grafana 인스턴스를 작성하여 시작하겠습니다

[구현 절차]
선호도 및 노트 :
- 이 절차는 표준 슬롯 추천 모니터링과 분리되어 있습니다특정 응용 프로그램의 경우에 Prometheus와 Grafana를 배치하기위한 것입니다 클러스터 전체 모니터링에는 영향을 미치지 않습니다
- 다음 명령은 슬롯 추천 CLI (OC)를 사용하십시오
- 이 검증에서 슬롯 추천 컨테이너 플랫폼 v416이 사용되었습니다
1 Prometheus 운영자 및 Grafana 운영자를 설치하는 프로젝트를 만듭니다
특정 응용 프로그램을 모니터링하기위한 별도의 환경으로 새 프로젝트를 만듭니다
``쉘
2 당신이 만든 프로젝트에 Prometheus 운영자를 설치하십시오
슬롯 추천 콘솔에서 OperatorHub로 이동하여 "Prometheus Operator"테스트 모니터링프로젝트에 설치하십시오 또는 YAML을 적용하여 설치할 수 있습니다
・ OperatorHub에서 설치 절차 :
- 슬롯 추천 콘솔에 로그인하여 "OperaterHub"로 이동하십시오
- 8855_8892
- "설치"버튼을 클릭하고테스트 모니터링설치를 실행할 프로젝트를 선택하십시오

3 Prometheus 연산자를 설치 한 후 Prometheus 인스턴스를 만듭니다
Prometheus 운영자가 제공하는 사용자 정의 리소스 (CR)Prometheus개체를 만듭니다 Prometheus 서버 용 POD가 배포됩니다
・ Prometheus 인스턴스 생성 절차 :
- 슬롯 추천 콘솔에서테스트 모니터링프로젝트로 전환하십시오
- "연산자"로 이동 → "설치된 운영자"로 이동하여 "Prometheus 운영자"를 클릭하십시오
- "Prometheus"탭을 선택하고 "Prometheus 작성"을 클릭하여 필요한 설정 (예 : 저장 용량)을 만들고 인스턴스를 만듭니다

4 Prometheus가 특정 대상을 모니터링 할 수 있도록 필요한 역할과 역할 연결을 만듭니다
Prometheus isServicemonitor and Podmonitor와 같은 사용자 정의 리소스를 통해 모니터링 대상을 감지합니다 Prometheus가 이러한 자원을 읽을 수 있도록 적절한 권한을 부여해야합니다
참고 :다음 YAML은 일반적인 예이며 슬롯 추천 버전 또는 운영자 버전에 따라 조정이 필요할 수 있습니다 또한,테스트 모니터링프로젝트 내에서 모니터링 된 개체를 감지하기 위해 권한으로 제한하십시오
▼ prometheus-lole-for-monitoryaml
추가 정보 :일반적으로 Prometheus 운영자가 만든 Prometheus 인스턴스는 해당 인스턴스가 실행중인 프로젝트에서이를 갖습니다ServicemonitoryaPodmonitor를 발견하기 위해 기본 역할이 이미 부여되었습니다 추가 권한이 필요하거나 범위를 더 자세히 정의하려면이 단계를 고려하십시오
5 1의 프로젝트에 Grafana 운영자를 설치하십시오
Prometheus와 유사하게 OperatorHub에서 "Grafana 운영자"를 검색하고테스트 모니터링프로젝트에 설치하십시오
・ OperatorHub의 설치 절차 :
- 슬롯 추천 콘솔에 로그인하여 "OperatorHub"로 이동하십시오
- "Grafana 운영자"를 검색하고 세부 사항 화면을 엽니 다
- "설치"버튼을 클릭하고테스트 모니터링설치를 실행할 프로젝트를 선택하십시오

6 Grafana 운영자를 설치 한 후 Grafana 인스턴스를 만듭니다
Grafana 운영자가 제공하는 CR (Custom Resource)입니다Grafana개체를 만듭니다 이로 인해 Grafana 포드가 배치됩니다
・ grafana 인스턴스 생성을위한 단계 (개요) :
- 슬롯 추천 콘솔의 테스트 모니터링 프로젝트로 전환하십시오
- "연산자"→ "설치된 운영자"로 이동하여 "Grafana 운영자"를 클릭하십시오
- Grafana 탭을 선택하고 Grafana 만들기를 클릭하여 인스턴스를 만듭니다

7 Grafana의 서비스 계정에 대한 인증 토큰을 얻으십시오
``쉘
8 Grafana에 액세스 및 로그인
Grafana 포드가 시작된 후 슬롯 추천 콘솔에서 경로를 확인하고 액세스하십시오 기본 로그인 정보는 일반적으로 Grafana 운영자가 자동으로 생성 한 비밀에 저장됩니다
・ 기본 사용자 이름 및 비밀번호를 얻는 방법 (예) :
- Grafana 사용자 정의 리소스 설명에서 로그인 정보를 확인하십시오
$ OC 설명 grafana -n 테스트 모니터링보안 : admin_password : 시작 admin_user : root``
- OC로 Grafana URL을 가져 오십시오
- a로 얻은 사용자 및 비밀번호로 로그인하십시오
9 Grafana 설정에서 Prometheus 데이터 소스를 만듭니다
Grafana에 로그인 한 후 다음 단계를 사용하여 Prometheus를 데이터 소스로 추가하십시오
・ 데이터 소스 설정을위한 단계 (개요) :
- Grafana 측 메뉴에서 연결 데이터 소스를 선택합니다
- "새 데이터 소스 추가"를 클릭하고 "Prometheus"를 선택하십시오
- 이름 : Prometheus-Test 모니터링와 같은 명확한 이름을 입력하십시오
- Prometheus Server URL : http : //prometheus-k8stest-monitoringsvc : 9090와 같은 Prometheus-Test 모니터링 프로젝트 이름으로 배포 된 Prometheus 서비스의 URL을 지정하십시오 (정확한 서비스 이름을 확인하려면$ OC GET SVC -N 테스트 모니터링 | grep prometheus)
- auth :
- "인증과 함께"및인증 제공자Bearer Token를 선택하십시오
- Bearer Token7 단계에서 얻은 열토큰 값
- "저장 및 테스트"버튼을 클릭하여 연결을 테스트하십시오

유효한 엔드 포인트와 토큰이 있으면 아무런 문제없이 "데이터 소스가 작동합니다"가 표시되어야합니다 저장이 실패하면 Prometheus Service 엔드 포인트, 토큰 또는 Prometheus Pod가 제대로 실행 중인지 확인하십시오
다음 번에는 Prometheus의 스크래핑 설정 (모니터링 된 개체 추가 방법)과 Grafana에서 대시 보드 사용자 정의에 대해 자세히 설명합니다! 계속 지켜봐!
담당자 소개

- 담당자 이름
- Torikai
- 댓글
- 나는 컨테이너, kubernetes 및 구름 영역의 사업에 종사하고 있습니다
- 품질 유지
- ・ 인증 Kubernetes 관리자