[쿠버네티스/도커스터디] 0. 들어가며

vector13·2022년 9월 21일
1

서론

MSA 스터디를 통해서 마이크로서비스 아키텍처를 실제 사용하기 위해서는 도커 환경의 필요성을 느꼈고, 그로 인해 도커, 쿠버네티스가 무엇인지 간을 보기 위해서 스터디를 진행한다.

스터디는 책과 강의로 진행을 할 것이고
책은 '컨테이너 인프라 환경 구축을 위한 쿠버네티스/도커' (조훈, 심근우, 문성주 저, 길벗 출판사, 2021) 을 이용해서 스터디를 진행하고
강의는 인프런의 '쉽게 시작하는 쿠버네티스(v1.25)' (조훈) 의 강의를 동시에 들으려고 한다.
https://www.inflearn.com/course/%EC%BF%A0%EB%B2%84%EB%84%A4%ED%8B%B0%EC%8A%A4-%EC%89%BD%EA%B2%8C%EC%8B%9C%EC%9E%91/dashboard

쿠버네티스, 도커, 젠킨스, 프로메테우스, 그라파나 다섯 가지 도구로 실제 컨테이너 인프라 환경을 구성해 보면서 새로운 인프라 환경을 학습하기 위해서 이 책으로 스터디를 진행하기로 했다.

그리고 책의 내용을 이해하는데 난관이 예상되므로 인강도 같이 병행하면서 하는 것이 나을 것 같다는 판단하에 동시에 진행하기로 결정하였다.

블로그에 작성하는 글은 책의 내용과 강의의 내용 중에서 내가 중요하다고 생각되는 부분을 내가 이해한 언어로 작성하려고 노력하려 한다.

목차와 깃허브

책의 목차는 다음과 같다.

책의 목차 1장 새로운 인프라 환경이 온다

1.1 컨테이너 인프라 환경이란
1.2 컨테이너 인프라 환경을 지원하는 도구
1.3 새로운 인프라 환경의 시작

2장 테스트 환경 구성하기

2.1 테스트 환경을 자동으로 구성하는 도구
2.2 베이그런트로 테스트 환경 구축하기
2.3 터미널 프로그램으로 가상 머신 접속하기

3장 컨테이너를 다루는 표준 아키텍처, 쿠버네티스

3.1 쿠버네티스 이해하기
3.2 쿠버네티스 기본 사용법 배우기
3.3 쿠버네티스 연결을 담당하는 서비스
3.4 알아두면 쓸모 있는 쿠버네티스 오브젝트

4장 쿠버네티스를 이루는 컨테이너 도우미, 도커

4.1 도커를 알아야 하는 이유
4.2 도커로 컨테이너 다루기
4.3 4가지 방법으로 컨테이너 이미지 만들기
4.4 쿠버네티스에서 직접 만든 컨테이너 사용하기

5장 지속적 통합과 배포 자동화, 젠킨스

5.1 컨테이너 인프라 환경에서 CI/CD
5.2 젠킨스 설치를 위한 간편화 도구 살펴보기
5.3 젠킨스 설치 및 설정하기
5.4 젠킨스로 CI/CD 구현하기
5.5 젠킨스 플러그인을 통해 구현되는 GitOps

6장 안정적인 운영을 완성하는 모니터링, 프로메테우스와 그라파나

6.1 컨테이너 인프라 환경 모니터링하기
6.2 프로메테우스로 모니터링 데이터 수집과 통합하기
6.3 PromQL로 메트릭 데이터 추출하기
6.4 그라파나로 모니터링 데이터 시각화하기
6.5 좀 더 견고한 모니터링 환경 만들기

부록 A kubectl을 더 쉽게 사용하기

부록 B 쿠버 대시보드 구성하기
부록 C kubespray로 쿠버네티스 자동 구성하기
부록 D 컨테이너 깊게 들여다보기

그리고 강의의 목차는 다음과 같다.

