1 .. This work is licensed under a Creative Commons Attribution 4.0 International License.
2 .. http://creativecommons.org/licenses/by/4.0
4 O-DU High Installation Guide
5 *****************************
7 This document describes how to install O-DU High, it's dependencies and required system resources.
17 +--------------------+--------------------+--------------------+--------------------+
18 | **Date** | **Ver.** | **Author** | **Comment** |
20 +--------------------+--------------------+--------------------+--------------------+
21 | 2023-12-14 | 7.0.1 | Radisys | I release |
23 +--------------------+--------------------+--------------------+--------------------+
24 | 2023-06-13 | 6.0.1 | Radisys | H release |
26 +--------------------+--------------------+--------------------+--------------------+
27 | 2022-12-15 | 5.0.1 | Radisys, | G release |
28 | | | HCL Technologies | |
30 +--------------------+--------------------+--------------------+--------------------+
31 | 2022-06-16 | 4.0.0 | Radisys, | F release |
32 | | | HCL Technologies | |
34 +--------------------+--------------------+--------------------+--------------------+
35 | 2022-01-14 | 3.0.0 | Radisys, | e-release |
36 | | | HCL Technologies | |
38 +--------------------+--------------------+--------------------+--------------------+
39 | 2021-07-07 | 2.0.0 | Radisys, | D Release |
40 | | | HCL Technologies | |
42 +--------------------+--------------------+--------------------+--------------------+
43 | 2020-12-04 | 1.0.1 | HCL Technologies | Cherry Release |
45 +--------------------+--------------------+--------------------+--------------------+
46 | 2020-12-04 | 1.0 | Radisys | Cherry Release |
48 +--------------------+--------------------+--------------------+--------------------+
54 This document describes the hardware and software requirements along with guidelines on how to install O-DU High.
56 The audience of this document is assumed to have good knowledge in RAN concepts and Linux system.
62 O-DU High images can be built using the source code or corresponding docker images can be downloaded.
68 Following minimum hardware requirements must be met for installation of O-DU High
70 +--------------------+----------------------------------------------------+
71 | **HW Aspect** | **Requirement** |
73 +--------------------+----------------------------------------------------+
74 | **# of servers** | 1 |
75 +--------------------+----------------------------------------------------+
78 +--------------------+----------------------------------------------------+
81 +--------------------+----------------------------------------------------+
84 +--------------------+----------------------------------------------------+
87 +--------------------+----------------------------------------------------+
90 Software installation and deployment
91 -------------------------------------
93 This section describes the installation of the O-DU High on the reference hardware.
98 Following libraries are required to compile and execute O-DU High:
101 - Ubuntu : sudo apt-get install -y build-essential
102 - CentOS : sudo yum groups mark install -y “Development Tools”
104 Ensure the version is 4.6.3 and above using
109 - Ubuntu : sudo apt-get install -y libsctp-dev
110 - CentOS : sudo yum install -y lksctp-tools-devel
113 - Ubuntu : sudo apt-get install -y libpcap-dev
114 - CentOS : sudo yum install -y libpcap-devel
117 - Ubuntu : sudo apt-get install -y libxml2-dev
118 - CentOS : sudo yum install -y libxml2
124 - Create a folder to clone the O-DU High code into. The folder is hereafter referred to as <O-DU High Directory>.
126 - Clone code into <O-DU High Directory>
128 git clone "https://gerrit.o-ran-sc.org/r/o-du/l2"
131 Setting up Netconf server (Only if O1 interface enabled)
132 ========================================================
134 Following steps are required to compile and run ODU with O1 interface enabled.
136 - Create a new netconf user
138 Switch to root user or use sudo and run following commands
141 | cd <O-DU High Directory>/l2/build/scripts
142 | sudo ./add_netconf_user.sh
144 - Install Netconf libraries:
146 libssh, libyang, libnetconf2, sysrepo, netopeer2
148 Script is provided in the following folder to install these libraries
151 | cd <O-DU High Directory>/l2/build/scripts
152 | sudo ./install_lib_O1.sh -c
154 - Install the YANG modules and load initial configuration
156 - Navigate to config folder and update the desired initial configuration
158 | cd <O-DU High Directory>/l2/build/config
160 | Open the startup_config.xml and edit the desired IP and Port for CU, DU and RIC.
161 | Open the nacm_config.xml and edit the desired user name to provide the access to that user.
162 | Open the netconf_server_ipv6.xml and edit the desired netconf server configuration.
163 | Open the oamVesConfig.json and edit the details of OAM VES collector.
164 | Open the smoVesConfig.json and edit the details of SMO VES collector.
165 | Open the netconfConfig.json and edit the details of Netopeer server.
167 - Install the yang modules and load initial configuration.
171 | $cd <O-DU High Directory>/l2/build/scripts
172 | $sudo ./load_yang.sh
174 - Start Netopeer2-server:
177 | cd <O-DU High Directory>/l2/build/scripts
178 | sudo ./netopeer-server.sh start
180 - In case standard defined VES format is to be enabled (this step is optional):
184 | Enable the Macro "StdDef" in file VesUtils.h
192 - Navigate to Build folder
194 cd <O-DU High Directory>/l2/build/odu
196 - Clean O-DU High binary
198 make clean_odu MACHINE=BIT64 MODE=FDD
201 - Compile O-DU High binary
203 make odu MACHINE=BIT64 MODE=FDD
208 - Navigate to Build folder
210 cd <O-DU High Directory>/l2/build/odu
212 - Clean CU Stub binary
214 make clean_cu NODE=TEST_STUB MACHINE=BIT64 MODE=FDD
216 - Compile CU Stub binary
218 make cu_stub NODE=TEST_STUB MACHINE=BIT64 MODE=FDD
222 - Navigate to Build folder
224 cd <O-DU High Directory>/l2/build/odu
226 - Clean RIC Stub binary
228 make clean_ric NODE=TEST_STUB MACHINE=BIT64 MODE=FDD
230 - Compile RIC Stub binary
232 make ric_stub NODE=TEST_STUB MACHINE=BIT64 MODE=FDD
235 Compilation with O1 interface enabled
236 =====================================
240 - Navigate to Build folder
242 cd <O-DU High Directory>/l2/build/odu
244 - Clean O-DU High binary
246 make clean_odu MACHINE=BIT64 MODE=FDD O1_ENABLE=YES
249 - Compile O-DU High binary
251 make odu MACHINE=BIT64 MODE=FDD O1_ENABLE=YES
256 - Navigate to Build folder
258 cd <O-DU High Directory>/l2/build/odu
260 - Clean CU Stub binary
262 make clean_cu NODE=TEST_STUB MACHINE=BIT64 MODE=FDD O1_ENABLE=YES
264 - Compile CU Stub binary
266 make cu_stub NODE=TEST_STUB MACHINE=BIT64 MODE=FDD O1_ENABLE=YES
270 - Navigate to Build folder
272 cd <O-DU High Directory>/l2/build/odu
274 - Clean RIC Stub binary
276 make clean_ric NODE=TEST_STUB MACHINE=BIT64 MODE=FDD O1_ENABLE=YES
278 - Compile RIC Stub binary
280 make ric_stub NODE=TEST_STUB MACHINE=BIT64 MODE=FDD O1_ENABLE=YES
284 The above generated images can be found at:
286 - O-DU High - <O-DU High Directory>/l2/bin/odu
288 - CU Stub - <O-DU High Directory>/l2/bin/cu_stub
290 - RIC Stub - <O-DU High Directory>/l2/bin/ric_stub