commit | 896c3acac45d9e23300072e0cf544bf728396066 | [log] [tgz] |
---|---|---|
author | Juha Hyttinen <juha.hyttinen@nokia.com> | Mon Feb 24 12:49:20 2020 +0200 |
committer | Juha Hyttinen <juha.hyttinen@nokia.com> | Tue Feb 25 11:27:10 2020 +0200 |
tree | 19822298e16fbb6a774c0a9728b3943f26001203 | |
parent | 2f1a30e5c8ccb3b710a5f43a767371cd2617c686 [diff] |
RICPLT-3059 multi e2term crash in rmr library Change-Id: I0b3c44d6767c891561a8fab4d2271137d4044f15 Signed-off-by: Juha Hyttinen <juha.hyttinen@nokia.com>
Subscription Manager is a basic platform service of RIC. It is responsible to serve, coordinate and manage xApps' subscriptions.
Submgr acts as an anchor point for subscription related internal messaging, i.e. every xApp sends its subscription related messages to Submgr. Submgr invokes Routing Manager (Rtmgr) to create or tear down the subscription related routes, and the appropriate E2 Termination to signal the subscription related event also towards the RAN.
The solution base on the xapp-frame project which provides the common HttpREST, RMR and SDL interfaces.
Current implementation provides the following functionalities:
Check the separated RELNOTES
file.
Enter the project root and execute docker build -t submgr:tag .
. The Dockerfile has two main phases. First is the code compilation, where it creates an intermediate container for downloading all dependencies then compiles the code. In the second phase it builds the production ready container.
NOTE: If you are behind proxy, see this guide: https://docs.docker.com/network/proxy/#configure-the-docker-client
Tag the submgr
container according to the project release and push it to a registry accessible from all minions of the Kubernetes cluster. Edit the container image section of submgr-dep.yaml
file and set the submgr
image tag accordingly.
Issue the kubectl create -f {manifest.yaml}
command in the following order
manifests/namespace.yaml
: creates the example
namespace for routing-manager resourcesmanifests/submgr/submgr-dep.yaml
: instantiates the submgr
deployment in the example
namespacemanifests/submgr/submgr-svc.yaml
: creates the submgr
service in example
namespaceSubscription Manager's behaviour can be tested using the provided stub xApp (called RCO) and the stub E2 Termination (called E2T) on the following way.
./test/dbaas
folder and issue kubectl apply -f ./manifests
./test/e2t/
folder and run build.sh
. After docker image successfully built, issue kubectl apply -f ./manifests
./test/rco/
folder and run build.sh
. After docker image successfully built, issue kubectl apply -f ./manifests
Sunny Day testing scenario:
Rainy Day testing scenarios:
Wrong/Malformed Request
Wrong/Malformed Response
NOTES:
ricRequestSequenceNumber
in it and pass it between the components. The message presented as a hex dump which is inprinted in the code. Use the RCO_RAWDATA
and E2T_RAWDATA
environment variables in the pod manifest to override the default skeleton messages.RCO_SEED_SN
environment variable in the pod manifest to override this number.Basic configuration file provided in ./config/
folder. Consult xapp-frame project documentation for custom configuration settings. SUBMGR_SEED_SN
environment variable is defined in the pod manifest and used to control the initial value of the Subscription Sequence Number. If this environment variable is undefied, SUBMGR choses a random number from the range of 0-65535
[] Unit tests
[] Full RTMGR integration
[] Jaeger tracing support
[] Generate ASN1-C code in build time
[] Full RTMGR integration
[] Jaeger tracing support
[] Rainy Day scenarios
This project is licensed under the Apache License, Version 2.0 - see the LICENSE