[UUI] Chart changes for uui-server 15.0.2 34/140234/12
authorFiete Ostkamp <Fiete.Ostkamp@telekom.de>
Mon, 17 Feb 2025 10:13:00 +0000 (11:13 +0100)
committerFiete Ostkamp <Fiete.Ostkamp@telekom.de>
Sun, 2 Mar 2025 14:31:37 +0000 (15:31 +0100)
- define tracing properties in global section to allow centrally
  configuring it (for the whole platform)
- define uui-server properties in values.yaml
- use MaxRAMPercentage jvm arg to scale the jvm heap size
  dynamically with the pod resources (and give the process
  more than 128MB(!) max heap)
- add a revisionHistoryLimit setting
- do not use NodePorts
- change default service type for nginx to ClusterIP

Issue-ID: USECASEUI-875
Change-Id: I3c7893f4970c088844511ea5b038bf842ce90859
Signed-off-by: Fiete Ostkamp <Fiete.Ostkamp@telekom.de>
14 files changed:
kubernetes/common/nginx/README.md
kubernetes/common/nginx/values.yaml
kubernetes/uui/components/uui-intent-analysis/resources/entrypoint/run.sh
kubernetes/uui/components/uui-intent-analysis/templates/deployment.yaml
kubernetes/uui/components/uui-intent-analysis/values.yaml
kubernetes/uui/components/uui-llm-adaptation/resources/entrypoint/run.sh
kubernetes/uui/components/uui-llm-adaptation/templates/deployment.yaml
kubernetes/uui/components/uui-llm-adaptation/values.yaml
kubernetes/uui/components/uui-nlp/templates/deployment.yaml
kubernetes/uui/components/uui-nlp/values.yaml
kubernetes/uui/components/uui-server/resources/config/application.properties
kubernetes/uui/components/uui-server/templates/deployment.yaml
kubernetes/uui/components/uui-server/values.yaml
kubernetes/uui/values.yaml

