This is the Intelligent slice and service manager component responsible for executing orchestration workflows in a context of a business transaction, such as extending a slice across a second domain in cooperation with the Network Slice and Service Orchestration.
To install ISSM follow the installation guidelines per component following the below flow:
- Provision kubernetes cluster. The guidelines are available here.
- Install kafka broker. Follow the guidelines here.
- Install Datalake services. Follow the guidelines here.
- Install SRSD. Follow the guidelines here.
- Install ISSM-O. Follow the guidelines here.
Orchestration: For each mobile network operator (MNO), install either NSSO or ISSM-MEC-CNMP.
ISSM is comprised of a centralized component and a local instance running at the MNO premises
Log into 5GZorro platform kuberneters master
Perform these instructions to install Argo
Follow the guidelines here
kubectl create namespace issm
kubectl apply -n issm -f https://raw.githubusercontent.com/argoproj/argo-events/v1.1.0/examples/eventbus/native.yaml
Register an event source on platform issm kafka bus
Update kafka ip and port accordingly
export KAFKA_HOST=172.28.3.196
export KAFKA_PORT=9092
envsubst < deploy/kafka-sla-breach-event-source.yaml.template | kubectl apply -n issm -f -
Grant proper roles for issm sensor
kubectl apply -f deploy/install-v1.1.0.yaml
Create the sensor and flows
./apply-sla.sh
Follow the guidelines here to install ISSM api service
Follow the instructions in this order to deploy it in a given MNO. Repeat for every MNO you manage
Log into MNO kuberneters master
Assuming MNO is called operator-a
export it
export MNO_NAME=operator-a
Note: ensure to define namespace with domain-
prefix
kubectl create namespace domain-operator-a
export it
export MNO_NAMESPACE=domain-operator-a
Run the below to add additional roles to default
service account of the MNO namespace. These roles are used by argo workflow controller
kubectl apply -f deploy/role.yaml -n $MNO_NAMESPACE
envsubst < deploy/install-v1.1.0-operator.yaml.template | kubectl apply -f -
kubectl apply -n $MNO_NAMESPACE -f https://raw.githubusercontent.com/argoproj/argo-events/v1.1.0/examples/eventbus/native.yaml
Register an event source on platform issm kafka bus
Update kafka ip and port accordingly
export KAFKA_HOST=172.28.3.196
export KAFKA_PORT=9092
Note: ensure to define topic with issm-
prefix
export ISSM_DOMAIN_TOPIC=issm-in-$MNO_NAME
envsubst < deploy/kafka-event-source.yaml.template | kubectl apply -n $MNO_NAMESPACE -f -
Kafka topics are automatically created during the creation of the event sources
First, customize the workflow with access information to the 5G Zorro services
Open flows/issm-sensor.yaml
Update access info for:
- ISSM kafka bus
- Datalake kafka bus
- Smart resource and service discovery
arguments:
parameters:
- name: kafka_ip
value: 172.28.3.196
- name: kafka_port
value: 9092
- name: kafka_dl_ip
value: 172.28.3.196
- name: kafka_dl_port
value: 9092
- name: discovery_ip
value: 172.28.3.15
- name: discovery_port
value: 32000
then, onboard the flow
kubectl apply -f flows/issm-sensor.yaml -n $MNO_NAMESPACE
Deploy common libraries according to the orchestration stack the mno supports
./apply.sh NSSO
or
./apply.sh MEC
Follow the guidelines here
then watch business flow progress with Argo GUI (http://<kubernetes master ipaddress>:2746
) running on the participated MNOs
This 5GZORRO component is published under Apache 2.0 license. Please see the LICENSE file for further details.