====== Openstack testbed ======
====== Network Topology ======
{{ :work_dai_labor:projects:ima:ima_ws:network:open_stack_cluster.png?direct&400 |}}
* Host
* Controller Node
* Compute Node
* Network Node
====== Prepare VMs ======
* https://www.centos.org/forums/viewtopic.php?f=47&t=49438
===== Fedora: Using udev rename, networkManager =====
Fix
systemctl restart NetworkManager.service
===== Fedora: Fix udev, NetworkManager =====
Disable systemd-udevd remane network iface
Approach 1:
vi /boot/grub/grub.conf
Pass biosdevname=0 to kernel command line
Approach 2: You may continue to write rules in /etc/udev/rules.d/70-persistent-net.rules to change the device names to anything you wish. Such will take precedence over this physical location naming scheme. Such rules may look like:
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:11:22:33:44:55", ATTR{type}=="1", KERNEL=="eth*", NAME="public"
Disable NetworkManager and enable network
systemctl stop NetworkManager.service
systemctl disable NetworkManager.service
rm /etc/sysconfig/network-scripts/ifcfg-enp5s0f1
systemctl start network.service
systemctl enable network.service
===== Fedora: firewalld =====
Disable firewalld
systemctl stop firewalld
systemctl disable firewalld
yum install iptables-services
# Create this below file, otherwise starting iptables will fail
touch /etc/sysconfig/iptables
systemctl enable iptables && systemctl start iptables
====== Prepare Installation on each VM ======
===== Host: =====
vim /etc/hosts
192.168.200.209 controller
192.168.200.212 compute
192.168.200.215 network
===== Fedora Network: =====
There are 3 networks
# The primary network interface - VirtualBox NAT connection
# (VirtualBox Network Adapter 1)
auto eth0
iface eth0 inet dhcp
# VirtualBox vboxnet0 - OpenStack management network
# (VirtualBox Network Adapter 2)
auto eth1
iface eth1 inet static
address 10.10.10.51
netmask 255.255.255.0
# VirtualBox vboxnet2 - OpenStack API network
# (VirtualBox Network Adapter 3)
auto eth2
iface eth2 inet static
address 192.168.100.51
netmask 255.255.255.0
ip a
# see a list of network
sudo vim /etc/sysconfig/network-scripts/ifcfg-ens3
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=static
IPADDR=10.1.0.1
NETMASK=255.255.255.0
GATEWAY=10.0.0.1
# Openstack Management Network
DEVICE=ens4
ONBOOT=yes
BOOTPROTO=dhcp
TYPE=Ethernet
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
NAME=p3p1
UUID=7622e20e-3f2a-4b5c-83d8-f4f6e22ed7ec
ONBOOT=yes
DNS1=10.0.0.1
IPADDR0=10.0.0.2
PREFIX0=24
GATEWAY0=10.0.0.1
HWADDR=00:14:85:BC:1C:63
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
===== Maven: =====
yum install maven -y
# java etc also installed
sudo cd /opt
wget http://apache.openmirror.de/maven/maven-3/3.2.3/binaries/apache-maven-3.2.3-bin.tar.gz
tar -xvzf apache-maven
===== JAVA_HOME =====
vim .bash_profile
# User specific environment and startup programs
export M2_HOME=/opt/apache-maven-3.2.3
export M2=$M2_HOME/bin
export MAVEN_OPTS='-Xms256m -XX:MaxPermSize=1024m -Xmx1024m'
export JVM_ROOT=/usr/lib/jvm
export JAVA_HOME=$JVM_ROOT/java
PATH=$PATH:$HOME/.local/bin:$HOME/bin
export PATH=$JAVA_HOME:$M2:$PATH
source .bash_profile
On other nodes
sudo scp -rp root@controller:/opt/apache-maven* /opt/
scp -rp fedora@controller:~/.bash_profile ./.bash_profile
source .bash_profile
===== Misc =====
sudo yum install python-pip.noarch
pip install git-review
====== Troubleshooting ======
* VM send bootp but has no IP
* Check dnsmasq on host machine
* Restart NetworkManager
====== Continued... ======
* Controller node:
* Compute node:
====== Pictures ======
{{gallery>:work_dai_labor:projects:ima:ima_ws:network}}
====== References ======
* http://docs.openstack.org/
* http://docs.openstack.org/arch-design/content/index.html
* http://docs.openstack.org/icehouse/install-guide/install/yum/content/