SCP Configuration Parameters
Table A-1 provides list of configuration parameters in the Helm file. Refer to OCSCP YAML File for a sample file.
Table A-1 SCP Configuration Parameters
Attribute Name | DataType | Range | Default Value | Mandatory(M)/Optional(O)/Conditional(C) | User can change? | Description |
---|---|---|---|---|---|---|
Global: Configuration used by all the micro services | ||||||
domain |
<string> |
Labels can be letter a-z, number 0-9, hyphen(-). Hyphen cannot be first character. Label combined with dot(.) forms domain | svc.cluster.local | M | Y | Option to configure the Service Domain of the K8 cluster. |
clusterDomain |
<string> |
Labels can be letter a-z, number 0-9, hyphen(-). Hyphen cannot be first character. Label combined with dot(.) forms domain | cluster.local | M | Y | Option to configure the Domain of the K8 cluster. Ideally it is domain attribute value by removing "svc." |
publicSignalingIPSpecified |
<boolean> |
true/false | false | O | Y | Option to enable/disable Loadbalancer IP configuration statically for Signaling interface. |
publicSignalingIP |
<IPv4 Address> |
Valid IPV4 address as per RFC 791 | N/A | C | Y | Option to configure static Signaling Loadbalancer IP. Configured value will be used only if signalingloadbalanceripenabled is configured as "true" |
publicSignalingPort |
<integer> |
Min- 0 , Max-65535 | 8000 | M | Y | Option to configure Signaling Port |
adminport |
<integer> |
Min- 0 , Max-65535 | 8001 | M | Y | Option to configure Admin Port (used for debugging purpose) |
scpInfo | SCP Profile that will be used while Registering current SCP instance with NRF | |||||
fqdn: <string> |
Labels can be letter a-z, number 0-9, hyphen(-). Hyphen cannot be first character. Label combined with dot(.) forms domain | N/A | M | Y | Fully Qualified Domain Name of SCP | |
nfType: <string> |
NA | CUSTOM_ORACLE_SCP | M | Y | ||
nfStatus: <string> |
NA | REGISTERED | M | N | Status of current SCP Instance | |
locality: <string> |
As per 3GPP TS 29.510 spec | N/A | M | Y | Locality of the current SCP Instance (e.g. geographic location, data center). Same locality must be present in ServingLocalities also. | |
customInfo: mateScpInfo: capacity: <integer> priority: <integer> mateSCPLocalities: - <string> servingLocalities: - <string> remainingLocalities: - <string> |
capacity: Min = 0, Max = 65535,
Priority: Min = 0, Max = 65535. Localities: As per 3GPP TS 29.510 spec |
N/A | M | Y | capacity: Static capacity information in the range of
0-65535, expressed as a weight relative to other SCP instances of the same
type.
priority: Priority (relative to other SCPs) in the range of 0-65535, to be used for NF selection; lower values indicate a higher priority. mateSCPLocalities: List of serving localities of the Mate SCP(s) servingLocalities: List of serving localities of the current SCP (apart from the locality in present in "locality" attribute) remainingLocalities: List of localities which will be served by current SCP but are not part of mateSCPLocalities and servingLocalities |
|
nfInstanceId: string |
String uniquely identifying a NF instance. The format of the NF Instance ID shall be a Universally Unique Identifier (UUID) version 4, as described in IETF RFC 4122 [15]. | N/A | M | Y | String uniquely identifying current SCP instance. The format of the Instance ID shall be a Universally Unique Identifier (UUID) version 4, as described in IETF RFC 4122. | |
auditNFList | List of strings. (example in description) | Valid 5g NF Type as per 3GPP TS 29.510. |
|
O | Y | List of NF's for which audit is triggered.
(Applicable when nrfServiceForAudit is set to nnrf-disc)
Format Example: auditNFList: - UDM - PCF - UDR |
nrfDetails | List of NRFs to which the current SCP instance will subscribe for notifications | |||||
nfType: [<string>,<string>] |
Valid 5g NF Type as per 3GPP TS 29.510. | [] i.e. Blank, which means subscribe for all supported NF Types. | M | Y | List of NF Types for which the current SCP instance will subscribe for notifications | |
nrfManagement: fqdn: <string> port: '<integer>' scheme: HTTP2 priority: <integer> capacity: <integer> apiPrefix: <string> ipEndPoints: - ipv4Address: <IPv4 Address> transport: TCP port: <integer> |
fqdn: Labels can be letter a-z, number 0-9, hyphen(-).
Hyphen cannot be first character. Label combined with dot(.) forms domain.
port: 0 to 65535 priority: 0 to 65535 capacity: 0 to 65535apiPrefix: Can be combination of letters from a-z and A-Z |
N/A | M | Y | fqdn: Fully Qualified Domain Name of NRF
port: NRF Management Service Port scheme: Always HTTP2 priority: Priority of the NRF among the NRF List. It is used for load balancing between the NRFs. capacity: Capacity of the NRF among the NRF List. It is used for load balancing between the NRFs. apiPrefix: Location of NRF. User needs to configure it (or remove it) based on the APIPrefix supported (or not Supported) by NRF. ipEndPoints: List of IPv4 Address, transport and port combination of the given NRF |
|
nrfDiscovery: fqdn: <string> port: '<integer>' scheme: HTTP2 priority: <integer> capacity: <integer> apiPrefix: <string> ipEndPoints: - ipv4Address: <IPv4 Address> transport: TCP port: <integer> |
fqdn: Labels can be letter a-z, number 0-9, hyphen(-).
Hyphen cannot be first character. Label combined with dot(.) forms domain.
port: 0 to 65535 priority: 0 to 65535 capacity: 0 to 65535apiPrefix: Can be combination of letters from a-z and A-Z |
N/A | M | Y | fqdn: Fully Qualified Domain Name of NRF
port: NRF Management Service Port scheme: Always HTTP2 priority: Priority of the NRF among the NRF List. It is used for load balancing between the NRFs. capacity: Capacity of the NRF among the NRF List. It is used for load balancing between the NRFs. apiPrefix: Location of NRF. User needs to configure it (or remove it) based on the APIPrefix supported (or not Supported) by NRF. ipEndPoints: List of IPv4 Address, transport and port combination of the given NRF |
|
nfServiceGroup | This table is used to hold the information needed when deploymentModel is set to 'Regional'. | |||||
nfType: <string> |
Name of the NF (ex: CHF) | CHF | M | Y | Name of the 5G NF (ex: CHF) for which information is provided. It should be same as 5G NF for which deploymentModel is set to 'Regional'. | |
serviceName: <string> |
Name of the service (ex: nchf-convergedcharging) | M | Y | Name of the service for which information is provided. Service should be of 5G NF for which deploymentModel is set to 'Regional'. | ||
primaryLocalities: (List of localities) - <string> - <string> |
List of primary localities that this NF and service support |
nchf-convergedcharging / nchf-spendinglimitcontrol |
M | Y | List of primary localities that this NF and service supports. | |
secondaryLocalities: (List of localities) - <string> - <string> |
List of secondary localities that this NF and service support | O | Y | List of secondary localities that this NF and service supports. | ||
subsequentRequestRoutePolicy: routePolicy: <Routepolicy> reroutePolicy: rerouteOptions: <ReroutOptions> |
routePolicy: Forward_Proxy reroutePolicy: RerouteWithinRegion |
M | Y | It is used to provide the information on route policy for Subsequent requests. | ||
scpc-soothsayer: Configuration specific to Soothsayer Micro Service | ||||||
configuration | docker Image details for Configuration container of scpc-soothsayer | |||||
imageDetails: image: <docker repository>/soothsayer-configuration tag: <string> pullPolicy: Always |
image: Name components may contain lowercase letters, digits and separators. A separator is defined as a period, one or two underscores, or one or more dashes. A name component may not start or end with a separator Tag: valid ASCII and may contain lowercase and uppercase letters, digits, underscores, periods and dashes. A tag name may not start with a period or a dash and may contain a maximum of 128 characters |
N/A | M | Y | repository: docker repository that contains Configuration
container
imagetag: Image Tag to be used for Configuration container pullPolicy: Image pull policy. resources: Used to provide the memory and cpu details serviceName: tags the service details. |
|
resources: memory: 1Gi cpu: 0.5 |
NA | memory: 1Gi
cpu: 0.5 |
M | N |
memory: Requested memory (RAM) for configuration container in soothsayer micro-service in Giga Bytes. cpu: Max allocated vCPU for configuration container in soothsayer micro-service |
|
serviceName: scpc-configuration |
NA | scpc-configuration | M | Y | ||
logLevel: INFO |
{TRACE, DEBUG, INFO, WARN, ERROR} | INFO | O | Y | Enable desired level of logging for the service | |
defaultLocalityToScp |
<boolean> |
true/false | true | O | Y | Flag used to determine whether to consider a NF in SCP locality or outside of SCP Locality(or serving localities) in case locality information is absent in a notified NFProfile. If flag is set to true then any NFProfile received without Locality information will be considered as its in SCP's locality |
nrfServiceForAudit |
nrfServiceForAudit: <string> |
Supported service options are: 1. nnrf-nfm 2. nnrf-disc |
nnrf-nfm | M | Y |
Configure Service to get profile from NRF. Possible values are 1. nnrf-nfm 2. nnrf-disc User must have to use nnrf-nfm if interplmnfqdn is part of profile |
subscription | docker Image details for Subscription container of scpc-soothsayer | |||||
imageDetails: image: <docker repository>/soothsayer-subscription tag: <string> pullPolicy: Always |
image: Name components may contain lowercase letters, digits and separators. A separator is defined as a period, one or two underscores, or one or more dashes. A name component may not start or end with a separator Tag: valid ASCII and may contain lowercase and uppercase letters, digits, underscores, periods and dashes. A tag name may not start with a period or a dash and may contain a maximum of 128 characters |
N/A | M | Y | repository: docker repository that contains Subscription
container image
tag: Image Tag to be used for Subscription container pullPolicy: Image pull policy. |
|
resources: memory: 1Gi cpu: 1 |
NA | memory: 1Gi
cpu: 1 |
M | N |
memory: Requested memory (RAM) for configuration container in soothsayer micro-service in Giga Bytes. cpu: Max allocated vCPU for configuration container in soothsayer micro-service |
|
serviceName: scpc-subscription |
NA | scpc-subscription | M | Y | ||
retryInterval: 120Min: 1 Max: 2147483647 (in Seconds) |
Min: 1 Max: 2147483647 (in Seconds) | 120 | O | Y | Parameter used to set subscription interval and registration interval retry in case first registration and subscriptions are unsuccessful. | |
logLevel: INFO |
{TRACE, DEBUG, INFO, WARN, ERROR} | INFO | O | Y | Enable desired level of logging for the service | |
registerScpWithNrf: true |
true/false | true | M | Y | Used to Enable/Disable SCP registration with NRF. If set False SCP will not do registration with NRF. | |
notification | docker Image details for Notification container of scpc-soothsayer | |||||
imageDetails: image: <docker repository>/soothsayer-notification tag: <string> pullPolicy: Always |
image: Name components may contain lowercase letters, digits and separators. A separator is defined as a period, one or two underscores, or one or more dashes. A name component may not start or end with a separator Tag: valid ASCII and may contain lowercase and uppercase letters, digits, underscores, periods and dashes. A tag name may not start with a period or a dash and may contain a maximum of 128 characters |
N/A | M | Y | repository: docker repository that contains Notification
container image
tag: Image Tag to be used for Notification container pullPolicy: Image pull policy. |
|
resources: memory: 4Gi cpu: 3 |
NA | memory: 4Gi
cpu: 3 |
M | Y |
memory: Requested memory (RAM) for notification container in soothsayer micro-service in Giga Bytes. cpu: Max allocated vCPU for notification container in soothsayer micro-service |
|
serviceName: scpc-notification |
NA | scpc-notification | M | Y | ||
logLevel: INFO |
{TRACE, DEBUG, INFO, WARN, ERROR} | INFO | O | Y | Enable desired level of logging for the service | |
audit | docker Image details for Audit container of scpc-soothsayer | |||||
imageDetails: image: <docker repository>/soothsayer-audit tag: <string> pullPolicy: Always |
image: Name components may contain lowercase letters, digits and separators. A separator is defined as a period, one or two underscores, or one or more dashes. A name component may not start or end with a separator Tag: valid ASCII and may contain lowercase and uppercase letters, digits, underscores, periods and dashes. A tag name may not start with a period or a dash and may contain a maximum of 128 characters |
N/A | M | Y | repository: docker repository that contains Audit container
image
tag: Image Tag to be used for Audit container pullPolicy: Image pull policy. resources: Used to provide the memory and cpu details serviceName: tags the service details. |
|
resources: memory: 1Gi cpu: 1 |
NA | memory: 1Gi
cpu: 1 |
M | Y |
memory: Requested memory (RAM) for audit container in soothsayer micro-service in Giga Bytes. cpu: Max allocated vCPU for audit container in soothsayer micro-service |
|
serviceName: scpc-audit |
NA | scpc-audit | M | Y | ||
auditInterval: 120 |
Min: 1 Max: 2147483647 | 120 | M | Y | auditInterval: Time interval in seconds that user want to configure | |
logLevel: INFO |
{TRACE, DEBUG, INFO, WARN, ERROR} | INFO | O | Y | Enable desired level of logging for the service | |
configService | Configuration related to Configuration container | |||||
publicConfigIPSpecified: <boolean> |
true/false | false | O | Y | Option to enable/disable Loadbalancer IP configuration statically for OAM interface. | |
publicConfigIP: <IPv4 Address> |
Valid IPV4 address as per RFC 791 | N/A | C | Y | Option to configure static Loadbalancer IP. Configured value will be used only if oamloadbalanceripenabled is configured as "true" | |
staticnodeportenabled: <boolean> |
true/false | false | O | Y | Option to enable/disable configuring static Node Port for OAM interface | |
nodeport: <integer> |
As per kubernetes cluster , by default is 30000 to 32767 | 30002 | C | Y | Option to configure static Node Port for OAM interface. Configured value will be used only if staticnodeportenabledis configured as "true" | |
configServiceNetworkNameEnabled: <boolean> |
true/false | false | O | Y | Option to enable/disable metalLB IP allocation dynamically from the pool for OAM interface. | |
configServiceNetworkName: metallb.universe.tf/address-pool:<string> |
alpha-numeric | oam | C | Y | Annotation to notify metalLB to allocate a IP for OAM interface of SCP. The annotation will be added only if configServiceNetworkName is configured as "true". <TODO> Need few more updates after testing. | |
reverseProxyEnabled |
<boolean> |
true/false | true | M | Y | If enabled then for all the NFs which support reverseProxy,
Reverse proxy (reverseProxySupport = true) will get enabled by default. In case
user wants to turn it off after deployment, then use the APIs provided to
reconfigure reverseProxySupport option.
Note: This flag will set reverseProxy flag as True but other requirements of setting DbSync as Site and RoutingPolicy as Load balance needs to be done by User |
scp-worker: Configuration specific to Worker Micro Service | ||||||
image | docker image details for scp-worker micro service | |||||
image: <docker repository>/scp-worker |
image: Name components may contain lowercase letters, digits and separators. A separator is defined as a period, one or two underscores, or one or more dashes. A name component may not start or end with a separator | N/A | M | Y | docker repository that contains scp-worker micro service image | |
tag: <string> |
Tag: valid ASCII and may contain lowercase and uppercase letters, digits, underscores, periods and dashes. A tag name may not start with a period or a dash and may contain a maximum of 128 characters | N/A | M | Y | Image Tag to be used for scp-worker micro service | |
pullPolicy: Always |
Always | O | Y | Image pull policy. | ||
jaeger | Jaeger service configuration | |||||
address: <fqdn> |
Labels can be letter a-z, number 0-9, hyphen(-). Hyphen cannot be first character. Label combined with dot(.) forms domain | N/A | M | Y | Option to Configure Jaeger Collector FQDN | |
port_value: <integer> |
Min: 0 Max: 65535 | N/A | M | Y | Option to Configure Jaeger Collector Port | |
tracingenable |
<boolean> |
true/false | true | O | Y | Option to enable/disable Jaeger tracing. |
admin | ||||||
enablejaegerbody: <boolean> |
true/false | false | O | Y | Option to enable/disable tracing for full body of all Request/Response messages. The configuration will be added only if tracingenable is configured as "true". | |
retrytimeoutvalue: <integer> |
min: 1
max: 3600 |
5 | O | Y | Option to configure time to wait (in seconds) before making new requests to the a upstream cluster after receiving 503 or 429 response code. This value will only be used if 'retry-after' header is not present in response. | |
service | ||||||
port: staticnodeportenabled: <boolean> |
true/false | false | O | Y | Option to enable/disable configuring static Node Port for Signaling interface | |
nodeport: <integer> |
As per kubernetes cluster , by default is 30000 to 32767 | 30001 | C | Y | Option to configure static Node Port for Signaling interface . Configured value will be used only if staticnodeportenabled configured as "true" | |
networkNameEnabled: <boolean> |
true/false | false | O | Y | Option to enable/disable metalLB IP allocation dynamically from the pool for Signaling interface. | |
networkName: metallb.universe.tf/address-pool:<string> |
alpha-numeric | signaling | C | Y | Annotation to notify metalLB to allocate a IP for Signaling interface of SCP. The annotation will be added only if networkNameEnabled is configured as "true". <TODO> Need few more updates after testing. | |
loglevel |
<string> |
trace/debug/info/warning | warning | O | Y | Option to increase/decrease Logging level of scp-worker micro-service. |
prometheus |
scrape: <boolean> |
true/false | true | O | Y | Option to enable/disable Prometheus metrics scraping |
resources | Initial requested Resource quota for scp-worker micro-service | |||||
memory: 4096Mi |
NA | 4096Mi | M | N | Requested memory (RAM) for scp-worker micro-service in Mega Bytes | |
cpu: 4000m |
NA | 4000m | M | N | Requested CPU for scp-worker micro-service in milliCPU | |
limits | Max allocated Resource quota for scp-worker micro-service | |||||
memory: 4Gi |
NA | 4Gi | M | N | Max allocated memory (RAM) for scp-worker micro-service in Mega Bytes | |
cpu: 4 |
NA | 4 | M | N | Max allocated CPU for scp-worker micro-service in milliCPU | |
minreplicas |
<integer> |
NA | 2 | M | N | Minimum replica count of scp-worker micro-service |
maxreplicas |
<integer> |
Min: 2 Max: 32 | 32 | M | Y | Maximum replica count of scp-worker micro-service |
heapoverloadcontrol: | SCP memory overload control configuration | |||||
refresh_interval: seconds: 0 nanos: 250000000 |
NA | N/A | O | N | Refresh Interval (250 milliseconds) to check memory Overload condition | |
resource_monitors: max_heap_size_bytes: 4294967296 |
NA | N/A | O | N | Max Configured Heap Size for scp-worker micro-service (4GB) | |
actions: stop_accepting_requests: <%age in decimal value> |
Min: 0 Max: 1 | 0.70 | O | Y | Option to configure threshold %age at which SCP will stop accepting new requests. | |
stop_accepting_connections: <%age in decimal value> |
Min: 0 Max: 1 | 0.75 | O | Y | Option to configure threshold %age at which SCP will stop accepting new connections. This %age should be always greater than the %age configured for stop_accepting_requests | |
shrink_heap:<%age in decimal value> |
Min: 0 Max: 1 | 0.70 | O | Y | Option to configure threshold %age at which SCP will start freeing unused memory blocks. This %age should be always minimum of threshold configured for stop_accepting_requests and stop_accepting_connections | |
scpc-pilot: Configuration specific to Pilot Micro Service | ||||||
image | docker image details for scpc-pilot micro service | |||||
image: <docker repository>/scpc-pilot |
image: Name components may contain lowercase letters, digits and separators. A separator is defined as a period, one or two underscores, or one or more dashes. A name component may not start or end with a separator | N/A | M | Y | docker repository that contains scpc-pilot micro service image | |
tag: <string> |
Tag: valid ASCII and may contain lowercase and uppercase letters, digits, underscores, periods and dashes. A tag name may not start with a period or a dash and may contain a maximum of 128 characters | N/A | M | Y | Image Tag to be used for scpc-pilot micro service | |
pullPolicy: Always |
Always | M | Y | Image pull policy. | ||
enableTracing |
<Boolean> |
true/false | True | O | Y | Option to enable/disable request .tracing |
minreplicas |
<integer> |
NA | 2 | M | N | Minimum replica count of scp-pilot micro-service |
maxreplicas |
<integer> |
Min: 2 Max: 32 | 32 | M | Y | Maximum replica count of scp-pilot micro-service |
resources | ||||||
memory: 6Gi |
NA | 6Gi | M | N | Requested memory (RAM) for scp-pilot micro-service in Mega Bytes | |
cpu: 4 |
NA | 4 | M | N | Requested CPU for scp-pilot micro-service in milliCPU | |
logOutputLevel |
"<Module:level>,<Module:level>,...." |
Supported Modules: ads, default, mcp, model, rbac
Supported Level: debug, info, warn, error, fatal, none |
"default:info" | O | Y | Option to increase/decrease scpc-pilot log level |
logStacktraceLevel |
"<Module:level>,<Module:level>,...." |
Supported Modules: ads, default, mcp, model, rbac
Supported Level: debug, info, warn, error, fatal, none |
"default:none" | O | Y | Option to increase/decrease scpc-pilot Stack Trace level |
Note:
By default the sampling rate of jaeger tracing is 1%. If the user wants to increase it then use the below tag at same level as 'resources' under 'scpc-pilot' section.traceSampling: <% user wants sampling rate to be>
Example:
traceSampling: 10