Kubernetes - Intro

·2022년 9월 21일
0

Kubernetes

목록 보기
1/1

Kubernetes 개요

  • Kubernetes 클러스터 생성
  • 컨테이너화된 애플리케이션 생성

Kubernetes란

Kubernetes 객체의 두 가지 요소

Kubernetes 객체

ㄴ 클러스터 상태를 나타내는 영구 항목

  • 객체 사양 : 사용자가 정의한 바람직한 상태
  • 객체 상태 : Kubernetes가 나타내는 현재 상태

Kubernetes Architecture

  • kube-APIserver : 클러스터의 모든 명령을 수락하는
    진입점
  • etcd : 클러스터의 상태를 안정적으로 저장하는 역할
  • kube-scheduler : 파드를 노드에 예약하는 역할
  • kube-controller-manager : 상태를 지속적으로
    모니터링하고 바람직한 상태를 달성하기 위해 변경을 시도
  • kube-cloud-manager : 클라우드 제공업체와 상호작용하는
    컨트롤러를 관리
  • kubelet : 컨테이너 런타임을 사용하여 파드를 시작
  • kube-proxy : 클러스터의 파드 간에 네트워크 연결을 유지

Pod : 배포 가능한 가장 작은 Kubernetes 객체

객체는 yaml 파일에 정의

apiVersion: apps/v1
kind: Pod
metadata:
name: nginx
labels: 
app: nginx
spec:
containers: 
- name: nginx
image: nginx:latest

모든 객체를 이름으로 식별

라벨 선택기로 라벨을 일치

워크로드를 사용 가능한 노드에 균등하게 분산

파드 및 컨트롤러 객체

바람직한 상태를 유지하는 Deployment

Deployment를 통해 Pod 집합이 실행되는지 관리

apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
labels: 
app: nginx
spec:
replicas: 3
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:latest

리소스의 지정 범위를 정의하는 네임스페이스

클러스터의 초기 네임스페이스


profile
SSAFY 7기

0개의 댓글