.. SPDX-FileCopyrightText: © 2020 Open Networking Foundation SPDX-License-Identifier: Apache-2.0 Configuration using Simapp Interface ===================================== The easiest way to configure SD-Core is to use Simapp. Simapp is a Kubernetes pod that reads YAML configuration and automatically configures subscribers, device groups, and network slices in SD-Core. Simapp Initial Configuration Helm Values ----------------------------------------- The following YAML configuration shows the initial setup for Simapp: .. code-block:: yaml config: simapp: cfgFiles: simapp.yaml: configuration: provision-network-slice: true sub-provision-endpt: addr: config4g port: 5000 subscribers: - ueId-start: "208014567891201" ueId-end: "208014567891205" plmnId: 20801 opc: "d4416644f6154936193433dd20a0ace0" op: "" key: "465b5ce8b199b49faa5f0a2ee238a6bc" sequenceNumber: 96 device-groups: - name: "4g-oaisim-user" imsis: - "208014567891201" - "208014567891202" - "208014567891203" - "208014567891204" - "208014567891205" ip-domain-name: "pool1" ip-domain-expanded: dnn: internet dns-primary: "8.8.8.8" mtu: 1460 ue-ip-pool: "172.250.0.0/16" ue-dnn-qos: dnn-mbr-downlink: 20000000 dnn-mbr-uplink: 4000000 bitrate-unit: bps traffic-class: #default bearer QCI/ARP name: "platinum" qci: 9 arp: 1 pdb: 300 pelr: 6 site-info: "aiab" network-slices: - name: "default" slice-id: sd: "010203" sst: 1 site-device-group: - "4g-oaisim-user" site-info: gNodeBs: - name: "aiab-gnb1" tac: 1 plmn: mcc: "208" mnc: "01" site-name: "aiab" upf: upf-name: "upf" upf-port: 8805 .. note:: Simapp takes initial configuration through helm chart. Above yaml files is initial config. Operator can add multiple devices, device groups & slices in the initial config. Configuration Modification through Simapp Interface ---------------------------------------------------- Adding New Subscribers """""""""""""""""""""" To add subscribers to an already running 5G core: 1. Edit the Simapp configuration: .. code-block:: bash kubectl edit configmap simapp -n 2. Update the ``subscribers`` section in the configuration 3. Save and exit the editor The changes will be automatically applied within 60 seconds. In the example below, we update ``ueId-end`` from ``208014567891205`` to ``208014567891210``, which adds 5 new subscribers. .. code-block:: yaml config: simapp: cfgFiles: simapp.yaml: configuration: provision-network-slice: true sub-provision-endpt: addr: config4g port: 5000 subscribers: - ueId-start: "208014567891201" ueId-end: "208014567891210" plmnId: 20801 opc: "d4416644f6154936193433dd20a0ace0" op: "" key: "465b5ce8b199b49faa5f0a2ee238a6bc" sequenceNumber: 96 device-groups: - name: "4g-oaisim-user" imsis: - "208014567891201" - "208014567891202" - "208014567891203" - "208014567891204" - "208014567891205" - "208014567891206" - "208014567891207" - "208014567891208" - "208014567891209" - "208014567891210" ip-domain-name: "pool1" ip-domain-expanded: dnn: internet dns-primary: "8.8.8.8" mtu: 1460 ue-ip-pool: "172.250.0.0/16" ue-dnn-qos: dnn-mbr-downlink: 20000000 dnn-mbr-uplink: 4000000 bitrate-unit: bps traffic-class: #default bearer QCI/ARP name: "platinum" qci: 9 arp: 1 pdb: 300 pelr: 6 site-info: "aiab" network-slices: - name: "default" slice-id: sd: "010203" sst: 1 site-device-group: - "4g-oaisim-user" site-info: gNodeBs: - name: "aiab-gnb1" tac: 1 plmn: mcc: "208" mnc: "01" site-name: "aiab" upf: upf-name: "upf" upf-port: 8805 .. note:: There is no need to restart simapp after configmap change. New config will be automatically reloaded and updated configuration is passed to SD-Core. Deleting Subscribers """""""""""""""""""" To remove subscribers from an already running 5G core: 1. Edit the Simapp configuration: .. code-block:: bash kubectl edit configmap simapp -n 2. Update the ``subscribers`` section to reduce the range 3. Save and exit the editor The changes will be automatically applied within 60 seconds. In the example below, we update ``ueId-end`` from ``208014567891210`` to ``208014567891208``, which removes 2 subscribers from the 5G core. .. code-block:: yaml config: simapp: cfgFiles: simapp.yaml: configuration: provision-network-slice: true sub-provision-endpt: addr: config4g port: 5000 subscribers: - ueId-start: "208014567891201" ueId-end: "208014567891208" plmnId: 20801 opc: "d4416644f6154936193433dd20a0ace0" op: "" key: "465b5ce8b199b49faa5f0a2ee238a6bc" sequenceNumber: 96 device-groups: - name: "4g-oaisim-user" imsis: - "208014567891201" - "208014567891202" - "208014567891203" - "208014567891204" - "208014567891205" - "208014567891206" - "208014567891207" - "208014567891208" ip-domain-name: "pool1" ip-domain-expanded: dnn: internet dns-primary: "8.8.8.8" mtu: 1460 ue-ip-pool: "172.250.0.0/16" ue-dnn-qos: dnn-mbr-downlink: 20000000 dnn-mbr-uplink: 4000000 bitrate-unit: bps traffic-class: #default bearer QCI/ARP name: "platinum" qci: 9 arp: 1 pdb: 300 pelr: 6 site-info: "aiab" network-slices: - name: "default" slice-id: sd: "010203" sst: 1 site-device-group: - "4g-oaisim-user" site-info: gNodeBs: - name: "aiab-gnb1" tac: 1 plmn: mcc: "208" mnc: "01" site-name: "aiab" upf: upf-name: "upf" upf-port: 8805 Adding subscribers with multiple subscriber ranges """"""""""""""""""""""""""""""""""""""""""""""""""""""""""" If 5G core is already started and subscriber needs to be added in the 5G-Core then do the following, Run the command - ``kubectl edit configmap simapp -n `` and update subscribers section. Once config is updated then save the file and exit from the file. Subscribers will get added within 60 seconds. In below we are adding new subscriber range 208014567891216 to 208014567891220. This will add 5 new subscribers. If you have multiple ranges with different key & opc values then adding multiple subscriber blocks helps. .. code-block:: yaml config: simapp: cfgFiles: simapp.yaml: configuration: provision-network-slice: true sub-provision-endpt: addr: config4g port: 5000 subscribers: - ueId-start: "208014567891201" ueId-end: "208014567891205" plmnId: 20801 opc: "d4416644f6154936193433dd20a0ace0" op: "" key: "465b5ce8b199b49faa5f0a2ee238a6bc" sequenceNumber: 96 - ueId-start: "208014567891216" ueId-end: "208014567891220" plmnId: 20801 opc: "d4416644f6154936193433dd20a0ace0" op: "" key: "465b5ce8b199b49faa5f0a2ee238a6bc" sequenceNumber: 96 device-groups: - name: "4g-oaisim-user" imsis: - "208014567891201" - "208014567891202" - "208014567891203" - "208014567891204" - "208014567891205" - "208014567891216" - "208014567891217" - "208014567891218" - "208014567891219" - "208014567891220" ip-domain-name: "pool1" ip-domain-expanded: dnn: internet dns-primary: "8.8.8.8" mtu: 1460 ue-ip-pool: "172.250.0.0/16" ue-dnn-qos: dnn-mbr-downlink: 20000000 dnn-mbr-uplink: 4000000 bitrate-unit: bps traffic-class: #default bearer QCI/ARP name: "platinum" qci: 9 arp: 1 pdb: 300 pelr: 6 site-info: "aiab" network-slices: - name: "default" slice-id: sd: "010203" sst: 1 site-device-group: - "4g-oaisim-user" site-info: gNodeBs: - name: "aiab-gnb1" tac: 1 plmn: mcc: "208" mnc: "01" site-name: "aiab" upf: upf-name: "upf" upf-port: 8805 Updating QoS Values for subscribers """"""""""""""""""""""""""""""""""" Run the command - ``kubectl edit configmap simapp -n `` and update QoS values mentioned in ip domain. Config snippet is provided below. .. code-block:: yaml ue-dnn-qos: dnn-mbr-downlink: 20000000 dnn-mbr-uplink: 4000000 bitrate-unit: bps .. note:: If subscriber QoS is changed and if subscriber is already connected to the network then new values are not used for already connected subscribers. To use new QoS rates, subscriber needs to be disconnected and reconnected.