Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
languagebash
# mkdir -p /opt/akraino/tools
# curl -L "

## Download the latest redfish artifacts from LF Nexus 
## Run the below commands in sequence
NEXUS_URL=https://nexus.akraino.org/service/local/repositories/snapshots/content/org/akraino/redfish/redfish/1
PROJECT=redfish
VERSION=0.0.02-SNAPSHOT/redfish-1.0.0-20180805.222845-10.tgz" | tar -xozv -C /opt/akraino/tools

Clone the Akraino Regional Controller repository:

Code Block
languagebash
# mkdir -p /opt/akraino/region 
# curl -L "https://nexus.akraino.org
XMLFILE="${NEXUS_URL}/service/local/repositories/snapshots/content/org/akraino/${PROJECT}/${PROJECT}/${VERSION}/maven-metadata.xml"
curl -O "${XMLFILE}"
V2=`grep value maven-metadata.xml | sed -e 's;</value>;;' -e 's;.*<value>;;' | uniq`
TGZFILE="${NEXUS_URL}/service/local/repositories/snapshots/content/org/akraino/regional_controller/regional_controller/1.0.0-SNAPSHOT/regional_controller-1.0.0-20180809.150544-11.tgz" | tar -xozv -C${PROJECT}/${PROJECT}/${VERSION}/${PROJECT}-${V2}.tgz"
curl -O "${TGZFILE}"
echo “Latest code from LF Nexus is $V2”
tar -xzvf "${PROJECT}-${V2}.tgz" -C /opt/akraino/region

Configuration

Copy the Bare Metal Server configuration template into /opt/akraino/server-config/AKRAINO_NODE_RC, where AKRAINO_NODE_RC is the Bare Metal Server name followed by rc:

tools

Clone the Akraino Regional Controller repository:

Code Block
languagebash
Code Block
languagebash
# mkdir -p /opt/akraino/server-config
# cp /opt/akraino/tools/serverrc.template /opt/akraino/server-config/aknode42rc
# vi /opt/akraino/server-config/aknode42rc

...

region 


## Download the latest Regional_controller artifacts from LF Nexus ##
PROJECT=regional_controller
VERSION=0.0.2-SNAPSHOT
XMLFILE="${NEXUS_URL}/service/local/repositories/snapshots/content/org/akraino/${PROJECT}/${PROJECT}/${VERSION}/maven-metadata.xml"
curl -O "${XMLFILE}"
V2=`grep value maven-metadata.xml | sed -e 's;</value>;;' -e 's;.*<value>;;' | uniq`
TGZFILE="${NEXUS_URL}/service/local/repositories/snapshots/content/org/akraino/${PROJECT}/${PROJECT}/${VERSION}/${PROJECT}-${V2}.tgz"
curl -O "${TGZFILE}"
echo “Latest code from LF Nexus is $V2”
tar -xzvf "${PROJECT}-${V2}.tgz" -C /opt/akraino/region


Configuration

Copy the Bare Metal Server configuration template into /opt/akraino/server-config/AKRAINO_NODE_RC, where AKRAINO_NODE_RC is the Bare Metal Server name followed by rc:

Code Block
languagebash
# mkdir -p /opt/akraino/server-config
# cp /opt/akraino/tools/serverrc.template /opt/akraino/server-config/aknode44rc
# vi /opt/akraino/server-config/aknode44rc


A sample configuration file follows. Ensure the following:


  • SRV_NAME is the Bare Metal Server name
  • SRV_OOB_IP is the Bare Metal Server iDRAC IP
  • SRV_IP is the Bare Metal Server IP
  • Update Ubuntu version to 16.04.5 by setting SRV_BLD_SCRIPT=script-hwe-16.04.5-amd64.ipxe
  • Remove all references to  BUILD_WEBIP and BUILD_WEBPORT 
  • Passwords are chosen for SRV_OOB_PWD and SRV_PWD
  • All remaining SRV_ prefixed options are adjusted as deemed appropriate


Code Block
languagebash
# host name for server
SRV_NAME=aknode44

# server oem - Dell or HPE (case sensitive)
SRV_OEM=Dell

