diff --git a/voltha-adapter-openonu/templates/openonu-py-statefulset.yaml b/voltha-adapter-openonu/templates/openonu-py-statefulset.yaml
new file mode 100644
index 0000000..bba823b
--- /dev/null
+++ b/voltha-adapter-openonu/templates/openonu-py-statefulset.yaml
@@ -0,0 +1,110 @@
+# Copyright 2019-present Open Networking Foundation
+#
+# 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.
+{{- if not (and (hasKey .Values "use_openonu_adapter_go") .Values.use_openonu_adapter_go) }}
+---
+apiVersion: apps/v1
+kind: StatefulSet
+metadata:
+  name: adapter-open-onu
+  namespace: {{ .Release.Namespace }}
+  {{- if or (hasKey .Values "extra_deployment_labels") (hasKey .Values "openonu_deployment_labels") }}
+  labels:
+    {{- if hasKey .Values "extra_deployment_labels" }}
+    {{- range $key, $val := .Values.extra_deployment_labels }}
+    {{ $key }}: {{ $val | quote }}
+    {{- end }}
+    {{- end }}
+    {{- if hasKey .Values "openonu_deployment_labels" }}
+    {{- range $key, $val := .Values.openonu_deployment_labels }}
+    {{ $key }}: {{ $val | quote }}
+    {{- end }}
+    {{- end }}
+  {{- end }}
+spec:
+  replicas: {{ .Values.replicas.adapter_open_onu }}
+  podManagementPolicy: Parallel
+  serviceName: "openonu"
+  selector:
+    matchLabels:
+      app: adapter-open-onu
+      release: {{ .Release.Name }}
+  template:
+    metadata:
+      namespace: {{ .Release.Namespace }}
+      labels:
+        app: adapter-open-onu
+        release: {{ .Release.Name }}
+        app.kubernetes.io/name: "adapter-open-onu"
+        app.kubernetes.io/version: {{ quote .Chart.AppVersion }}
+        app.kubernetes.io/component: "adapter"
+        app.kubernetes.io/part-of: "voltha"
+        app.kubernetes.io/managed-by: {{ quote .Release.Service }}
+        helm.sh/chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
+        {{- if hasKey .Values "extra_pod_labels" }}
+        {{- range $key, $val := .Values.extra_pod_labels }}
+        {{ $key }}: {{ $val | quote }}
+        {{- end }}
+        {{- end }}
+        {{- if hasKey .Values "openonu_pod_labels" }}
+        {{- range $key, $val := .Values.openonu_pod_labels }}
+        {{ $key }}: {{ $val | quote }}
+        {{- end }}
+        {{- end }}
+    spec:
+      {{- if .Values.securityContext.enabled }}
+      securityContext:
+        runAsUser: {{ .Values.securityContext.runAsUser }}
+        runAsGroup: {{ .Values.securityContext.runAsGroup }}
+        fsGroup: {{ .Values.securityContext.fsGroup }}
+      {{- end }}
+      containers:
+      - name: adapter-open-onu
+        image: '{{ tpl .Values.images.adapter_open_onu.registry . }}{{ tpl .Values.images.adapter_open_onu.repository . }}:{{ tpl ( tpl .Values.images.adapter_open_onu.tag . ) . }}'
+        imagePullPolicy: {{ tpl .Values.images.adapter_open_onu.pullPolicy . }}
+        command: [ "sh", "-c"]
+        args:
+          - "REPLICA_ID=$(echo $VOLTHA_POD_NAME | grep -o '.$') && REPLICA_ID=$((REPLICA_ID + 1)) && echo $REPLICA_ID && python /voltha/adapters/brcm_openomci_onu/main.py
+              --kafka_adapter={{ .Values.services.kafka.adapter.service }}:{{ .Values.services.kafka.adapter.port }}
+              --kafka_cluster={{ .Values.services.kafka.cluster.service }}:{{ .Values.services.kafka.cluster.port }}
+              --core_topic={{ .Values.defaults.topics.core_topic }}
+              --adapter_topic={{ .Values.defaults.topics.adapter_open_olt_topic }}
+              --name={{ .Values.defaults.topics.adapter_open_onu_topic }}
+              --backend=etcd
+              --etcd={{ .Values.services.etcd.service }}:{{ .Values.services.etcd.port }}
+              --probe=:8080
+              --log_level={{ tpl .Values.adapter_open_onu.log_level . | upper }}
+              --totalReplicas={{ .Values.replicas.adapter_open_onu }}
+              --currentReplica=$REPLICA_ID"
+        readinessProbe:
+          httpGet:
+            path: /readz
+            port: 8080
+          initialDelaySeconds: 10
+          periodSeconds: 5
+        livenessProbe:
+          httpGet:
+            path: /healthz
+            port: 8080
+          initialDelaySeconds: 10
+          periodSeconds: 5
+        env:
+        - name: VOLTHA_POD_NAME
+          valueFrom:
+            fieldRef:
+              fieldPath: metadata.name
+        - name: COMPONENT_NAME
+          valueFrom:
+            fieldRef:
+              fieldPath: metadata.labels['app.kubernetes.io/name']
+{{- end }}
