On board OAI BBU service over M-CORD 4.1

Describe the procedure to on board OAI BBU over CORD

create image for openstack

Requirement: A physical machine with ubuntu OS.

python scripts here

Description below

trouble shooting:

virt-install-os-variant-does-not-exist

flavor defined by openstack

Flavor VCPUs Disk (in GB) RAM (in MB)
m1.tiny 1 1 512
m1.small 1 20 2048
m1.medium 2 40 4096
m1.large 4 80 8192
m1.xlarge 8 160 16384

SHA256 checksum for image

hashMyFiles in windows

Add image into CORD platform (yml)

1
2
3
4
5
6
7
8
9
10
11
12
xos_images:
- name: "trusty-server-multi-nic"
url: "https://github.com/opencord/platform-install/releases/download/vms/trusty-server-cloudimg-amd64-disk1.img.20170201"
checksum: "sha256:ebf007ba3ec1043b7cd011fc6668e2a1d1d4c69c41071e8513ab355df7a057cb"

- name: "image-oai"
url: "http://aweimeow.tw/oai_new_compress.qcow2"
checksum: "sha256:f4913222bd6b07ae72d7d2086e8a9d7170f239272b15035db4a1a39cb327d7ab"

- name: "develop-oai-bbu"
url: "http://140.118.123.224/cord/oaibbu_compress.qcow2"
checksum: "sha256:9f7a5061f4a076d9e761329e47edc691e5451bb6436480de008afd2ec4e62de6"

Set default image for custom service (j2)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# Service Slice

# OAI BBU Service slice, Use develop-oai-bbu as default iamge
{{ site_name }}_vbbu:
description: vBBU Service Slice
type: tosca.nodes.Slice
properties:
name: {{ site_name }}_vbbu1
default_isolation: vm
network: noauto
requirements:
- site:
node: {{ site_name }}
relationship: tosca.relationships.BelongsToOne
- service:
node: service#oaibbu
relationship: tosca.relationships.BelongsToOne
- default_image:
node: develop-oai-bbu
relationship: tosca.relationships.BelongsToOne
- default_flavor:
node: m1.large
relationship: tosca.relationships.BelongsToOne

Create OAI BBU instance from CORD GUI

  • Click Oaibbuservice
  • OAI BBU service instances
  • Add
  • Choose owner id OAIBBU_Service
  • Save
  • After few minutes, you can check at instances page

1
2
3
4
5
6
7
8
9
10
11
vagrant@head1:~$ source /opt/cord_profile/admin-openrc.sh
vagrant@head1:~$ nova list --all-tenants
+--------------------------------------+-------------------+--------+------------+-------------+----------------------------------------------------------------+
| ID | Name | Status | Task State | Power State | Networks |
+--------------------------------------+-------------------+--------+------------+-------------+----------------------------------------------------------------+
| be2f6587-35f8-468b-b648-aa19609969bd | mysite_oaispgw1-1 | ACTIVE | - | Running | management=172.27.0.4; public=10.8.1.2; vspgw_network=10.0.8.2 |
| a22fdde3-fade-4ce6-87a6-fad844fc1202 | mysite_oaispgw1-4 | ACTIVE | - | Running | management=172.27.0.5; public=10.8.1.3; vspgw_network=10.0.8.3 |
| c4e93cb5-c91c-4807-87e8-7212139c772b | mysite_vbbu1-5 | ACTIVE | - | Running | management=172.27.0.6; vbbu_network=10.0.5.2 |
| 92ede522-defe-47e4-9220-fd0793816957 | mysite_vhss1-3 | ACTIVE | - | Running | management=172.27.0.2; vhss_network=10.0.7.2 |
| 81ddd5f8-5090-4aab-8170-5e02bcdc8081 | mysite_vmme1-2 | ACTIVE | - | Running | management=172.27.0.3; vmme_network=10.0.6.2 |
+--------------------------------------+-------------------+--------+------------+-------------+----------------------------------------------------------------+

Command for using OAI BBU

1
2
3
4
5
6
7
8
9
10
ssh head1
scp ~/.ssh/id_rsa ubuntu@10.1.0.14:~/.ssh
ssh ubuntu@10.1.0.14
ssh oai@<management IP>

sudo su
cd openairinterface/cmake_targets/lte_build_oai/build/

# for execute develop branch at RCC side
sudo ./lte-softmodem -E -O ../../../targets/PROJECTS/GENERIC-LTE-EPC/CONF/rcc.band7.tm1.50PRB.nfapi.conf

already have the vbbu service, but still need to check connectivity with vMME & vHSS

Check connectivity to each service

Use tmux to manage multiple slices of VNF service

Command for re-deploy service

1
2
3
4
5
6
7
8
9
# clean service / profile
cord@cord:~/cord/build$ make xos-teardown; make clean-openstack; make clean-profile;
cord@cord:~/cord/build$ cd genconfig/ && rm -rf config.* cord_* inventory.ini;

# update configuration

# re-build
cord@cord:~/cord/build$ make PODCONFIG=mcord-oai-virtual.yml config
cord@cord:~/cord/build$ make -j4 build; make compute-node-refresh

Note:

The lifecycle of CORD will be very short due to the openstack error.
If you keep the VNF running, the lifecycle will be most likely one weeks.

So each time when doing the implementation, after testing shut done all the service.

1
2
3
4
5
# shut done
make xos-teardown; make clean-openstack

# Refresh
make -j4 build; make compute-node-refresh