SlideShare ist ein Scribd-Unternehmen logo
1 von 16
Downloaden Sie, um offline zu lesen
CoreOS를 이용한 Docker 관리툴 소개 
Docker Seoul Casual Talk #1 / Oct 15, 2014 
by @subicura (김충섭)
Why CoreOS?
minimal 
all in one, but minimal! 
䡬 설치용량 - coreos_production_iso_image.iso (142.6Mb) 
䡬 메모리사용량 - 40% less RAM than average Linux 
䡬 필요한 프로그램만 설치 
䡬 apt-get/yum등 설치 안됨 
䡬 docker/etcd/fleet/git/curl등 설치됨 
䡬 readonly files 
䡬 /usr 디렉토리와 .bashrc등이 readonly
update 
자동 업데이트 
䡬 자동 업데이트 
䡬 2중화는 필수! 
䡬 필요하면 no reboot option 설정 
䡬 minimal하기때문에 서버의 업데이트가 부담이 없음 
䡬 평생 무료 업데이트 (아마도) 
䡬 security 
䡬 Shellshork?? => auto update!
clustering 
클러스터링 기본구성 
䡬 etcd 
䡬 쉽고 간단한 key-value manager 
䡬 consul/zookeeper.. 등이 필요없음 
䡬 systemd 
䡬 사용하기 쉽고 간편 
䡬 fleet = etcd + systemd 
䡬 puppet/chef/ansible/salt.. 등이 필요없음
fleet 
쉽고 간단한 배포 
for i in $(seq 1 ${SERVICE_NUM}); do 
fleetctl start ${SERVICE_NAME}-${BUILD_NUMBER}@${i}.service 
done 
# cleanup 
for i in $(seq 1 ${SERVICE_NUM}); do 
for check in $(seq 1 ${CHECK_NUM}); do 
if [ $(fleetctl list-units --no-legend --fields unit,active | grep ${SERVICE_NAME}-$ 
{BUILD_NUMBER}@${i}.service | awk '{print $2}') = 'active' ]; then 
fleetctl destroy $(fleetctl list-units --no-legend --fields unit | grep ${SERVICE_NAME}- | grep 
@${i} | grep -v ${BUILD_NUMBER}) 
break 
fi 
sleep 5 
done 
done 
*무중단 배포를 추가 프로그램 설치 없이 쉘 스크립트로 간단하게
cloud-config 
기본 필수파일 설치도 쉽게 
write_files: 
- path: /etc/fstab 
permissions: 0644 
content: | 
192.168.0.2:/nfs /mnt/nfs nfs rw,hard,intr,nolock,rsize=8192,wsize=8192,timeo=14 0 0 
- path: /etc/systemd/journald.conf 
permissions: 0644 
content: | 
[Journal] 
SystemMaxUse=50M 
*바이너리를 포함해 어떤 파일도 설치시 설정 가능
and OpenSource!
Private Cloud with Docker
관리툴의 조건 
䡬 GUI - 쉬운 컨테이너 설치 및 상태 확인 
䡬 Detail - native의 기능을 모두 사용 가능 
䡬 Cluster - 확장을 쉽게 
䡬 Easy Install - 설치를 쉽게 
䡬 Service Template - 컨테이너 구성을 하나의 서비스로 
䡬 More - CI, Auto Scale…
http://panamax.io 
Docker Management for Humans 
쉽게 설치하고 쉽게 사용함
Stampede 
http://stampede.io 
hybrid IaaS/Docker orcherstration platform 
VM/Docker 관리 
네트워크 
UI/REST API/Command Line Tool/Python Library
Stampede 
http://www.youtube.com/watch? 
v=UsQ9cVLieaQ&feature=youtu.be

Weitere ähnliche Inhalte

Was ist angesagt?

Was ist angesagt? (20)

Introduce Docker
Introduce DockerIntroduce Docker
Introduce Docker
 
초심자를 위한 도커 소개 및 입문
초심자를 위한 도커 소개 및 입문초심자를 위한 도커 소개 및 입문
초심자를 위한 도커 소개 및 입문
 
Dockerfile과 Bash
Dockerfile과 BashDockerfile과 Bash
Dockerfile과 Bash
 
Docker 사용가이드 public v0.1
Docker 사용가이드 public v0.1Docker 사용가이드 public v0.1
Docker 사용가이드 public v0.1
 
Docker.소개.30 m
Docker.소개.30 mDocker.소개.30 m
Docker.소개.30 m
 
도커(Docker) 메트릭스 & 로그 수집
도커(Docker) 메트릭스 & 로그 수집도커(Docker) 메트릭스 & 로그 수집
도커(Docker) 메트릭스 & 로그 수집
 
