Kubernetes (k8) Configurations for the Service Request Microservice
The below values are available in the start scripts and will be overwritten in values.yaml.
For the Service Request 202104 and from 202210 version onwards, the Kony properties such as konyUserId, konyPassword, XKonyAppKey, and XKonyAppSecret are base64 encrypted and placed separately in the servicerequest-secrets.yaml file.
| PROPERTY | DEFAULT VALUE | DESCRIPTION |
| MongoDB Database Configuration | ||
| DATABASE_KEY | mongodb | DatabaseKey |
| MONGODB_DBNAME | ms_servicerequest | name of the Database |
| MONGODB_CONNECTIONSTR | mongodb://mongodb-0.mongodb-svc.mongodb.svc.cluster.local:27017,mongodb-1.mongodb-svc.mongodb.svc.cluster.local:27017,mongodb-2.mongodb-svc.mongodb.svc.cluster.local:27017 | URL to connect to the mongodb instance |
| MONGO_CRED | "N" | Variable is set to "Y/N", will be enabled or disabled |
| MONGODB_USER | root | Username |
| MONGODB_PASS | ENC(0jDFL9aa9VbB/KfSH6zfEQ==) | Password |
| PostgreSQL Database Configuration | ||
| DATABASE_KEY | postgresql | DatabaseKey |
| POSTGRESQL_CRED | "N" | Variable is set to "Y/N", will be enabled or disabled |
| POSTGRESQL_CONNECTIONURL | jdbc:postgresql://sr-postgresqldb-service.postgresql.svc.cluster.local:4309/servicerequestdb | URL to connect to the postgresql instance |
| POSTGRESQL_USERNAME | servicerequestusr | Username |
| POSTGRESQL_PASSWORD | servicerequestpass | Password |
| POSTGRESQL_POOLSIZE | "5" | |
| POSTGRESQL_MINIDLE | "10" | |
| POSTGRESQL_CONTIMEOUT | "30000" | |
| POSTGRESQL_LEAKDETECT | "0" | |
| COMMON DB PROPERTIES | ||
| temn_msf_db_pass_encryption_key | temenos | key to decrypt the password |
| temn_msf_db_pass_encryption_algorithm | PBEWithMD5AndTripleDES | algorithm to decrypt the password |
| temn.msf.name | ms-servicerequest | |
| temn.msf.raise.commandprocessed.event.enabled | "false" | |
| tem.msf.disableInbox | "false" | |
| Logger | ||
| logger_root_level | ERROR | ERROR,INFO,DEBUG are the three values present for logger. |
| Security | ||
| temn_msf_security_authz_enabled | TRUE | Enable/Disable the XACML policy authorization.XACML policy authorization is used to configure security policies and access rights to information for APIs. |
| Entitlement | ||
| temn_entitlement_service_enabled | TRUE | Enable/Disable the entitlement service.If the property is enabled, the roles and permissions needed for the authentication will be taken from the entitlement microservices. |
| kafka | ||
| temnmsfstreamvendor | kafka | |
| temnqueueimpl | kafka | |
| kafkabootstrapservers | my-cluster-kafka-bootstrap.kafka:9092 | |
| schema_registry_url | http://kafka-oss-cp-schema-registry.kafka.svc.cluster.local:8081 | |
| schemaregistry | ||
| SCHEMA_REGISTRY_KAFKASTORE_BOOTSTRAP_SERVERS | PLAINTEXT://my-cluster-kafka-bootstrap.kafka:9092 | |
| SCHEMA_REGISTRY_HOST_NAME | schema-registry | |
| SCHEMA_REGISTRY_LISTENERS | http://0.0.0.0:8081 | |
| SCHEMA_REGISTRY_CUB_KAFKA_TIMEOUT | "500" | |
| SCHEMA_REGISTRY_CUB_ZK_TIMEOUT | "500" | |
| SCHEMA_REGISTRY_KAFKASTORE_SECURITY_PROTOCOL | PLAINTEXT | |
| Metrics | ||
| publisherPort | 9,091 | |
| publisherHost | 127.0.0.1 | |
| metricsDisabled | "true" | |
| service | ||
| servicerequestapi: | ||
| type: LoadBalancer | A Service in Kubernetes is a REST object, similar to a Pod. Like all of the REST objects, you can POST a Service definition to the API server to create a new instance.Specifies the port, type for the adapterms API, and ingester service.When the Service type is set to LoadBalancer, Kubernetes provides functionality equivalent to type equals ClusterIP to pods within the cluster and extends it by programming the (external to Kubernetes) load balancer with entries for the nodes hosting the relevant Kubernetes pod's. | |
| port: 8310 | ||
| logging | ||
| socketHost: 127.0.0.1 | Logging will be collecting, storing, and analyzing distributed logs. Here Logstash is used for creating an ingestion pipeline for collecting logs from multiple devices and store in Elasticsearch storage for visualizing and analyzing through Grafana.To enable logging sockethost, SockerPort, and exportType, the protocol should be uncommented and the required port and host address should be given. | |
| socketPort: 9092 | ||
| exportType: #"socket" | "console" | ||
| resources | ||
| api: | ||
| memoryrequest: 812M | Resource management for pods/Containers -- Kubernetes uses to control resources such as CPU and memorycan declare limits for CPU and memory for all pod containers.cpulimit --The CPU limit defines a hard ceiling on how much CPU time the container can use. it should not be less than 1m. can a specific CPU limit be 1m or 0.001.memorylimit – If you specify a memory limit for every container in a Pod, Kubernetes can infer the Pod-level memory limit by adding up the limits for its containersheapLimitTo change the value of experimental flags, you must unlock them first. You can do this by setting -XX:+UnlockExperimentalVMOptions explicitly on the command line before any experimental flagsThe flag -XX:+UseCGroupMemoryLimitForHeap lets the JVM detect what the max heap size in a container should be.MaxRAMPercentage parameter allows setting the maximum heap size for a JVM running with a large amount of memory (greater than 200 MB). | |
| PROPERTY | DEFAULT VALUE | DESCRIPTION |
| For PostgreSQL Database | ||
| DATABASE_KEY | postgresql | name of the database key |
| POSTGRESQL_CONNECTIONURL | jdbc:postgresql://postgresdb:5432/servicerequestdb | URL to connect to the postgresql instance |
| POSTGRESQL_USERNAME | servicerequestusr | Username |
| POSTGRESQL_PASSWORD | servicerequestpass | Password |
| For Mongo Database | ||
| DATABASE_KEY | mongodb | name of the database key |
| MONGODB_DBNAME | ms_servicerequest | name of the database |
| MONGODB_CONNECTIONSTR | mongodb://ms-servicerequest-mongo-node1:27017,ms-servicerequest-mongo-node2:27017,ms-servicerequest-mongo-node3:27017 | URL to connect to the mongodb instance. |
| Common Properties | ||
| temn.msf.ingest.source.stream | acknowledgement-event | Ingester source stream |
| temn.msf.ingest.source.stream.consumergroup.id | msf-servicerequest-consumer | Ingester source stream consumer group id |
| temn.msf.ingest.sink.error.stream | error-servicerequest | Inbox Error topic |
| temn.msf.ingest.sink.error.stream.producer.id | msf-ingester-error-producer | Error stream producer |
| temn.msf.ingest.stream.kafka.consumer.poll.timeout.millis | "100000" | |
| temn.msf.ingest.event.ingester | com.temenos.microservice.framework.core.ingester.MicroserviceIngester | Framework's Binary Ingester class |
| temn.msf.stream.outbox.topic | ms-servicerequest-outbox-topic | Stream outbox topic |
| temn.msf.outbox.direct.delivery.enabled | "false" | |
| temn.msf.ingest.is.avro.event.ingester | "false" | Avro Ingester |
| temn.msf.ingest.generic.ingester | com.temenos.microservice.servicerequestv2.ingester.ServiceReqIngesterV2 | |
| temn.msf.ingest.outbox.cache.namespace | "ms-servicerequest-outbox" | |
| temn.meter.disabled | "true" | |
| temn.msf.logger.root_level | ERROR | |
| temn.msf.tracer.enabled | "false" | Optional |
| temn.tracer.host | jaeger | Optional |
| temn.tracer.port | 14,268 | Optional |
| Service | ||
| servicerequestingester: | ||
| type: LoadBalancer | A Service in Kubernetes is a REST object, similar to a Pod. Like all of the REST objects, you can POST a Service definition to the API server to create a new instance.Specifies the port, type for the adapterms API, and ingester service.When the Service type is set to LoadBalancer, Kubernetes provides functionality equivalent to type equals ClusterIP to pods within the cluster and extends it by programming the (external to Kubernetes) load balancer with entries for the nodes hosting the relevant Kubernetes pod's. | |
| port: 12520 | ||
| commandingester: | ||
| memoryrequest: 1G | Resource management for pods/Containers -- Kubernetes uses to control resources such as CPU and memory | |
| can declare limits for CPU and memory for all pod containers. | ||
| cpulimit --The CPU limit defines a hard ceiling on how much CPU time the container can use. it should not be less than 1m. can a specific CPU limit be 1m or 0.001. | ||
| memorylimit – If you specify a memory limit for every container in a Pod, Kubernetes can infer the Pod-level memory limit by adding up the limits for its containers | ||
| heapLimit | ||
| To change the value of experimental flags, you must unlock them first. You can do this by setting -XX:+UnlockExperimentalVMOptions explicitly on the command line before any experimental flags | ||
| The flag -XX:+UseCGroupMemoryLimitForHeap lets the JVM detect what the max heap size in a container should be. | ||
| MaxRAMPercentage parameter allows setting the maximum heap size for a JVM running with a large amount of memory (greater than 200 MB). | ||
| PROPERTY | DEFAULT VALUE | DESCRIPTION |
| For PostgreSQL Database | ||
| DATABASE_KEY | postgresql | name of the database key |
| POSTGRESQL_CONNECTIONURL | jdbc:postgresql://postgresdb:5432/servicerequestdb | URL to connect to the postgresql instance |
| POSTGRESQL_USERNAME | servicerequestusr | Username |
| POSTGRESQL_PASSWORD | servicerequestpass | Password |
| For Mongo Database | ||
| DATABASE_KEY | mongodb | name of the database key |
| MONGODB_DBNAME | ms_servicerequest | name of the database |
| MONGODB_CONNECTIONSTR | mongodb://ms-servicerequest-mongo-node1:27017,ms-servicerequest-mongo-node2:27017,ms-servicerequest-mongo-node3:27017 | URL to connect to the mongodb instance. |
| Common Properties | ||
| temn.msf.name | ms-servicerequest | Microservice Framework will identify the respective microservice with this property |
| temn.msf.stream.vendor | kafka | Data stream vendor |
| temn.msf.stream.kafka.bootstrap.servers | kafka:29092 | Change to IP address of kafka instance. |
| temn.msf.ingest.source.stream | ms-servicerequest-inbox-topic | Ingester source stream |
| temn.msf.ingest.source.stream.consumergroup.id | ms-servicerequest-ingester-consumer | Ingester source stream consumer group id |
| temn.msf.ingest.sink.error.stream | ms-servicerequest-inbox-error-topic | Inbox Error topic |
| temn.msf.ingest.sink.error.stream.producer.id | ms-servicerequest-ingester-error-producer | Error stream producer |
| temn.msf.ingest.generic.ingester | com.temenos.microservice.framework.core.ingester.GenericCommandSTBinaryIngester | Framework's Binary Ingester class |
| temn.msf.service.name | "CommandIngester" | |
| temn.msf.exec.env | server | Execution Environment |
| temn.msf.raise.received.event | "true" | Raising received event |
| temn.msf.ingest.is.avro.event.ingester | "false" | Avro Ingester |
| temn.msf.stream.outbox.topic | ms-servicerequest-outbox-topic | Stream outbox topic |
| temn.msf.outbox.direct.delivery.enabled | "false" | |
| java_options | ' -XX:+UnlockExperimentalVMOptions -XX:+UseCGroupMemoryLimitForHeap -XX:MaxRAMPercentage=75.0 ' | |
| temn.msf.security.authz.enabled | "false" | |
| temn.msf.ingest.outbox.cache.namespace | ms-servicerequest-outbox | Name of the outbox cache |
| temn.msf.ingest.inbox.cache.namespace | ms-servicerequest-inbox | Name of the inbox cache |
| tmn.ignite.host | cache-service | Service used in Apache Ignite |
| tmn.ignite.port | 10,800 | port streaming from Kafka to Ignite cache |
| temn.msf.service.name | "CommandIngester" | |
| temn.msf.raise.commandprocessed.event.enabled | "false"" | |
| temn.msf.raise.received.event | TRUE | Raising received event |
| tem.msf.disableInbox | "false" | Inbox-Outbox enablement |
| class.package.name | com.temenos.microservice.servicerequestv2.function | CDP Resolve Implementations class path |
| class.inbox.dao | com.temenos.microservice.framework.core.inbox.InboxDaoImpl | Framework Implementation class for Inbox Dao |
| class.outbox.dao | com.temenos.microservice.framework.core.outbox.OutboxDaoImpl | Framework Implementation class for Outbox Dao |
| temn.msf.security.authz.enabled | "false" | Ingester Authorization property |
| temn.msf.exec.env | server | Execution environment |
| temn.msf.stream.kafka.bootstrap.servers | "my-cluster-kafka-bootstrap.kafka:9092" | It contains a list of host/port pairs for establishing the initial connection to the Kafka cluster. A host and port pair uses : as the separator |
| temn.msf.disable.bian.naming | "true" | |
| temn.msf.stream.vendor | "kafka" | Data stream vendor |
| temn.queue.impl | "kafka" | Queue Implementation |
| tmn.inbox.thread.pool.count | "10" | Inbox thread pool count |
| tmn.outbox.thread.pool.count | "10" | Outbox thread pool count |
| Service : | ||
| servicerequestgenericcommandingester | ||
| type: LoadBalancer | A Service in Kubernetes is a REST object, similar to a Pod. Like all of the REST objects, you can POST a Service definition to the API server to create a new instance.Specifies the port, type for the adapterms API, and ingester service.When the Service type is set to LoadBalancer, Kubernetes provides functionality equivalent to type equals ClusterIP to pods within the cluster and extends it by programming the (external to Kubernetes) load balancer with entries for the nodes hosting the relevant Kubernetes pod's. | |
| PROPERTY | DEFAULT VALUE | DESCRIPTION |
| For PostgreSQL Database | ||
| DATABASE_KEY | postgresql | name of the database key |
| POSTGRESQL_CONNECTIONURL | jdbc:postgresql://postgresdb:5432/servicerequestdb | URL to connect to the postgresql instance |
| POSTGRESQL_USERNAME | servicerequestusr | Username |
| POSTGRESQL_PASSWORD | servicerequestpass | Password |
| For Mongo Database | ||
| DATABASE_KEY | mongodb | name of the database key |
| MONGODB_DBNAME | ms_servicerequest | name of the database |
| MONGODB_CONNECTIONSTR | mongodb://ms-servicerequest-mongo-node1:27017,ms-servicerequest-mongo-node2:27017,ms-servicerequest-mongo-node3:27017 | URL to connect to the mongodb instance. |
| Common Properties | ||
| temn.msf.name | ms-servicerequest | Microservice Framework will identify the respective microservice with this property |
| temn.msf.stream.vendor | kafka | Data stream vendor |
| temn.msf.stream.kafka.bootstrap.servers | kafka:29092 | Change to IP address of kafka instance. |
| temn.msf.exec.env | server | |
| temn.msf.security.authz.enabled | "false" | |
| temn.msf.ingest.source.stream | ms-servicerequest-outbox | Ingest source stream |
| temn.msf.service.name | "inboxOutbox" | |
| tmn.inbox.source.namespace | servicerequest-inbox | Name of the inbox cache |
| tmn.outbox.source.namespace | servicerequest-outbox | Name of the outbox cache |
| temn.msf.stream.outbox.topic | ms-servicerequest-outbox-topic | Stream outbox topic |
| tmn.inbox.thread.pool.count | 10 | Number of threads kept in inbox reserve for executing tasks |
| tmn.outbox.thread.pool.count | 10 | Number of threads kept in outbox reserve for executing tasks |
| temn.queue.impl | kafka | Queue Implementation |
| temn.msf.ingest.is.cloud.event | "true" | Ingester cloud event |
| temn.msf.disable.outbox.cleanup | "true" | |
| temn.msf.service.name | inboxOutbox | |
| temn.msf.tracer.enabled | "false" | Optional |
| temn.tracer.host | jaeger | Optional |
| temn.tracer.port | 14,268 | Optional |
| temn.meter.disabled | "true" | |
| temn.msf.logger.root_level | ERROR | |
| temn.msf.disable.bian.naming | "true" | |
| class.inbox.dao | com.temenos.microservice.framework.core.inbox.InboxDaoImpl | Framework Implementation class for Inbox Dao |
| class.outbox.dao | com.temenos.microservice.framework.core.outbox.OutboxDaoImpl | Framework Implementation class for Outbox Dao |
| class.package.name | com.temenos.microservice.servicerequestv2.function | CDP Resolve Implementations class path |
| Service | ||
| servicerequestinboxoutbox: | ||
| type: LoadBalancer | A Service in Kubernetes is a REST object, similar to a Pod. Like all of the REST objects, you can POST a Service definition to the API server to create a new instance.Specifies the port, type for the adapterms API, and ingester service.When the Service type is set to LoadBalancer, Kubernetes provides functionality equivalent to type equals ClusterIP to pods within the cluster and extends it by programming the (external to Kubernetes) load balancer with entries for the nodes hosting the relevant Kubernetes pod's. | |
| port: 12534 | ||
| inboxingester: | ||
| memoryrequest: 500M | Resource management for pods/Containers -- Kubernetes uses to control resources such as CPU and memorycan declare limits for CPU and memory for all pod containers.cpulimit --The CPU limit defines a hard ceiling on how much CPU time the container can use. it should not be less than 1m. can a specific CPU limit be 1m or 0.001.memorylimit – If you specify a memory limit for every container in a Pod, Kubernetes can infer the Pod-level memory limit by adding up the limits for its containersheapLimitTo change the value of experimental flags, you must unlock them first. You can do this by setting -XX:+UnlockExperimentalVMOptions explicitly on the command line before any experimental flagsThe flag -XX:+UseCGroupMemoryLimitForHeap lets the JVM detect what the max heap size in a container should be.MaxRAMPercentage parameter allows setting the maximum heap size for a JVM running with a large amount of memory (greater than 200 MB). | |
In this topic