読者です 読者をやめる 読者になる 読者になる

hirosanote’s blog

検証環境の構築手順やネットワーク機器のテスト結果、関連する事について記載します。このブログは個人で行っており、所属する会社とは関係ありません。

VMware Workstation PlayerでOpenstack Kiloを動かす手順

VMware Workstation Playerを使用して、Openstack KiloとLBaaSを動かす手順を記述します。

 

環境

富士通ノートPC / Windows8.1 / 10GBメモリ / 1TBハードディスク

 

使用したインストーラ

CentOS 7.2 / CentOS-7-x86_64-Minimal-1511.iso

VMware Workstation Player / VMware-player-12.1.0-3272444.exe

 

1. VMware Workstation Playerのインストール

デフォルト値のままで、インストールします。

 

2.  仮想マシンの作成

f:id:hirosanote:20160416163232p:plain

f:id:hirosanote:20160416163338p:plain

f:id:hirosanote:20160416163510p:plain

f:id:hirosanote:20160416163951p:plain

f:id:hirosanote:20160416164113p:plain

f:id:hirosanote:20160416164214p:plain

f:id:hirosanote:20160416164431p:plain

f:id:hirosanote:20160416164610p:plain

f:id:hirosanote:20160416164850p:plain

f:id:hirosanote:20160416165210p:plain

f:id:hirosanote:20160416165433p:plain

f:id:hirosanote:20160416170630p:plain

 

3. CentOS7.2のインストール

f:id:hirosanote:20160416170823p:plain

f:id:hirosanote:20160416170921p:plain

f:id:hirosanote:20160416171133p:plain

f:id:hirosanote:20160416171734p:plain

f:id:hirosanote:20160416172229p:plain

f:id:hirosanote:20160416172352p:plain

f:id:hirosanote:20160416172530p:plain

f:id:hirosanote:20160416172655p:plain

f:id:hirosanote:20160416172819p:plain

f:id:hirosanote:20160416173031p:plain

 

f:id:hirosanote:20160416173305p:plain

f:id:hirosanote:20160416173453p:plain

f:id:hirosanote:20160416173556p:plain

f:id:hirosanote:20160416173735p:plain

f:id:hirosanote:20160416173909p:plain

f:id:hirosanote:20160416174211p:plain

f:id:hirosanote:20160416174405p:plain

f:id:hirosanote:20160416174648p:plain

f:id:hirosanote:20160416175205p:plain

f:id:hirosanote:20160416175301p:plain

f:id:hirosanote:20160416175401p:plain

f:id:hirosanote:20160416175617p:plain

f:id:hirosanote:20160416181637p:plain

f:id:hirosanote:20160416182333p:plain

 

4. CentOSツールのインストールと各種設定

この手順書は、ルートユーザーを使用します。SSHクライアントからログインし、以下のツールのインストールおよび設定を行います。

yum -y install net-tools

yum install -y ntp

service ntpd start

systemctl disable NetworkManager

systemctl stop NetworkManager

NM_CONTROLLED=no

ONBOOT=yes

service network start

chkconfig network on

vi /etc/selinux/config
SELINUX=permissive <-- 変更

yum -y install deltarpm

 

5. OpenStack Kiloのインストール

yum install http://rdo.fedorapeople.org/openstack-kilo/rdo-release-kilo.rpm

yum install openstack-packstack

yum -y update

reboot

 ifconfigコマンドにて、インターフェース名を確認します。

ifconfig
eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.0.140 netmask 255.255.255.0 broadcast 192.168.0.255
inet6 fe80::20c:29ff:fef8:b640 prefixlen 64 scopeid 0x20<link>
inet6 2408:211:4b08:4600:20c:29ff:fef8:b640 prefixlen 64 scopeid 0x0<global>

アンサーファイルを作成し、以下の箇所を変更します。

packstack --gen-answer-file=answer.txt

vi answer.txt

CONFIG_LBAAS_INSTALL=y
CONFIG_NOVA_COMPUTE_PRIVIF=lo
CONFIG_NOVA_NETWORK_PUBIF=eno16777736 <-- 確認したインタフェース名
CONFIG_NOVA_NETWORK_PRIVIF=lo
CONFIG_KEYSTONE_ADMIN_PW=admin
CONFIG_PROVISION_DEMO=n 

インストールを開始します。

 packstack --answer-file=answer.txt

インストール完了後、以下のエラーとなりますが、そのまま進めます。

ERROR : Error appeared during Puppet run: 192.168.0.140_mongodb.pp
Error: Unable to connect to mongodb server! (192.168.0.140:27017) 

 

6. ネットワーク設定の変更

インタフェースを以下と同じ設定にします。

vi /etc/sysconfig/network-scripts/ifcfg-eno16777736
DEVICE=eno16777736
ONBOOT=yes
TYPE=OVSPort
DEVICETYPE=ovs
OVS_BRIDGE=br-ex 

 以下の設定ファイルを作成します。

vi /etc/sysconfig/network-scripts/ifcfg-br-ex
DEVICE=br-ex
ONBOOT=yes
DEVICETYPE=ovs
TYPE=OVSBridge
BOOTPROTO=static
IPADDR=192.168.0.140
NETMASK=255.255.255.0
GATEWAY=192.168.0.1
DNS1=8.8.8.8

 各種設定を行います。

systemctl disable iptables
 

最後の行に、以下を追加します。

vi /etc/neutron/plugin.ini

[ovs]
network_vlan_ranges = physnet1
bridge_mappings = physnet1:br-ex

 

以下と、同じになるようにします。

