[OpenStack 하반기 스터디] Docker를 이용한 OpenStack...
-
Upload
openstack-korea-community -
Category
Software
-
view
9.052 -
download
13
Transcript of [OpenStack 하반기 스터디] Docker를 이용한 OpenStack...
DOCKER를 이용한OPENSTACK 가상화
Team 4 :
고정준
김영우, 김지은, 박형석,
권윤주
팀원소개
팀장 : 고정준
고문 : 박형석
팀원 : 김영우, 김지은, 권윤주
하고자 했던 DEPLOYMENT
• 목적 : ‘docker’라는 것을 통해서 컴퓨팅 자원 가상화
• 배경 : • 가상머신(VM)에 비해 성능이 좋다고 들어서 어느 정도 성능이 좋을 것인지 궁금• docker를 통해서 어떤 형태의 서비스 제공이 가능할 지 궁금
• 1차 목표 : • container와 VM 간 성능 테스트를 해볼 수 있는 형태 구축
DOCKER란?
‘가상화’라기 보다는 ‘격리’ 기술 : HostOS를 공유하며 특정하게 필요한 부분만을 컨테이너라이즈드하기 때문에 경량하면서 성능이 좋다
OpenStack에 Docker를 적용하면 빠른 배포, 유연성, 자원의 효율적 사용등의 장점이 있음
OPENSTACK에서 DOCKER로 구성할 수 있는 구조
STUDY 진행 과정
1. docker + openstack 설치 관련한 문서 search & share Reference 참고
2. 설치 제한 사항 설정 호스트 OS : Ubuntu 14.04 LTS OpenStack Version : Kilo
3. 각자 docker를 openstack에 올리기 시도 Ubuntu 14.04 LTS 상에서 devstack + novadocker + docker Ubuntu 14.04 LTS 상에서 운영되는 openstack controller + nova-docker 기반의compute node
centOS 7 에서 packstack + novadocker + docker
4. 설치 상황 공유 Devstack, Packstack, Manual installation 생각보다 진척이 어려웠음
애로사항 : 설치문서를 기반으로 했지만 발생하는 에러
애로사항 : 우리가 기대한 것과는 다른 결과
Dashboard의 인스턴스 콘솔의 인스턴스 화면
Floating1
Floating2
Floating3
우리의 DEPLOYMENT
SingleNode/SingleZone 환경 구축 Devstack을 통한 Docker on OpenStack(nova-network 기반) Manual installation을 통한 Docker on OpenStack(nova-network 기반) Packstack을 통한 Docker on OpenStack(neutron 기반)
MultiNode/MultiZone 환경 구축 Packstack을 통한 Docker on OpenStack(neutron 기반)
SINGLENODE/SINGLEZONE 환경
SINGLENODE/SINGLEZONE 환경
Floating1
Floating2
Floating3
FIP3
Floating1
MULTINODE/MULTIZONE 환경 구축
MULTINODE를 위한 네트워크 구성
MULTINODE/MULTIZONE 상에서 컨테이너/가상머신 생성
HOST 상의 DOCKER CONTAINER VS. OPENSTACK 상의 DOCKER CONTAINER
OpenStackBridge
DockerBridge
HOST-IP
HOST-IP :
docker run -d -p 3334:80 larsks/thttpd
# docker inspect $CID
Floating1
Floating2
Floating3
Floating3
nova boot --image larsks/thttpd --flavor m1.tiny test6-docker
# docker inspect $CID
CONTAINERS ON HOST
thttp
thttp
docker0 br100
eth0
nginxwordpress
172.17.0.1 192.168.10.1
172.17.0.4Fixed ip : 192.168.10.3
HOST-IP = a.b.c.d
http://a.b.c.d:PORT1
Floating ip : p.q.r.s
http://p.q.r.s
http://a.b.c.d:PORT2
Floating ip : w.x.y.z
http://w.x.y.z
팀4 STUDY 결과
• 팀원 간 새로운 기술(“docker”) 적용을 위하여 많은 의견 교류
• Docker container 생성 환경 구축
• Docker/KVM 생성환경 구축
• Docker에 대한 좀 더 깊은 이해
• 그래도 계속 갖게 되는 질문•어떤 형태로 의미있는 서비스할 수 있을까?
마무리
• Docker(컨테이너)는 multi-purpose 컴퓨팅 자원 제공 보다는 애플리케이션 배포에 좀 더 초점이 있다.•가상머신 : 범용적, 컨테이너 : 특정 목적 지향적
• 컨테이너를 통한 컴퓨팅 자원 제공이 가상머신을 통한 컴퓨팅 자원 제공에 비해 성능은 좋겠지만, 컴퓨팅자원을 사용하는 사용자의 자유도, 보안성은 많이 떨어진다.• OpenStack의 사용자가 컴퓨팅 자원을 사용하는 방식에 따라 적용하는 것이 좋을수도 있고 아닐 수도 있을 것 같다.• “Docker” 라는 컨테이너는 단순히 성능향상을 위해서 사용할 수 있는 가상화 대체기술은 아니다.• Openstack summit에서 다뤄지고 있는 Docker 관련 기술들에 대한 서베이가지속적으로 필요할 듯하다. • Ex.“docker networking”, “practical docker for openstack”
REFERENCES
설치관련 : https://docs.docker.com/engine/installation/ubuntulinux/ https://wiki.openstack.org/wiki/Docker http://bderzhavets.blogspot.kr/2015/05/running-nova-docker-on-openstack-rdo.html
http://blog.oddbit.com/2015/02/11/installing-novadocker-with-devstack/
Docker 이해관련 : https://www.maketecheasier.com/running-docker-io-under-ubuntu-linux/
http://docs.openstack.org/kilo/config-reference/content/lxc.html http://www.ubuntu.com/cloud/lxd https://github.com/jpetazzo/pipework
REFERENCES
팀4 docker on OpenStack 설치 방법 공유 : http://jiming.tistory.com/208 http://eatpeppershothot.blogspot.kr/2015/12/using-pipework-to-enable-communication.html
https://www.evernote.com/shard/s15/sh/a96599f5-6b07-4db7-9396-2658261fa411/5c209a6dcf7459fbc57dea9e3ec1ed72
좀 더 볼거리 : https://www.openstack.org/summit/vancouver-2015/summit-videos/presentation/docker-networking-in-openstack-what-you-need-to-know-nowhttps://ask.openstack.org/en/question/42637/how-do-i-store-docker-images-on-glance/
https://www.openstack.org/summit/openstack-summit-atlanta-2014/session-videos/presentation/practical-docker-for-openstack