반응형
본 게시물은 인프런 쿠버네티스 어나더 클래스 강의 내용을 정리한 내용입니다. 링크(https://url.kr/vxsutp)
쿠버네티스 표준 생태계로 편해진 IT인프라 구축
- 위 사진은 쿠버네티스에서 활용되는 Application 들이다.
- 사실상 쿠버네티스생태계 라기 보단 현재 IT 사업으로 진행되는 대부분의 어플리케이션의 여러 응용프로그램들을 모아 놓았다고 해도 과언이 아니다.
- CNCF 에 기여된 프로그램은 다음과 같이 4분류로 나눌수 있다.
- Sandbox : 아직 실험 단계 프로젝트
- Archived : 프로젝트가 비활성화 되어 더 이상 기술 지원이 없는 프로젝트
- Incubating : Graduated 를 진행하기위해 진행되고 있는 프로젝트
- Graduated : CNCF 에 인증된 프로젝트
- 저 많은 프로젝트들 중 주로 사용되는 프로그램/프로젝트 기준으로 아래처럼 정리함.
- 쿠버네티스에서 이중 가장 편한 부분은 모니터링이다.
쿠버네티스 기능으로 편해진 서비스 안정화
- 기존 VM 환경과 쿠버네티스 환경을 운영하는 관점에서 비교해봄
- 기존 VM 환경 예시
- 신규 서비스를 오픈하기 위해 왼쪽과 같은 환경으로 구성하였고 오픈일이 다가옴.
- 서비스 오픈시에 VM 할당이 더 필요하여 vm 담당자가 (1) 과 같이 여러 환경셋팅을 설정해 줌.
- 이후 (2) 번 처럼 웹서버 관리자가 IP 셋팅을 진행하게 됨.
- 기존 서비스에 영향을 주지 않게 하기 위해 보통 야간이나 주말에 작업을 진행.
- 배포 완료후 모니터링 담당자는 App 이 모두 표시되도록 config 설정을 진행함 (4)
- 쿠버네티스 환경 예시
- 이 상황에서도 Pod 증설이 필요하다 느껴 쿠버네티스 담당자에게 파드 증설을 요청함.
- 쿠버네티스 담당자는 Pod 증설 커맨드를 입력한후 금방 새로운 Pod가 올라감.
- Pod 가 올라감과 동시에 IP 할당과 모니터링 설정이 자동으로 설정됨.
모니터링 설치
- 카페 설치 링크 (link)
- 참고 링크 : grafana docs (link) / dashboard (link), prometheus install (link) / docs (link), loki-stack install (link) / docs (link)
Grafana
- Grafana란 Grafana Labs가 개발한 오픈소스 인터랙티브 데이터 시각화 플랫폼
- 사용자가 하나의 대시보드(또는 여러 대시보드)로 통합된 차트와 그래프를 통해 데이터를 확인할 수 있어 데이터를 손쉽게 해석하고 이해할 수 있습니다.
- 또한 기존의 서버 환경, 쿠버네티스 클러스터 또는 다양한 클라우드 서비스 등 정보가 저장되어 있는 모든 위치에서 확보한 메트릭과 정보에 대한 쿼리를 작성하고 경고를 설정할 수 있습니다.
- 따라서 데이터를 더욱 간편하게 분석하고 동향과 비일관성을 파악하여 궁극적으로는 프로세스를 더욱 효율적으로 만들 수 있습니다.
- 출처 - Red Hat 공식 사이트 (link)
Prometheus
- 프로메테우스는 오픈 소스 시스템입니다.
- 모니터링 및 경고 툴킷은 원래 다음 위치에 구축되어 있습니다.
- 사운드클라우드. 2012년 시작된 이래로 많은 사람들이 회사와 조직들은 프로메테우스를 채택했고, 그 프로젝트는 매우 적극적인 개발자 및 사용자 커뮤니티. 이제 독립형 오픈 소스 프로젝트입니다.
- Prometeus는 메트릭을 시계열 데이터로 수집하고 저장합니다. 즉, 메트릭 정보는 기록된 타임스탬프와 함께 레이블이라는 선택적인 키-값 쌍과 함께 저장됩니다.
- 출처 - Prometheus 공식 사이트 (link)
- Prometheus 가 수집한 Metric 을 이용하여 여러 자원을 모니터링하고, 이를 Grafana 를 통해 시각화 한다.
Grafana Loki
- Loki는 Prometeus에서 영감을 받아 수평적으로 확장 가능하고 가용성이 뛰어난 멀티 테넌트 로그 집계 시스템입니다.
- 매우 비용 효율적이고 조작이 쉽도록 설계되었습니다.
- 로그의 내용을 인덱싱하는 것이 아니라 각 로그 스트림에 대한 레이블 집합을 인덱싱합니다.
- Grafana Labs는 Loki 프로젝트의 개발을 주도하고, Loki를 Grafana로 최고 수준의 지원을 구축하고, Grafana Labs 고객이 Loki의 지원과 필요한 기능을 받을 수 있도록 보장하는 것을 자랑스럽게 생각합니다.
- 로키 프로젝트는 2018년 Grafana Labs에서 시작되어 KubeCon Seattle에서 발표되었습니다. 로키는 AGPLv3 라이선스로 풀려났습니다.
- 출처 - Loki 공식 Docs (link)
인프라 환경 관리의 코드화
- 쿠버네티스, 인프라 환경 관리의 장점
- 인프라에 대한 History 관리가 편해짐
- 인프라 작업 추적 가능
- 인프라 환경별 파일 생성 (시간 있을 때 미리 구성 가능, 작업은 Copy & Paste)
- 인프라 반복 작업 x, 퀄리티 향상에 집중
- 새 인프라 작업시 이전 경험을 녹인 코드 활용
'IT 기술 > Infra' 카테고리의 다른 글
[cka] Commands and Arguments (0) | 2024.07.05 |
---|---|
[k8s] Object 그려보며 이해하기 (1) | 2023.12.19 |
[k8s] 쿠버네티스 빠르게 설치하기 (1) | 2023.12.14 |
[k8s] 컨테이너 한방 정리 (0) | 2023.12.14 |
[Docker] 도커 컨테이너 시간변경 (3) | 2023.06.07 |
댓글