Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- FAAS
- alert
- 너비 우선 탐색
- docker
- k8s
- Docker-compose
- 숨바꼭질3
- kubernets
- 타원곡선
- BaaS
- ChangeCipherSpec
- golang
- vue.js
- observability
- sia
- 코딩테스트
- 백준
- 비트코인
- kubernetes
- Programmers
- 서버리스
- Jenkins
- 설치과정
- 프로그래머스
- 13549
- 모각코
- 도커
- Props
- cloud
- Vue
Archives
- Today
- Total
작업공간
SIA - 하계 최종 회고 본문
🗓 Plan
구분주요 실습 내용 및 계획
1주 | 기업 및 업무 소개, 보안 교육 |
2주 | 클라우드 네이티브 관측가능성 개념에 대한 이해 & 쿠버네티스에 대한 이해 |
3주 | GLP 스택에 대한 이해 및 배포 실습 |
4주 | 실습 내용 중간 점검 및 보고 |
5주 | Prometheus 개선 도구, “Thanos”에 대한 개념 이해 |
6주 | Thanos 배포 실습 |
7주 | Thanos 구성 최적화 실습 |
8주 | 실습 내용 최종 점검 및 보고 |
- [x] Observability & K8S 개념 파악
- [x] 싱글 클러스터 환경 Prometheus & Grafana 모니터링 시스템 구축
- [x] 멀티 클러스터 환경 Thanos & Prometheus & S3 & Grafana 모니터링 시스템 구축
- [x] Thanos 구성 최적화
+
- [ ] Argo CD로 K8S 클러스터 Gitops 경험
- [ ] Event에 따라 alertmanager 구축
- [ ] 클러스터 구축
💪 Deep
- Network
- Ingress control
- grpc
- Debugging skill
✅ Result
Architect Cluster’s monitoring system
- [x] Thanos component 분석
- [x] 각각의 component 연결 방법 확인
- [x] Thanos + Prometheus 구성도 작성
Thanos + Prometheus + S3 + Grafana
- [x] 각 클러스터에서 프로메테우스 메트릭 수집 확인
- [x] 오래된 메트릭 S3 저장 확인
- [x] hyunseok1-cluster의 Thanos가 모든 클러스터의 메트릭 수집 확인
- [ ] 타겟 클러스터 추가 시 환경 구성 자동화 쉘 스크립트 작성
sre-intern-observability
├── README.md
├── multi-cluster-central
│ ├── Chart.lock
│ ├── Chart.yaml
│ ├── values
│ │ └── sia
│ │ ├── dev-prom.yaml
│ │ ├── dev-query.yaml
│ │ └── dev-thanos.yaml
│ └── values.yaml
├── multi-cluster-target
│ ├── Chart.lock
│ ├── Chart.yaml
│ ├── values
│ │ └── sia
│ │ └── dev-prom.yaml
│ └── values.yaml
└── **updateQuery.sh**
👨💻 Doing
Thanos 환경 구성
why extend to thanos?
- [x] Query, Storegateway, Compactor yaml 작성
- [x] Thanos ↔ minIO 연결 확인
- [x] Prometheus, node exporter로 자체 메트릭 수집 확인
- [x] Thanos → Prometheus 메트릭 수집
- [x] hyunseok2-cluster에도 Prometheus, Thanos sidecar 설정
- [x] Grafana로 총 2개의 클러스터 메트릭 확인
- [x] Helm chart로 정리
- [x] 자동화 쉘 스크립트 작성
🔥 Accident
Kubelet high network latency
- 해결
- kubectl delete service/{unused_kubelet} -n kube-system
Query and grpc
sidecar의 http endpoint가 잡히지 않는다
ingress rule의 subpath grpc endpoint가 잡히지 않는다
- GRPC는 root path / 만 지원 중이었다..
- 이거 때문에 시간을 좀 많이 날렸다
- Query는 sidecar의 grpc endpoint로만 설정하도록 공식 문서에 나와있다..
Cannot load S3 when re-release
prometheus가 재배포되면 Storage에 저장되어있던 과거 데이터들을 로드할 수 없음
- 하지만 Sidecar는 생성된 시점부터 저장한 데이터에 대해서만 로드가 가능하고, Storegateway는 상관없이 로드가 가능하다는 차이가 있었다.
- Storegateway를 사용하여 해결
- Sidecar와 Storegateway 모두 Store API를 지원한다고 하여 동일한 기능을 하는 줄 알고 Storegateway를 사용하지 않았었다.
🌱 Impression
- 문제를 바라보는 관점을 과감하게 돌릴 줄도 알아야 한다.
- 질문을 할 때 시간을 뺏는다고 망설이지 말고 충분히 고민해봤다면 질문하자.
🙋 QnA
'2022 하계 인턴' 카테고리의 다른 글
SIA - 하계 중간 회고 (0) | 2022.11.18 |
---|---|
[SIA] Cloud native (0) | 2022.07.07 |
[SIA] Cloud Engineer 면접 (0) | 2022.05.26 |