Commit 87c32736 authored by Waleed Akbar's avatar Waleed Akbar
Browse files

Add Kubernetes manifests for pluggable service deployment, service, and...

Add Kubernetes manifests for pluggable service deployment, service, and updated  constants value for pluggables
parent a0f18c27
Loading
Loading
Loading
Loading
+89 −0
Original line number Diff line number Diff line
# Copyright 2022-2025 ETSI SDG TeraFlowSDN (TFS) (https://tfs.etsi.org/)
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
# 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.

apiVersion: apps/v1
kind: Deployment
metadata:
  name: pluggablesservice
spec:
  selector:
    matchLabels:
      app: pluggablesservice
  #replicas: 1
  template:
    metadata:
      labels:
        app: pluggablesservice
    spec:
      terminationGracePeriodSeconds: 5
      containers:
        - name: server
          image: labs.etsi.org:5050/tfs/controller/pluggables:latest
          imagePullPolicy: Always
          ports:
            - containerPort: 30220
          env:
            - name: LOG_LEVEL
              value: "INFO"
          readinessProbe:
            exec:
              command: ["/bin/grpc_health_probe", "-addr=:30220"]
          livenessProbe:
            exec:
              command: ["/bin/grpc_health_probe", "-addr=:30220"]
          resources:
            requests:
              cpu: 250m
              memory: 128Mi
            limits:
              cpu: 1000m
              memory: 1024Mi
---
apiVersion: v1
kind: Service
metadata:
  name: pluggablesservice
  labels:
    app: pluggablesservice
spec:
  type: ClusterIP
  selector:
    app: pluggablesservice
  ports:
    - name: grpc
      protocol: TCP
      port: 30220
      targetPort: 30220
---
apiVersion: autoscaling/v2
kind: HorizontalPodAutoscaler
metadata:
  name: pluggablesservice-hpa
spec:
  scaleTargetRef:
    apiVersion: apps/v1
    kind: Deployment
    name: pluggablesservice
  minReplicas: 1
  maxReplicas: 20
  metrics:
    - type: Resource
      resource:
        name: cpu
        target:
          type: Utilization
          averageUtilization: 80
  #behavior:
  #  scaleDown:
  #    stabilizationWindowSeconds: 30
+1 −1
Original line number Diff line number Diff line
@@ -75,7 +75,7 @@ class ServiceNameEnum(Enum):
    ANALYTICSBACKEND       = 'analytics-backend'
    QOSPROFILE             = 'qos-profile'
    OSMCLIENT              = 'osm-client'
    PLUGGABLES              = 'dscm-pluggable'
    PLUGGABLES             = 'pluggables'

    # Used for test and debugging only
    DLT_GATEWAY    = 'dltgateway'