diff --git a/ran/accelleran-cu/templates/statefulset-accelleran.yaml b/ran/accelleran-cu/templates/statefulset-accelleran.yaml
new file mode 100644
index 0000000..31431e9
--- /dev/null
+++ b/ran/accelleran-cu/templates/statefulset-accelleran.yaml
@@ -0,0 +1,145 @@
+{{/*
+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.
+*/}}
+
+{{ tuple "accelleran-cu" . | include "accelleran-cu.service_account" }}
+
+---
+apiVersion: apps/v1
+kind: StatefulSet
+metadata:
+  name: accelleran-cu
+  labels:
+{{ tuple "accelleran-cu" . | include "accelleran-cu.metadata_labels" | indent 4 }}
+spec:
+  replicas: {{ .Values.config.vran.replicas }}
+  selector:
+    matchLabels:
+{{ tuple "accelleran-cu" . | include "accelleran-cu.metadata_labels" | indent 6 }}
+  serviceName: "accelleran-cu"
+  template:
+    metadata:
+      labels:
+{{ tuple "accelleran-cu" . | include "accelleran-cu.metadata_labels" | indent 8 }}
+    spec:
+      terminationGracePeriodSeconds: 1
+    {{- if .Values.nodeSelectors.enabled }}
+      nodeSelector:
+        {{ .Values.nodeSelectors.accelleranCU.label }}: {{ .Values.nodeSelectors.accelleranCU.value }}
+    {{- end }}
+      serviceAccountName: accelleran-cu
+      initContainers:
+      - name: cu-init
+        image: {{ .Values.images.tags.initCU }}
+        imagePullPolicy: {{ .Values.images.pullPolicy }}
+        securityContext:
+          privileged: true
+          runAsUser: 0
+        command: [ "sh",  "-c"]
+        args:
+        - >
+          iptables -I OUTPUT -p icmp --icmp-type destination-unreachable -j DROP;
+          if chroot /mnt/host-rootfs modinfo nf_conntrack_proto_sctp > /dev/null 2>&1; then \
+              chroot /mnt/host-rootfs modprobe nf_conntrack_proto_sctp; \
+          fi; \
+        volumeMounts:
+        - name: host-rootfs
+          mountPath: /mnt/host-rootfs
+      containers:
+      - name: nats
+        image: {{ .Values.images.tags.nats }}
+        imagePullPolicy: {{ .Values.images.pullPolicy }}
+        securityContext:
+          capabilities:
+            add:
+              - NET_ADMIN
+              - IPC_LOCK
+        stdin: true
+        tty: true
+        env:
+        - name: NATS_SERVICE_NAME
+          value: {{ .Values.config.nats.serviceName }}
+        command: [ "sh", "-c"]
+        args:
+        - gnatsd -DV -c /etc/gnatsd.conf;
+      {{- if .Values.resources.enabled }}
+        resources:
+{{ toYaml .Values.resources.accelleranCU | indent 10 }}
+      {{- end }}
+      - name: redis
+        image: {{ .Values.images.tags.redis }}
+        imagePullPolicy: {{ .Values.images.pullPolicy }}
+        securityContext:
+          capabilities:
+            add:
+              - NET_ADMIN
+              - IPC_LOCK
+        stdin: true
+        tty: true
+        command: ["sh", "-c"]
+        args:
+        # FIXME: Redis can't support with dns resolution, can't set hostname at here.
+        - (sleep 5; redis-cli -h localhost -p {{ .Values.config.vran.ports.redis.port }} set NATS_SERVICE_URL "nat://{{ .Values.config.nats.ip }}:{{ .Values.config.vran.ports.nats.port }}";) &
+          /usr/local/bin/redis-server
+      {{- if .Values.resources.enabled }}
+        resources:
+{{ toYaml .Values.resources.accelleranCU | indent 10 }}
+      {{- end }}
+      - name: vran-l3
+        image: {{ .Values.images.tags.vranL3 }}
+        imagePullPolicy: {{ .Values.images.pullPolicy }}
+        securityContext:
+          capabilities:
+            add:
+            - NET_ADMIN
+            - IPC_LOCK
+            - SYS_NICE
+        stdin: true
+        tty: true
+        env:
+          - name: MME_IP
+            value: {{ .Values.config.mme.ip }}
+        command: ["sh", "-c"]
+        args:
+        - sqlite3 /mnt/app/datastore.db "update cellS1apConfig set enbSctpPort={{ .Values.config.vran.ports.s1ap.port }};";
+          sqlite3 /mnt/app/datastoreRemRw.db "update FapServiceFapControlLteGateway set S1SigLinkPort={{ .Values.config.mme.s1apPort }};";
+          sqlite3 /mnt/app/datastoreRemRw.db "update FapServiceCellConfigLteEpcPlmnList set PLMNID={{ .Values.config.epc.plmnId }};";
+          sqlite3 /mnt/app/datastore.db "insert into enbSctpSocketInterface ('interfaceName') values ('{{ .Values.config.vran.socketInterface }}');";
+          sqlite3 /mnt/app/datastore.db "update logging set severity=7 where id=25;";
+{{- if .Values.config.progran.enabled }}
+          sqlite3 /mnt/app/datastore.db "update featureActivation set mmeSlicingEnabled=1;";
+          sqlite3 /mnt/app/datastore.db "update featureActivation set ranSlicingEnabled=1;";
+          sqlite3 /mnt/app/datastore.db "insert into pranServerAddress (pranServerIpAddress,pranServerPort) values ('{{ .Values.config.progran.ip }}', {{ .Values.config.progran.port }});";
+{{- end}}
+          sleep 10;
+          /l3/l3start;
+        volumeMounts:
+        - name: bbu-config
+          mountPath: /mnt/app/bootstrap.txt
+          subPath: bootstrap.txt
+      {{- if .Values.resources.enabled }}
+        resources:
+{{ toYaml .Values.resources.accelleranCU | indent 10 }}
+      {{- end }}
+      volumes:
+        - name: bbu-config
+          configMap:
+            name: accelleran-cu-config
+            items:
+              - key: bootstrap.txt
+                path: bootstrap.txt
+        - name: host-rootfs
+          hostPath:
+            path: /