docker-based remote desktop
docker-based remote desktopdocker-based remote desktop
docker-based remote desktop
 
Devfair kubernetes 101
Devfair kubernetes 101Devfair kubernetes 101
Devfair kubernetes 101
 
DevOps with Docker
DevOps with DockerDevOps with Docker
DevOps with Docker
 
Docker introduction
Docker introductionDocker introduction
Docker introduction
 
docker_quick_start
docker_quick_startdocker_quick_start
docker_quick_start
 
[Nomad connection]docker seminar 15.10.08
[Nomad connection]docker seminar 15.10.08[Nomad connection]docker seminar 15.10.08
[Nomad connection]docker seminar 15.10.08
 
Docker Casual Talk #2 - Dockerizing newrelic-sysmond
Docker Casual Talk #2 - Dockerizing newrelic-sysmondDocker Casual Talk #2 - Dockerizing newrelic-sysmond
Docker Casual Talk #2 - Dockerizing newrelic-sysmond
 
Docker 로 Linux 없이 Linux 환경에서 개발하기
Docker 로 Linux 없이 Linux 환경에서 개발하기Docker 로 Linux 없이 Linux 환경에서 개발하기
Docker 로 Linux 없이 Linux 환경에서 개발하기
 
Docker (Compose) 활용 - 개발 환경 구성하기
Docker (Compose) 활용 - 개발 환경 구성하기Docker (Compose) 활용 - 개발 환경 구성하기
Docker (Compose) 활용 - 개발 환경 구성하기
 
가장 빨리 만나는 Docker 출간 후기
가장 빨리 만나는 Docker 출간 후기가장 빨리 만나는 Docker 출간 후기
가장 빨리 만나는 Docker 출간 후기
 
Backend Master | 3.4.5 Deploy - Docker Principal
Backend Master | 3.4.5 Deploy - Docker PrincipalBackend Master | 3.4.5 Deploy - Docker Principal
Backend Master | 3.4.5 Deploy - Docker Principal
 
Introduce Google Kubernetes
Introduce Google KubernetesIntroduce Google Kubernetes
Introduce Google Kubernetes
 
XECon2015 :: [1-5] 김훈민 - 서버 운영자가 꼭 알아야 할 Docker
XECon2015 :: [1-5] 김훈민 - 서버 운영자가 꼭 알아야 할 DockerXECon2015 :: [1-5] 김훈민 - 서버 운영자가 꼭 알아야 할 Docker
XECon2015 :: [1-5] 김훈민 - 서버 운영자가 꼭 알아야 할 Docker
 
Open stack의 vm개념을 통한 docker의 활용
Open stack의 vm개념을 통한 docker의 활용Open stack의 vm개념을 통한 docker의 활용
Open stack의 vm개념을 통한 docker의 활용
 

Andere mochten auch

Andere mochten auch (6)

도커 무작정 따라하기: 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!
도커 무작정 따라하기: 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!도커 무작정 따라하기: 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!
도커 무작정 따라하기: 도커가 처음인 사람도 60분이면 웹 서버를 올릴 수 있습니다!
 
CoreOS : 설치부터 컨테이너 배포까지
CoreOS : 설치부터 컨테이너 배포까지CoreOS : 설치부터 컨테이너 배포까지
CoreOS : 설치부터 컨테이너 배포까지
 
Enterprise Docker
Enterprise DockerEnterprise Docker
Enterprise Docker
 
Docker + Kubernetes를 이용한 빌드 서버 가상화 사례
Docker + Kubernetes를 이용한 빌드 서버 가상화 사례Docker + Kubernetes를 이용한 빌드 서버 가상화 사례
Docker + Kubernetes를 이용한 빌드 서버 가상화 사례
 
도커 컨테이너 활용 사례 Codigm - 남 유석 개발팀장 :: AWS Container Day
도커 컨테이너 활용 사례 Codigm - 남 유석 개발팀장 :: AWS Container Day도커 컨테이너 활용 사례 Codigm - 남 유석 개발팀장 :: AWS Container Day
도커 컨테이너 활용 사례 Codigm - 남 유석 개발팀장 :: AWS Container Day
 
[221] docker orchestration
[221] docker orchestration[221] docker orchestration
[221] docker orchestration
 

Ähnlich wie CoreOS를 이용한 Docker 관리툴 소개

caanoo Ernice
caanoo Ernicecaanoo Ernice
caanoo Ernice
jumiss
 
Puppet과 자동화된 시스템 관리
Puppet과 자동화된 시스템 관리Puppet과 자동화된 시스템 관리
Puppet과 자동화된 시스템 관리
Keon Ahn
 
