Skip to content

Aparna Systems Installation Guide

bo-quan edited this page May 15, 2018 · 4 revisions

© Copyright 2018 Aparna Systems

SNAPS OpenStack on Aparna’s uCloud 4015

Once the controller node and compute nodes are prepared as given in the SNAPS Boot on Aparna Wiki page, the next step is to install OpenStack using SNAPS OpenStack Install process as given below

https://github.com/cablelabs/snaps-openstack/blob/master/doc/source/install/install.md

Some changes to the nodes are required as per the requirements of OpenStack networking, specifically SR-IOV and assignment of data, tenant and management network interfaces.

4015 – Enable SR-IOV and setup data and management interfaces

Each of the nodes in the OpenStack configuration needs to have SR-IOV enabled to ensure that there are separate data, tenant and management networks.

Enable SR-IOV on each of the servers.

ssh root@192.168.60.191

Edit /etc/rc.local – add the following lines before exit 0

echo 2 > /sys/bus/pci/devices/0000\:03\:00.1/sriov_numvfs
echo 2 > /sys/bus/pci/devices/0000\:03\:00.0/sriov_numvfs
ip link set enp3s0f0 vf 0 spoofchk off
ip link set enp3s0f0 vf 1 spoofchk off

Reboot the nodes

After rebooting the nodes, the management interface is set to DHCP address from the PXE server.

/etc/network/interfaces file looks like

auto enp3s0f0
iface enp3s0f0 inet dhcp

root@kickseed:~# ifconfig
       enp3s0f0      Link encap:Ethernet HWaddr e8:fd:90:00:00:a3
                     inet addr:192.168.60.191 Bcast:192.168.60.255 Mask:255.255.255.0
                     inet6 addr: fe80::eafd:90ff:fe00:a3/64 Scope:Link
                     UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
                     RX packets:297 errors:0 dropped:0 overruns:0 frame:0
                     TX packets:258 errors:0 dropped:0 overruns:0 carrier:0
                     collisions:0 txqueuelen:1000
                     RX bytes:30784 (30.7 KB) TX bytes:32709 (32.7 KB)

We need to change this to static address.

The management and data interfaces need to be swapped as the SR-IOV interfaces by default are assigned to the data interfaces.

Swap the data and management interfaces as shown below in /etc/network/interfaces file

# The data network interface
auto enp3s0f0
iface enp3s0f0 inet static
address 192.168.62.191
netmask 255.255.255.0
#gateway 192.168.62.1

# The management network interface
auto enp3s16f2
iface enp3s16f2 inet static
address 192.168.60.191
netmask 255.255.255.0
gateway 192.168.60.1

Reboot the nodes. Interfaces look like this:

root@kickseed:~# ifconfig
       enp3s0f0    Link encap:Ethernet HWaddr e8:fd:90:00:00:a3
                   inet addr:192.168.62.191 Bcast:192.168.62.255 Mask:255.255.255.0
                   inet6 addr: fe80::eafd:90ff:fe00:a3/64 Scope:Link
                   UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
                   RX packets:8 errors:0 dropped:0 overruns:0 frame:0
                   TX packets:11 errors:0 dropped:0 overruns:0 carrier:0
                   collisions:0 txqueuelen:1000
                   RX bytes:1100 (1.1 KB) TX bytes:886 (886.0 B)

       enp3s16f2   Link encap:Ethernet HWaddr be:0b:47:2d:25:64
                   inet addr:192.168.60.191 Bcast:192.168.60.255 Mask:255.255.255.0
                   inet6 addr: fe80::bc0b:47ff:fe2d:2564/64 Scope:Link
                   UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
                   RX packets:51 errors:0 dropped:0 overruns:0 frame:0
                   TX packets:45 errors:0 dropped:0 overruns:0 carrier:0
                   collisions:0 txqueuelen:1000
                   RX bytes:8281 (8.2 KB) TX bytes:7239 (7.2 KB)

Now the nodes are ready for OpenStack Installation

SNAPS OpenStack Installation

Now the nodes are prepared for OpenStack installation.

SNAPS - Ensure /home/ubuntu is created on each of the nodes

From configuration node

ssh <root@192.168.60.191> mkdir -p /home/ubuntu
ssh <root@192.168.60.192> mkdir -p /home/ubuntu
ssh <root@192.168.60.193> mkdir -p /home/ubuntu

SNAPS - Download Snaps-OpenStack-Master from GIT

Clone/FTP OpenStack Provisioning package on configuration node. All operations of configuration server expect the user should be explicitly switched (using su root) to the root user.

4015 - Update Snaps-OpenStack deployment.yaml file

Sample node changes in the deployment.yaml file are provided below:

host:
       hostname: CONTROLLER22
       interfaces:
         -
           ip: "192.168.60.191"
           mac: "e8:fd:90:00:00:a3"
           name: enp3s16f2
           type: management
         -
           gateway: "192.168.62.1"
           ip: "192.168.62.191"
           mac: "be:34:eb:84:86:c0"
           name: enp3s0f0
           type: data

SNAPS - Run the OpenStack deployment python script

sudo python iaas_launch.py -f
snaps_openstack/conf/openstack/kolla/deployment.yaml -drs

In case of any failures, make sure to run the above command with -c option

sudo python iaas_launch.py -f
snaps_openstack/conf/openstack/kolla/deployment.yaml -c

4015 - Login to OpenStack Deployment node

Login to openstack via internal or externa VIP as provided in the deployment file.

http://192.168.60.180

Password is in the file on the controller node. It is a machine generated long password in etc/kolla/admin-openrc.sh

Troubleshooting Tips

Snaps Boot of host nodes

Ensure the nodes are set to boot in legacy mode

Check /var/log/syslog during PXE boot to make sure the nodes are booting

Verify the PXE boot order as this cannot be specified from IPMI command line parameters

Having console available to see the error messages helps

With external configuration node, make sure DHCP relay works with the Fabric Module

Snaps OpenStack Deployment

Ensure that the IP addresses for data and management interfaces are set correctly

During install failure, please make sure to run the cleanup option

sudo python snap-openstack-master/iaas_launch.py -f
snaps-openstack-master/conf/openstack/kolla/deployment.yaml -drc

In case of failure, check the /etc/network/interfaces file and delete any lines that are added by OpenStack install script.

Check to delete the virtual IP addresses with the following command on the Controller node(s).

ip addr del <IP>/32 dev <interface>

BMC access fails from the external node

If BMCs of the servers are not reachable from the external node, make sure the BMC GW address is still set to .98/.97.

If not, set this to 192.168.13.98 or 192.168.13.97 from the Fabric Module as given in section 4.2.3