5.1.4 NRF Client Parameters
To configure NRF client parameters, you should configure the following parameters in the values.yaml file. The following table provides details about the NRF client customization parameters in the values.yaml file:
Table 5-5 Configurable Parameters - NRF Client Configuration
| Parameter | Description | Details |
|---|---|---|
| global.deploymentNrfClientService.envNfNamespace | This is a mandatory parameter. Contains the namespace of the services to be monitored by performance service. | Default value: No services are monitored, leave blank.
Note: If no services are to be monitored, envNfNamespace can be left blank. |
| nrf-client.configmapApplicationConfig.profile | This is a mandatory parameter. Contains configuration parameters that goes into nrf-client's config map.
Note: See config-map table for configurable parameters. |
Default Value: Valid profile. Please refer to the ocnwdaf-<version>custom-values.yaml example below. |
| appinfo.infraServices | This is a conditional parameter.
Set this parameter to an empty array if any one of the following conditions are met:
|
NA |
| perf-info.configmapPerformance.prometheus | This is a conditional parameter. Specifies Prometheus server URL.
Note: If no value is specified, OCNWDAF reports "0" load to NRF. |
Default Value: http://prometheus-server.prometheus:5802 |
| global.leaderPodDbName | Contains the name for Leader Pod Database in the global parameters. This database is unique per site. | Range: Valid database name. |
| nrf-client-nfmanagement.dbConfig.leaderPodDbName | Contains the name for Leader Pod Database in the nrf-client-nfmanagement.dbConfig. | Range: Valid database name. |
| global.networkDbName | Contains the network database name in the global parameters. |
Default Value: Valid Release Database name. For Example: nwdafReleaseDB |
| nrf-client-nfmanagement.dbConfig.networkDbName | Contains the network database name in the nrf-client-nfmanagement.dbConfig parameters. | Default Value: networkDbNameRef |
| nrf-client-nfmanagement.enablePDBSupport | Set this to true to enable PDB Support.
Note: If this parameter is set to true, helm test will fail. It is an expected behavior, as the mode is active and on standby, leader pod (nrf-client-management) will be in a ready state and follower will not be in ready state, which will lead to failure in the helm test. |
Range: true or false Default Value: true |
| nrf-client-nfmanagement.replicas | Contains number of NRF-Client replicas. | Default Value: 2 |
Table 5-6 Configurable parameters of NRF Client Configuration in Config-map
| Parameter | Description | Details |
|---|---|---|
| primaryNrfApiRoot | Primary NRF hostname and port Hostname/IP:Port. | Range: Valid API root
Applicable to: OCNWDAF Added, Deprecated, or Updated: Added in Release 1.6.x |
| SecondaryNrfApiRoot | secondary NRF hostname and port Hostname/IP:Port
For example: nrf2-api-gateway.svc:80 |
Range: Valid API root
Applicable to: OCNWDAF Added, Deprecated, or Updated: Added in Release 1.6.x |
| retryAfterTime | When primary NRF is down, this will be the wait Time (in ISO 8601 duration format) after which request to primary NRF will be retried to detect primary NRF's availability.
For example: PT120S |
Range: Valid ISO 8601 duration format
Applicable to: OCNWDAF Added, Deprecated, or Updated: Added in Release 1.6.x |
| nrfClientType | The NfType of the NF registering. This should be set to OCNWDAF. | Default Value: OCNWDAF
Applicable to: OCNWDAF Added, Deprecated, or Updated: Added in Release 1.6.x |
| nrfClientSubscribeTypes | NF Type(s) for which the NF wants to discover and subscribe to the NRF.
Note: Leave blank if OCNWDAF does not require this option. |
Range: AMF, NRF, UDM, SMF, AUSF, NEF, PCF, SMSF, NSSF, UDR, LMF, GMLC, 5G_EIR, SEPP, UPF, N3IWF, AF, UDSF, BSF, CHF, NWDAF
Applicable to: OCNWDAF Added, Deprecated, or Updated: Added in Release 1.6.x |
| appProfiles | NfProfile of OCNWDAF to be registered with NRF. | Range: Valid NF Profile
Applicable to: OCNWDAF Added, Deprecated, or Updated: Added in Release 1.6.x |
| enableF3 | Support for 29.510 Release 15.3. | Range: true or false
Default Value: true Applicable to: OCNWDAF Added, Deprecated, or Updated: Added in Release 1.6.x |
| enableF5 | Support for 29.510 Release 15.5. | Range: true or false
Default Value: true Applicable to: OCNWDAF Added, Deprecated, or Updated: Added in Release 1.6.x |
| renewalTimeBeforeExpiry | Time(seconds) before the subscription validity expires.
For example: 3600 (1hr) |
Range: Time in seconds
Default Value: 3600 Applicable to: OCNWDAF Added, Deprecated, or Updated: Added in Release 1.6.x |
| validityTime | The default validity time (days) for subscriptions.
For example: 30 (30 days) |
Range: Time in days
Default Value: 30 Applicable to: OCNWDAF Added, Deprecated, or Updated: Added in Release 1.6.x |
| enableSubscriptionAutoRenewal | Enable renewal of subscriptions automatically. | Range: true or false
Default Value: true Applicable to: OCNWDAF Added, Deprecated, or Updated: Added in Release 1.6.x |
| acceptAdditionalAttributes | Enable additionalAttributes as part of 29.510 Release 15.5. | Range: true or false
Default Value: false Applicable to: OCNWDAF |
| enableVirtualNrfResolution | Enable virtual NRF session retry by alternate routing service. | Range: true or false
Applicable to: OCNWDAF Added, Deprecated, or Updated: Added in Release 1.9.0 |
| virtualNrfFqdn | Virtual NRF FQDN used to query static list of route. | Default Value: nrf.oracle.com
Applicable to: OCNWDAF Added, Deprecated, or Updated: Added in Release 1.9.0 |
| virtualNrfScheme | Scheme to be used with the virtual FQDN. | Range: http or https
Applicable to: OCNWDAF Added, Deprecated, or Updated: Added in Release 1.9.0 |
| requestTimeoutGracePeriod | An additional grace period where no response is received from the NRF. This additional period shall be added to the requestTimeout value. This will ensure that the egress-gateway shall first timeout, and send an error response to the NRF-client. | Range: Integer value
Applicable to: OCNWDAF Added, Deprecated, or Updated: Added in Release 1.9.0 |
| nrfRetryConfig | Configurations required for the NRF Retry mechanism. | Default Value: Valid configuration. Please refer to the ocnwdaf-<version>custom-values.yaml example below.
Applicable to: OCNWDAF Added, Deprecated, or Updated: Added in Release 1.9.0 |
| healthCheckConfig | Configurations required for the Health check of NRFs. |
Default Value: Valid configuration. Please refer to the ocnwdaf-<version>custom-values.yaml example below. Applicable to: OCNWDAF Added, Deprecated, or Updated: Added in Release 1.9.0 |
| supportedDataSetId | The data-set value to be used in queryParams for NFs autonomous or on-demand discovery. |
Range: SUBSCRIPTION, POLICY, EXPOSURE, APPLICATION. Applicable to: OCNWDAF Added, Deprecated, or Updated: Added in Release 1.7.1 |
Table 5-7 NRF Client Parameters
| Parameter | Description | Detail |
|---|---|---|
| nrfclient.nrf-client.configmapApplicationConfig.profile | This is a mandatory parameter. It contains configuration parameters that goes into nrf-client's config map.
Note: See configmap table for configurable parameters |
Applicable to: OCNWDAF |
| nrfclient.nrf-client | This is a mandatory parameter. Microservice level control if specific microservice need to be disabled. |
Applicable to: OCNWDAF |
| config-server | This is a mandatory parameter. Details of Config-server microservice. |
Applicable to: OCNWDAF |
| config-server.enabled | This is a mandatory parameter. Engineering-parameter |
Applicable to: OCNWDAF |
| config-server.envMysqlDatabase | This is a mandatory parameter. It specifies MySQL Config Server Database Name. | Default Value: Provisional DB name
Applicable to: OCNWDAF |
| config-server.dbConfig.dbEngine | This is a mandatory parameter. Database hook Configuration | Default Value: Database Engine name
Applicable to: OCNWDAF |
| appinfo.enabled | This is a mandatory parameter. Use to enable or disable appinfo microservices. |
Range: true or false Default Value: true Applicable to: OCNWDAF |
| appinfo.debug |
This is a mandatory parameter. Represent appinfo image name. Note: Registry is taken from global section:
|
Range: true or false Default Value: false Applicable to: OCNWDAF |
| serviceMeshCheck | This is a mandatory parameter. This flag needs to be set to true if a Service Mesh is present in the environment where OCNWDAF is deployed.
|
Range: True or False.
Default value: False Applicable to: OCNWDAF |
| istioSidecarQuitUrl |
This is a mandatory parameter. It needs to be set with correct URL format http:// 127.0.0.1:<istio management port>/quitquitquit" if Service Mesh is present in the environment where OCNWDAF is deployed. |
Default value: http:// 127.0.0.1:15000/ quitquitquit"
Applicable to: OCNWDAF |
| istioSidecarReadyUrl |
This is a mandatory parameter. It needs to be set with correct URL format http:// 127.0.0.1:<istio management port>/ready" if Service Mesh is present in the environment where OCNWDAF is deployed. |
Default value: http:// 127.0.0.1:<istio management port>/ready"
Applicable to: OCNWDAF |
Table 5-8 NRF Client NF Discovery Parameters
| Parameter | Description | Details |
|---|---|---|
| nrf-client.nrf-client-nfdiscovery | This is a mandatory parameter. Contains deployment specific configuration for Nrf-Client Discovery Microservice |
Applicable to: OCNWDAF |
| configmapApplicationConfig | This is a mandatory parameter. |
Applicable to: OCNWDAF |
| cpuRequest | This is a mandatory parameter. | Default Value: 2
Applicable to: OCNWDAF |
| cpuLimit | This is a mandatory parameter. | Default Value: 2
Applicable to: OCNWDAF |
| memoryRequest | This is a mandatory parameter. | Default Value: 1Gi
Applicable to: OCNWDAF |
| memoryLimit | This is a mandatory parameter. | Default Value: 1Gi
Applicable to: OCNWDAF |
| minReplicas | This is a mandatory parameter. | Default Value: 1
Applicable to: OCNWDAF |
| maxReplicas | This is a mandatory parameter. | Default Value: 5
Applicable to: OCNWDAF |
| averageCpuUtil | This is a mandatory parameter. | Default Value: 80
Applicable to: OCNWDAF |
| commonCfgServer.configServerSvcName | This is a mandatory parameter. | Default Value: nsconfig
Applicable to: OCNWDAF |
| commonCfgServer.port | This is a mandatory parameter. | Default Value: 8080
Applicable to: OCNWDAF |
| commonCfgClient.enabled | This is a mandatory parameter. | Default Value: *cfgClientEnabled
Applicable to: OCNWDAF |
| nrf-client.nrf-client-nfdiscovery.dbConfig | This is a mandatory parameter. Contains database credentials of Nrf-Client Discovery parameters. | Default Value: Valid database host (Example: ocnwdaf-nsdb.db)
Applicable to: OCNWDAF |
| dbConfig.dbHost | This is a mandatory parameter. DB credential of nrf-client-nfdiscovery parameters. |
Applicable to: OCNWDAF |
| dbConfig.dbPort | This is a mandatory parameter. Databse credential of nrf-client-nfdiscovery parameters. | Default Value: 3306
Applicable to: OCNWDAF |
| dbConfig.secretName | This is a mandatory parameter.Contains name of the secret. | Default Value: Provisional DB secret
Applicable to: OCNWDAF |
| dbConfig.dbName | This is a mandatory parameter. Contains name of the database. | Default Value: Provisional DB name
Applicable to: OCNWDAF |
| dbConfig.dbUNameLiteral | This is a mandatory parameter. Contains the name of the Key configured for "DB Username" in Secret with following name: "<dbConfig.secretName>". |
Applicable to: OCNWDAF |
| dbConfig.dbPwdLiteral | This is a mandatory parameter. Contains the name of the Key configured for "DB Password" in Secret with following name: "<dbConfig.secretName>". |
Applicable to: OCNWDAF |
| dbConfig.dbEngine | This is a mandatory parameter. Database engine name. | Default Value: NDBCLUSTER
Applicable to: OCNWDAF |
| serviceMeshCheck | This is a mandatory parameter. This flag needs to be set to true if a Service Mesh is present in the environment where OCNWDAF is deployed.
|
Range: True or False.
Default value: False Applicable to: OCNWDAF |
| istioSidecarQuitUrl |
This is a mandatory parameter. It needs to be set with correct URL format http:// 127.0.0.1:<istio management port>/quitquitquit" if Service Mesh is present in the environment where OCNWDAF is deployed. |
Default value: http:// 127.0.0.1:15000/ quitquitquit"
Applicable to: OCNWDAF |
| istioSidecarReadyUrl |
This is a mandatory parameter. It needs to be set with correct URL format http:// 127.0.0.1:<istio management port>/ready" if Service Mesh is present in the environment where OCNWDAF is deployed. |
Default value: http:// 127.0.0.1:<istio management port>/ready"
Applicable to: OCNWDAF |
Table 5-9 NRF Client NF Management Parameters
| Parameter | Description | Details |
|---|---|---|
| nrf-client-nfmanagement | This is a mandatory parameter. Contains deployment specific configuration for nrf-client-nfmanagement microservice |
Applicable to: OCNWDAF |
| configmapApplicationConfig | This is a mandatory parameter. |
Applicable to: OCNWDAF |
| replicas | This is a mandatory parameter. | Default Value: 1
Applicable to: OCNWDAF |
| cpuRequest | This is a mandatory parameter. | Default Value: 1
Applicable to: OCNWDAF |
| cpuLimit | This is a mandatory parameter. | Default Value: 1
Applicable to: OCNWDAF |
| memoryRequest | This is a mandatory parameter. | Default Value: 1Gi
Applicable to: OCNWDAF |
| memoryLimit | This is a mandatory parameter. | Default Value: 1Gi
Applicable to: OCNWDAF |
| commonCfgServer.configServerSvcName | This is a mandatory parameter. | Default Value: nsconfig
Applicable to: OCNWDAF |
| commonCfgServer.port | This is a mandatory parameter. | Default Value: 8080
Applicable to: OCNWDAF |
| commonCfgClient.enabled | This is a mandatory parameter. | Default Value: *cfgClientEnabled
Applicable to: OCNWDAF |
| dbConfig | This is a mandatory parameter. Contains database credentials of Nrf-Client Discovery parameters, | Default Value: Valid dbConfig set of properties. Please refer to the ocnwdaf-<version>custom-values.yaml example.
Applicable to: OCNWDAF |
| dbConfig.dbHost | This is a mandatory parameter. DB credential of nrf-client-nfdiscovery parameters. | Default Value: Valid database host (Example: ocnwdaf-nsdb.db)
Applicable to: OCNWDAF |
| dbConfig.dbPort | This is a mandatory parameter. Database credential of nrf-client-nfdiscovery parameters. | Default Value: 3306
Applicable to: OCNWDAF |
| dbConfig.secretName | This is a mandatory parameter. Contains name of the secret. | Default Value: Provisional DB secret
Applicable to: OCNWDAF |
| dbConfig.dbName | This is a mandatory parameter. Contains name of the database. | Default Value: Provisional DB name
Applicable to: OCNWDAF |
| dbConfig.dbUNameLiteral | This is a mandatory parameter. Contains the name of the Key configured for "DB Username" in Secret with following name: "<dbConfig.secretName>". |
Applicable to: OCNWDAF |
| dbConfig.dbPwdLiteral | This is a mandatory parameter. Contains the name of the Key configured for "DB Password" in Secret with following name: "<dbConfig.secretName>". |
Applicable to: OCNWDAF |
| bConfig.dbEngine | This is a mandatory parameter. Database engine name. | Default Value: NDBCLUSTER
Applicable to: OCNWDAF |
| serviceMeshCheck | This is a mandatory parameter. This flag needs to be set to true if a Service Mesh is present in the environment where OCNWDAF is deployed.
|
Range: True or False.
Default value: False Applicable to: OCNWDAF |
| istioSidecarQuitUrl |
This is a mandatory parameter. It needs to be set with correct URL format http:// 127.0.0.1:<istio management port>/quitquitquit" if Service Mesh is present in the environment where OCNWDAF is deployed. |
Default value: http:// 127.0.0.1:15000/ quitquitquit"
Applicable to: OCNWDAF |
| istioSidecarReadyUrl |
This is a mandatory parameter. It needs to be set with correct URL format http:// 127.0.0.1:<istio management port>/ready" if Service Mesh is present in the environment where OCNWDAF is deployed. |
Default value: http:// 127.0.0.1:<istio management port>/ready"
Applicable to: OCNWDAF |
# Please add below in global section of custom values.yaml of NF deployment.
global:
# The value of nfName is specified as ocnf which is stands of Oracle NF.
# nfName is used as a prefix in serivce names of nrf client's service and other services it connects to for eg appinfo, config server etc.
nfName: ocnf
# Global control to enable/disable deployment of NF Discovery service, enable it if on demand discovery of NF is required.
nrfClientNfDiscoveryEnable: true
# Global control to enable/disable deployment of NF Management service.
nrfClientNfManagementEnable: true
# Global Parameter to enable/disable DEBUG Container tool
extraContainers: "DISABLED"
extraContainersTpl: |
- command:
- /bin/sleep
- infinity
image: {{ printf "%s/%s:%s" (include "getdockerregistry.name" .) "ocdebugtool/ocdebug-tools" "22.3.1" }}
imagePullPolicy: Always
name: {{ printf "%s-tools-%s" (include "getprefix" .) (include "getsuffix" .) | trunc 63 | trimPrefix "-" | trimSuffix "-" }}
resources:
requests:
ephemeral-storage: "2Gi"
cpu: "0.5"
memory: "1Gi"
limits:
ephemeral-storage: "4Gi"
cpu: "1"
memory: "2Gi"
securityContext:
allowPrivilegeEscalation: true
capabilities:
drop:
- ALL
add:
- NET_RAW
- NET_ADMIN
readOnlyRootFilesystem: false
runAsUser: 7000
# Global parameter to mention if alternate-route service is available(deployed) or not.
alternateRouteServiceEnable: false
altServiceHTTP2Enabled: true
altServiceReqTimeout: 3000
altServiceLookupInterval: 3000
# Metrics name for OSO
cncMetricsName: cnc-metrics
# Jaeger tracing host
envJaegerAgentHost: ''
# Jaeger tracing port
envJaegerAgentPort: 6831
# Provide value for NodePort
nrfClientNodePort: 0
# Docker registry from which config-server images, nrf-client images will be pulled
#dockerRegistry: ocnrf-registry.us.oracle.com:5000
dockerRegistry: cgbu-cnc-comsvc-release-docker.dockerhub-phx.oci.oraclecorp.com
# Readiness-Detector image details with tag
#Vendor name
vendor: "Oracle"
# application name
applicationName: "nrf-client"
# prefix for Metrics
metricPrefix: &metricPrefix ""
# suffix for Metrics
metricSuffix: &metricSuffix ""
# Common service port
nrfClientCommonServicePort: '9090'
# Prometheus configuration
prometheusScrapingConfig:
enabled: false
path: "/actuator/prometheus"
nfInstanceId: 'fe7d992b-0541-4c7d-ab84-c6d70b1b01b1'
configServerEnable: true
# Config-Server Service. Shall be used as {{ ReleaseName }}-configServerFullNameOverride
configServerFullNameOverride: ocpm-config
# Mysql Host
envMysqlHost: &mySqlHostRef 10.233.5.39 # Changed
envMysqlSecondaryHost: ''
# Mysql Port
envMysqlPort: &mySqlPortRef '3306'
envMysqlSecondaryPort: ''
# Mysql Secret Name
dbCredSecretName: &dbCredSecretNameRef 'ocnf-db-pass'
# Mysql Config Server Databse Name
# Global Control to disable appinfo service
appinfoServiceEnable: true
# Global Control to disable performance info service
performanceServiceEnable: true
egressGatewayHost: ocn-nrf-simulator-service.ocnwdaf-ns # Changed
# Deployment Specific configuration
deploymentNrfClientService:
# Services to be monitored by performance service
# If no services are to be monitored, envNfNamespace,envNfType,envConsumeSvcName can be left blank
envNfNamespace: ''
envNfType: ''
envConsumeSvcName: ''
# Egress gateway Host. Shall be used as {{ ReleaseName }}-envEgressGatewayFullnameOverride
envEgressGatewayFullnameOverride: egressgateway
# Egress gateway Port
envEgressGatewayPort: "8080" # Changed
# Callback URI to receive Notifications from NRF
nfApiRoot: http://ocnrf-ingressgateway.ocnrf:80
nodeSelectorEnabled: false
nodeSelectorKey: zone
nodeSelectorValue: app
# K8s Secret containing Database/user/password for DB Hooks for creating tables
privilegedDbCredSecretName: &privDbCredSecretNameRef 'ocnf-privileged-db-pass'
releaseDbName: &dbNameRef 'ocnf_config_server'
networkDbName: &networkDbNameRef 'nrfNetworkDB'
# Database Name for LeaderPod
# Every NF has to configure a different LeaderPod for each site
# so that when the sites are geo-redundant, the entries in the table do not crash.
leaderPodDbName: &leaderPodDbRef 'leaderPodDb'
# Service Account Name
serviceAccountName: ""
# Application name that is added in logs as labels
app_name: "nrfclient"
supportedVersions:
- autoscaling/v2
- autoscaling/v2beta2
- autoscaling/v2beta1
- autoscaling/v1
- policy/v1
- policy/v1beta1
#Resource Values for Hook Jobs
hookJobResources:
limits:
cpu: 2
memory: 2Gi
requests:
cpu: 1
memory: 1Gi
# Details of perf-info microservices
perf-info:
image: occnp/oc-perf-info
imageTag: 22.4.1 # Changed from 22.3.2
# Service namespace for perf-info
service_namespace: ocnrf
# Replicas for perf Info
replicas: 2
# Pull Policy - Possible Values are:- Always, IfNotPresent, Never
imagepullPolicy: IfNotPresent
service:
type: ClusterIP
port: 5905
resources: {}
# We usually recommend not to specify default resources and to leave this as a conscious
# choice for the user. This also increases chances charts run on environments with little
# resources, such as Minikube. If you do want to specify resources, uncomment the following
# lines, adjust them as necessary, and remove the curly braces after 'resources:'.
# limits:
# cpu: 100m
# memory: 128Mi
# requests:
# cpu: 100m
# memory: 128Mi
nodeSelector: {}
tolerations: []
affinity: {}
commonCfgClient:
enabled: false
commonCfgServer:
# Do not comment this line in case you want to deploy both config-server and APIGW in same namespace simultaneously
# Otherwise comment this line and use 'host'
configServerSvcName: 'common-config-server'
host: 'common-config-server'
port: '80'
pollingInterval: 5000
dbConfig:
dbHost: *mySqlHostRef
dbPort: *mySqlPortRef
secretName: *dbCredSecretNameRef
dbName: *dbNameRef
# Name of the Key configured for "DB Username" in Secret with following name: "<dbConfig.secretName>"
dbUNameLiteral: mysql-username
# Name of the Key configured for "DB Password" in Secret with following name: "<dbConfig.secretName>"
dbPwdLiteral: mysql-password
ingress:
enabled: false
configmapPerformance:
prometheus: http://prometheus-server.prometheus:5802
# Microservice level control if specific microservice need to be disabled
nrf-client:
# This config map is for providing inputs to NRF-Client
configmapApplicationConfig:
&configRef
# Config-map to provide inputs to Nrf-Client
# primaryNrfApiRoot - Primary NRF Hostname and Port
# SecondaryNrfApiRoot - Secondary NRF Hostname and Port
# nrfRouteList - Can be used to specify routes with priority instead of primary and secondary NRF API root
# useNrfRouteList - Can be used to specify whether nrfRouteList should be used instead of primary and secondary NRF API root
# nrfScheme - Scheme of primary and secondary NRF http or https
# retryAfterTime - Default downtime(in Duration) of an NRF detected to be unavailable.
# nrfClientType - The NfType of the NF registering
# nrfClientSubscribeTypes - the NFType for which the NF wants to subscribe to the NRF.
# appProfiles - The NfProfile of the NF to be registered with NRF.
# enableF3 - Support for 29.510 Release 15.3
# enableF5 - Support for 29.510 Release 15.5
# registrationRetryInterval - Retry Interval after a failed autonomous registration request
# subscriptionRetryInterval - Retry Interval after a failed autonomous subscription request
# discoveryRetryInterval - Retry Interval after a failed autonomous discovery request
# discoveryRefreshInterval - The default interval after which autonomous discovery requests will be resent
# discoveryDurationBeforeExpiry - This value specifies the rate at which the NF shall resend discovery requests to NRF. The value shall be configured in terms of percentage(1-100). if the discovery ValidityPeriod is 60s, then the discovery requests shall be sent at discoveryDurationBeforeExpiry * 60/100
# renewalTimeBeforeExpiry - Time Period(seconds) before the Subscription Validity time expires.
# validityTime - The default validity time(days) for subscriptions.
# enableSubscriptionAutoRenewal - Enable Renewal of Subscriptions automatically.
# nfHeartbeatRate - This value specifies the rate at which the NF shall heartbeat with the NRF. The value shall be configured in terms of percentage(1-100). if the heartbeatTimer is 60s, then the NF shall heartbeat at nfHeartBeatRate * 60/100
# acceptAdditionalAttributes - Enable additionalAttributes as part of 29.510 Release 15.5
# retryForCongestion - The duration(seconds) after which nrf-client should retry to a NRF server found to be congested.
# supportedDataSetId - The data-set value to be used in queryParams for NFs autonomous/on-demand discovery. e.g. data-set=POLICY
# enableVirtualNrfResolution- enable virtual NRF session retry by Alternate routing service
# virtualNrfFqdn - virtual NRF FQDN used to query static list of route
# virtualNrfScheme - http or https
# useAlternateScpOnAlternateRouting - enable use SCP on alternate routing service
# subscriberNotificationRetry - number of health status notification retries to a subscriber
# requestTimeoutGracePeriod - grace period(seconds) for timeout period until no response is received from NRF
# nrfRetryConfig - configurations required for the NRF Retry mechanism
#serviceRequestType - type of service operation for which configuration is applicable
#primaryNRFRetryCount - number of retries for primary instance
#nonPrimaryNRFRetryCount - number of retries for non-primary instance
#alternateNRFRetriesCount - number of retry attempts
#errorReasonsForFailure - httpStatusCode or error conditions for which retry shall be attempted
#requestTimeout - timeout period(seconds) where no response is received from NRF
#gatewayErrorCodes - httpStatusCode sent by gateway for which retry shall be attempted
# healthCheckConfig - configurations required for the Health check of NRFs
#healthCheckCount - consecutive success/failure operation count (default -1 means disabled)
#healthCheckInterval - interval duration in seconds to perform health check
#requestTimeout - timeout period(seconds) where no response is received from NRF
#errorReasonsForFailure - httpStatusCode or error conditions for which the NRF is considered as unhealthy
#gatewayErrorCodes - httpStatusCode sent by gateway for the NRF shall be considered unhealthy
#enableDiscoveryRefresh - Feature flag to enable Automatic Discovery Refresh
#enableRediscoveryIfNoProdNFs - Feature flag to enable rediscovery when No Producer NFs are available
#offStatesForRediscoveryIfNoProdNFs - Comma separated value for states to consider Producer NFs as not available
#appProfiles=[{"nfInstanceId":"fe7d992b-0541-4c7d-ab84-c6d70b1b01b1","nfType":"NWDAF","nfStatus":"REGISTERED","plmnList":null,"nsiList":null,"fqdn":"pcf.oracle.com","interPlmnFqdn":null,"ipv4Addresses":null,"ipv6Addresses":null,"priority":null,"capacity":null,"load":null,"locality":null,"udrInfo":null,"udmInfo":null,"ausfInfo":null,"amfInfo":null,"smfInfo":null,"upfInfo":null,"pcfInfo":null,"bsfInfo":null,"customInfo":null,"recoveryTime":null,"nfServices":[{"serviceInstanceId":"03063893-cf9e-4f7a-9827-067f6fa9dd01","serviceName":"nnrf-nfmanagement","versions":[{"apiVersionInUri":"v1","apiFullVersion":"1.2.2","expiry":"2019-08-03T18:55:08.871+0000"}],"scheme":"http","nfServiceStatus":"REGISTERED","fqdn":"nrf.oracle.com","interPlmnFqdn":null,"apiPrefix":"bsf-service","defaultNotificationSubscriptions":null,"allowedPlmns":null,"allowedNfTypes":["PCF","NEF", "NWDAF"],"allowedNfDomains":null,"allowedNssais":null,"priority":null,"capacity":null,"load":null,"recoveryTime":null,"supportedFeatures":null}],"sNssais":null}]
profile: |-
[appcfg]
primaryNrfApiRoot=ocn-nrf-simulator-service.ocnwdaf-ns:8080
secondaryNrfApiRoot=
nrfRouteList=[{"nrfApi":"nrfDeployName-nrf-1:8080","scheme":"http","weight":100,"priority":1}]
useNrfRouteList=false
nrfScheme=http
retryAfterTime=PT120S
nrfClientType=NRF
nrfClientSubscribeTypes=PCF
appProfiles=[{"nfInstanceId":"fe7d992b-0541-4c7d-ab84-c6d70b1b01b1","nfType":"NWDAF","nfStatus":"REGISTERED","plmnList":null,"nsiList":null,"fqdn":"ocn-nwdaf-communication","interPlmnFqdn":null,"ipv4Addresses":null,"ipv6Addresses":null,"priority":null,"capacity":null,"load":null,"locality":null,"udrInfo":null,"udmInfo":null,"ausfInfo":null,"amfInfo":null,"smfInfo":null,"upfInfo":null,"pcfInfo":null,"bsfInfo":null,"customInfo":null,"recoveryTime":null,"nfServices":[{"serviceInstanceId":"03063893-cf9e-4f7a-9827-067f6fa9dd01","serviceName":"nnrf-nfmanagement","versions":[{"apiVersionInUri":"v1","apiFullVersion":"1.2.2","expiry":"2019-08-03T18:55:08.871+0000"}],"scheme":"http","nfServiceStatus":"REGISTERED","fqdn":"nrf.oracle.com","interPlmnFqdn":null,"apiPrefix":"bsf-service","defaultNotificationSubscriptions":null,"allowedPlmns":null,"allowedNfTypes":["PCF","NEF", "NWDAF"],"allowedNfDomains":null,"allowedNssais":null,"priority":null,"capacity":null,"load":null,"recoveryTime":null,"supportedFeatures":null}],"sNssais":null}]
enableF3=true
enableF5=true
registrationRetryInterval=5000
subscriptionRetryInterval=5000
enableDiscoveryRefresh=false
discoveryRetryInterval=5000
discoveryRefreshInterval=10
discoveryDurationBeforeExpiry=90
renewalTimeBeforeExpiry=3600
enableRediscoveryIfNoProdNFs=false
offStatesForRediscoveryIfNoProdNFs=SUSPENDED,UNDISCOVERABLE,DEREGISTERED
validityTime=30
enableSubscriptionAutoRenewal=true
nfHeartbeatRate=80
acceptAdditionalAttributes=true
retryForCongestion=5
supportedDataSetId=
enableVirtualNrfResolution=false
virtualNrfFqdn=nrf.oracle.com
virtualNrfScheme=http
useAlternateScpOnAlternateRouting=
subscriberNotificationRetry=2
requestTimeoutGracePeriod=2
enableDiscoveryRefresh=false
nrfRetryConfig=[{"serviceRequestType":"ALL_REQUESTS","primaryNRFRetryCount":1,"nonPrimaryNRFRetryCount":1,"alternateNRFRetryCount":-1,"errorReasonsForFailure":["503","504","500","SocketTimeoutException","JsonProcessingException","UnknownHostException","NoRouteToHostException","IOException"],"gatewayErrorCodes":["503"],"requestTimeout":10},{"serviceRequestType":"AUTONOMOUS_NFREGISTER","primaryNRFRetryCount":1,"nonPrimaryNRFRetryCount":1,"alternateNRFRetryCount":-1,"errorReasonsForFailure":["503","504","500","SocketTimeoutException","JsonProcessingException","UnknownHostException","NoRouteToHostException","IOException"],"gatewayErrorCodes":["503"],"requestTimeout":10}]
healthCheckConfig={"healthCheckCount":-1,"healthCheckInterval":5,"requestTimeout":10,"errorReasonsForFailure":["503","504","500","SocketTimeoutException","IOException"],"gatewayErrorCodes":["503", "504", "500"]}
# Deployment specific configuration for Nrf-Client Discovery Microservice
nrf-client-nfdiscovery:
global:
#ephemeralStorage value in MB. Value 0 means ephemeral-storage will not be set during deployment.
logStorage: 0 #default calculated value 70
crictlStorage: 0 #default calculated value 1
ephemeralStorageLimit: 0 #default calculated value 1024
maxUnavailable: "25%"
configmapApplicationConfig: *configRef
# NRF Client Microservice image name
image: nrf-client
# NRF Client Microservice image tag
imageTag: '22.3.3'
envJaegerSamplerParam: '1'
envJaegerSamplerType: ratelimiting
envJaegerServiceName: nrf-client-nfdiscovery
# Resource Details
cpuRequest: 2
cpuLimit: 2
memoryRequest: 1Gi
memoryLimit: 1Gi
# Min replicas to scale to maintain an average CPU utilization
minReplicas: 1
# Max replicas to scale to maintain an average CPU utilization
maxReplicas: 2
averageCpuUtil: 80
type: ClusterIP
# Set to true if the discovery results should be cached.
cacheDiscoveryResults: false
# Discovery Service Port
envDiscoveryServicePort: 5910
# Management Service Port
envManagementServicePort: 5910
#Restart Policy for hooks
hookRestartPolicy: Never
# prefix for Metrics
metricPrefix: *metricPrefix
# suffix for Metrics
metricSuffix: *metricSuffix
#The sidecar (istio url) when deployed in serviceMesh
# Default value: http://127.0.0.1:15000/quitquitquit
istioSidecarQuitUrl: ""
# Default value: http://127.0.0.1:15000/ready
istioSidecarReadyUrl: ""
# Flag to enable service Mesh
serviceMeshCheck: false
# Flag to switch between "HELM" based or "REST" based nfProfile configuration
nfProfileConfigMode: "HELM"
# Flag to enable/ disable the feature
# Allowed Values: DISABLED, ENABLED, USE_GLOBAL_VALUE
extraContainers: USE_GLOBAL_VALUE
commonCfgClient:
enabled: false
commonCfgServer:
# Do not comment this line in case you want to deploy both config-server and APIGW in same namespace simultaneously
# Otherwise comment this line and use 'host'
configServerSvcName: 'common-config-server'
host: 'common-config-server'
port: '80'
pollingInterval: 5000
nfProfileUri: 'nf/nf-common-component/v1/nrf-client-nfmanagement/nfProfileList'
dbConfig:
dbHost: *mySqlHostRef
dbPort: *mySqlPortRef
secretName: *privDbCredSecretNameRef
dbName: *dbNameRef
# Name of the Key configured for "DB Username" in Secret with following name: "<dbConfig.secretName>"
dbUNameLiteral: mysql-username
# Name of the Key configured for "DB Password" in Secret with following name: "<dbConfig.secretName>"
dbPwdLiteral: mysql-password
# Deployment specific configuration for Nrf-Client Management Microservice
nrf-client-nfmanagement:
global:
#ephemeralStorage value in MB. Value 0 means ephemeral-storage will not be set during deployment.
logStorage: 0 #default calculated value 70
crictlStorage: 0 #default calculated value 1
ephemeralStorageLimit: 0 #default calculated value 1024
minAvailable: 1
configmapApplicationConfig: *configRef
# NRF Client Microservice image name
image: nrf-client
# NRF Client Microservice image tag
imageTag: '22.3.3'
envJaegerSamplerParam: '1'
envJaegerSamplerType: ratelimiting
envJaegerServiceName: nrf-client-nfmanagement
enablePDBSupport: false
# Resource Details
replicas: 1
cpuRequest: 1
cpuLimit: 1
memoryRequest: 1Gi
memoryLimit: 1Gi
type: ClusterIP
#Restart Policy for hooks
hookRestartPolicy: Never
# prefix for Metrics
metricPrefix: *metricPrefix
# suffix for Metrics
metricSuffix: *metricSuffix
#The sidecar (istio url) when deployed in serviceMesh
# Default value: http://127.0.0.1:15000/quitquitquit
istioSidecarQuitUrl: ""
# Default value: http://127.0.0.1:15000/ready
istioSidecarReadyUrl: ""
# Flag to enable service Mesh
serviceMeshCheck: false
# Flag to switch between "HELM" based or "REST" based nfProfile configuration
nfProfileConfigMode: "HELM"
# Flag to switch between "HELM" based or "REST" based nrfRoute configuration
nrfRouteConfigMode: "HELM"
# Flag to enable/ disable the feature
# Allowed Values: DISABLED, ENABLED, USE_GLOBAL_VALUE
extraContainers: USE_GLOBAL_VALUE
commonCfgClient:
enabled: false
commonCfgServer:
# Do not comment this line in case you want to deploy both config-server and APIGW in same namespace simultaneously
# Otherwise comment this line and use 'host'
configServerSvcName: 'common-config-server'
host: 'common-config-server'
port: '80'
pollingInterval: 5000
dbConfig:
dbHost: *mySqlHostRef
dbPort: *mySqlPortRef
secretName: *privDbCredSecretNameRef
dbName: *dbNameRef
networkDbName: *networkDbNameRef
# Database for leaderPod selection
leaderPodDbName: *leaderPodDbRef
# Name of the Key configured for "DB Username" in Secret with following name: "<dbConfig.secretName>"
dbUNameLiteral: mysql-username
# Name of the Key configured for "DB Password" in Secret with following name: "<dbConfig.secretName>"
dbPwdLiteral: mysql-password
# Details of Config-server microservice
config-server:
enabled: true
image: occnp/oc-config-server
imageTag: 22.3.2
fullNameOverride: "config-server"
envJaegerServiceName: pcf-config
# This is the NfInstanceId of NF that will get deployed. This shall be used in the profile being registered.
nfInstanceId: 'fe7d992b-0541-4c7d-ab84-c6d70b1b01b1'
# Mysql Config Server Databse Name
envMysqlDatabase: ocnf_config_server
# Replicas for Config server - This is exact value without scaling
replicas: 1
nodeSelectorEnabled: false
nodeSelectorKey: zone
nodeSelectorValue: app
# Resource details
resources:
limits:
cpu: 1
memory: 1Gi
requests:
cpu: 0.5
memory: 1Gi
servicePcfConfig:
type: NodePort
# Details of appinfo microservices
appinfo:
enabled: true
image: occnp/oc-app-info
imageTag: 22.3.2
pullPolicy: IfNotPresent
# Replicas for Appinfo - This is exact value without scaling
replicas: 1
# Set Log Level to DEBUG. If false, Log Level shall be INFO
debug: true
serviceAccountName: ''
commonCfgClient:
enabled: false
commonCfgServer:
# Do not comment this line in case you want to deploy both config-server and APIGW in same namespace simultaneously
# Otherwise comment this line and use 'host'
configServerSvcName: 'common-config-server'
host: 'common-config-server'
port: '80'
pollingInterval: 5000
dbConfig:
dbHost: *mySqlHostRef
dbPort: *mySqlPortRef
secretName: *dbCredSecretNameRef
dbName: *dbNameRef
# Name of the Key configured for "DB Username" in Secret with following name: "<dbConfig.secretName>"
dbUNameLiteral: mysql-username
# Name of the Key configured for "DB Password" in Secret with following name: "<dbConfig.secretName>"
dbPwdLiteral: mysql-password
# Service to be monitored by appinfo
# nFType in core_services must consist of nfType used in nrfclient profile.
#Examples-1 NRF with all services listed
#core_services:
# nrf:
# - "ocnrf-nfRegistration"
# - "ocnrf-nfSubscription"
#Example-2 NRF without listing any services
core_services: {}
# Infrastructure services
# If using occne 1.4 or if you don't want to monitor infra services such as db-monitor service then the below mentioned
# attribute 'infraServices' should be uncommented and empty array should be passed as already mentioned.
# If infraServices is not set, by default appinfo shall monitor status of db-monitor-svc and db-replication-svc.
#infraServices: []