openstack devstack install - 2부 (multi-nodes)

Post on 08-Jan-2017

505 Views

Category:

Software

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

OpenStack Korea Community

DevStack (2): Multi-nodes

2014-06-21

OpenStack Korea Community

Index

What is DevStack? (1편 All-in-one 참고)

Installation Type: Multi-nodes

Controller & Compute nodes

Configuration file: localrc / local.conf

Installation (Demo)

OpenStack Korea Community

DevStack Installation Type – (1)

• All-in-one (Single-node)

리눅스 서버 1대에 OpenStack 모든 구성 요소

들을 설치

장점: Multi-node보다 손쉬운 설치 과정

단점: OpenStack 각 구성 요소에 대한 구조 파

악의 어려움

• Multi-nodes

리눅스 서버 여러 대에 OpenStack 구성 요소들

을 나누어 설치

장점: 여러 대에 설치하여 기능 분산,

OpenStack 구성 요소에 대한 구조 이해 용이

단점: All-in-one보다 복잡한 설치 과정

OpenStack Korea Community

DevStack Installation Type – (2)

• All-in-one (Single-node)

Compute

API request

Nova API

Other components

• Multi-nodes

Compute

API request

Nova API

Other components

Compute

Compute

OpenStack Korea Community

• Controller 노드

모든 OpenStack 서비스들을 실행합니다.

Compute 노드(들)을 관리합니다.

• Compute 노드(들)

작업 위주의 OpenStack 서비스들만을 실행합

니다. (예: 가상 머신 서비스 - Nova)

Controller & Compute nodes

Compute

API request

Nova API

Other components

Compute

Compute

…VM VM VM…

VM VM VM…

OpenStack Korea Community

• localrc / local.conf

DevStack 설치를 위한 환경 설정 파일입니다.

초창기 DevStack에서부터 localrc를 설정 파

일로 사용하였으며, 최근에는 local.conf 파일

사용을 권장하고 있습니다.

All-in-one 설치시 미리 정의된 localrc 파일을

다운로드하여 사용하였습니다.

설정 내용

설치 구성 요소

암호

네트워크 구성

Configuration file: localrc / local.conf

HOST_IP=192.168.56.101PUBLIC_INTERFACE=eth0

# LoggingDEST=/opt/stackLOGFILE=$DEST/logs/stack.sh.logSCREEN_LOGDIR=$DEST/logs/screen

# CredentialsADMIN_PASSWORD=openstackMYSQL_PASSWORD=openstackRABBIT_PASSWORD=openstackSERVICE_PASSWORD=openstackSERVICE_TOKEN=tokentoken

# Neutron - Networking ServiceDISABLED_SERVICES=n-netENABLED_SERVICES+=,q-svc,q-agt,q-dhcp,q-l3,q-meta,q-metering,neutron

localrc (All-in-one에서 사용):

OpenStack Korea Community

Installation – (1)

• 데모: 설치 환경

가상 환경: VirtualBox 4.3.12 in Windows 8

Linux: “Ubuntu 14.04 LTS Desktop” x 2

OpenStack Release 버전: Icehouse

설치 방식: Multi-nodes (nova-network)

설치 구성 요소: Nova, Glance, Keystone, Horizon

참고: http://devstack.org/guides/multinode-lab.html

Compute

API request

Nova API

Other components

Compute

Compute

OpenStack Korea Community

(OS)

(VirtualBox)

[로컬 영역 연결1](인터넷 연결)

[로컬 영역 연결2]호스트 네트워크

(인터넷)

Compute

API request

Nova API

Other components

Compute

Compute

VM VM VM…

VM VM VM…

eth0

br100

eth0

br100

eth0

br100eth1

eth1

eth1

192.168.56.0/24

Installation – (2)

(참고: 는 NAT 입니다.)

OpenStack Korea Community

Installation – (3)

• 설치 과정

1) VirtualBox 및 Linux 설치

2) Linux 기본 환경 설정 (업데이트 포함)

3) 가상 머신 복제를 통한 추가 노드 생성 + 설정

4) DevStack을 다운로드하기 위한 ‘git’ 설치

5) DevStack 스크립트 다운로드

6) Controller 노드 설정 구성 및 설치

7) Compute 노드 설정 구성 및 설치

8) 테스트$ sudo pico /etc/hosts # 호스트 이름 변경 필요 (1)

$ sudo pico /etc/hostname # 호스트 이름 변경 필요 (2)

$ sudo service hostname start # 호스트명 변경 적용 명령어

OpenStack Korea Community

Installation – (3)

• 설치 과정

1) VirtualBox 및 Linux 설치

2) Linux 기본 환경 설정 (업데이트 포함)

3) 가상 머신 복제를 통한 추가 노드 생성 + 설정

4) DevStack을 다운로드하기 위한 ‘git’ 설치

5) DevStack 스크립트 다운로드

6) Controller 노드 설정 구성 및 설치

7) Compute 노드 설정 구성 및 설치

8) 테스트

$ sudo -i

# groupadd stack