index afe7105..0043b87 100644 (file)
@@ -336,7 +336,7 @@ For annotations, please see [this document](https://github.com/kubernetes/ingres
 
 | Name                                    | Description                                                                                                                      | Value                    |
 | --------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- | ------------------------ |
-| `service.type`                          | Service type                                                                                                                     | `LoadBalancer`           |
+| `service.type`                          | Service type                                                                                                                     | `ClusterIP`           |
 | `service.ports.http`                    | Service HTTP port                                                                                                                | `80`                     |
 | `service.ports.https`                   | Service HTTPS port                                                                                                               | `443`                    |
 | `service.nodePorts`                     | Specify the nodePort(s) value(s) for the LoadBalancer and NodePort service types.                                                | `{}`                     |
@@ -554,4 +554,4 @@ Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an "AS IS" BASIS,
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
-limitations under the License.
\ No newline at end of file
+limitations under the License.
index d794acb..bb26ece 100644 (file)
@@ -636,7 +636,7 @@ staticSitePVC: ""
 service:
   ## @param service.type Service type
   ##
-  type: LoadBalancer
+  type: ClusterIP
   ## @param service.ports.http Service HTTP port
   ## @param service.ports.https Service HTTPS port
   ##
index cf68e7c..0107a73 100644 (file)
@@ -20,7 +20,7 @@ main_path="/home/uui"
 echo @main_path@ $main_path
 
 JAVA_PATH="$JAVA_HOME/bin/java"
-JAVA_OPTS="-Xms50m -Xmx128m"
+JAVA_OPTS="-XX:MaxRAMPercentage=${MAX_RAM_PERCENTAGE:-70}"
 echo @JAVA_PATH@ $JAVA_PATH
 echo @JAVA_OPTS@ $JAVA_OPTS
 
index d2824d1..890bc5e 100644 (file)
@@ -19,6 +19,7 @@ metadata: {{- include "common.resourceMetadata" . | nindent 2 }}
 spec:
   selector: {{- include "common.selectors" . | nindent 4 }}
   replicas: {{ .Values.replicaCount }}
+  revisionHistoryLimit: {{ .Values.revisionHistoryLimit }}
   template:
     metadata: {{- include "common.templateMetadata" . | nindent 6 }}
     spec:
index 991c42a..53c1aa0 100644 (file)
@@ -49,6 +49,7 @@ flavor: small
 replicaCount: 1
 nodeSelector: {}
 affinity: {}
+revisionHistoryLimit: 1
 
 service:
   type: ClusterIP
index f1dcefa..7786624 100644 (file)
@@ -20,7 +20,7 @@ main_path="/home/uui"
 echo @main_path@ $main_path
 
 JAVA_PATH="$JAVA_HOME/bin/java"
-JAVA_OPTS="-Xms50m -Xmx128m"
+JAVA_OPTS="-XX:MaxRAMPercentage=${MAX_RAM_PERCENTAGE:-70}"
 echo @JAVA_PATH@ $JAVA_PATH
 echo @JAVA_OPTS@ $JAVA_OPTS
 
index d2824d1..890bc5e 100644 (file)
@@ -19,6 +19,7 @@ metadata: {{- include "common.resourceMetadata" . | nindent 2 }}
 spec:
   selector: {{- include "common.selectors" . | nindent 4 }}
   replicas: {{ .Values.replicaCount }}
+  revisionHistoryLimit: {{ .Values.revisionHistoryLimit }}
   template:
     metadata: {{- include "common.templateMetadata" . | nindent 6 }}
     spec:
index 27068ac..9ee1f30 100644 (file)
@@ -49,6 +49,7 @@ flavor: small
 replicaCount: 1
 nodeSelector: {}
 affinity: {}
+revisionHistoryLimit: 1
 
 service:
   type: ClusterIP
index 8ef2792..f8537bd 100644 (file)
@@ -22,6 +22,7 @@ kind: Deployment
 metadata: {{- include "common.resourceMetadata" . | nindent 2 }}
 spec:
   replicas: 1
+  revisionHistoryLimit: {{ .Values.revisionHistoryLimit }}
   selector: {{- include "common.selectors" . | nindent 4 }}
   template:
     metadata: {{- include "common.templateMetadata" . | nindent 6 }}
index cdfa50e..abf1d7f 100644 (file)
@@ -43,6 +43,7 @@ service:
     - name: http-upload
       port: *upload_port
 
+revisionHistoryLimit: 1
 
 liveness:
   initialDelaySeconds: 300
index 67b0ff0..3b966f9 100644 (file)
@@ -47,3 +47,28 @@ logging.level.*=INFO
 #enable shutdown
 endpoints.shutdown.enabled=true
 endpoints.shutdown.sensitive=false
+
+intents.scheduledTask.enabled=false
+
+management.endpoints.web.exposure.include=*
+management.tracing.enabled={{ default .Values.global.tracing.enabled .Values.tracing.enabled }}
+management.tracing.sampling.probability={{ default .Values.global.tracing.sampling.probability .Values.tracing.collector.baseUrl }}
+management.zipkin.tracing.endpoint={{ default .Values.global.tracing.collector.baseUrl .Values.tracing.collector.baseUrl }}/api/v2/spans
+
+uui-server.client.aai.baseUrl={{ .Values.uuiServer.client.aai.baseUrl }}
+uui-server.client.aai.username={{ .Values.uuiServer.client.aai.username }}
+uui-server.client.aai.password={{ .Values.uuiServer.client.aai.password }}
+uui-server.client.so.baseUrl={{ .Values.uuiServer.client.so.baseUrl }}
+uui-server.client.so.username={{ .Values.uuiServer.client.so.username }}
+uui-server.client.so.password={{ .Values.uuiServer.client.so.password }}
+uui-server.client.sdc.baseUrl={{ .Values.uuiServer.client.sdc.baseUrl }}
+uui-server.client.sdc.username={{ .Values.uuiServer.client.sdc.username }}
+uui-server.client.sdc.password={{ .Values.uuiServer.client.sdc.password }}
+uui-server.slicing.service-invariant-uuid={{ .Values.uuiServer.slicing.serviceInvariantUuid }}
+uui-server.slicing.service-uuid={{ .Values.uuiServer.slicing.serviceUuid }}
+uui-server.slicing.global-subscriber-id={{ .Values.uuiServer.slicing.globalSubscriberId }}
+uui-server.slicing.service-type={{ .Values.uuiServer.slicing.serviceType }}
+uui-server.ccvpn.globalCustomerId={{ .Values.uuiServer.ccvpn.globalCustomerId }}
+uui-server.ccvpn.serviceType={{ .Values.uuiServer.ccvpn.serviceType }}
+uui-server.ccvpn.subscriberName={{ .Values.uuiServer.ccvpn.subscriberName }}
+uui-server.ccvpn.subscriberType={{ .Values.uuiServer.ccvpn.subscriberType }}
index d19f180..58d91a0 100644 (file)
@@ -21,6 +21,7 @@ metadata: {{- include "common.resourceMetadata" . | nindent 2 }}
 spec:
   selector: {{- include "common.selectors" . | nindent 4 }}
   replicas: {{ .Values.replicaCount }}
+  revisionHistoryLimit: {{ .Values.revisionHistoryLimit }}
   template:
     metadata: {{- include "common.templateMetadata" . | nindent 6 }}
     spec:
index 28da40a..3a9aee8 100644 (file)
 # Global configuration defaults.
 #################################################################
 global:
-  nodePortPrefix: 302
+  tracing:
+    collector:
+      baseUrl: http://jaeger-collector.istio-system:9411
+    sampling:
+      probability: 1.0
 
 secrets:
   - uid: pg-root-pass
@@ -48,8 +52,9 @@ flavor: small
 
 # application image
 repository: nexus3.onap.org:10001
-image: onap/usecase-ui-server:15.0.0
+image: onap/usecase-ui-server:15.0.2
 pullPolicy: Always
+revisionHistoryLimit: 1
 
 # application configuration
 
@@ -102,28 +107,11 @@ readiness:
   periodSeconds: 10
 
 service:
-  type: NodePort
+  type: ClusterIP
   name: uui-server
-  internalPort: 8082
-  nodePortPrefixOverride: 303
   ports:
     - name: http
       port: 8082
-      nodePort: '99'
-  annotations:
-    msb.onap.org/service-info: |
-      {{ if .Values.global.msbEnabled -}}[
-        {
-          "serviceName": "usecaseui-server",
-          "version": "v1",
-          "url": "/api/usecase-server/v1",
-          "path":"/iui/usecaseui",
-          "protocol": "REST",
-          "visualRange":"1",
-          "port": "{{ include "common.getPort" (dict "global" . "name" "http" "getPlain" true) }}",
-          "enable_ssl": false
-        }
-      ]{{ end }}
 
 ingress:
   enabled: false
@@ -132,6 +120,16 @@ ingress:
       name: "uui-server"
       port: 8082
 
+##
+## Use this to override the global defaults
+tracing:
+# enabled: false
+  collector: {}
+#   baseUrl: http://jaeger-collector.istio-system:9411
+  sampling: {}
+#   probability: 1.0 # percentage of requests that are sampled (between 0-1/0%-100%)
+
+
   # 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
@@ -148,7 +146,7 @@ resources:
       cpu: "1.5"
       memory: "2Gi"
     requests:
-      cpu: "1"
+      cpu: "300m"
       memory: "1Gi"
   large:
     limits:
@@ -186,3 +184,28 @@ wait_for_job_container:
 #   "helm.sh/hook": "pre-upgrade,pre-rollback,post-install"
 #   "helm.sh/hook-delete-policy": "before-hook-creation"
 #   "helm.sh/hook-weight": "1"
+
+uuiServer:
+  client:
+    aai:
+      baseUrl: http://aai.onap
+      username: AAI
+      password: AAI
+    so:
+      baseUrl: http://so.onap:8080
+      username: InfraPortalClient
+      password: password1
+    sdc:
+      baseUrl: http://sdc-be:8080
+      username: aai
+      password: Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U
+  slicing:
+    serviceInvariantUuid: defaultServiceInvariantUuid
+    serviceUuid: defaultServiceUuid
+    globalSubscriberId: defaultGlobalSubscriberId
+    serviceType: defaultServiceType
+  ccvpn:
+    globalCustomerId: defaultGlobalCustomerId
+    serviceType: defaultServiceType
+    subscriberName: defaultSubscriberName
+    subscriberType: defaultSubscriberType
index c9a0331..8f7c6cd 100644 (file)
 # This is a YAML-formatted file.
 # Declare variables to be passed into your templates.
 global:
-  nodePortPrefix: 302
+  tracing:
+    enabled: false
+    collectorHost: jaeger-collector.istio-system
+    collectorPort: 9411
 
 subChartsOnly:
   enabled: true
@@ -25,7 +28,7 @@ subChartsOnly:
 flavor: small
 
 # application image
-image: onap/usecase-ui:15.0.0
+image: onap/usecase-ui:15.0.1
 pullPolicy: Always
 
 # application configuration
@@ -56,28 +59,11 @@ readiness:
   periodSeconds: 10
 
 service:
-  type: NodePort
+  type: ClusterIP
   name: uui
-  internalPort: 8080
-  nodePortPrefixOverride: 303
   ports:
     - name: http
       port: 8080
-      nodePort: '98'
-  annotations:
-    msb.onap.org/service-info: |
-      {{ if .Values.global.msbEnabled -}}[
-        {
-          "serviceName": "usecaseui-ui",
-          "version": "v1",
-          "url": "/usecase-ui",
-          "path":"/iui/usecaseui",
-          "protocol": "UI",
-          "visualRange":"1",
-          "port": "{{ include "common.getPort" (dict "global" . "name" "http" "getPlain" true) }}",
-          "enable_ssl": false
-        }
-      ]{{ end }}
 
 ingress:
   enabled: true
@@ -136,12 +122,28 @@ nginx:
           proxy_set_header X-Forwarded-Proto $scheme;
       }
 
-      # backend
-      location /api {
+      # uui-server
+      location /api/usecaseui-server {
           proxy_pass http://uui-server:8082;
           proxy_set_header Host $host;
           proxy_set_header X-Real-IP $remote_addr;
           proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
           proxy_set_header X-Forwarded-Proto $scheme;
       }
+      # intent-service
+      location /api/usecaseui-intent-analysis {
+          proxy_pass http://uui-intent-analysis:8083;
+          proxy_set_header Host $host;
+          proxy_set_header X-Real-IP $remote_addr;
+          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
+          proxy_set_header X-Forwarded-Proto $scheme;
+      }
+      # llm-service
+      location /api/usecaseui-llm-adaptation {
+          proxy_pass http://uui-nlp:33011;
+          proxy_set_header Host $host;
+          proxy_set_header X-Real-IP $remote_addr;
+          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
+          proxy_set_header X-Forwarded-Proto $scheme;
+      }
     }