vi /etc/sysctl.d/99-sysctl.conf

net.ipv4.tcp_keepalive_intvl=1
net.ipv4.tcp_keepalive_time=5
net.ipv4.tcp_keepalive_probes=5
net.ipv4.ip_forward=1
net.bridge.bridge-nf-call-ip6tables=0
net.bridge.bridge-nf-call-iptables=0
net.bridge.bridge-nf-call-arptables=0

以下を最終行に追加します。
net.ipv4.conf.default.rp_filter = 0
net.ipv4.conf.all.rp_filter = 0
net.ipv4.conf.all.forwarding = 1

 

 リブートします。

reboot 

 

7. Openstack ルーター、ネットワークの作成

ルーター、ネットワークを作成します。

cd ~

source keystonerc_admin
neutron router-create router1

f:id:hirosanote:20160416204238p:plain

tenant idをメモし、tenant idを必要とするコマンドに使用します。

neutron net-create public --tenant-id 26481926301b4ab1a036e267abe3e1e4 --router:external

f:id:hirosanote:20160416204646p:plain

neutron net-create private-net1 --tenant-id 26481926301b4ab1a036e267abe3e1e4

f:id:hirosanote:20160416205253p:plain

neutron subnet-create --name public_subnet --enable_dhcp=False --allocation-pool=start=192.168.0.141,end=192.168.0.199 --gateway=192.168.0.1 public 192.168.0.0/24 

f:id:hirosanote:20160416205034p:plain

 neutron subnet-create --name private-net_subnet1 --enable_dhcp=True --allocation-pool=start=192.168.10.101,end=192.168.10.199 --gateway=192.168.10.1 --dns-nameserver 8.8.8.8 private-net1 192.168.10.0/24 

f:id:hirosanote:20160416205550p:plain

neutron router-gateway-set router1 public 

f:id:hirosanote:20160416205714p:plain

neutron router-interface-add router1 subnet=private-net_subnet1 

f:id:hirosanote:20160416205841p:plain

 

8. Linuxイメージの登録

軽量Linux Cirrosのイメージをダウンロードし、登録します。

glance image-create --name cirros --is-public true --container-format bare --disk-format qcow2 --location https://launchpad.net/cirros/trunk/0.3.0/+download/cirros-0.3.0-x86_64-disk.img

f:id:hirosanote:20160416210112p:plain

 

9. WebUIにログイン

WebUIにログインします。

http://192.168.0.140/dashboard

ユーザ名 : amdin

パスワード : admin

f:id:hirosanote:20160416210331p:plain

 

10.セキュリティグループの作成

f:id:hirosanote:20160416210646p:plain

f:id:hirosanote:20160416210952p:plain

f:id:hirosanote:20160416211718p:plain

f:id:hirosanote:20160416211916p:plain

f:id:hirosanote:20160416212027p:plain

同様の手順で、HTTP,ICMPを追加します。

f:id:hirosanote:20160416212223p:plain

f:id:hirosanote:20160416212345p:plain

f:id:hirosanote:20160416212426p:plain

 

11.Webサーバのインスタンスを起動

f:id:hirosanote:20160416212610p:plain

f:id:hirosanote:20160416213048p:plain

f:id:hirosanote:20160416213214p:plain

f:id:hirosanote:20160416213728p:plain

同じ手順で「web02」を起動します。

2つのインスタンスが起動していることを確認します。

f:id:hirosanote:20160416220128p:plain

 

12.Webサーバのレスポンスを作成

ネットワークトポロジーより、ルーターIPアドレスを確認します。

f:id:hirosanote:20160416220317p:plain

Webサーバへアクセスするために、OpenStackが動作しているCentOS上に、スタティックルートを追加します。

route add -net 192.168.10.0/24 gw 192.168.0.141 br-ex

 

web01サーバへアクセスします。 

ユーザ名:cirros パスワード:cubswin:)

ssh cirros@192.168.10.102

 HTTPリクエストに対するレスポンスを、戻すように設定します。

while true; do echo -e 'HTTP/1.0 200 OK\r\n\r\nweb_server01' | sudo nc -l -p 80 ; done &

f:id:hirosanote:20160416221241p:plain

同様の手順で、web02サーバにアクセスし、httpレスポンスを作成します。レスポンス文字の"web_server01"を"web_server02"に変更します。

 

13.LBaasの設定

ロードバランサの設定を行います。

f:id:hirosanote:20160416221646p:plain

f:id:hirosanote:20160416221835p:plain

仮想IPを追加します。

f:id:hirosanote:20160416221957p:plain

f:id:hirosanote:20160416222309p:plain

 

メンバーを追加します。

f:id:hirosanote:20160416222515p:plain

f:id:hirosanote:20160416222658p:plain

 

仮想IPを、Publicネットワークに紐付けます。VIP 192.168.10.253のポートIDを確認します。

f:id:hirosanote:20160416222911p:plain

f:id:hirosanote:20160416223054p:plain

VIPとPublicを紐付けます。紐付いたfloating_ip_addressを確認します。

neutron floatingip-create --port-id=696de69c-ed3e-423d-9de9-7fc3af3de7bf public

f:id:hirosanote:20160416223354p:plain

 

14.動作確認
PublicのフローティングIPアドレスにアクセスし、ページが表示されることを確認します。キーボードよりCTRL+F5を押し、ラウンドロビンで分散されることを確認します。

f:id:hirosanote:20160416223544p:plain

 

 

OPCEL認定試験 OpenStack技術者認定試験対策教科書

OPCEL認定試験 OpenStack技術者認定試験対策教科書