# out of band interface information for server (idrac/ilo/etc)
SRV_OOB_IP=192.168.41.44
SRV_OOB_USR=root
SRV_OOB_PWD=ROOT_PASSWORD

# mac address of server to be used during the build - not required for Dell servers
# SRV_MAC=3c:fd:fe:b8:10:60

# name of network interface used during build when ipxe.efi is booted and when os is booted
# ipxe numbers ports from 0-n in pci bus order.
# the netx value will depend on how many nics are in the server
# and which pci device number is assigned to the slot
SRV_IPXE_INF=net8

# the build interface is the nic used by the Ubuntu installed to load the OS
SRV_BLD_INF=enp135s0f0

# the boot device is the device name on which the OS will be loaded
SRV_BOOT_DEVICE=sdg

# ipxe script to use - based on the os version and kernel to install
# valid options are script-hwe-16.04.5-amd64.ipxe or script-16.04.5-amd64.ipxe
SRV_BLD_SCRIPT=script-hwe-16.04.5-amd64.ipxe

# template xml file to set bios and raid configuration settings
SRV_BIOS_TEMPLATE=dell_r740_g14_uefi_base.xml.template
SRV_BOOT_TEMPLATE=dell_r740_g14_uefi_httpboot.xml.template
SRV_HTTP_BOOT_DEV=NIC.Slot.7-1-1

# VLAN to use during build and for final network configuration
SRV_VLAN=41

# basic network information for dhcp config and final server network settings
SRV_MTU=9000
SRV_IP=192.168.2.44
SRV_SUBNET=192.168.2.0
SRV_NETMASK=255.255.255.0
SRV_GATEWAY=192.168.2.200
SRV_DNS=192.168.2.85
SRV_DOMAIN=lab.akraino.org
SRV_DNSSEARCH=lab.akraino.org
SRV_NTP=ntp.ubuntu.org

# root password for server being built
SRV_PWD=SERVER_PASSWORD

# network bond information
SRV_BOND=bond0
SRV_SLAVE1=enp135s0f0
SRV_SLAVE2=enp135s0f1

Operating System

Begin the OS installation:

Code Block
languagebash
# /opt/akraino/tools/install_server_os.sh --rc /opt/akraino/server-config/aknode44rc --no-confirm

This will take time. This is an excellent time to enjoy a favorite beverage. (smile)

Warning
titleIn Case of Errors

The Operating System installation may produce errors. As of this writing, the following errors may be safely ignored:

- FAIL, detailed job message is: [{u'Message': u'Staged component configuration completed with errors.', u'MessageId': u'SYS033', u'MessageArgs': [], u'MessageArgs@odata.count': 0}]

- FAIL: detailed error message: {"error":{"@Message.ExtendedInfo":[{"Message":"Unable to create a configuration job because an existing configuration job is already in progress.","MessageArgs":[],"MessageArgs@odata.count":0,"MessageId":"iDRAC.1.6.RAC052","RelatedProperties":[],"RelatedProperties@odata.count":0,"Resolution":"Retry the operation after the existing configuration job is complete, or cancel the existing configuration job and retry the operation.","Severity":"Warning"}],"code":"Base.1.0.GeneralError","message":"A general error has occurred. See ExtendedInfo for more information"}}

A successful installation will start and end as follows:

Code Block
languagebash
# /opt/akraino/tools/install_server_os.sh --rc /opt/akraino/server-config/aknode44rc --no-confirm
Beginning /opt/akraino/tools/install_server_os.sh as user [root]
in pwd [/opt/akraino/server-config] with home [/root]
Tools are ready in [/opt/akraino]
WARNING:  Preparing to build server [aknode44] using oob ip [192.168.41.44]. 
Beginning in 10 seconds ..........
Beginning bare metal install of os at Mon Jul 2 18:57:32 UTC 2018
...

Processing triggers for libc-bin (2.23-0ubuntu10) ...
SUCCESS:  Completed bare metal install of regional server [aknode44] at Mon Jul 2 20:09:35 UTC 2018
SUCCESS:  Try connecting with 'ssh root@192.168.2.42' as user root
Elapsed time was 9 minutes and 22 seconds

