Versions Compared

Key

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

Contents

Table of Contents
excludeContents

Contents

Table of Contents
excludeContents

Introduction

This document describes the steps to create a single and multi-node edge sites. 

Info

Unicycle (Three-Node Cluster) - Supported in the future release

Akraino Portal Operations

...

Upon successful login, the Akraino Portal home page will appear.

...

Deploy an Edge Site Based on a Rover Blueprint

From the Portal home page:

  1. Select an Edge Site MTN1 ( or MTN2 (these are the two default lab sites hosted in middle town NJ) by clicking on the radio button provided in the GUI table displayed in the Home page. These are the two default sites available in the Seed codefirst column of the table.
  2. For the selected Edge siteSite, select a Rover Blueprint (Rover or Unicycle) from the drop-down menu.
  3. Click on Upload button (in the Blueprint Sites column), this will open a pop-up dialog
  4. Provide the edge site-specific details such as:
    1. Host IP address
    2. Host

      user

      username

    3. Host password.

  5. Click on Browse button, select the input file for Blueprint - Rover (Single-Node Cluster). 
    The input file is a property file that stores information in key-value format.  Sample input file used for ‘Rover’ deploy: 

    Info

    Copy and paste the below contents in to a file, and save it as rover.txt. Use this file for uploading as mentioned in step 4.d above.

    Verify the configuration details as applicable to your environment. For more details refer to Appendix - Edge Site Configuration


    Code Block
    languagetext
    titlerover.txt
    # Copyright 2018 AT&T Intellectual Property.  
    All other rights reserved.
    #
    # Licensed under the Apache License, Version 2.0 (the "License");
    # you may not use this file except in compliance with the License.
    # You may obtain a copy of the License at
    #
    
    #
    #     
    http://www.apache.org/licenses/LICENSE-2.0
    #
    # Unless required by applicable law or agreed to in writing, software
    # distributed under the License is distributed on an "AS IS" BASIS,
    # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    # See the License for the specific language governing permissions and
    # limitations under the License.
    
    # 
    host
    Add 
    name
    proxy 
    for server SRV_NAME=aknode42 # out of band interface information for server (idrac/ilo/etc) SRV_OOB_IP=192.168.41.42 SRV_OOB_USR=root SRV_OOB_PWD=calvin # server oem - Dell or HPE (case sensitive) SRV_OEM=Dell # name of network interface used during build when "ipxe efi" file is booted and when OS is booted # ipxe numbers interfaces 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 SRV_BLD_INF=enp94s0f0
    settings if required for your environment
    # export http_proxy=http://your.proxy.com:8080/
    # export https_proxy=http://your.proxy.com:8080/
    #
    # 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=calvin
    # 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
    
    # tempalte to run to configure OS after first boot
    # current options are: firstboot.sh.template, firstboot-genesis.sh.
    template
    tempate or firstboot-airship-iab.sh.template
    SRV_FIRSTBOOT_TEMPLATE=firstboot
    -airship-iab
    .sh.template
    
    # 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
    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=akraino,d
    
    # network bond information
    SRV_BOND=bond0
    SRV_SLAVE1=
    enp94s0f0
    enp135s0f0
    SRV_SLAVE2=
    enp94s0f1
    enp135s0f1
    
    

    Image Added


 Image Added

5. Click on Submit. This will upload the input file and the site details into the portal.

...

a.  Click on Deploy to begin the deploy process.
b. This process takes about an hour.
c.  User can click on Refresh (link) to update the status of the deploy on the portal.
d. The deploy status changes from ‘Not started’ to ‘In progress’ to ‘Complete’

Image Added


7. User can additionally check the log files to track the progress of edge site installation, by logging into the regional_node_ip via ssh, and running this command: tail -f /var/log/scriptexecutor.log

Tempest Tests

Prerequisites

...

Appendix

Edge Site Configuration - Rover (Single-Node Cluster)

This configuration file is written as a series of shell key/value assignments.

Sample input file template with all required parameters are provided in the ‘Build or Deploy an Edge Node' section.

Key Name(s)

Notes

Example

SRV_NAME

Server hostname
SRV_NAME=aknode42

SRV_OOB_IP SRV_OOB_USR SRV_OOB_PWD

Out-of-band interface information for the server (iDRAC, ilo, etc.)
SRV_OOB_IP=192.168.41.42
SRV_OOB_USR=root
SRV_OOB_PWD=XXXXXXXX

SRV_MAC

MAC address of the server used during the build
SRV_MAC=3c:fd:fe:b8:02:90

SRV_OEM

Server OEM: Dell or HPE (case sensitive)
SRV_OEM=Dell

SRV_IPXE_INF SRV_BLD_INF SRV_BOOT_DEVICE

Network interface used during the build when ipxe.efi and the OS are booted
SRV_IPXE_INF=net4
SRV_BLD_INF=enp94s0f0
SRV_BOOT_DEVICE=sdg

SRV_BLD_SCRIPT

ipxe script based on the OS version and target kernel. Valid values are script-hwe-16.04.4-amd64.ipxe or script-16.04.4-amd64.ipxe

SRV_BLD_SCRIPT=script-hwe-16.04.4-amd64.ipxe

SRV_BIOS_TEMPLATE SRV_BOOT_TEMPLATE SRV_HTTP_BOOT_DEV

XML template used to set BIOS and RAID configuration.
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
SRV_FIRSTBOOT_TEMPLATE

Template for script to run on first boot to setup the server. Current options are:

firstboot.sh.template
firstboot-genesis.sh.template
firstboot-airship-iab.sh.template

SRV_FIRSTBOOT_TEMPLATE=firstboot-airship-iab.sh.template

SRV_VLAN

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

SRV_MTU SRV_IP SRV_SUBNET SRV_NETMASK SRV_GATEWAY SRV_DNS SRV_DOMAIN SRV_DNSSEARCH SRV_NTP

Basic network information for DHCP configuration 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

SRV_PWD

Root password for the server being built
SRV_PWD=XXXXXXXX

SRV_BOND SRV_SLAVE1 SRV_SLAVE2

Network bond information
SRV_BOND=bond0
SRV_SLAVE1=enp94s0f0
SRV_SLAVE2=enp94s0f1


Create New Edge Site locations

Info

The Akraino seed code comes with default two sites: MTN1, MTN2 representing two lab sites in Middletown, NJ. This step of connecting to the database and creating edge_site records are only required if the user wishes to deploy on other sites.

To deploy a Rover (Single-Node Cluster) Edge Node, perform the following steps:

  • Check if the Akraino (Docker Containers) packages are stood up.
  • Connect to PostgreSQL database providing the host IP (name).
Code Block
languagebash
jdbc:postgresql://<IP-address-of-DB-host>:6432/postgres
user name = admin
password = abc123


Info
use ‘pgAdmin |||’ Postgres client tool or connect to Postgres DB using SQL interface  


  • Execute the following SQL insert, bearing in mind these value substitutions:
    • edge_site_id: Any unique increment value. This is usually 1 but does not have to be.
    • edge_site_name: Human-readable Edge Node name.
    • region_id: Edge Node region number. Use select * from akraino.Region; to determine the appropriate value. Observe the region number associations returned from the query: Use 1 for US East, 2 for US West, and so on.

Code Block
languagebash
> insert into akraino.edge_site(edge_site_id, edge_site_name, crt_login_id, crt_dt, upd_login_id, upd_dt, region_id)
  values( 1, 'Atlanta', user, now(), user, now(),1);


ONAP Configuration

This configuration file is written as a YAML dictionary named parameters.

This dictionary will be selectively inserted into the ONAP VM environment file, depending on overall configuration.

Key Name

Notes

Example

public_net_nameThe name assigned to the OpenStack network that will be created and used by the ONAP VM. An existing network may be used by referencing its name here.
public_net_name: public
public_physical_net_provider_nameThe physical provider network name for the public network. CAUTION: If the physical provider network cannot be found, the automated deployment process will terminate with an error.
  # Assume vlan50 is the VLAN created 
# for the OpenStack Project (tenant)
public_physical_net_provider_name: vlan50
provider_segmentation_idThe VLAN tag of the physical provider network
  # Assume vlan50
provider_segmentation_id: 50
public_physical_net_typeThe physical network type. Specify VLAN or flatNOTE:When flat is in use, provider_segmentation_id will be ignored. 
  public_physical_net_type: vlan
public_subnet_nameThe subnet name. An existing subnet may be used by referencing its name here.
  public_subnet_name: public-subnet
public_subnet_cidrThe subnet’s CIDR. The ONAP VM will be assigned an IP within this subnet. 
  public_subnet_cidr: 192.168.102.0/24
public_subnet_allocation_startThe allocation start of the IP pool. Together with public_subnet_allocation_end it defines the range of IPs assigned to VMs.
  public_subnet_allocation_start: 192.168.102.100
public_subnet_allocation_endThe allocation end of the IP pool. Together with public_subnet_allocation_start it defines the range of IPs assigned to VMs.
  public_subnet_allocation_end: 192.168.102.200
public_subnet_dns_nameserverThe subnet's DNS server
  public_subnet_dns_nameserver: 8.8.8.8
public_subnet_gateway_ipThe subnet's Gateway IP
  public_subnet_gateway_ip: 192.168.102.1
flavor_nameVM flavor for the ONAP VM. The installation creates m1.onapx1.onapxx1.onap flavors, all of which are recommended for use.
  flavor_name: x1.onap
onap_vm_public_keyThe public key used to access the ONAP VM. A URL pointing to the key may be used here.
  onap_vm_public_key: PUBLIC_KEY
http_proxyOptional http proxy URL including port. If the network is accessible without a proxy, please leave empty.
  http_proxy: http://proxy.yourdomain.com:8888
https_proxyOptional https proxy URL including the port. If the network is accessible without a proxy, please leave empty.
  https_proxy: https://proxy.yourdomain.com:8888
no_proxyOptional list of domains, IPs, and CIDRs that do not require a proxy, separated by commas. Do not use spaces. If the network is accessible without a proxy, please leave empty.
  no_proxy: 127.0.0.1
keystone_admin_passwordThe keystone admin password. 
  keystone_admin_password: XXXXXXXX
onap_tenant_passwordThe keystone password for the ONAP project (formerly known as a tenant in OpenStack parlance). 
  onap_tenant_password: XXXXXXXX
onap_artifacts_http_repoOptional HTTP repository URL for ONAP artifacts. When deploying a self-contained Edge Node without Internet access, all ONAP artifacts must be downloaded from ONAP Nexus to a HTTP server, using this URL. If HTTP is not being used to download artifacts, please leave empty.
  onap_artifacts_http_repo: http://192.168.102.220/onap


...