User Tools

Site Tools


deploy_opnfv_with_fuel_in_a_virtual_environment

This is an old revision of the document!


CONFIG FILES

CONFIG FILE TEMPLATES

For Bare Metal and Virtual deployment, template files are available

fuel/deploy/templates/virtual_environment/conf/<dea.yaml,dha.yaml> fuel/deploy/templates/hardware_environment/conf/<ericsson_montreal_lab, linux_foundation_lab, opnfv_box>/<dea.yaml,dha.yaml>

VM definition files

fuel/deploy/templates/virtual_environment/vms/<controller.xml, compute.xml, fuel.xml> fuel/deploy/templates/hardware_environment/vms/fuel.xml

Network config for Virtual deployment

fuel/deploy/templates/virtual_environment/networks/fuel<x>.xml

DEA CONFIG FILES

There are 2 config files wired out from fuel: DEA, DHA

Deployment Environment Adapter: dea.yaml
mode: ha
net_segment_type: gre
wanted_release: Juno on Ubuntu 14.04.1
Node roles
Fuel networks, ips, interfaces, bridge configs
OS components settings
...

DHA CONFIG FILES

There are 2 config files wired out from fuel: DEA, DHA

Deployment Hardware Adapter: dha.yaml
adapter: libvirt
nodes:
- id: 1
  libvirtName: controller1
  libvirtTemplate: templates/virtual_environment/vms/controller.xml
- id: 5
  libvirtName: fuel-master
  libvirtTemplate: templates/virtual_environment/vms/fuel.xml
  isFuel: yes
  username: root
  password: r00tme

  virtNetConfDir: templates/virtual_environment/networks
  disks:
  fuel: 50G
  controller: 50G
  compute: 50G

DEPLOYMENT

AUTO DEPLOYER

fuel/ci/deploy.sh

Typically:

sudo ./deploy.sh -iso opnfv.iso -dea dea.yaml -dha dha.yaml -s /mnt/images -p PLUGIN
-> deploy OPNFV Cloud env with Fuel

-iso	-> OPNFV iso downloaded or built from source
-p	-> plugins for FUEL, like ODL puppet files to install ODL on nodes
           * Not ODL itself
           * Default ODL rpm for ARNO SR1 is integrated in OPNFV iso
           * Can be downloaded or built from source if different version required
-s	-> storage location for generated VMs, user defined
-nf	-> no fuel (redeployment)
-nh	-> no health check

PREPARE ARNO ISO

DOWNLOAD ARNO ISO FILE: http://artifacts.opnfv.org/arno.2015.2.0/fuel/arno.2015.2.0.fuel.iso