Note that any time estimates (e.g., "This step could take up to 15 minutes") and elapsed times are likely inaccurate. The total install time is longer, on the order of hours. Enjoy that beverage. (smile) 

Regional Controller

Update the Akraino run command (rc) file in /opt/akraino/region:

Code Block
languagebash
# vim /opt/akraino/region/akrainorc

Set TARGET_SERVER_IP to the Bare Metal Server IP. All other values may be left as-is.

Code Block
languagebash
export TARGET_SERVER_IP=192.168.2.44

Begin the region server software installation:

Code Block
languagebash
# /opt/akraino/region/install_akraino_portal.sh

This will take time. This is an excellent time to enjoy another favorite beverage. (smile)

Warning
titleIn Case of Errors

The Regional Controller installation is not idempotent at this time. If errors are encountered during this phase, it is recommended that the errors be triaged and resolved, followed by an Operating System re-installation. This will ensure a "clean slate" Bare Metal Server before trying again.

A successful installation will end as follows. Note that any time estimates (e.g., "This step could take up to 15 minutes") and elapsed times are likely inaccurate.

Code Block
languagebash
...
 
Setting up tempest repository
Setting up yaml builds repository
Setting up ONAP repository
Setting up sample vnf repository
Setting up airshipinabottle repository
SUCCESS:  Portal install completed

The Regional Controller Node installation is now complete.

## Prerequisites on regional controller node ##

  1. Login to regional controller node à ssh root@regional_node_ip
  2. Clone airship-treasuremap under /root:

git clone https://git.openstack.org/openstack/airship-treasuremap.git

cd /root/airship-treasuremap

git checkout 059857148ad142730b5a69374e44a988cac92378

git checkout -b stable

 

3. Install required components on regional controller node

        apt-get install python-pip

        python -m pip install --upgrade pip setuptools wheel   

        pip install --user jinja2 PyYAML

4. mkdir -p /var/log/yaml_builds

5. mkdir –p /opt/akraino/tools

