티스토리 뷰

OpenStack

DevStack localrc 유형별 환경설정 하기

나리 짱!!! naleejang 2013. 3. 20. 13:58

처음 OpenStack를 시작하는 사람들이 Openstack를 설치할때 가장 많이 사용하는것이 바로 Devstack Shell Script이다. DevStack Shell Script를 사용하여 OpenStack을 설치하게 되면 간단한 환경설정만으로도 쉽게 클라우드를 설치할 수 있다.


그런데, localrc라고 하는 환경설정 파일을 만드는것조차도 초보자들에게는 매우 어렵게만 느껴진다. 그리고, 나역시 물론 처음에는 잘 안되서 삽질을 했었다. 그래서, devstack shell script를 전부 분석을 하기도 했는데, 계속 업데이트 되어서 다운로드 받을때마다 다시 보긴해야 하지만 말이다. 


그럼, 지금부터 localrc 환경설정 방법을 잠시 살펴보도록 하겠다.


- HOST_IP : 설치하고자 하는 서버의 IP

- FIXED_RANGE : 인스턴스에 할당해 주기 위한 내부 IP 범위

- FLOATING_RANGE : 대체적으로 공인 IP 범위를 할당하며, 그렇지 않을 경우 내부 인트라넷 IP 범위를 할당한다.


  • Single Node, Nova-network 사용시

# default

HOST_IP=192.168.42.101

 

# network

FLAT_INTERFACE=eth0

FIXED_RANGE=10.0.0.0/20

FIXED_NETWORK_SIZE=4096

FLOATING_RANGE=192.168.0.1/24

 

# vnc

VNCSERVER_LISTEN=0.0.0.0

VNCSERVER_PROXYCLIENT_ADDRESS=$HOST_IP

 

# logs

DEST=/opt/stack

LOGFILE=$DEST/logs/stack.sh.log

SCREEN_LOGDIR=$DEST/logs/screen

 

# system password

ADMIN_PASSWORD=openstack

MYSQL_PASSWORD=openstack

RABBIT_PASSWORD=openstack

SERVICE_PASSWORD=openstack

SERVICE_TOKEN=openstackservicetoken

 

# cinder

VOLUME_GROUP="cinder-volume"

VOLUME_NAME_PREFIX="volume-"


  • Multi Node, Nova-network 사용시 Controller Node

# default

HOST_IP=192.168.42.101

MULTI_HOST=True

 

# network

FLAT_INTERFACE=eth0

FIXED_RANGE=10.0.0.0/20

FIXED_NETWORK_SIZE=4096

FLOATING_RANGE=192.168.0.1/24

 

# vnc

VNCSERVER_LISTEN=0.0.0.0

VNCSERVER_PROXYCLIENT_ADDRESS=$HOST_IP

 

# logs

DEST=/opt/stack

LOGFILE=$DEST/logs/stack.sh.log

SCREEN_LOGDIR=$DEST/logs/screen

 

# system password

ADMIN_PASSWORD=openstack

MYSQL_PASSWORD=openstack

RABBIT_PASSWORD=openstack

SERVICE_PASSWORD=openstack

SERVICE_TOKEN=openstackservicetoken

 

# cinder

VOLUME_GROUP="cinder-volume"

VOLUME_NAME_PREFIX="volume-"


  • Multi Node, Nova-network 사용시 Compute Node

# default

HOST_IP=192.168.42.102

MULTI_HOST=True

 

# network

FLAT_INTERFACE=eth0

FIXED_RANGE=10.0.0.0/20

FIXED_NETWORK_SIZE=4096

FLOATING_RANGE=192.168.0.1/24

 

# vnc

VNCSERVER_LISTEN=0.0.0.0

VNCSERVER_PROXYCLIENT_ADDRESS=$HOST_IP

 

# logs

DEST=/opt/stack

LOGFILE=$DEST/logs/stack.sh.log

SCREEN_LOGDIR=$DEST/logs/screen

 

# system password

ADMIN_PASSWORD=openstack

MYSQL_PASSWORD=openstack

RABBIT_PASSWORD=openstack

SERVICE_PASSWORD=openstack

SERVICE_TOKEN=openstackservicetoken

 

# cinder

VOLUME_GROUP="cinder-volume"

VOLUME_NAME_PREFIX="volume-"


# system hosts
SERVICE_HOST=192.168.42.101
MYSQL_HOST=$SERVICE_HOST
RABBIT_HOST=$SERVICE_HOST
GLANCE_HOSTPORT=$SERVICE_HOST:9292
KEYSTONE_AUTH_HOST=$SERVICE_HOST
KEYSTONE_SERVICE_HOST=$SERVICE_HOST

# install service
ENABLED_SERVICES=n-cpu,n-net,n-api,cinder,c-sch,c-api,c-vol

  • Single Node, Quantum 사용시

# default

HOST_IP=192.168.42.101

 

# network

FLAT_INTERFACE=eth0

FIXED_RANGE=10.0.0.0/20

NETWORK_GATEWAY=10.0.0.1

FLOATING_RANGE=192.168.0.1/24

EXT_GW_IP=192.168.0.1

 

# vnc

VNCSERVER_LISTEN=0.0.0.0

VNCSERVER_PROXYCLIENT_ADDRESS=$HOST_IP

 

# logs

DEST=/opt/stack

LOGFILE=$DEST/logs/stack.sh.log

SCREEN_LOGDIR=$DEST/logs/screen

 

