CSIT-748 vnf-agent integration
[csit.git] / resources / templates / kubernetes / eth-l2xcbase-eth-2memif-1vnf.yaml
diff --git a/resources/templates/kubernetes/eth-l2xcbase-eth-2memif-1vnf.yaml b/resources/templates/kubernetes/eth-l2xcbase-eth-2memif-1vnf.yaml
new file mode 100644 (file)
index 0000000..7514eeb
--- /dev/null
@@ -0,0 +1,206 @@
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: sfc-controller-cfg
+  namespace: csit
+data:
+  etcd.conf:
+    insecure-transport: true
+    dial-timeout: 1000000000
+    endpoints:
+      - "172.17.0.1:22379"
+
+  sfc.conf:
+    sfc_controller_config_version: 1
+    description: $$TEST_NAME$$
+    host_entities:
+      - name: vswitch
+    sfc_entities:
+      - name: vswitch-vnf1
+        description: vswitch to VNF1 - memif
+        type: 4
+        elements:
+          - container: vswitch
+            port_label: $$VSWITCH_IF1$$
+            etcd_vpp_switch_key: vswitch
+            type: 5
+          - container: vnf1
+            port_label: port1
+            etcd_vpp_switch_key: vswitch
+            type: 2
+      - name: vnf1-vswitch
+        description: VNF1 to vswitch - memif
+        type: 4
+        elements:
+          - container: vswitch
+            port_label: $$VSWITCH_IF2$$
+            etcd_vpp_switch_key: vswitch
+            type: 5
+          - container: vnf1
+            port_label: port2
+            etcd_vpp_switch_key: vswitch
+            type: 2
+
+  vnf.conf:
+    vnf_plugin_config_version: 1
+    description: VNF config
+    vnf_entities:
+      - name: vnf1
+        container: vnf1
+        l2xconnects:
+          - port_labels:
+            - port1
+            - port2
+
+---
+apiVersion: v1
+kind: Pod
+metadata:
+  name: sfc-controller
+  namespace: csit
+spec:
+  containers:
+    - name: "sfc-controller"
+      image: prod_sfc_controller
+      imagePullPolicy: IfNotPresent
+      command:
+        - /bin/sfc-controller
+        - -etcdv3-config=/opt/sfc-controller/dev/etcd.conf
+        - -sfc-config=/opt/sfc-controller/dev/sfc.conf
+        - -vnf-config=/opt/sfc-controller/dev/vnf.conf
+      volumeMounts:
+        - name: controller-config
+          mountPath: /opt/sfc-controller/dev
+  volumes:
+    - name: controller-config
+      configMap:
+        name: sfc-controller-cfg
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: vswitch-agent-cfg
+  namespace: csit
+data:
+  etcd.conf:
+    insecure-transport: true
+    dial-timeout: 1000000000
+    endpoints:
+      - "172.17.0.1:22379"
+
+  kafka.conf:
+    addrs:
+      - "172.17.0.1:9092"
+
+---
+apiVersion: v1
+kind: Pod
+metadata:
+  name: vswitch-vpp
+  namespace: csit
+spec:
+  hostNetwork: true
+  containers:
+    - name: "vswitch"
+      image: prod_vpp_agent_shrink
+      imagePullPolicy: IfNotPresent
+      securityContext:
+        privileged: true
+      ports:
+        - containerPort: 5002
+        - containerPort: 9191
+      readinessProbe:
+        httpGet:
+          path: /readiness
+          port: 9191
+        periodSeconds: 1
+      livenessProbe:
+        httpGet:
+          path: /liveness
+          port: 9191
+        periodSeconds: 1
+        initialDelaySeconds: 15
+      env:
+        - name: MICROSERVICE_LABEL
+          value: vswitch
+      volumeMounts:
+        - name: vpp-config
+          mountPath: /etc/vpp
+        - name: agent-config
+          mountPath: /opt/vpp-agent/dev
+        - name: memif-sockets
+          mountPath: /tmp
+  volumes:
+    - name: vpp-config
+      configMap:
+        name: vswitch-vpp-cfg
+    - name: agent-config
+      configMap:
+        name: vswitch-agent-cfg
+    - name: memif-sockets
+      hostPath:
+        path: /tmp
+---
+apiVersion: v1
+kind: ConfigMap
+metadata:
+  name: vnf-agent-cfg
+  namespace: csit
+data:
+  etcd.conf:
+    insecure-transport: true
+    dial-timeout: 1000000000
+    endpoints:
+      - "172.17.0.1:22379"
+
+  kafka.conf:
+    addrs:
+      - "172.17.0.1:9092"
+
+---
+apiVersion: v1
+kind: Pod
+metadata:
+  name: vnf-vpp
+  namespace: csit
+spec:
+  containers:
+    - name: "vnf"
+      image: prod_vpp_agent_shrink
+      imagePullPolicy: IfNotPresent
+      securityContext:
+        privileged: true
+      ports:
+        - containerPort: 5002
+        - containerPort: 9191
+      readinessProbe:
+        httpGet:
+          path: /readiness
+          port: 9191
+        periodSeconds: 1
+      livenessProbe:
+        httpGet:
+          path: /liveness
+          port: 9191
+        initialDelaySeconds: 15
+      env:
+        - name: MICROSERVICE_LABEL
+          value: vnf1
+      volumeMounts:
+        - name: vpp-config
+          mountPath: /etc/vpp
+        - name: agent-config
+          mountPath: /opt/vpp-agent/dev
+        - name: memif-sockets
+          mountPath: /tmp
+  volumes:
+  - name: vpp-config
+    configMap:
+      name: vnf-vpp-cfg
+  - name: agent-config
+    configMap:
+      name: vnf-agent-cfg
+  - name: memif-sockets
+    hostPath:
+      path: /tmp