# useradd -g stack -s /bin/bash -d /opt/stack -m stack

# passwd stack

‘stack’ 사용자 추가 & 암호 지정

# echo "stack ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers

‘sudo’ 명령어 실행시 암호 묻지 않도록 설정

OpenStack Korea Community

Installation – (3)

• 설치 과정

1) VirtualBox 및 Linux 설치

2) Linux 기본 환경 설정 (업데이트 포함)

3) 가상 머신 복제를 통한 추가 노드 생성 + 설정

4) DevStack을 다운로드하기 위한 ‘git’ 설치

5) DevStack 스크립트 다운로드

6) Controller 노드 설정 구성 및 설치

7) Compute 노드 설정 구성 및 설치

8) 테스트

$ sudo apt-get install git

$ git clone –b stable/icehouse git://github.com/openstack-

dev/devstack.git

Git 설치

DevStack 스크립트 다운로드

$ wget –O local.conf http://goo.gl/4c6AEW

$ wget –O local.sh http://goo.gl/aLMYsc && chmod +x local.sh

설치 구성 파일 다운로드 (Controller 노드)

$ wget –O local.conf http://goo.gl/67Mocp

설치 구성 파일 다운로드 (Compute 노드)

OpenStack Korea Community

Installation – (3)

• 설치 과정

1) VirtualBox 및 Linux 설치

2) Linux 기본 환경 설정 (업데이트 포함)

3) 가상 머신 복제를 통한 추가 노드 생성 + 설정

4) DevStack을 다운로드하기 위한 ‘git’ 설치

5) DevStack 스크립트 다운로드

6) Controller 노드 설정 구성 및 설치

7) Compute 노드 설정 구성 및 설치

8) 테스트

[[local|localrc]]HOST_IP=192.168.56.111FIXED_RANGE=10.4.128.0/20FIXED_NETWORK_SIZE=4096FLOATING_RANGE=192.168.42.128/25MULTI_HOST=1LOGFILE=/opt/stack/logs/stack.sh.logADMIN_PASSWORD=openstackMYSQL_PASSWORD=supersecretRABBIT_PASSWORD=supersecreteSERVICE_PASSWORD=supersecreteSERVICE_TOKEN=xyzpdqlazydog

local.conf (Controller 노드):

#!/usr/bin/env bashfor i in `seq 2 20`; do nova-manage fixed reserve 10.4.128.$i; done

local.sh (Controller 노드):

OpenStack Korea Community

Installation – (3)

• 설치 과정

1) VirtualBox 및 Linux 설치

2) Linux 기본 환경 설정 (업데이트 포함)

3) 가상 머신 복제를 통한 추가 노드 생성 + 설정

4) DevStack을 다운로드하기 위한 ‘git’ 설치

5) DevStack 스크립트 다운로드

6) Controller 노드 설정 구성 및 설치

7) Compute 노드 설정 구성 및 설치

8) 테스트

[[local|localrc]]]HOST_IP=192.168.56.112FIXED_RANGE=10.4.128.0/20FIXED_NETWORK_SIZE=4096FLOATING_RANGE=192.168.42.128/25MULTI_HOST=1DEST=/opt/stackLOGFILE=$DEST/logs/stack.sh.logSCREEN_LOGDIR=$DEST/logs/screenADMIN_PASSWORD=openstackMYSQL_PASSWORD=supersecretRABBIT_PASSWORD=supersecreteSERVICE_PASSWORD=supersecreteSERVICE_TOKEN=xyzpdqlazydogDATABASE_TYPE=mysqlSERVICE_HOST=192.168.56.111MYSQL_HOST=$SERVICE_HOSTRABBIT_HOST=$SERVICE_HOSTGLANCE_HOSTPORT=$SERVICE_HOST:9292ENABLED_SERVICES=n-cpu,n-net,n-api,c-sch,c-api,c-vol,n-novncVNCSERVER_LISTEN=0.0.0.0VNCSERVER_PROXYCLIENT_ADDRESS=$HOST_IP

local.conf (Compute 노드):

OpenStack Korea Community

DevStack Review: Multi-nodes

DevStack을

Multi-nodes 모드로 여러 Linux 가상 머신에 설치해 보았습니다.

Controller 노드에서는

모든 OpenStack 서비스들을 실행합니다.

Compute 노드에서는

실제 작업을 주로 실행하는 OpenStack 서비스들을 실행합니다.

OpenStack Korea Community

Tips!

screen –x stack

DevStack를 통해 구동된 여러 서비스들 상황을 확인합니다. (이동: Ctrl+p/n, 종료: Ctrl+a,d)

./unstack.sh

“./stack.sh”를 통해 실행되었던 OpenStack 서비스들을 중지합니다. (설정 파일 미제거)

./clean.sh

“./stack.sh”를 통해 설치되었던 OpenStack 서비스들을 제거합니다. (설정 파일 제거)

OpenStack Korea Community

감사합니다.

최영락 (나임네트웍스, SDN 기술팀 매니저)

top related