[COMAC-103] Allow SPGW-U to run a specific node by using nodeselector
Reason: SPGW-U and CDN use different SR-IOV: NetDevice and VFIO.
Unfortunately, both can't occupy same network interface port in the same
node. Thus, classify two types of nodes: (i) nodes for NetDevice and (ii)
nodes for VFIO. Then, deploy SPGW-U and CDN into the different type of
nodes.
To deploy them into the different type of machine, define nodeselector.
Please see COMAC-103 issues in Jira.
NOTE: WIP - To allow both NetDevice and VFIO to occupy the same port in the
same machine.
Change-Id: Idf8561127dedcb23c265c373db3c612fef342f37
diff --git a/mcord-release/mcord-services/Chart.yaml b/mcord-release/mcord-services/Chart.yaml
index d6207da..12a8042 100644
--- a/mcord-release/mcord-services/Chart.yaml
+++ b/mcord-release/mcord-services/Chart.yaml
@@ -18,4 +18,4 @@
appVersion: "1.0"
description: M-CORD services with OMEC inside
name: mcord-services
-version: 0.1.1
+version: 0.1.2
diff --git a/mcord-release/mcord-services/templates/statefulset-spgwu.yaml b/mcord-release/mcord-services/templates/statefulset-spgwu.yaml
index 49a2ee6..837872c 100644
--- a/mcord-release/mcord-services/templates/statefulset-spgwu.yaml
+++ b/mcord-release/mcord-services/templates/statefulset-spgwu.yaml
@@ -36,6 +36,10 @@
{ "name": "sgi-net", "interface": "sgi-net" }
]'
spec:
+{{- if .Values.network.sriov.enabled }}
+ nodeSelector:
+{{ toYaml .Values.spgwu.nodeselector | indent 8 }}
+{{- end }}
{{- if not .Values.network.sriov.enabled }}
initContainers:
- name: spgwu-iptables-init
diff --git a/mcord-release/mcord-services/values.yaml b/mcord-release/mcord-services/values.yaml
index 8008899..f2516d4 100644
--- a/mcord-release/mcord-services/values.yaml
+++ b/mcord-release/mcord-services/values.yaml
@@ -56,6 +56,8 @@
spgwu:
name: spgwu
+ nodeselector:
+ sriov: vfio
images:
tags:
init: ngick8stesting/c3po-init:latest