[OpenStack 하반기 스터디] Docker를 이용한 OpenStack...

  • View
    9.052

  • Download
    13

  • Category

    Software

Preview:

Citation preview

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

Recommended