6. cp /opt/akraino/redfish/* /opt/akraino/tools

  • SRV_NAME is the Bare Metal Server name
  • SRV_OOB_IP is the Bare Metal Server iDRAC IP
  • SRV_IP is the Bare Metal Server IP
  • Update Ubuntu version to 16.04.5 by setting SRV_BLD_SCRIPT=script-hwe-16.04.5-amd64.ipxe
  • Remove all references to  BUILD_WEBIP and BUILD_WEBPORT 
  • Passwords are chosen for SRV_OOB_PWD and SRV_PWD
  • All remaining SRV_ prefixed options are adjusted as deemed appropriate
Code Block
languagebash
# host name for server
SRV_NAME=aknode42

# server oem - Dell or HPE (case sensitive)
SRV_OEM=Dell

# out of band interface information for server (idrac/ilo/etc)
SRV_OOB_IP=192.168.41.42
SRV_OOB_USR=root
SRV_OOB_PWD=ROOT_PASSWORD

# mac address of server to be used during the build - not required for Dell servers
# SRV_MAC=3c:fd:fe:b8:10:60

# name of network interface used during build when ipxe.efi is booted and when os is booted
# ipxe numbers ports from 0-n in pci bus order.
# the netx value will depend on how many nics are in the server
# and which pci device number is assigned to the slot
SRV_IPXE_INF=net4

# the build interface is the nic used by the Ubuntu installed to load the OS
SRV_BLD_INF=enp94s0f0

# the boot device is the device name on which the OS will be loaded
SRV_BOOT_DEVICE=sdg

# ipxe script to use - based on the os version and kernel to install
# valid options are script-hwe-16.04.5-amd64.ipxe or script-16.04.5-amd64.ipxe
SRV_BLD_SCRIPT=script-hwe-16.04.5-amd64.ipxe

# template xml file to set bios and raid configuration settings
SRV_BIOS_TEMPLATE=dell_r740_g14_uefi_base.xml.template
SRV_BOOT_TEMPLATE=dell_r740_g14_uefi_httpboot.xml.template
SRV_HTTP_BOOT_DEV=NIC.Slot.3-1-1

# VLAN to use during build and for final network configuration
SRV_VLAN=41

# basic network information for dhcp config and final server network settings
SRV_MTU=9000
SRV_IP=192.168.2.42
SRV_SUBNET=192.168.2.0
SRV_NETMASK=255.255.255.0
SRV_GATEWAY=192.168.2.200
SRV_DNS=192.168.2.85
SRV_DOMAIN=lab.akraino.org
SRV_DNSSEARCH=lab.akraino.org
SRV_NTP=ntp.ubuntu.org

# root password for server being built
SRV_PWD=SERVER_PASSWORD

# network bond information
SRV_BOND=bond0
SRV_SLAVE1=enp94s0f0
SRV_SLAVE2=enp94s0f1

Operating System

Begin the OS installation:

Code Block
languagebash
# /opt/akraino/tools/install_server_os.sh --rc /opt/akraino/server-config/aknode42rc --no-confirm

This will take time. This is an excellent time to enjoy a favorite beverage. (smile)

Warning
titleIn Case of Errors

The Operating System installation may produce errors. As of this writing, the following errors may be safely ignored:

- FAIL, detailed job message is: [{u'Message': u'Staged component configuration completed with errors.', u'MessageId': u'SYS033', u'MessageArgs': [], u'MessageArgs@odata.count': 0}]

- FAIL: detailed error message: {"error":{"@Message.ExtendedInfo":[{"Message":"Unable to create a configuration job because an existing configuration job is already in progress.","MessageArgs":[],"MessageArgs@odata.count":0,"MessageId":"iDRAC.1.6.RAC052","RelatedProperties":[],"RelatedProperties@odata.count":0,"Resolution":"Retry the operation after the existing configuration job is complete, or cancel the existing configuration job and retry the operation.","Severity":"Warning"}],"code":"Base.1.0.GeneralError","message":"A general error has occurred. See ExtendedInfo for more information"}}

A successful installation will start and end as follows:

Code Block
languagebash
# /opt/akraino/tools/install_server_os.sh --rc /opt/akraino/server-config/aknode42rc --no-confirm
Beginning /opt/akraino/tools/install_server_os.sh as user [root]
in pwd [/opt/akraino/server-config] with home [/root]
Tools are ready in [/opt/akraino]
WARNING:  Preparing to build server [aknode42] using oob ip [192.168.41.42]. 
Beginning in 10 seconds ..........
Beginning bare metal install of os at Mon Jul 2 18:57:32 UTC 2018
...

Processing triggers for libc-bin (2.23-0ubuntu10) ...
SUCCESS:  Completed bare metal install of regional server [aknode44] at Mon Jul 2 20:09:35 UTC 2018
SUCCESS:  Try connecting with 'ssh root@192.168.2.42' as user root
Elapsed time was 9 minutes and 22 seconds

Note that any time estimates (e.g., "This step could take up to 15 minutes") and elapsed times are likely inaccurate. The total install time is longer, on the order of hours. Enjoy that beverage. (smile) 

Regional Controller

Update the Akraino run command (rc) file in /opt/akraino/region:

Code Block
languagebash
# vim /opt/akraino/region/akrainorc

Set TARGET_SERVER_IP to the Bare Metal Server IP. All other values may be left as-is.

Code Block
languagebash
export TARGET_SERVER_IP=192.168.2.42

Begin the region server software installation:

Code Block
languagebash
# /opt/akraino/region/install_akraino_portal.sh

This will take time. This is an excellent time to enjoy another favorite beverage. (smile)

Warning
titleIn Case of Errors

The Regional Controller installation is not idempotent at this time. If errors are encountered during this phase, it is recommended that the errors be triaged and resolved, followed by an Operating System re-installation. This will ensure a "clean slate" Bare Metal Server before trying again.

A successful installation will end as follows. Note that any time estimates (e.g., "This step could take up to 15 minutes") and elapsed times are likely inaccurate.

Code Block
languagebash
...
 
Setting up tempest repository
Setting up yaml builds repository
Setting up ONAP repository
Setting up sample vnf repository
Setting up airshipinabottle repository
SUCCESS:  Portal install completed

...

Akraino Portal Operations

...