Exposing the ngic-dp, bbu and mme containers as NodePort(s)

Change-Id: Ib2d967a3df79c18779aabb69fa61b5dcb9aa0faa
diff --git a/mcord/mcord-bbu/Chart.yaml b/mcord/mcord-bbu/Chart.yaml
index 9c73673..a93abb7 100644
--- a/mcord/mcord-bbu/Chart.yaml
+++ b/mcord/mcord-bbu/Chart.yaml
@@ -18,4 +18,4 @@
 appVersion: "1.0"
 description: A Helm chart for MCORD BBU Services
 name: mcord-bbu
-version: 0.1.1
+version: 0.1.2
diff --git a/mcord/mcord-bbu/templates/accelleran.yaml b/mcord/mcord-bbu/templates/accelleran.yaml
index c6d0467..79dbf4f 100644
--- a/mcord/mcord-bbu/templates/accelleran.yaml
+++ b/mcord/mcord-bbu/templates/accelleran.yaml
@@ -22,12 +22,24 @@
 spec:
   selector:
     app: accelleran
-  clusterIP: None
+  clusterIP: 10.116.0.1
   ports:
     - name: s1ap
       port: {{ .Values.accelleran.ports.s1ap }}
       protocol: TCP
-
+---
+apiVersion: v1
+kind: Service
+metadata:
+  name: accelleran
+spec:
+  selector:
+    app: accelleran
+  type: NodePort
+  ports:
+    - port: {{ .Values.accelleran.ports.s1ap }}
+      nodePort: {{ .Values.accelleran.ports.s1ap }}
+      protocol: TCP
 ---
 apiVersion: apps/v1
 kind: StatefulSet
diff --git a/mcord/mcord-control-plane/Chart.yaml b/mcord/mcord-control-plane/Chart.yaml
index 20886a4..8fc59be 100644
--- a/mcord/mcord-control-plane/Chart.yaml
+++ b/mcord/mcord-control-plane/Chart.yaml
@@ -18,4 +18,4 @@
 appVersion: "1.0"
 description: A Helm chart for MCORD Control Plane Services
 name: mcord-control-plane
-version: 0.1.5
+version: 0.1.6
diff --git a/mcord/mcord-control-plane/templates/mme.yaml b/mcord/mcord-control-plane/templates/mme.yaml
index 8b4eef9..e74085d 100644
--- a/mcord/mcord-control-plane/templates/mme.yaml
+++ b/mcord/mcord-control-plane/templates/mme.yaml
@@ -34,6 +34,28 @@
     port: {{ .Values.mme.ports.s6a }}
     protocol: TCP
 ---
+apiVersion: v1
+kind: Service
+metadata:
+  name: mme
+spec:
+  selector:
+    app: mme
+  type: NodePort
+  ports:
+    - name: s11
+      port: {{ .Values.mme.ports.s11 }}
+      nodePort: {{ .Values.mme.ports.s11_external }}
+      protocol: TCP
+    - name: s1ap
+      port: {{ .Values.mme.ports.s1ap }}
+      nodePort: {{ .Values.mme.ports.s1ap_external }}
+      protocol: TCP
+    - name: s6a
+      port: {{ .Values.mme.ports.s6a }}
+      nodePort: {{ .Values.mme.ports.s6a_external }}
+      protocol: TCP
+---
 apiVersion: apps/v1
 kind: StatefulSet
 metadata:
diff --git a/mcord/mcord-control-plane/values.yaml b/mcord/mcord-control-plane/values.yaml
index 6b20a1f..5f37dc9 100644
--- a/mcord/mcord-control-plane/values.yaml
+++ b/mcord/mcord-control-plane/values.yaml
@@ -22,9 +22,12 @@
 hss_hostname: "hss"
 mme_hostname: "mme"
 spgwc_hostname: "ngic-cp"
+# If the control plane is installed in a separate cluster, this value needs to be overridden
 spgwu_hostname: "ngic-dp"
-# Need to get SPGW-U interface IP address to put at here
-spgwu_s1u_ip: "119.0.0.45"
+# The spgwu_s1u_ip changes everytime, you can get it with this command:
+# ngic_sriov=$(kubectl exec -n epc ngic-dp-0 ifconfig s1u-net | grep 'inet addr' | cut -d: -f2 | awk '{print $1}')
+# and use it in the chart with --set spgwu_s1u_ip=$ngic_sriov
+spgwu_s1u_ip: "119.0.0.83"
 spgwu_port: 20
 accelleran_hostname: "10.233.65.254"
 
@@ -49,6 +52,9 @@
     s11: 2123
     s1ap: 36412
     s6a: 3868
+    s11_external: 32123
+    s1ap_external: 36412
+    s6a_external: 33868
   replicas: 1
   enb_s1ap_ip: "119.0.0.10"
   resources:
diff --git a/mcord/mcord-data-plane/Chart.yaml b/mcord/mcord-data-plane/Chart.yaml
index d0e6d20..4b03c41 100644
--- a/mcord/mcord-data-plane/Chart.yaml
+++ b/mcord/mcord-data-plane/Chart.yaml
@@ -18,4 +18,4 @@
 appVersion: "1.0"
 description: A Helm chart for MCORD Data Plane Services
 name: mcord-data-plane
-version: 0.2.1
+version: 0.2.2
diff --git a/mcord/mcord-data-plane/templates/dp.yaml b/mcord/mcord-data-plane/templates/dp.yaml
index e7844dc..71bcd47 100644
--- a/mcord/mcord-data-plane/templates/dp.yaml
+++ b/mcord/mcord-data-plane/templates/dp.yaml
@@ -28,6 +28,19 @@
     port: {{ .Values.ngic_dp.ports.sx }}
     protocol: UDP
 ---
+apiVersion: v1
+kind: Service
+metadata:
+  name: ngic-dp-external
+spec:
+  selector:
+    app: ngic-dp
+  type: NodePort
+  ports:
+    - port: {{ .Values.ngic_dp.ports.sx }}
+      nodePort: {{ .Values.ngic_dp.ports.sx_external }}
+      protocol: UDP
+---
 apiVersion: apps/v1
 kind: StatefulSet
 metadata:
diff --git a/mcord/mcord-data-plane/values.yaml b/mcord/mcord-data-plane/values.yaml
index f54ede3..c64113c 100644
--- a/mcord/mcord-data-plane/values.yaml
+++ b/mcord/mcord-data-plane/values.yaml
@@ -30,6 +30,7 @@
     dp: "ngick8stesting/ngic-dp:690f418"
   ports:
     sx: 20
+    sx_external: 31310
   replicas: 1
   resources:
     cpu: 8