[ORAN] FlexRIC 安裝
這一篇文章主要是介紹如何在 VM 中建立一個 FlexRIC 的測試環境,
主要依據 FlexRIC 的官方教程: https://gitlab.eurecom.fr/mosaic5g/flexric#1-installation
在 FlexRIC 的官方網站中, 有許多有用的資源, 可以參考.
和 O-RAN SC 的網站相比, 指引較為明確.
在以下的操作中, 我們使用 VirtualBox 7.1 的版本,
Linux 的基底採用 ubuntu 20.04 的版本進行.
* VirtualBox 6.X 版本對 ubuntu 20.04 有機率遇到顯示的問題
* 由於對 gcc 的版本需求, 需要 ubuntu 20.04 以上的版本
以下是 FlexRIC 的相依套件的版本需求:
- CMake: 3.15, Python: 3.8
- SWIG (提供 python, Java 操作介面): 4.0
[A] 我們就先從 CMake 開始, 參考此份安裝文件: https://apt.kitware.com/
1) 安裝認證套件與 wget
- sudo apt-get update
- sudo apt-get install ca-certificates gpg wget
2) 取得密鑰
- wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | gpg --dearmor - | sudo tee /usr/share/keyrings/kitware-archive-keyring.gpg >/dev/null
3) 將 CMake 套件來源放入安裝庫
- echo 'deb [signed-by=/usr/share/keyrings/kitware-archive-keyring.gpg] https://apt.kitware.com/ubuntu/ focal main' | sudo tee /etc/apt/sources.list.d/kitware.list >/dev/null
- echo 'deb [signed-by=/usr/share/keyrings/kitware-archive-keyring.gpg] https://apt.kitware.com/ubuntu/ focal-rc main' | sudo tee -a /etc/apt/sources.list.d/kitware.list >/dev/null
- sudo apt-get update
4) 更新密鑰
- sudo rm /usr/share/keyrings/kitware-archive-keyring.gpg
- sudo apt-get install kitware-archive-keyring
5) 進行 CMake 安裝
- sudo apt-get install cmake
[B] 接著是安裝 SWIG, 在進行官方的安裝之前, 我們須先安裝其相關套件:
- sudo apt-get install automake libpcre2-dev bison g++ make git
在確保相關套件完成安裝後, 就可以透過 git 進行 SWIG 的安裝
- git clone https://github.com/swig/swig.git
- cd swig
- ./autogen.sh
- ./configure --prefix=/usr/
- make
- sudo make install
[C] 最後, 是安裝 FlexRIC 套件, 這邊也是透過 git 進行,
1) 我們也是要先安裝一些相依的套件 (主要是 python-dev, sctp)
- sudo apt install libsctp-dev python3.8 cmake-curses-gui python3-dev
2) 在透過 git 取得 FlexRIC 套件時, 我們可以先確認抓到的版本,
此步驟是為了確認 FlexRIC 版本 (目前是 1.0.0),
在未來若有多個 FlexRIC 版本, 須確定使用的版本, 以及其相依性.
- git clone https://gitlab.eurecom.fr/mosaic5g/flexric.git
- cd flexric
- git checkout <here put the release tag>
3) 在確認版本後, 就可以依序進行 build, cmake, make, 和 install
要注意目前執行的目錄在 (~/flexric):
- mkdir build && cd build && cmake .. && makes
- sudo make install
4) 在安裝 FlexRIC 的過程中, 可以看到不只是安裝 FlexRIC 的套件,
還會對 Service Model (SM) 以及 xApp 進行安裝,
換句話說, 當重新對 SM 或是 xApp 進行設計後, 必須重新進行此步驟.
我們開啟三個 terminal 視窗, 分別執行三隻程式 (執行的目錄在~/flexric):
- ./build/examples/emulator/agent/emu_agent_gnb
- ./build/examples/ric/nearRT-RIC
- ./build/examples/xApp/c/monitor/xapp_mac_rlc_pdcp_moni
這三隻程式分別代表用以模擬基地台的 E2Agent (emu_agent_gnb),
RIC 平台 (nearRT-RIC), 以及 xApp (xapp_mac_rlc_pdcp_moni),
在此, 我們也可以看到, 在 FlexRIC 的架構中, 將不同功能封入一隻程式中,
在未來, 我們也會繼續介紹 FlexRIC 中的程式是如何透過 thread 分工.
以下是執行的範例:
留言
張貼留言