Memasuki transformasi terbesar industri telecom: memahami NFV dan arsitektur MANO dari ETSI, perbedaan VNF virtual machine vs CNF container, cara Kubernetes menjadi platform telco dengan SR-IOV dan CPU pinning, serta praktik men-deploy network function open-source di lab Kubernetes

Setelah di episode 13 kita menguasai slicing dan QoS, ada pertanyaan infrastruktur yang menggantung sejak episode 5: di mana sesungguhnya AMF/SMF/UPF itu berjalan? Jawabannya mengubah wajah industri sepuluh tahun terakhir: bukan lagi di kotak hardware khusus vendor, melainkan di telco cloud — pusat data standar tempat fungsi jaringan hidup sebagai VM atau container.
Mengapa telecom engineer wajib paham topik ini? Karena migrasi NFV/telco cloud adalah proyek terbesar operator saat ini, dan profil engineer yang dicari persis seperti hasil series ini: paham telecom DAN cloud-native. Engineer core yang tidak bisa membaca kubectl akan kehilangan akses ke setengah jaringan yang ia kelola.
Dulu: tiap fungsi jaringan = appliance khusus. MME punya raknya sendiri, firewall punya raknya sendiri — mahal, lambat upgrade, terkunci vendor. Ide NFV (Network Functions Virtualization, dipelopori ETSI ISG 2012): jalankan fungsi jaringan sebagai software biasa di atas server commodity.
Arsitektur kerangka NFV ETSI:
Tiga komponen MANO yang sering tertukar: VIM mengelola infrastruktur (contoh nyata: OpenStack, Kubernetes), VNFM mengelola siklus hidup satu VNF (deploy/scale/heal), NFVO menyusun layanan end-to-end dari banyak VNF (NS = network service).
Dua gelombang implementasi:
| Aspek | VNF (VM-based) | CNF (container/K8s) |
|---|---|---|
| Isolasi | Hypervisor kuat | Namespace/cgroup |
| Boot/scale | Menit | Detik |
| Density | Rendah | Tinggi |
| Cocok untuk | Data plane berat legacy, transisi | Core 5GC modern, control plane |
| Contoh | vMME generasi awal, vEPC | Open5GS, AMF/SMF/UPF container |
Realita operator 2026: keduanya hidup berdampingan. Data plane berat (misal UPF throughput puluhan Gbps) kadang tetap VM dengan passthrough; control plane hampir selalu sudah CNF. Arah pastinya: cloud-native penuh.
Kubernetes standar tidak langsung cocok untuk telecom — ada tuntutan khusus:
Fungsi jaringan telecom (terutama UPF) butuh throughput tinggi dan latency stabil. Solusi tipikal:
Manifest contoh UPF dengan resource khusus:
apiVersion: apps/v1
kind: Deployment
metadata:
name: upf
spec:
replicas: 1
template:
spec:
nodeSelector:
telco.node/upf: "true" # hanya host data-plane khusus
containers:
- name: upf
image: ghcr.io/example/open5gs-upf:v2.7
securityContext:
privileged: true # akses DPDK/VF
resources:
requests:
cpu: "8"
memory: 16Gi
hugepages-2Mi: 4Gi
limits:
cpu: "8"
memory: 16Gi
hugepages-2Mi: 4GiOperator mensyaratkan availability 99.999% — Kubernetes memberi fondasi, tapi engineer harus menyetel sisanya: anti-affinity antar replica (jangan satu host), PodDisruptionBudget, liveness/readiness probe benar, dan stateful storage (StatefulSet + PV) bagi NF berstate.
Important
Cloud-native ≠ otomatis high availability. Replica ganda tanpa anti-affinity bisa mati bersamaan saat satu node rusak. HA lahir dari desain eksplisit: penempatan, health check, dan strategi failover per-fungsi jaringan.
Kita deploy Open5GS (subset NF) ke Kubernetes lokal — microk8s/k3d cukup.
kubectl create namespace telco-lab
kubectl config set-context --current --namespace=telco-labhelm repo add open5gs https://gradiant.github.io/open5gs-charts
helm install mycore open5gs/open5gs \
--set amf.enabled=true \
--set nrf.enabled=true \
--set smf.enabled=true \
--set mongodb.enabled=true
kubectl get pods -wTunggu semua Running. Perhatikan betapa cepatnya dibanding provisioning appliance: dari nol ke core network dalam hitungan menit.
Simulasi insiden: matikan paksa pod SMF dan saksikan self-healing:
SMF_POD=$(kubectl get pods -o name | grep smf)
kubectl delete $SMF_POD
kubectl get pods -w # pod baru muncul otomatisInilah inti janji telco cloud: resiliency via orchestration — failure ditangani sistem, bukan oleh teknisi yang bangun tengah malam.
kubectl scale deployment/amf --replicas=2
kubectl get pods -o wide # cek tersebar di node bedaPola scaling semacam ini adalah mekanisme di balik slice enterprise dedicated (episode 13): instance tambahan dideploy di namespace/node pool terpisah secara on-demand.
Telco cloud tidak hanya di DC pusat. Pola distribusi umum:
| Lokasi | Konten | Alasan |
|---|---|---|
| Central DC | Control plane (AMF/SMF), NRF, OSS | Konsolidasi |
| Regional edge | UPF agregat | Latency regional |
| Site edge (MEC) | UPF lokal + aplikasi enterprise | Latency < 10 ms |
Konsekuensi engineering: manajemen ribuan cluster edge → butuh GitOps fleet management (ArgoCD/Rancher) dan observability terpusat — topik lanjutan yang sangat diminati pasar kerja.
Inti yang harus dibawa pulang:
Di episode 15 kita menyelesaikan sisi operasional: network automation telecom — NETCONF/YANG, Ansible, dan zero-touch provisioning untuk ribuan perangkat. Sampai jumpa!