# system password

ADMIN_PASSWORD=openstack

MYSQL_PASSWORD=openstack

RABBIT_PASSWORD=openstack

SERVICE_PASSWORD=openstack

SERVICE_TOKEN=openstackservicetoken

 

# cinder

VOLUME_GROUP="cinder-volume"

VOLUME_NAME_PREFIX="volume-"

 

# install service

disable_service n-net

enable_service q-svc q-agt q-dhcp q-l3 q-meta quantum


  • Multi Node, Quantum 사용시 - Controller Node

# default

HOST_IP=192.168.42.101

MULTI_HOST=True


# network

FLAT_INTERFACE=eth1

FIXED_RANGE=10.0.0.0/20

NETWORK_GATEWAY=10.0.0.1

FLOATING_RANGE=192.168.0.1/24

EXT_GW_IP=192.168.0.1

 

# vnc

VNCSERVER_LISTEN=0.0.0.0

VNCSERVER_PROXYCLIENT_ADDRESS=$HOST_IP

 

# logs

DEST=/opt/stack

LOGFILE=$DEST/logs/stack.sh.log

SCREEN_LOGDIR=$DEST/logs/screen

 

# system password

ADMIN_PASSWORD=openstack

MYSQL_PASSWORD=openstack

RABBIT_PASSWORD=openstack

SERVICE_PASSWORD=openstack

SERVICE_TOKEN=openstackservicetoken

 

# cinder

VOLUME_GROUP="cinder-volume"

VOLUME_NAME_PREFIX="volume-"

 

# install service

disable_service n-net

enable_service q-svc q-agt q-dhcp q-l3 q-meta quantum


  • Multi Node, Quantum 사용시 - Compute Node

# default

HOST_IP=192.168.42.102

MULTI_HOST=True


# network

FLAT_INTERFACE=eth1

FIXED_RANGE=10.0.0.0/20

NETWORK_GATEWAY=10.0.0.1

FLOATING_RANGE=192.168.0.1/24

EXT_GW_IP=192.168.0.1

 

# vnc

VNCSERVER_LISTEN=0.0.0.0

VNCSERVER_PROXYCLIENT_ADDRESS=$HOST_IP

 

# logs

DEST=/opt/stack

LOGFILE=$DEST/logs/stack.sh.log

SCREEN_LOGDIR=$DEST/logs/screen

 

# system password

ADMIN_PASSWORD=openstack

MYSQL_PASSWORD=openstack

RABBIT_PASSWORD=openstack

SERVICE_PASSWORD=openstack

SERVICE_TOKEN=openstackservicetoken

 

# cinder

VOLUME_GROUP="cinder-volume"

VOLUME_NAME_PREFIX="volume-"


# system hosts
SERVICE_HOST=192.168.42.101
MYSQL_HOST=$SERVICE_HOST
RABBIT_HOST=$SERVICE_HOST
GLANCE_HOSTPORT=$SERVICE_HOST:9292
KEYSTONE_AUTH_HOST=$SERVICE_HOST

KEYSTONE_SERVICE_HOST=$SERVICE_HOST 


# install service

ENABLED_SERVICES=n-cpu,n-api,g-api,cinder,c-sch,c-api,c-vol,quantum,q-agt


이젠 환경설정 때문에 고민하지 않아도 된다. 아래 보이는 gitHub에서 가서 설치하고자 하는 유형의 localrc를 다운로드 받아 사용하기만 하면 된다. 단, 위에 굵게 표시되어 있는 IP 정보는 반드시 설치하고자 하는 호스트의 환경에 맞추어야 한다.


https://github.com/naleeJang/devstack-localrc

댓글
  • 프로필사진 LeeDJ nova network, single node 설정으로 devstack 을 설치했는데 vm 이 ip를 얻지를 못하네요.

    퀀텀설정으로하면 vm 이 ip는 얻지만 호스트에서 private ip 로 핑이 안가고, 노바네트워크 사용시에는 vm 이 ip를 못얻고..무엇이문제일까요..ㅠㅠ hypervisor는 qemu입니다.

    Starting network...
    udhcpc (v1.20.1) started
    Sending discover...
    Sending discover...
    Sending discover...
    No lease, failing
    WARN: /etc/rc3.d/S40-network failed
    2013.07.10 11:25
  • 프로필사진 나리 제가 글만 봐서는 잘모르겠네요~!!

    본인이 구성한 네트워크 환경을 한번 그림으로 표현해보세요~!!
    그러면 어디서 어떻게 문제가 있는건지 보일꺼예요~!!
    2013.07.10 18:19
  • 프로필사진 jaekeuny 안녕하세요. devstack으로 multi node novanetwork 설치하려고 합니다.

    control node 와 compute 노드스크립트를 각각 구별 및 구성하고

    각각노드들(control node & compute nodes)에 들어가서 $ .stack.sh 해줘야 하는건가요??

    위와 같이 했더니 모든 노드들에 nova가 깔린듯한 느낌이 들었습니다.
    2014.02.12 14:14
  • 프로필사진 Favicon of https://naleejang.tistory.com BlogIcon 나리 짱!!! naleejang 컨트롤러 노드, 컴퓨트 노드 상관없이 모두 오픈스택을 설치하셔야 합니다. 그리고, 모든 노드에 Nova가 깔리는건 정상입니다. 2014.02.13 09:18 신고
댓글쓰기 폼