코스 개요
모듈 1: 마이크로서비스 설계
• 좋은 마이크로서비스 경계
• 도메인 주도 설계(DDD) 사용
• 비즈니스 도메인 경계의 대안 (변동성, 데이터, 기술, 조직)
• 모놀리틱 시스템 분할
• 과도한 분해
• 계층별 분해
• Strangler, Parallel Run, Feature Toggle 등의 분해 패턴 사용
• 성능, 무결성, 트랜잭션에 대한 데이터 분해 고려 사항
모듈 2: Docker 및 런타임 최적화
• 적절한 기본 이미지 선택
• 계층 수 최소화
• 다단계 빌드 사용
• 이미지 최적화 (다중 줄 인수 정렬 등)
• 빌드 캐시 활용
• 이미지 버전 고정
• 리소스 할당 조정
• 보안 컨테이너 실습
• 성능을 위한 런타임 구성
모듈 3: Kubernetes 및 배포 전략
Kubernetes 배포 개요
• 초기 배포 생성 및 실행
• Kubernetes 배포 옵션
롤링 업데이트 배포 수행
• 롤링 업데이트 이해
• 롤링 업데이트 생성 및 실행
• 배포 롤백
캐니 디플로이먼트 수행
• 캐니 디플로이먼트 이해
• 캐니 디플로이먼트 생성 및 실행
블루-그린 디플로이먼트 수행
• 블루-그린 디플로이먼트 이해
• 블루-그린 디플로이먼트 생성 및 실행
Job 및 CronJob 수행
• Job 및 CronJob 생성
모니터링 및 트러블슈팅 작업 수행
• kubectl을 사용한 트러블슈팅 기법
모듈 4: 자동화 및 운영 효율성
Python을 사용하여 Kubernetes의 일반 작업 자동화
• Python을 사용한 Kubernetes 관리 작업 수행
• Python을 사용한 구성 객체 정의
• Python을 사용한 배포 객체 생성
• Python을 사용한 Kubernetes 이벤트 모니터링
• Python을 사용한 배포 스케일링
배포 자동화의 도전 과제 이해
• Kubernetes를 사용한 선언적 구성
• 구성 무결성 관리
GitOps 접근법을 사용한 배포 자동화
• GitOps 원칙
• Flux 소개
• Kubernetes 클러스터에 Flux 설치
Flux를 사용한 자동화된 배포 구성
• 알림 사용
• 소스 저장소 구조
이미지 자동화를 통한 애플리케이션 업데이트 처리
• Flux를 사용한 애플리케이션 배포 업데이트
• 컨테이너 이미지 저장소 태그 스캔
• 최신 이미지 선택 정책 정의
• Flux를 사용한 자동 이미지 업데이트 구성
모듈 5: 가시성 및 근본 원인 명확화
Kubernetes 로깅 및 트레이싱 기능
• 로깅과 트레이싱이 중요한 이유
• Kubernetes 로그 접근
• 포드 및 컨테이너 로그
• 제어 평면 로그
• 노드와 포드의 리소스 사용량
로그 수집 및 분석
• 로그 집계
• 로그 시각화
Kubernetes에서의 분산 트레이싱
• 분산 트레이싱이란 무엇인가?
• OpenTelemetry 사용
• 분산 트레이싱 도구
• 애플리케이션 인스트루멘테이션
• 트레이싱을 사용한 성능 문제 찾기
Prometheus와 Grafana를 사용한 모니터링
• 가시성 개념
• 모니터링 도구
• Prometheus 인스트루멘테이션 사용
로깅의 고급 사례
• 로그 처리
• 로그 필터링 및 풍부화
• 이벤트 소싱
모듈 6: 클러스터 위기 시뮬레이션 및 사고 대응
• 클러스터 환경에서의 다양한 실패 유형 이해
• 노드 실패 시뮬레이션
• 포드 추방 및 리소스 고갈 시나리오
• 네트워크 문제
• DNS 실패로 인한 애플리케이션 타임아웃 처리
• API 서버 중단 시뮬레이션
• 고부하 시스템 안정성 시뮬레이션
• 저장소 실패
• 구성 오류
• 사고 보고 절차 이해
모듈 7: 트러블슈팅을 지원하는 AI
• Kubernetes에 대한 생성형 AI의 이점
• K8sGPT CLI 아키텍처
• K8sGPT CLI 설치
• K8sGPT 명령 및 사용법
• podAnalyzer, pvcAnalyzer, rsAnalyzer 등의 K8sGPT 분석기 사용
• K8sGPT를 사용한 클러스터 분석
• K8sGPT를 사용한 실시간 이슈 분석
• 클러스터 내 K8sGPT 연산자
요건
- Linux 명령줄에 대한 기본 지식
- 애플리케이션 개발 또는 시스템 관리 경험
- 컨테이너(Docker 개념)에 대한 이해
- Kubernetes 개념(포드, 배포, 서비스 등)에 대한 기본적인 이해
- 소프트웨어 아키텍처(API, 서비스 등)에 대한 일반적인 이해
대상 대상:
- DevOps 엔지니어
- 사이트 신뢰성 엔지니어(SRE)
- 마이크로서비스를 사용하는 백엔드/소프트웨어 개발자
- 클라우드 엔지니어 및 플랫폼 엔지니어
-
Kubernetes 환경으로 전환하는 시스템 관리자
회원 평가 (1)
실제 예시
Maria - Fundacja PTA
코스 - Mastering Make: Advanced Workflow Automation and Optimization
기계 번역됨