정보공간_1

[4기 강북 김민호] Cloud Computing 환경 구성하기 (4) 본문

IT 놀이터/Elite Member Tech & Talk

[4기 강북 김민호] Cloud Computing 환경 구성하기 (4)

알 수 없는 사용자 2013. 11. 21. 18:20

안녕하세요. 강북멤버십 20-2기 김민호입니다.

이번 포스팅은 지난 포스팅들에 이어서 OpenStack을 구성하기 위한 Compute Node의 설치 방법에 관해 설명드리도록 하겠습니다.

설치에 필요한 준비 사항은 Cloud Computing 환경 구성하기(2)를 참고하시기 바랍니다. 지금부터 컴퓨트 노드를 구성하는 방법에 대해서 설명하겠습니다. 컴퓨트 노드의 경우 OpenStack에서 생성하는 가상 머신들의 자원을 직접 제공해주는 역할을 수행합니다. 컴퓨트 노드에서는 다음과 같은 기능을 제공합니다.

  • Hypervisor(KVM)
  • nova-compute
  • Neutron OVS Agent

그럼 지금부터 설치 방법에 관해 알아보도록 하겠습니다.


* 설치 전 준비사항

설치 전 준비 사항은 Controller Node와 동일합니다.

  - OpenStack을 설치 하기 위한 저장소 정보를 추가합니다.

  # sudo apt-get install ubuntu-cloud-keyring

 - /etc/apt/sources.list.d/cloud-archive.list에 다음 내용을 추가합니다.

 deb http://ubuntu-cloud.archive.canonical.com/ubuntu precise-updates/grizzly main

 - 다음으로 저장소를 업데이트와 업그레이드를 실시 합니다.

 # sudo apt-get update && apt-get upgrade

 - OpenStack Grizzly 버전의 저장소를 추가 합니다. 위치는 /etc/apt/sources.list.d/grizzly.list 입니다.

deb http://archive.gplhost.com/debian grizzly main

deb http://archive.gplhost.com/debian grizzly-backports main

  - 마찬가지로 저장소를 업데이트 합니다.

  # apt-get update

  # apt-get install gplhost-archive-keyring

  # apt-get upgrade

  - /etc/network/interfaces에서 네트워크 인터페이스 카드 설정을 합니다. 

# Internal Network

auto eth0

iface eth0 inet static

    address 10.10.10.11

    netmask 255.255.255.0

  - /etc/sysctl.conf를 수정합니다.

net.ipv4.conf.all.rp_filter = 0

net.ipv4.conf.default.rp_filter = 0

  - 네트워크를 재시작합니다.

  - 변경한 sysctl설정을 적용합니다.

  # sysctl -e -p /etc/sysctl.conf

  - /etc/hosts에 다른 노드들의 아이피 정보를 등록합니다.

127.0.0.1       localhost

10.10.10.10     controller

10.10.10.9      network

10.10.10.11     compute01

  - ntp를 설치합니다.

  # sudo apt-get install ntp


* OpenStack Compute(Compute Node services)

- Nova Compute 관련 패키지들을 설치합니다.

# apt-get install nova-compute-kvm

- Nova 의 설정 파일들을 수정합니다.

/etc/nova/api-paste.ini

[filter:authtoken]

auth_host = 10.10.10.10

admin_tenant_name = service 

admin_user = nova 

admin_password = password

/etc/nova/nova.conf

[DEFAULT]

# General

verbose=True

my_ip=10.10.10.11

rabbit_host=10.10.10.10

rabbit_password=password


auth_strategy=keystone

ec2_host=10.10.10.10

ec2_url=http://10.10.10.10:8773/services/Cloud


# Networking

libvirt_use_virtio_for_bridges=True

network_api_class=nova.network.neutronv2.api.API

neutron_url=http://10.10.10.10:9696

neutron_auth_strategy=keystone

neutron_admin_tenant_name=service

neutron_admin_username=neutron

neutron_admin_password=password

neutron_admin_auth_url=http://10.10.10.10:35357/v2.0


# Security Groups                                    

firewall_driver=nova.virt.firewall.NoopFirewallDriver

security_group_api=neutron                         


# Compute

compute_driver=libvirt.LibvirtDriver

connection_type=libvirt 


# Cinder

volume_api_class=nova.volume.cinder.API


# Glance

glance_api_servers=10.10.10.10:9292

image_service=nova.image.glance.GlanceImageService


# novnc

vnc_enabled=true                                            

vncserver_proxyclient_address=10.10.10.11                  

novncproxy_base_url=http://10.0.0.10:6080/vnc_auto.html

vncserver_listen=0.0.0.0

- Nova 서비스를 재시작합니다.

# service nova-compute restart


* Open vSwitch

- OpenvSwitch와 관련된 패키지를 설치해줍니다.

# apt-get install -y openvswitch-switch

- OpenvSwitch 서비스를 시작해줍니다.

# service openvswitch-switch start

- 내부 브리지를 생성해줍니다.

# ovs-vsctl add-br br-int


* Neutron

- Neutron의 플러그인 Agent 패키지를 설치합니다.

# apt-get install -y neutron-plugin-openvswitch-agent

- /etc/neutron/neutron.conf 파일의 설정을 변경합니다.

[DEFAULT]

rabbit_host = 10.10.10.10

rabbit_password = password

verbose = True

- /etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini 파일의 플러그인 설정 파일을 수정해줍니다.

[DATABASE]

sql_connection = mysql://neutron:password@10.10.10.1/neutron

[OVS]

tenant_network_type = gre

tunnel_id_ranges = 1:1000

local_ip = 10.10.10.11

enable_tunneling = True

[SECURITYGROUP]

firewall_driver = neutron.agent.linux.iptables_firewall.OVSHybridIptablesFirewallDriver

- Agent를 재시작해줍니다.

# service neutron-plugin-openvswitch-agent restart


자 이제 OpenStack을 이용한 Cloud Computing 환경을 구성이 완료되었습니다! 3대의 데스크탑을 이용하여 Private Cloud를 구축하였습니다. 이제 구성된 환경을 통해서 가상머신을 생성하고 가상머신을 사용해볼 수 있는데요. 

다음 포스팅에서 가상머신을 생성하고 관리하는 방법에 관해 설명을 하도록 하겠습니다.


참고 사이트 : http://docs.openstack.org