VOL-794: Assignment lists in etcd not updated correctly in presence of vcore failures

* Fixed coordinator method _sanitize_member_list
* Fixed keys-only GET operation for etcd KV store
* Fixed key DELETE operation for etcd KV store
* Modified vcore manifest to allow a failed pod to be re-spawned on a
  different host but with the same pod name
* Modified zookeeper manifest to allow a failed pod to be re-spawned
  on a different host. With the current manifest, when all 3 zookeeper
  pods are scheduled on the same node and that node fails, none of the
  pods get re-spawned.
* Added NodePort for the Envoy service
* Removed anti-affinity rule from OFAgent and NetConf manifests to allow
  the deployment of multiple pods on the same node

Change-Id: I052d952d81a81cafb96acfc1d57a192596e2e9a1
diff --git a/k8s/vcore_for_etcd.yml b/k8s/vcore_for_etcd.yml
index 37ceeea..b2d5d5d 100644
--- a/k8s/vcore_for_etcd.yml
+++ b/k8s/vcore_for_etcd.yml
@@ -20,13 +20,19 @@
   selector:
     app: vcore
 ---
-apiVersion: apps/v1beta1
-kind: Deployment
+apiVersion: apps/v1
+kind: StatefulSet
 metadata:
   name: vcore
   namespace: voltha
 spec:
+  serviceName: vcore
   replicas: 3
+  updateStrategy:
+    type: RollingUpdate
+  selector:
+    matchLabels:
+      app: vcore
   template:
     metadata:
       labels:
@@ -34,6 +40,7 @@
       annotations:
         cni: "calico"
     spec:
+      terminationGracePeriodSeconds: 0
       containers:
         - name: voltha
           image: voltha-voltha
@@ -53,6 +60,7 @@
             - "--backend=etcd"
             - "--pon-subnet=10.38.0.0/12"
             - "--ponsim-comm=grpc"
+            - "--core-number-extractor=^.*-([0-9]+)_.*$"
           ports:
             - containerPort: 8880
               name: rest-port