[231]나는서버를썰터이니너는개발만하여라 양지욱
[231]나는서버를썰터이니너는개발만하여라 양지욱[231]나는서버를썰터이니너는개발만하여라 양지욱
[231]나는서버를썰터이니너는개발만하여라 양지욱
NAVER D2
 

Ähnlich wie CoreOS를 이용한 Docker 관리툴 소개 (20)

20141229 dklee docker
20141229 dklee docker20141229 dklee docker
20141229 dklee docker
 
docker on GCE ( JIRA & Confluence ) - GDG Korea Cloud
docker on GCE ( JIRA & Confluence ) - GDG Korea Clouddocker on GCE ( JIRA & Confluence ) - GDG Korea Cloud
docker on GCE ( JIRA & Confluence ) - GDG Korea Cloud
 
caanoo Ernice
caanoo Ernicecaanoo Ernice
caanoo Ernice
 
20170713 tech day_7th_pxe 부팅-김주한
20170713 tech day_7th_pxe 부팅-김주한20170713 tech day_7th_pxe 부팅-김주한
20170713 tech day_7th_pxe 부팅-김주한
 
[17.01.19] docker introduction (Korean Version)
[17.01.19] docker introduction (Korean Version)[17.01.19] docker introduction (Korean Version)
[17.01.19] docker introduction (Korean Version)
 
강분도 - 나만의 우분투 배포판 만들기 (2011Y06M25D)
강분도 - 나만의 우분투 배포판 만들기 (2011Y06M25D)강분도 - 나만의 우분투 배포판 만들기 (2011Y06M25D)
강분도 - 나만의 우분투 배포판 만들기 (2011Y06M25D)
 
Osc4.x installation v1-upload
Osc4.x installation v1-uploadOsc4.x installation v1-upload
Osc4.x installation v1-upload
 
도커없이 컨테이너 만들기 1편
도커없이 컨테이너 만들기 1편도커없이 컨테이너 만들기 1편
도커없이 컨테이너 만들기 1편
 
[오픈소스컨설팅]Docker on Kubernetes v1
[오픈소스컨설팅]Docker on Kubernetes v1[오픈소스컨설팅]Docker on Kubernetes v1
[오픈소스컨설팅]Docker on Kubernetes v1
 
[Ansible] Solution Guide V0.4_20181204.pdf
[Ansible] Solution Guide V0.4_20181204.pdf[Ansible] Solution Guide V0.4_20181204.pdf
[Ansible] Solution Guide V0.4_20181204.pdf
 
20141029 하둡2.5와 hive설치 및 예제
20141029 하둡2.5와 hive설치 및 예제20141029 하둡2.5와 hive설치 및 예제
20141029 하둡2.5와 hive설치 및 예제
 
Puppet과 자동화된 시스템 관리
Puppet과 자동화된 시스템 관리Puppet과 자동화된 시스템 관리
Puppet과 자동화된 시스템 관리
 
왕초보를 위한 도커 사용법
왕초보를 위한 도커 사용법왕초보를 위한 도커 사용법
왕초보를 위한 도커 사용법
 
Deview 2013 :: Backend PaaS, CloudFoundry 뽀개기
Deview 2013 :: Backend PaaS, CloudFoundry 뽀개기Deview 2013 :: Backend PaaS, CloudFoundry 뽀개기
Deview 2013 :: Backend PaaS, CloudFoundry 뽀개기
 
[231]나는서버를썰터이니너는개발만하여라 양지욱
[231]나는서버를썰터이니너는개발만하여라 양지욱[231]나는서버를썰터이니너는개발만하여라 양지욱
[231]나는서버를썰터이니너는개발만하여라 양지욱
 
리눅스서버세팅-김태호
리눅스서버세팅-김태호리눅스서버세팅-김태호
리눅스서버세팅-김태호
 
안드로이드 플랫폼 설명
안드로이드 플랫폼 설명안드로이드 플랫폼 설명
안드로이드 플랫폼 설명
 
Relationship between firmware and module(drvier)
Relationship between firmware and module(drvier)Relationship between firmware and module(drvier)
Relationship between firmware and module(drvier)
 
[오픈소스컨설팅]Docker on Cloud(Digital Ocean)
[오픈소스컨설팅]Docker on Cloud(Digital Ocean)[오픈소스컨설팅]Docker on Cloud(Digital Ocean)
[오픈소스컨설팅]Docker on Cloud(Digital Ocean)
 
Hadoop security DeView 2014
Hadoop security DeView 2014Hadoop security DeView 2014
Hadoop security DeView 2014
 

Mehr von 충섭 김

