Kubernetes - 어떤걸 배울까?

modolee·2020년 9월 12일
2
post-thumbnail

본 글은 유튜브 채널 44BITS에서 제작 한 영상을 요약 정리 한 것입니다.
아래 이미지를 클릭하시면 영상으로 이동합니다.

프로그램 개발에서 배포까지의 과정

Developer

  • 개발자가 코드 작성

Git (code)

  • Merge Request or Push

Build → 도커 + 컨테이너 영역

  • Test
  • Create Container Image
  • Push Container Image to Docker registry
    • DockerHub
    • AWS ECR
    • Google Cloud GCR

Deploy

  • New or Update

Kubernetes

Scale Out

초기 지식이 있어야 되는 부분

  • Developer → Git → Build
  • 도커를 모른다면 쿠버네티스를 완벽하게 이해할 수 없음

영상를 통해서 다루는 부분

  • Deploy → Kubernetes → Scale Out
  • 만들어진 도커 이미지를 가지고 배포
  • 쿠버네티스 상에서 구동
  • 스케일 아웃

학습 범위

도커 컨테이너 실행하기

  • 도커와 도커 컴포즈를 이용한 멀티 컨테이너 관리

쿠버네티스에 컨테이너 배포하기

  • 실습 환경 만들기
  • kubectl 사용법
  • pod, deployment, service 등 기본 리소스 학습

외부 접속 설정 하기

  • Cluster IP, Node Port, LoadBalancer, Ingress 서비스 타입 학습
  • 서비스 디스커버리 학습

스케일 아웃 하기

  • 부하에 따른 컨테이너 개수 조정
  • 최소 리소스 요청 설정
  • 오토스케일링

그 외 고급 기능 소개

  • HELM 패키지 매니저 소개
  • GitOps, ServiceMesh 소개

다루지 않는 범위

  • 다양한 환경 별 특징 (bare metal, EKS 등...)
  • 쿠버네티스 패턴 (사이드카, 어댑터 등...)
  • 관련 생태계 (서비스메시, 서버리스 등...)
  • GitOps CI/CD
  • 승인 제어 등 고급 기능

목표

  • 구성요소를 이해하고 동작원리를 파악하고 기본적인 사용법을 익힘
    • 막연하게 쿠버네티스는 '어렵다' 라고 생각하는데, 모든 것을 다 알려고 하기 때문에 어렵다고 생각
    • 동작원리는 굉장히 단순하지만 다양한 리소스와 오브젝트를 사용해서 복잡해 보이는 경향이 있음

참고

profile
기초가 탄탄한 백엔드 개발자를 꿈꿉니다.

0개의 댓글