X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=docs%2Finstallation-guide.rst;h=6e16806239d14c9c0de0edb5dbaea2eacbe93756;hb=c1bf59bb71206de2be6e1303d1b75aa8ceaeabb2;hp=25ed53fbfe34b71ea5e6b74bf9b9275d5046489c;hpb=471dea0ce34ba3cfb95bcdad3f01908f841547e0;p=ric-plt%2Frtmgr.git diff --git a/docs/installation-guide.rst b/docs/installation-guide.rst index 25ed53f..6e16806 100644 --- a/docs/installation-guide.rst +++ b/docs/installation-guide.rst @@ -17,7 +17,6 @@ .. - Installation Guide ================== @@ -25,83 +24,22 @@ Installation Guide :depth: 3 :local: -Abstract --------- - -This document describes how to install ric-plt/rtmgr, it's dependencies and required system resources. - Introduction ------------ -Routing Manager is a basic platform service of RIC. It is responsible for distributing routing policies among the other platform components and xApps. - -Pre-requisites --------------- -* Healthy kubernetes cluster (for Kubernetes testing) -* Access to the common docker registry (alternatively, you can set up your own private registry for testing: "https://docs.docker.com/registry/deploying/") -* In case of non-Docker build: - * golang 11.1 at least - * go-swagger ("https://github.com/go-swagger/go-swagger", v0.19.0) - * glide ("https://github.com/Masterminds/glide") - * XApp Manager spec file (available in ORAN: "https://gerrit.o-ran-sc.org/r/admin/repos/ric-plt/appmgr" under api folder) - -Software Installation and Deployment ------------------------------------- -This section describes the installation of the ric-plt/rtmgr installation. - -Docker Image ------------- -The Dockerfile located in the project root folder does the following three things: - -* As a first step, it creates a build container, fetches XApp Manager's spec file, generates rest api code from swagger spec and builds rtmgr. -* As a second step, it executes UTs on rtmgr source code. -* As a third step, it creates the final container from rtmgr binary (Ubuntu based). +Routing Manager is a basic platform service of RIC. It is responsible for distributing routing policies to other platform components and xApps. -For a docker build execute `docker build --tag=rtmgr-build:test .` in the project root directory (feel free to replace the name:tag with your own) - -Linux Binary ------------- -* Compiling without Docker involves some manual steps before compiling directly with "go build". -* The XApp manager's spec file must be fetched, then api generated with swagger. (these steps are included in the Dockerfile). -* After the code is generated, glide can install the dependencies of rtmgr. -* Make sure you set your GOPATH variable correctly (example: $HOME/go/src/routing-manager) -* Code generation and building example (from project root folder): +Installation of routing manager in a k8s environment +==================================================== - * git clone https://gerrit.o-ran-sc.org/r/ric-plt/appmgr && cp appmgr/api/appmgr_rest_api.yaml api/ - * swagger generate server -f api/routing_manager.yaml -t pkg/ --exclude-main -r LICENSE - * swagger generate client -f api/appmgr_rest_api.yaml -t pkg/ -m appmgr_model -c appmgr_client -r LICENSE - * glide install --strip-vendor - * go build cmd/rtmgr.go +This deployment guide is for testing routing manager in actual k8s environment. -NOTE: before doing a docker build it is advised to remove any generated files and vendor packages: -assuming that you stand in project root dir +.. include:: ./installation-guide-rtmgr-as-pod.rst - rm -rf appmgr vendor pkg/appmgr_* pkg/models pkg/restapi -Command line arguments ----------------------- -Routing manager binary can be called with `-h` flag when it displays the available command line arguments and it's default value. +Installation of routing manager in a standalone linux machine +============================================================= -Example: +This deployment guide will be useful for development purposes -Usage of ./rtmgr: - -configfile string - Routing manager's configuration file path (default "/etc/rtmgrcfg.json") - -filename string - Absolute path of file where the route information to be stored (default "/db/rt.json") - -loglevel string - INFO | WARN | ERROR | DEBUG (default "INFO") - -nbi string - Northbound interface module to be used. Valid values are: 'httpGetter | httpRESTful' (default "httpGetter") - -nbi-if string - Base HTTP URL where routing manager will be listening on (default "http://localhost:8888") - -rpe string - Route Policy Engine to be used. Valid values are: 'rmrpush | rmrpub' (default "rmrpush") - -sbi string - Southbound interface module to be used. Valid values are: 'nngpush | nngpub' (default "nngpush") - -sbi-if string - IPv4 address of interface where Southbound socket to be opened (default "0.0.0.0") - -sdl string - Datastore enginge to be used. Valid values are: 'file' (default "file") - -xm-url string - HTTP URL where xApp Manager exposes the entire xApp List (default "http://localhost:3000/xapps") +.. include:: ./installation-guide-rtmgr-as-exe.rst