3 OCNWDAF Customization

Customizing OCNWDAF

This section describes how to customize OCNWDAF.

The OCNWDAF deployment is customized by overriding the default values of various configurable parameters in the values.yaml file.

To customize the values yaml file, perform the following steps:

  1. Extract the Custom_Templates file available in the extracted documentation release package to get the following files that are used to customize the deployment parameters during installation:
    1. values.yaml: This file is used to customize the OCNWDAF deployment with ATS.
    2. nwdafAlertrules.yaml: This file is used for Prometheus.

    For more information about how to download the package from My Oracle Support, see the Installation Package Download section.

  2. Customize the ocn-nwdaf-helmChart/helmChart/values.yaml file.
  3. Save the updated ocn-nwdaf-helmChart/helmChart/values.yaml file in the Helm chart directory.

Note:

  • All parameters mentioned as mandatory must be present in ocn-nwdaf-helmChart/helmChart/values.yaml file and configured before the deployment.
  • All fixed value parameters listed must be present in the ocn-nwdaf-helmChart/helmChart/values.yaml file with the exact values as specified in this section.
  • The properties in the values.yaml of all the sub charts are configurable, but it is not advisable to update the properties. Update the properties of the sub charts only when there is a specific customer requirement.

3.1 Configurable Parameters

This section lists all the OCNWDAF configurable parameters.

3.1.1 Global Parameters

Table 3-1 Global Paramaters

Parameter Description Details
global.test.nfName

This is a mandatory parameter.

The value of nfName is specified as ocnwdaf. The nfName is used as a prefix in the test container name.

Default value: ocnwdaf

global.test.image.name

This is a mandatory parameter.

Name of the test image.

Default value: nf_test

global.test.image.tag

This is a mandatory parameter.

Name of the test image tag.

Default value: 23.4.0

global.test.config.logLevel

This is an optional parameter.

Helm test hook-related configurations. It indicates the logging level of the test container.

Range: INFO, DEBUG, FATAL, ERROR, WARN

Default value: INFO

global.test.config.timeout

This is an optional parameter.

Helm test hook-related configurations. Beyond this duration, helm test is considered as a failure.

Default value: 240
global.test.complianceEnable

This is an optional parameter.

Helm test hook-related configurations. Sets the test container as compliant.

Range: true, false

Default value: true

global.test.resources

This is a mandatory parameter.

It specifies the resources to which the test pod needs access.

Default value:

- deployments/v1

- configmaps/v1

- serviceaccounts/v1

-poddisruptionbudgets/v1

- roles/v1

- statefulsets/v1

- services/v1

- rolebindings/v1

Example of the configurations that should be included under the global section of the oc-nwdaf-custom-values.yaml file.

global:
  test:
    nfName: ocnwdaf
    image:
      name: nf_test
      tag: 23.4.0
    config:
      logLevel: INFO
      timeout: 240
    complianceEnable: true
    resources:
      - deployments/v1
      - configmaps/v1
      - serviceaccounts/v1
      - poddisruptionbudgets/v1
      - roles/v1
      - statefulsets/v1
      - services/v1
      - rolebindings/v1

Istio Sidecar Injection Parameters

These parameters are used to enable Service Mesh support:

Note:

The label of the namespace takes precedence over the configured injection parameter. If Service Mesh has to be disabled, ensure the injection parameter is not configured in the namespace or it is disabled.

Table 3-2 Istio Sidecar Paramaters

Parameter Description Details
injection This parameter is used to enable Service Mesh support. Range: true, false

Default value: False

readinessCheck Flag to enable or disable the feature. If disabled then there is no need to configure. Range: true, false

Default value: False

3.1.2 Microservice Parameters

For each microservice, there is an option to specify the following parameters in its own values.yaml file to perform the readinessProbe.

Table 3-3 Microservice Parameter

Parameter Description Details
readinessProbe.initialDelaySeconds

This is an optional parameter.

Specifies the configurable wait time before performing the first readiness probe by Kubelet.

Default value: 20
readinessProbe.timeoutSeconds

This is an optional parameter.

Number of seconds after which the probe times out.

Default value: 3
readinessProbe.periodSeconds

This is an optional parameter.

Specifies the time interval for every readiness probe check performed by Kubelet.

Default value: 10
readinessProbe.successThreshold

This is an optional parameter.

Minimum consecutive successes for the probe to be considered successful after having failed.

Default value: 1
readinessProbe.failureThreshold

This is an optional parameter.

When a Pod starts and the probe fails, Kubernetes will try failureThreshold times before giving up.

Default value: 3

Following is an example of the configurations that should be included in the values.yaml file of each microservice.

readinessProbe:
  initialDelaySeconds: 20
  timeoutSeconds: 3
  periodSeconds: 10
  successThreshold: 1
  failureThreshold: 3