It contains a Centos FUEL image containing all the requirements for OPNFV deployments (e.g. OpenStack Juno, ODL Lithium, Fuel plugins

USE CORRECT NTP SETTINGS IN DEA.YAML

  • Section „fuel”:
NTP1: 10.118.34.219
NTP2:
NTP3:
  • Section „ntp_list”:
value: 10.118.34.219

Unless using a correct value, deployment will fail - FUEL GUI ERROR:

Deployment has failed. Method granular_deploy. Failed to execute hook 'puppet' Puppet run failed. Check puppet logs for details
---
priority: 200
fail_on_error: true
type: puppet
uids:
- '3'
parameters:
  puppet_modules: "/etc/puppet/modules"
  puppet_manifest: "/etc/puppet/modules/osnailyfacter/modular/ntp/ntp-check.pp"
  timeout: 600
  cwd: "/"
.
Inspect Astute logs for the details

OPTIONAL ODL BUILD STEP

One should either use the ODL integrated in ARNO SR1 (iso downloaded or built manually in previour step already contains it, no manual step required) or build rpm from source, and add it to the deploy script as argument.

BUILD: (readme: https://github.com/openstack/fuel-plugin-opendaylight)

git clone https://github.com/stackforge/fuel-plugin-opendaylight
pip install fuel-plugin-builder
gem install fpm
fpb --build fuel-plugin-opendaylight/

INCLUDE TO DEPLOYMENT (by using argument for deploy.sh on next slide):

-p <fuel-plugin-opendaylight-rmp-dir>

AUTOMATED DEPLOYMENT

Typical script parameters:

sudo ~/opnfv/fuel/fuel/ci/deploy.sh \
-iso ~/opnfv/fuel/fuel/build/release/opnfv-P0000.iso \
-dea ~/opnfv/fuel/fuel/deploy/templates/virtual_environment/conf/dea.yaml \
-dha ~/opnfv/fuel/fuel/deploy/templates/virtual_environment/conf/dha.yaml \
-s ~/opnfv/fuel/fuel/deploy/images \
-nh # Would fail at Live-Migraition test phase because of a known ODL bug anyway, let’s test it afterwards

Console output:

Fuel Plugins Directory not specified! No external plugins will be installed!
Using OPNFV ISO file: ~/opnfv/fuel/fuel/build/release/opnfv-P0000.iso
Using image directory: ~/opnfv/fuel/fuel/deploy/images
...
<Cleanup, Create Networks, power on VMs>
... 
Install Fuel Master
Insert ISO ~/opnfv/fuel/fuel/deploy/fueltmp/deploy-opnfv-P0000.iso
Inject our own astute.yaml settings
Let the Fuel deployment continue
Installing Fuel Plugins
...

MANUAL CLEANUP

May be useful if deployment script was stopped unexpectedly, and system ends in undefined state

sudo ~/opnfv/fuel/fuel/ci/deploy.sh -co \
-dha ../deploy/templates/virtual_environment/conf/dha.yaml

VERIFICATION

Deploy verification

Verify FUEL deployment on GUI: From Jumphost (Fuel Host):

$ firefox http://10.20.0.2:8000 & (admin/admin)
  • Verify Networks
  • Health Check
  • * Note: Live-Migraition test will fail (Bug in ODL currently), you can skip this test in the list if you choose to not see the error message, simply uncheck it in the list

Check fuel version and plugins:

ssh root@10.20.0.2 (pwd: r00tme)
[root@opnfv_virt ~]# fuel plugins
fuel --versionid | name         | version | package_version
---|--------------|---------|----------------
1  | opendaylight | 0.6.2   | 2.0.0
[root@opnfv_virt ~]# fuel --version
6.1.0

Verify OpenStack GUI: From Jumphost (Fuel Host):

$ firefox http://172.16.0.3/horizon/ & (admin/admin)

Verify OpenDaylight:

Is GUI accessible - Point your browser to the following URL: 172.16.0.3:8181/index.html (admin/admin)

Verify services: SSH to Controller:

root@node-2:~# nova-manage service list
Binary           Host                                 Zone             Status     State Updated_At
nova-consoleauth node-2.opnfvericsson.ca              internal         enabled    :-)   2015-10-22 06:08:20
nova-scheduler   node-2.opnfvericsson.ca              internal         enabled    :-)   2015-10-22 06:08:21
nova-conductor   node-2.opnfvericsson.ca              internal         enabled    :-)   2015-10-22 06:08:21
nova-cert        node-2.opnfvericsson.ca              internal         enabled    :-)   2015-10-22 06:07:43
nova-compute     node-1.opnfvericsson.ca              nova             enabled    :-)   2015-10-22 06:07:29
nova-compute     node-3.opnfvericsson.ca              nova             enabled    :-)   2015-10-22 06:07:36
nova-compute     node-4.opnfvericsson.ca              nova             enabled    :-)   2015-10-22 06:08:11
root@node-2:~# neutron agent-list
+--------------------------------------+----------------+-------------------------+-------+----------------+------------------------+
| id                                   | agent_type     | host                    | alive | admin_state_up | binary                 |
+--------------------------------------+----------------+-------------------------+-------+----------------+------------------------+
| 11709a29-24f8-46a2-b196-8b5545a6e0a5 | Metadata agent | node-2.opnfvericsson.ca | :-)   | True           | neutron-metadata-agent |
| 2cb0a373-c08a-4ea2-a819-13d7bf892f2e | L3 agent       | node-2.opnfvericsson.ca | :-)   | True           | neutron-l3-agent       |
| 42d08a62-83b5-4f12-a24c-8d375cde63f4 | DHCP agent     | node-2.opnfvericsson.ca | :-)   | True           | neutron-dhcp-agent     |
+--------------------------------------+----------------+-------------------------+-------+----------------+------------------------+

CHALLENGES

CHALLENGE #1

sudo ./deploy.sh  ...
error: Failed to start domain controller1
error: unsupported configuration: guest and host CPU are not compatible: Host CPU does not provide required features: erms, smep, fsgsbase, rdrand, f16c, avx, osxsave, xsave, tsc-deadline, x2apic

I am using Intel(R) Xeon(R) CPU E5620 @ 2.40GHz – Westmere architecture

I had to change arcthitecture in VM definition XMLs:

cd ../deploy/templates/virtual_environment/vms
sed -i 's/SandyBridge/Westmere/g' compute.xml controller.xml fuel.xml
cd -

I had to comment out flags not supported by my CPU in VM definition XMLs:

cd ../deploy/templates/virtual_environment/vms
for flag in erms smep fsgsbase rdrand f16c avx osxsave xsave tsc-deadline x2apic;do
sed -i "/'${flag}'/s/^/<\!-- /" compute.xml controller.xml fuel.xml &&
sed -i "/'${flag}'/s/$/ -->/" compute.xml controller.xml fuel.xml
done
cd –

SOLVED

MANUAL iso BUILD

INVESTIGATION TOPICS

CHALLENGES

MANUAL iso BUILD

INVESTIGATION TOPICS

deploy_opnfv_with_fuel_in_a_virtual_environment.1445965633.txt.gz · Last modified: 2015/10/27 17:07 by Gabor Halasz