OAI CI Framework @ OpenAirX-Labs - OpenAirInterface

Transcription

OAI CI Framework @ OpenAirX-LabsPIs:Presenter:Abhimanyu Gosain, Tommaso Melodiaagosain@coe.neu.edu, t.melodia@northeastern.eduShweta Shrivastavas.shrivastava@northeastern.eduJune 24, 2021

OpenAirX-Labs (OAX) A lab ecosystem incubated within Institute for Wireless Internet of Things @Northeastern University Part of the Platforms for Advanced Wireless Research (PAWR) program Funded by NSF and the U.S. Department of Defense's Office of the UnderSecretary of Defense for Research and Engineering [DOD OUSD (R&E)] Supported by OSA board as the official North American Designate AffiliateDevelopment Partner

Memberships and PartnersOAX is an activeparticipant in thefollowing opensource ecosystemsOAX has severalindustry andacademic partners

OpenAirX-Labs Charter North American home for development, testing and integration ofOpenAirInterface 5G SA software stack. Provide a benchmark, end-to-end 5G Standalone reference architecture topromote innovation Central Point of Contact for testing and evaluation status across member labpartners. Provide development and test status for SA features Continuous Integration (CI) system to accelerate the development and testing ofthe software stack. Promote stable, compliant and performant stack

Test PlatformsColosseumSRN 1ArenaServer 1SRN 2Ubuntu ContainerUbuntu ContainerOAI CN(docker)OAI CN(docker)Ubuntu ContainerOAIgNBOAIUESDR(Ettus USRPX310)SDR(Ettus USRPX310)ChannelEmulatorSDR 1Server 2Ubuntu ContainerOAIgNBOAIUEUSRP X310/N210USRP X310/N210Antennax2SDR 2Antennax2

Test PlatformsAERPAW Testbench @ MSUAERPAW Testbench @ NCSUServer 1Server 1Server 2USBconnectionOAI CN(Docker)SDR 1USRP X310NUC Intel 10710UOAIgNBOAIUEUSRP B205mini-iUSRP B205mini-iOAIUEOAIgNB10G EthconnectionUSRP X310SDR 2SDR 1Server 2Intel i9-9900OAI CN(docker)Antennax2PropsimChannelEmulatorQuectel UEPAWR-AERPAW Team at NCSU:Prof. Rudra Dutta, Prof. Ismail Guvenc, Prof. Mihail L. Sichitiu,Ozgur Ozdemir, Udita BhattacherjeePAWR-AERPAW Team at MSU:Prof. Vuk Marojevic, Keith PowellSDR 2Antennax2

OAX Continuous Integration Mirrors Eurecom’s CI framework Will be integrated with Eurecom Gitlab codebase and 5G MRs/merges will trigger OAX CI Currently uses Colosseum testbed as the test platform Extensible to include other PAWR platforms Use of software LXC/Docker containers Ansible toolchain automates container creation (credit: Zylinium Research) Container migration enables Testing-at-a-scale (Colosseum, ARENA, POWDER, erMigrationContainerMigration

MR orcheck in13OAX CI FrameworkPublic1ViewresultsMerge Requesttriggers CIPublicPortal (oaijenkins.colosseum.net)Workerjob #1Masterjoboai-Jenkins-mgmt.colosseum.netWorkerjob #2(experiments.colosseum.net)Public3Worker initiatesAnsiblePipeline12Reportresults toJenkins1.2.3.4.5.6.7.6Retrieve &parse logs forresults118.9.10.11.12.13.AssignresourcesSRN #1(gNB)At start of Colosseum reservation, the LXC image andconfig files are pulled and SRNs are configuredTest run with OAI modulesAfter the test completes, log files are transferred toColosseum NAS storageLog files are analyzed for test success or failure usingpython scripts and xml definitionsResults of CI run are reported to JenkinsDevelopers can view results on Jenkins portalSRN #3(CN)8NAS Storage(file-proxy)Pull image &configMCHEMTransferlogs9Run Test10oai-ci-server-mgmt.colosseum.netVPNTunnelA new MR or code push to develop branch triggers Jenkins CIrun on oai-Jenkins-mgmt.colosseum.netMaster job initiates code analysis/simulator build & runsWorker job initiates Colosseum pipeline on server 2 (oai-ciserver-mgmt.colosseum.net)Ansible toolchain builds OAI and create LXC containersContainers and config files are pushed to ColosseumAnsible module initiates a Colosseum batch reservationColosseum resource manager assigns resources for the jobResourceManager45Execution Sequence7Build OAI containers;push to ColosseumInitiate Colosseumbatch job2Master jobinitiatespipeline 1ColosseumColosseumReservationportalSRN kStatic codeanalysis(cppcheck)Build sims(PHY-SIM,RF-SIM)RunsimulatortestsServer 1*Ansible and Airflow Toolchain Credit: Zylinium Research

Thank You!Please see https://openairx-labs.northeastern.edu/ for more details!

3. Worker job initiates Colosseum pipeline on server 2 (oai -ci-server-mgmt.colosseum.net) 4. Ansible toolchain builds OAI and create LXC containers 5. Containers and config files are pushed to Colosseum 6. Ansible module initiates a Colosseum batch reservation 7. Colosseum resource manager assigns resources for the job 8.