강의의 목차 섹션 0. Preview - 강의 소개
0.1.강사 소개 및 강의 목적
0.2.강의 소개

섹션 1. 쿠버네티스 환경 구성
1.1.쿠버네티스(Kubernetes)란
1.2.코드로 쉽게 구성하는 쿠버네티스 랩 환경
1.3.쿠버네티스 랩을 쉽게 접근하기 위한 터미널 구성

섹션 2. 배포를 통한 쿠버네티스 체험
2.1.배포를 통해 확인하는 파드(Pod)
2.2.파드를 외부에서도 접속하게 하는 서비스(Service)
2.3.파드와 디플로이먼트(Deployment) 차이
2.4.외부로 노출하는 더 좋은 방법인 로드밸런서(LoadBalancer)
2.5.배포한 것들 삭제하기

섹션 3. 쿠버네티스 인사이드
3.1.쿠버네티스 구성 요소 확인(+EKS,AKS,GKE 관리형 쿠버네티스)
3.2.쿠버네티스의 기본 철학
3.3.실제 쿠버네티스의 파드 배포 흐름

섹션 4. 문제를 통해 배우는 쿠버네티스
4.1.쿠버네티스 파드에 문제가 생겼다면
4.2.쿠버네티스 워커 노드의 구성 요소에 문제가 생겼다면
4.3.쿠버네티스 마스터 노드의 구성 요소에 문제가 생겼다면

섹션 5. 쿠버네티스 오브젝트
5.1.쿠버네티스에서 오브젝트란
5.2.쿠버네티스 기본 오브젝트

섹션 6. 쿠버네티스 Tips
6.1.kubectl 쉽게 쓰는 법
6.2.쿠버네티스 버전 업그레이드
6.3.오브젝트 예약 단축어

섹션 7. Closing - 강의 마무리 및 다음 강의 소개 (+쿠버네티스 공부법)
7.1.강의를 마치며...
7.2.후속 강의 소개(그림으로 배우는 쿠버네티스)

섹션 8. 보강 수업
8.001.도커가 중단되었는데 파드가 그대로에요
8.002.'vagrant up' 실행 시에 발생하는 에러와 해결책
8.003.API서버와 etcd 정보 일치 확인
8.004.관리형 쿠버네티스(EKS,AKS,GKE)에서 배포하는 경우 같은 점과 다른 점은
8.005.애플리케이션(파드 | 컨테이너) 배포 추가 예제(Polaris, Chaos-Mesh)
8.006.맥 OS X에서 쿠버네티스 랩을 접근하기 위한 터미널 구성
8.007.숨겨진 기능 및 개선 기능
8.008.'그림으로 배우는 쿠버네티스' 랩과 관리형 쿠버네티스(GKE)와 비교
8.009.앤서블(Ansible)을 통한 쿠버네티스 노드의 버전 업그레이드
8.010.쿠버네티스 실습 랩(v1.20+)을 Vagrant가 아닌 이미지로 바로 구성 설치하는 법
8.011.가상머신(x86-64)으로 구성한 쿠버네티스 랩 환경의 3가지 장점
8.999.향후 강의 계획 및 CKA 준비 랩 환경 제공

섹션 9. 외부 세미나
[2021. 11. 27] 네전따: 네트워크 엔지니어에게 쿠버네티스는 어떤 의미일까요?
[2021.12.22] NCP: kubectl 잘 활용하기

섹션 10. v1.20 - 보관됨(Archived)
4.2.쿠버네티스 워커 노드의 구성 요소에 문제가 생겼다면(v1.20)
4.3.쿠버네티스 마스터 노드의 구성 요소에 문제가 생겼다면(v1.20)
6.2.쿠버네티스 버전 업그레이드(v1.20)

저자의 깃허브에서 실습 파일을 다운 받을 수 있다.
https://github.com/sysnet4admin/_Book_k8sInfra

그럼 .. 파이팅..!

profile
HelloWorld! 같은 실수를 반복하지 말기위해 적어두자..

0개의 댓글