3.1.3 Georedundancy Parameters

Configure the following parameters to enable and configure georedundancy in the values.yaml file for OCNWDAF:

Table 3-4 REDUNDANCY AGENT CONFIGURATION

Parameter Description Default Value
ocnwdaf.cluster.namespace Name space of the deployment

Note: Change this to the name space of OCNWDAF deployments.

ocn-nwdaf
global.ocnNwdafGeoredagent This parameter enables the georedundancy feature, it is turned off by default. Set this parameter to "True" to enable georedundancy. False
global.siteVariables.OCNWDAF_SITE_ID This parameter sets the name of the site, it is used by the redundancy agent, the scheduler service, and the subscription service. OCNWDAF-XX-1
ocnnwdaf.geored.hooks.database Database information for the hook nwdaf_subscription
ocnnwdaf.geored.hooks.table Table information for the hook nwdaf_subscription
ocnnwdaf.geored.hooks.column1 Column1 information for the hook record_owner
ocnnwdaf.geored.hooks.column2 Column2 information for the hook current_owner
ocnnwdaf.geored.hooks.image Image information for the hook ocnwdaf-docker.dockerhub-phx.oci.oraclecorp.com/nwdaf-cap4c/nwdaf-cap4c-mysql:8.0.30
ocnnwdaf.geored.agent.name Name of the deployment ocn-nwdaf_georedagent
ocnnwdaf.geored.agent.replicas Number of Replicas 1
ocnnwdaf.geored.agent.image.source Image for Georedundancy (GRD) Agent

Note: Modify this value if the image is in a different repository.

occne-repo-host:5000/occne/redagent-ms-dev:1.0.31
ocnnwdaf.geored.agent.image.pullPolicy Image Pull Policy IfNotPresent
ocnnwdaf.geored.agent.resources.limits.cpu CPU Limit 1
ocnnwdaf.geored.agent.resources.limits.memory Memory Limit 1Gi
ocnnwdaf.geored.agent.resources.request.cpu CPU Request 1
ocnnwdaf.geored.agent.resources.request.memory Memory Request 1Gi
ocnnwdaf.geored.agent.service.type Service Type of the Deployment ClusterIP
ocnnwdaf.geored.agent.service.port.containerPort Container Port of the Deployment 9181
ocnnwdaf.geored.agent.service.port.targetPort Target Port of the Deployment 9181
ocnnwdaf.geored.agent.service.port.name Name of the Service Port ocnwdafgeoredagentport
ocnnwdaf.geored.agent.service.prometheusport.containerPort Container Port of the Prometheus 9000
ocnnwdaf.geored.agent.service.prometheusport.targetPort Target Port of the Prometheus 9000
ocnnwdaf.geored.agent.service.prometheusport.name Name of the Prometheus

Note: Modify the port name based on the Prometheus on the deployed setup.

http-cnc-metrics
ocnnwdaf.geored.agent.env.GEO_RED_AGENT_SERVER_HTTP2_ENABLED Enable/Disable HTTP2 TRUE
ocnnwdaf.geored.agent.env.GEO_RED_AGENT_HEARTBEAT_INTERVAL_MS Time Interval To check HeartBeat in "ms" 10000
ocnnwdaf.geored.agent.env.GEO_RED_AGENT_HEARTBEAT_THRESHOLD Number of Time Times to check Heart Beat 5
ocnnwdaf.geored.agent.env.GEO_RED_AGENT_CORE_COMP_THRESHOLD Number of times to check Heart Beat towards the core components 5
ocnnwdaf.geored.agent.env.GEO_RED_AGENT_SITE_NUMBER The current site number. 1
ocnnwdaf.geored.agent.env.GEO_RED_AGENT_SITE_ID Current Site ID OCNWDAF-XX-1
ocnnwdaf.geored.agent.env.GEO_RED_AGENT_NUMBER_OF_MATED_SITE Number of mated sites. It is updated based on GRD sites in sync. 1
ocnnwdaf.geored.agent.env.GEO_RED_AGENT_SELF_ADDRESS Current Agent Address. The resolvable URL of the OCNWDAF Gateway service. This address should be reachable outside the cluster.  
ocnnwdaf.geored.agent.env.GEO_RED_AGENT_MICROSERVICE_LIVELINESS_MS Check Interval for the OCNWDAF microservice in "ms". 10000
ocnnwdaf.geored.agent.env.GEO_RED_AGENT_OCNWDAF_CORE_COMPONENT_LIST List of OCNWDAF microservices that needs to be verified. ocn-nwdaf-subscription
ocnnwdaf.geored.agent.env.GEO_RED_SITE_SUBSCRIPTION_OWNERSHIP_TRANSFER_URL Subscription API for Ownership Transfer http://ocn-nwdaf-subscription-service-internal:8087/nnwdaf-eventssubscription/v1/subscriptions/updateServingOwner
ocnnwdaf.geored.agent.env.GEO_RED_SITE_DATA_COLLECTION_URL Data Collection API for Ownership Check http://ocn-nwdaf-data-collection-service-internal:8081/ra/notify
ocnnwdaf.geored.agent.env.GEO_RED_AGENT_DBTIER_REPLICATION_STATUS_URL cnDBTier Monitor Service URL for Replication Use the Reachable Monitor Service from Deployed CNDB namespace. For example: http://mysql-cluster-db-monitor-svc.{cndbnamspace}.svc.{domainname}:8080/db-tier/status/replication
ocnnwdaf.geored.agent.env.GEO_RED_AGENT_DBTIER_STATUS_URL cnDBTier Monitor Service URL for Local Use the Reachable Monitor Service from Deployed CNDB namespace. For example: http://mysql-cluster-db-monitor-svc.{cndbnamspace}.svc.{domainname}:8080/db-tier/status/local
ocnnwdaf.geored.agent.env.GEO_RED_AGENT_SITE_SECONDARY_SITEID Secondary Site ID OCNWDAF-XX-2
ocnnwdaf.geored.agent.env.GEO_RED_AGENT_SITE_SECONDARY_ADDRESS Secondary Site Address

