This guide will provide the steps of how to create a running ONAP instance on Huawei Cloud.

We will use CCE (Cloud Container Engine) service in Huawei Cloud to quickly create a Kubernetes environment then deploy ONAP using OOM project.

        1. Visit Huawei Cloud Console 

There are different regions you can select, here we recommend Hong Kong for ONAP deployment.

2. Create Kubernetes Cluster using CCE

Select Cloud Container Engine from the Service List

Follow the instructions to create a Kubernetes cluster

CCE will take care of the Kubernetes master part while ECS (Elastic Cloud Server) will create the actual nodes.

ONAP will need 112 vCPUs, 224 RAM and 160G HD to provision all services, e.g. we can create 7 s3.4xlarge.2 VMs as illustrated below.

Here Data Disk is used for docker storage and 200G will guarantee thin pool won't run out.

After Kubernetes cluster is created, we will add EIP (Elastic IP) to each node so they can pull images from internet.

We can manage each node's EIP by clicking the name of a node to switch to Cloud Server Console dashboard. 

Instruction of How to set up kubctl command can be found in the resource management tab.


3. Follow the instructions of OOM to deploy ONAP

Deploy ONAP on a Kubernetes cluster launched by CCE is very similar to deploy ONAP on Kubernetes with Rancher

Since CCE node doesn't support Ubuntu for now, scripts to set up NFS will be slightly different.

master_nfs.sh

#!/bin/bash

usage () {
  echo "Usage:"
  echo "   ./$(basename $0) node1_ip node2_ip ... nodeN_ip"
  exit 1
}

if [ "$#" -lt 1 ]; then
  echo "Missing NFS slave nodes"
  usage
fi

#Install NFS kernel
sudo yum update
sudo yum install -y nfs-utils
sudo systemctl enable nfs-server

#Create /dockerdata-nfs and set permissions
sudo mkdir -p /dockerdata-nfs
sudo chmod 777 -R /dockerdata-nfs
sudo chown nobody:nobody /dockerdata-nfs/

#Update the /etc/exports
NFS_EXP=""
for i in $@; do
  NFS_EXP+="$i(rw,sync,no_root_squash,no_subtree_check) "
done
echo "/dockerdata-nfs "$NFS_EXP | sudo tee -a /etc/exports

#Restart the NFS service
sudo exportfs -a
sudo systemctl restart nfs-server

slave_nfs.sh

#!/bin/bash

usage () {
  echo "Usage:"
  echo "   ./$(basename $0) nfs_master_ip"
  exit 1
}

if [ "$#" -ne 1 ]; then
  echo "Missing NFS mater node"
  usage
fi

MASTER_IP=$1

#Install NFS common
sudo yum update
sudo yum install -y nfs-utils
sudo systemctl enable nfs-client

#Create NFS directory
sudo mkdir -p /dockerdata-nfs

#Mount the remote NFS directory to the local one
sudo mount $MASTER_IP:/dockerdata-nfs /dockerdata-nfs/
echo "$MASTER_IP:/dockerdata-nfs /dockerdata-nfs  nfs auto,nofail,noatime,nolock,intr,tcp,actimeo=1800 0 0" | sudo tee -a /etc/fstab

Other than that, you can refer to the OOM deploy guide.


  • No labels