IT/Kubernetes

k8s 정리

난리브루스! 2020. 7. 31. 17:40

kubernetes is an open-source system for automating deployment, scaling, and management of containerized applications.

 

쿠버네티스는 컨테이너 응용 프로그램의 배포, 확장 및 관리를 자동화하는 오픈 소스 시스템입니다.

 

쿠버네티스는 조타수, 조종사 (그리스어)

 

CNCF(Cloud Native Computing Foundation)

 

쿠버네티스의 특징

1. 상태관리

2. 스케줄링

3. 클러스터

4. 서비스 디스커버리 : 서로 다른 서비스를 쉽게 찾고 통신할 수 있음

5. 리소스 모니터링

6. 스케일링 리소스에 따라 자동으로 서비스를 조정함

7. rollout/rollback 배포/롤백 및 버전관리

 

다양한 배포방식

 

Ingress 설정

 

Namespace, Label 관리

 

RBAC( 사용자에 따른 제어) 권한 자유자재로 부여

 

계속해서 원하는 상태를 만들기 위해서 현재의 상태를 바꾸는 것 = 쿠버네티스의 기본 개념이다.

이러한 상태를 어떻게 관리한다? 명령적 방식 보다는 선언적방식(yaml 파일!)으로 정의해서 관리한다.

 

kubernetes 사용하기 - 원하는 상태(desired state)를 다양한 오브젝트(object)에 라벨(Label)을 붙여 정의(yaml)하고 API 서버에 전달.