The Resolvable URL of the OCNWDAF Gateway of Secondary Site.

This address should be reachable outside the cluster

ocnnwdaf.geored.agent.env.GEO_RED_AGENT_SITE_TERTIARY_SITEID Tertiary Site ID OCNWDAF-XX-3
ocnnwdaf.geored.agent.env.GEO_RED_AGENT_SITE_TERTIARY_ADDRESS Tertiary Site Address

The Resolvable URL of the OCNWDAF Gateway of Tertiary Site.

This address should be reachable outside the cluster

ocnnwdaf.geored.agent.env.GEO_RED_AGENT_DB_URL IP of the Site cnDBTier The Cluster IP/External IP of the CNDB
ocnnwdaf.geored.agent.env.GEO_RED_AGENT_USERNAME Name of the DB User with privileges to GRD DB and Subscription DB. The user should have access to both GRD and Subscription Databases occneuser
ocnnwdaf.geored.agent.env.GEO_RED_AGENT_PASSWORD Password for the DB User password
ocnnwdaf.geored.agent.env.GEO_RED_AGENT_ENABLE Enable/disable GRD false
ocnnwdaf.geored.agent.env.GEO_RED_AGENT_DB_PORT Port of the database 3306
ocnnwdaf.geored.agent.env.GEO_RED_AGENT_DB_NAME Name of the GRD database georedagent
ocnnwdaf.geored.agent.env.GEO_RED_AGENT_CONFIG_SERVER Config Server URL for the Site's OCNWDAF http://nwdaf-cap4c-spring-cloud-config-server:8888

3.1.4 Mirror Maker Parameters

Listed below are the customizable Mirror Maker 2 parameters:

Table 3-5 Mirror Maker Parameters

Parameter Description
clusters The clusters name.
clusterX.bootstrap.servers This refers to the brokers that belong to the cluster, host, and port. Multiple brokers can be separated by a comma, and clusterX is replaced by each cluster name.
clusterX.config.storage.replication.factor The replication factor is used when Kafka Connect creates a topic to store the connector and task configuration data. This value should always be a minimum of “3” for a production system. It cannot exceed the number of Kafka brokers in the cluster. Set the value of this parameter to “1” to use the Kafka broker's default replication factor.
clusterX.offset.storage.replication.factor The replication factor is used when Kafka Connect creates a topic to store the connector offsets. This value should always be a minimum of “3” for a production system. It cannot exceed the number of Kafka brokers in the cluster. Set the value of this parameter to “1” to use the Kafka broker's default replication factor.
clusterX.status.storage.replication.factor The replication factor is used when Kafka Connect creates a topic to store the connector and task status updates. This value should always be a minimum of “3” for a production system. It cannot exceed the number of Kafka brokers in the cluster. Set the value of this parameter to “1” to use the Kafka broker's default replication factor.
replication.factor Indicates the number of brokers available.
nwdafDataReplication.config.serviceN.kafkaService The Kafka service name to build Kafka service's FQDN.
nwdafDataReplication.config.serviceN.namespace The namespace to build Kafka service's FQDN.
nwdafDataReplication.config.serviceN.cluster The cluster to build Kafka service's FQDN.