Mehr von 충섭 김 (6)

쿠버네티스를 이용한 기능 브랜치별 테스트 서버 만들기 (GitOps CI/CD)
쿠버네티스를 이용한 기능 브랜치별 테스트 서버 만들기 (GitOps CI/CD)쿠버네티스를 이용한 기능 브랜치별 테스트 서버 만들기 (GitOps CI/CD)
쿠버네티스를 이용한 기능 브랜치별 테스트 서버 만들기 (GitOps CI/CD)
 
Visual Studio로 Kubernetes 사용하기
Visual Studio로 Kubernetes 사용하기Visual Studio로 Kubernetes 사용하기
Visual Studio로 Kubernetes 사용하기
 
Mesos on coreOS
Mesos on coreOSMesos on coreOS
Mesos on coreOS
 
Launching containers with fleet
Launching containers with fleetLaunching containers with fleet
Launching containers with fleet
 
Automatic docker service announcement with registrator and confd
Automatic docker service announcement with registrator and confdAutomatic docker service announcement with registrator and confd
Automatic docker service announcement with registrator and confd
 
Very Early Review - Rocket(CoreOS)
Very Early Review - Rocket(CoreOS)Very Early Review - Rocket(CoreOS)
Very Early Review - Rocket(CoreOS)
 

CoreOS를 이용한 Docker 관리툴 소개

  • 1. CoreOS를 이용한 Docker 관리툴 소개 Docker Seoul Casual Talk #1 / Oct 15, 2014 by @subicura (김충섭)
  • 3. minimal all in one, but minimal! 䡬 설치용량 - coreos_production_iso_image.iso (142.6Mb) 䡬 메모리사용량 - 40% less RAM than average Linux 䡬 필요한 프로그램만 설치 䡬 apt-get/yum등 설치 안됨 䡬 docker/etcd/fleet/git/curl등 설치됨 䡬 readonly files 䡬 /usr 디렉토리와 .bashrc등이 readonly
  • 4. update 자동 업데이트 䡬 자동 업데이트 䡬 2중화는 필수! 䡬 필요하면 no reboot option 설정 䡬 minimal하기때문에 서버의 업데이트가 부담이 없음 䡬 평생 무료 업데이트 (아마도) 䡬 security 䡬 Shellshork?? => auto update!
  • 5. clustering 클러스터링 기본구성 䡬 etcd 䡬 쉽고 간단한 key-value manager 䡬 consul/zookeeper.. 등이 필요없음 䡬 systemd 䡬 사용하기 쉽고 간편 䡬 fleet = etcd + systemd 䡬 puppet/chef/ansible/salt.. 등이 필요없음
  • 6. fleet 쉽고 간단한 배포 for i in $(seq 1 ${SERVICE_NUM}); do fleetctl start ${SERVICE_NAME}-${BUILD_NUMBER}@${i}.service done # cleanup for i in $(seq 1 ${SERVICE_NUM}); do for check in $(seq 1 ${CHECK_NUM}); do if [ $(fleetctl list-units --no-legend --fields unit,active | grep ${SERVICE_NAME}-$ {BUILD_NUMBER}@${i}.service | awk '{print $2}') = 'active' ]; then fleetctl destroy $(fleetctl list-units --no-legend --fields unit | grep ${SERVICE_NAME}- | grep @${i} | grep -v ${BUILD_NUMBER}) break fi sleep 5 done done *무중단 배포를 추가 프로그램 설치 없이 쉘 스크립트로 간단하게
  • 7. cloud-config 기본 필수파일 설치도 쉽게 write_files: - path: /etc/fstab permissions: 0644 content: | 192.168.0.2:/nfs /mnt/nfs nfs rw,hard,intr,nolock,rsize=8192,wsize=8192,timeo=14 0 0 - path: /etc/systemd/journald.conf permissions: 0644 content: | [Journal] SystemMaxUse=50M *바이너리를 포함해 어떤 파일도 설치시 설정 가능
  • 10. 관리툴의 조건 䡬 GUI - 쉬운 컨테이너 설치 및 상태 확인 䡬 Detail - native의 기능을 모두 사용 가능 䡬 Cluster - 확장을 쉽게 䡬 Easy Install - 설치를 쉽게 䡬 Service Template - 컨테이너 구성을 하나의 서비스로 䡬 More - CI, Auto Scale…
  • 11. http://panamax.io Docker Management for Humans 쉽게 설치하고 쉽게 사용함
  • 12.
  • 13.
  • 14.
  • 15. Stampede http://stampede.io hybrid IaaS/Docker orcherstration platform VM/Docker 관리 네트워크 UI/REST API/Command Line Tool/Python Library