blob: 9dda2f6bdbaa8c9418c63558ddc79fe2f2722a73 [file] [log] [blame]
ajayb3f40982021-12-08 14:26:11 -08001..
2 SPDX-FileCopyrightText: © 2020 Open Networking Foundation <support@opennetworking.org>
3 SPDX-License-Identifier: Apache-2.0
4
ajayce0380c2021-12-14 21:51:00 -08005.. _aiab-guide:
ajay87945292021-12-08 00:52:00 -08006
Ajay Lotan Thakur05ce5ce2022-09-25 20:36:16 -07007Aether In a Box - 4G
8====================
ajay87945292021-12-08 00:52:00 -08009
Ajay Lotan Thakur05ce5ce2022-09-25 20:36:16 -070010Setting Up Aether-in-a-Box - 4G
11________________________________
ajay87945292021-12-08 00:52:00 -080012
13Aether-in-a-Box (AiaB) provides an easy way to deploy Aethers SD-CORE
14components and run basic tests to validate the installation. This guide
15describes the steps to set up AiaB.
16
17AiaB can be set up with a 4G or 5G SD-CORE. We use SimApp to configure
ajaycbd17062022-03-06 11:12:58 -080018the required subscribers & network slices in SD-CORE for testing core
19functionality.
ajay87945292021-12-08 00:52:00 -080020
21Helm charts are the primary method of installing the SD-CORE resources.
22AiaB offers a great deal of flexibility regarding which Helm chart
23versions to install:
24
25* Local definitions of charts (for testing Helm chart changes)
26* Latest published charts (for deploying a development version of Aether)
27* Specified versions of charts (for deploying a specific Aether release)
28
29AiaB can be run on a bare metal machine or VM. System prerequisites:
30
Ajay Lotan Thakur05ce5ce2022-09-25 20:36:16 -070031* Ubuntu 18.04 or later
ajay87945292021-12-08 00:52:00 -080032* Kernel 4.15 or later
33* Haswell CPU or newer
34
35Clone Repositories
36__________________
37
Ajay Lotan Thakur05ce5ce2022-09-25 20:36:16 -070038To initialize the AiaB environment, first clone the following repository::
ajay87945292021-12-08 00:52:00 -080039
40 cd ~
ajaycbd17062022-03-06 11:12:58 -080041 git clone "https://gerrit.opencord.org/aether-in-a-box"
ajay87945292021-12-08 00:52:00 -080042
43 mkdir -p ~/cord
44 cd ~/cord
ajaycbd17062022-03-06 11:12:58 -080045 git clone "https://gerrit.opencord.org/sdcore-helm-charts"
ajay87945292021-12-08 00:52:00 -080046
ajaycbd17062022-03-06 11:12:58 -080047.. note::
48 Only one version of the SD-CORE (4G or 5G) can be installed in AIAB environment
49 at a time. The first time you build AiaB, it takes a while because it sets up the
50 Kubernetes cluster. Subsequent builds will be much faster if you follow below steps
51 to delete & redeploy SD-Core (4G/5G) without destroying the Kubernetes
ajay87945292021-12-08 00:52:00 -080052
Ajay Lotan Thakur05ce5ce2022-09-25 20:36:16 -070053Running 4G Test
ajaycbd17062022-03-06 11:12:58 -080054________________
ajay87945292021-12-08 00:52:00 -080055
Ajay Lotan Thakur05ce5ce2022-09-25 20:36:16 -070056To deploy 4G SD-CORE using local helm charts::
ajay87945292021-12-08 00:52:00 -080057
Ajay Lotan Thakur5aaab132022-06-22 21:54:58 -070058 make 4g-core
ajay87945292021-12-08 00:52:00 -080059
ajaycbd17062022-03-06 11:12:58 -080060To delete 4G SD-CORE deployment ::
ajay87945292021-12-08 00:52:00 -080061
ajaycbd17062022-03-06 11:12:58 -080062 make reset-test
63
64The above step performs UE attach and data test. If you wish to update any images
65of SD-Core 4G components then edit file in *~/aether-in-a-box/sd-core-4g-values.yaml*.
66After updating config in *sd-core-4g-values.yaml* you can reset deployment and run
67the test again.
68
ajay87945292021-12-08 00:52:00 -080069Developer Loop
70______________
71
Ajay Lotan Thakur05ce5ce2022-09-25 20:36:16 -070072Suppose you wish to test a new build of a 4G SD-CORE services. You can deploy
73custom images by editing ~/aether-in-a-box/sd-core-4g-values.yaml, for example::
ajay87945292021-12-08 00:52:00 -080074
75 images:
76 tags:
Ajay Lotan Thakur05ce5ce2022-09-25 20:36:16 -070077 spgwc: omecproject/spgw:master-e419062
ajay87945292021-12-08 00:52:00 -080078
Ajay Lotan Thakur05ce5ce2022-09-25 20:36:16 -070079To upgrade a running 4G SD-CORE with the new image, or to redeploy the 4G SD-CORE
ajay87945292021-12-08 00:52:00 -080080with the image::
81
Ajay Lotan Thakur05ce5ce2022-09-25 20:36:16 -070082 make reset-test # delete 4G deployment if it was already started before updating image
83 make 4g-test #now this deployment will use new webui image
ajay87945292021-12-08 00:52:00 -080084
85Troubleshooting / Known Issues
86______________________________
87
Ajay Lotan Thakur05ce5ce2022-09-25 20:36:16 -070088Deployment Status
89""""""""""""""""""
90
ajay87945292021-12-08 00:52:00 -080091If you suspect a problem, first verify that all pods are in Running state::
92
93 kubectl -n omec get pods
ajay87945292021-12-08 00:52:00 -080094
95If the pods are stuck in ImagePullBackOff state, then its likely an issue
ajaycbd17062022-03-06 11:12:58 -080096with image name.
ajay87945292021-12-08 00:52:00 -080097
Ajay Lotan Thakur05ce5ce2022-09-25 20:36:16 -070098Test Failure
99""""""""""""
ajay87945292021-12-08 00:52:00 -0800100
Ajay Lotan Thakur5aaab132022-06-22 21:54:58 -0700101Occasionally make 4g-core (for 4G) fails for unknown reasons; this is true
ajay87945292021-12-08 00:52:00 -0800102regardless of which Helm charts are used. If this happens, first try
Ajay Lotan Thakur5aaab132022-06-22 21:54:58 -0700103cleaning up AiaB and re-running the test. If make 4g-core fails consistently,
ajaycbd17062022-03-06 11:12:58 -0800104then try to debug the issue by looking at spgwc, mme logs.