3.1.5 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 3-6 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:
  • Deploying on occne 1.4 or lesser version
  • Not deploying on OCCNE
  • Do not wish to monitor infra services such as db-monitor service
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 3-7 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 3-8 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:

  • image: oc-app-info
  • appinfo image tag
  • imageTag: 23.4.0
  • Set Log Level to DEBUG.
  • If false, Log Level shall be INFO

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 3-9 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 3-10 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

Here is a sample configuration for NRF client in ocnwdaf-<version>custom-values.yaml file:
# 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: []

3.1.6 Ingress Gateway Parameters

Listed below are the customizable Ingress Gateway parameters:

Table 3-11 Routes Config Customizable Parameters

Parameter Description Details
globalRemoveRequestHeader[0].name This field is used for blacklisting (removing) a request header at global level. Hence, it will be applied to all routes configured. Additional header can be configured by adding a new element in the next line and so on. Default Value: Value to be updated accordingly
globalRemoveResponseHeader[0].name This field is used for blacklisting(removing) a response header at global level. Hence, it will be applied to all routes configured. Additional header can be configured by adding a new element in the next line and so on. Default Value: Value to be updated accordingly
routesConfig[0].id

This is a mandatory parameter.

Id of the route.

Default Value: Value to be updated accordingly
routesConfig[0].uri

This is a mandatory parameter.

Service name of the internal microservice of this NF.

Default Value: Value to be updated accordingly
routesConfig[0].path

This is a mandatory parameter.

Provide the path to be matched.

Default Value: Value to be updated accordingly
routesConfig[0].order

This is a mandatory parameter.

Provide the order of the execution of this route.

Default Value: Value to be updated accordingly
routesConfig[0].metadata.requestTimeout requestTimeout is used to set timeout at route level. Value should be in milliseconds. If present then it will override global request timeout Default Value:0
routesConfig[0].metadata.xfccHeaderValidation.validationEnabled This is used to provide an option to enable or disable route level xfccHeaderValidation, it will override global configuration for xfccHeaderValidation.enabled Default Value:False
routesConfig[0].metadata.oauthValidator.enabled   Default Value: Value to be updated accordingly
routesConfig[0].metadata.ccaHeaderValidation.enabled

This is used to provide an option to enable or disable route level ccaHeaderValidation,

it will override global configuration for ccaHeaderValidation.enabled

Default Value:False
routesConfig[0].filters.invalidRouteFilter.errorCodeOnInvalidRoute

This is a mandatory parameter.

If invalidRouteFilter filter is configured, then keep the 'order' value highest compared to other routesComment the parameters related to invalidRouteFilter if configurable error code is not required for invalid route. Configurable error code for invalid route.

Default Value: Value to be updated accordingly
routesConfig[0].filters.invalidRouteFilter.errorCauseOnInvalidRoute

This is a mandatory parameter.

Error cause for invalid route.

Default Value: Value to be updated accordingly
routesConfig[0].filters.invalidRouteFilter.errorTitleOnInvalidRoute

This is a mandatory parameter.

Error title for invalid route.

Default Value: Value to be updated accordingly
routesConfig[0].filters.invalidRouteFilter.errorDescriptionOnInvalidRoute

This is a mandatory parameter.

Error description for invalid route.

Default Value: Value to be updated accordingly
routesConfig[0].filters.removeRequestHeader[0].name This field is used for blacklisting(removing) a request header at route level. Additional header can be configured by adding a new element in the next line and so on. The value of "name" attribute denotes the name of the request header which is to be blacklisted/removed at route level. Add a new entry in next line for every header to be removed.
routesConfig[0].filters.removeResponseHeader[0].name Below field is used for blacklisting(removing) a response header at route level. Additional header can be configured by adding a new element in the next line and so on. The value of "name" attribute denotes the name of the response header which is to be blacklisted/removed at route level. Add a new entry in next line for every header to be removed.
routesConfig[0].metadata.svcName The following parameter configurable per route in route-metadata is used to track Overload Control data. If this parameter is not configured in route metadata then svc name from routesConfig[0].uri field is used as the required key to track Overload Control data. The value of "svcName" attribute denotes the back-end service tag to be used as the required key (configurable per route) to track Overload Control data instead of using back-end service name from routesConfig[0].uri as the required key
routesConfig[0].metadata.serverHeaderDetails.enabled Server header configuration if defined at Route level (irrespective of being enabled/disabled) will take precedence over the Global conf. Default Value: Value to be updated accordingly
routesConfig[0].metadata.serverHeaderDetails.errorCodeSeriesId If not defined here, value at Global level will be used as fallback. Value need to be one among "errorCodeSeriesList" resource defined. Default Value: Value to be updated accordingly
routesConfig[0].metadata.requiredTime If isSbiTimerEnabled is true then this is the minimum time required to process an incoming request. If the timeout falls below this then request will be rejected. Default Value: Value to be updated accordingly