devfair kubernetes 101

47
Kubernetes 101 nacyot

Upload: daekwon-kim

Post on 09-Jul-2015

982 views

Category:

Engineering


9 download

DESCRIPTION

Kubernetes Introduction GDG Devfair 2014 @nacyo_t Maru 180

TRANSCRIPT

Page 1: Devfair kubernetes 101

Kubernetes 101

nacyot

Page 2: Devfair kubernetes 101
Page 3: Devfair kubernetes 101

nacyot

Blog : http://blog.nacyot.com

Page 4: Devfair kubernetes 101

Remotty / Docker Korea

Blog : Forum :

http://blog.remotty.comhttp://docker.co.kr

Page 5: Devfair kubernetes 101
Page 6: Devfair kubernetes 101

Kubernetes오늘의 주제helmsman of a ship줄여서 k8sGoogle을 중심으로 개발중인 오픈소스Docker 기반 Orchestration 도구(*)

Page 7: Devfair kubernetes 101

0

Page 8: Devfair kubernetes 101

Docker2014년 가장 관심 받았던 오픈소스 프로젝트더불어 Go 프로젝트 중 가장 핫한 프로젝트Dotcloud에서 개발(현재 Docker로 사명 변경)컨테이너형 가상화 기술

Page 9: Devfair kubernetes 101

컨테이너형 가상화 : VM과의 차이

Page 10: Devfair kubernetes 101

컨테이너형 가상화 : 프로세스와의 차이

Page 11: Devfair kubernetes 101

컨테이너와 프로세스컨테이너 : 고유의 환경 + 프로세스하나의 프로세스만을 위한 환경 전체를 준비여기서 환경이란 실제로는 파일들의 집합-> 이미지

Page 12: Devfair kubernetes 101
Page 13: Devfair kubernetes 101

Demo (1)iHaskell

# Run ihaskell container$ docker run -p 8778:8778 gregweber/ihaskell

# Browse ihaskell$ firefox http://localhost:8778

Page 14: Devfair kubernetes 101

Demo (2)

Page 15: Devfair kubernetes 101

장점호스트에 가까운 성능

하드웨어 가상화에 비해 압도적 성능

프로세스 별로 고유의 환경을 가질 수 있다Build once, Run anywhere

Page 16: Devfair kubernetes 101

단점프로세스마다 환경을 준비해야함

낭비로 느껴질 수도 있음

패러다임의 변화Immutable Infrastructure

Page 17: Devfair kubernetes 101

Docker 이후

Page 18: Devfair kubernetes 101

dev

Page 19: Devfair kubernetes 101

ops

Page 20: Devfair kubernetes 101

여기까지가 전제

Page 21: Devfair kubernetes 101

Next Stage

Page 22: Devfair kubernetes 101

Docker와 Kubernetes의 관계Docker : 컨테이너 운송(빌딩 블록)Kubernetes : 더 큰 물류 시스템

Page 23: Devfair kubernetes 101
Page 24: Devfair kubernetes 101

Kubernetes오픈소스 컨테이너 클러스터 관리 도구Declarative Orchestration 도구

기존 CM툴은 Imperative한 특성을 버릴 수 없음

desired state를 정의하고 이 상태가 유지하도록 함단순 실행이 아닌 컨테이너의 실행 스케줄을 관리

Page 25: Devfair kubernetes 101

개념 (1)

Page 26: Devfair kubernetes 101

Container

컨테이너형 가상화 기술에서 최소 단위격리된 고유의 환경을 가지는 프로세스

Page 27: Devfair kubernetes 101
Page 28: Devfair kubernetes 101

Pod

container manifestKubernetes의 최소 실행 단위항상 같은 Node 위에서 실행되어야하는 컨테이너'들'

Pod 안에서는 같은 네트워크 환경을 공유Pod 안에서는 디스크 공유 가능

YAML / JSON로 파일로 선언

Page 29: Devfair kubernetes 101
Page 30: Devfair kubernetes 101

Minion

컨테이너가 실행되는 물리적(혹은 논리적) 단위Node 위의 Docker Daemon에서 컨테이너를 실행Kubelet(kubernetes agent)Kubernetes Proxy

Page 31: Devfair kubernetes 101
Page 32: Devfair kubernetes 101

개념 (2) 클러스터

Page 33: Devfair kubernetes 101

Master Server

API ServerSchedulerRegistries

Minion, Pod, Service, Binding

etcd Server

Page 34: Devfair kubernetes 101

Kubelet(on Minion)

각 Minion에 설치되는 데몬컨테이너와 Pod을 관리하는 역할etcdcAdvisor

Page 35: Devfair kubernetes 101
Page 36: Devfair kubernetes 101

개념 (3) Label & 컨트롤러 & 서비스

Page 37: Devfair kubernetes 101

Label

키, 값으로 구성된 메타 정보Pod / 서비스 / 컨트롤러에는 Label을 붙일 수 있다임의로 정의 가능태그 역할같은 Label을 같은 '것들'을 검색/조작 가능

Page 38: Devfair kubernetes 101

Label Selector

Page 39: Devfair kubernetes 101

Replication Controller

지정한 수만큼 Pod을 실행하도록 해주는 컨트롤러차이가 나면, 자동적으로 Pod 실행/종료현재는 Kubernetes에서 지원하는 유일한 컨트롤러

Page 40: Devfair kubernetes 101

Service

같은 역할을 하는 Pod들을 묶는 단위Service가 요청을 받으면 Pod들에 처리를 넘겨줌

Page 41: Devfair kubernetes 101
Page 42: Devfair kubernetes 101

전체 그림

Page 44: Devfair kubernetes 101

클라우드

Page 45: Devfair kubernetes 101

Google Container Engine(GKE)Google Cloud Platforme에서 발표2014년 11월 5일미리 Kubernetes 클러스터가 구성된 서비스

Page 46: Devfair kubernetes 101

Amazon EC2 Container ServiceAmazon Re:invent에서 발표2014년 11월 13일독자기술?

Page 47: Devfair kubernetes 101

감사합니다@nacyo_t