Pod: Unit Terkecil
Pelajari Pod, blok pembangun fundamental dalam Kubernetes, serta cara mendefinisikan dan mengelolanya.
Pod: Unit Terkecil adalah pelajaran Docker & DevOps Fundamentals gratis di CoddyKit. Ini adalah pelajaran 2 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Docker & DevOps Fundamentals, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Docker & DevOps Fundamentals mencakup 4 pelajaran total.
Apa Itu Pod Kubernetes?
Di Kubernetes, unit terkecil dan paling mendasar yang dapat Anda terapkan adalah Pod. Anggaplah Pod sebagai satu "rumah" yang menampung satu atau beberapa kontainer.
Pod merupakan abstraksi di atas kontainer. Pod merepresentasikan proses yang sedang berjalan di klaster Anda serta membungkus kontainer aplikasi, sumber daya penyimpanan, IP jaringan yang unik, dan opsi yang mengatur cara kontainer harus berjalan.

Pod vs. Kontainer: Perbedaannya
Anda mungkin bertanya, "Mengapa saya memerlukan Pod jika sudah memiliki kontainer?" Inilah perbedaan utamanya:
- Kontainer (seperti kontainer Docker) adalah paket aplikasi beserta dependensinya.
- Pod adalah abstraksi Kubernetes yang membungkus satu atau beberapa kontainer dan menyediakan sumber daya bersama serta satu identitas jaringan.
Kontainer adalah berkas yang dapat dieksekusi secara nyata, sedangkan Pod adalah cara Kubernetes mengelola dan mengorkestrasi berkas-berkas yang dapat dieksekusi tersebut.
Mengapa Menggunakan Pod?
Pod menawarkan beberapa manfaat penting:
- Ruang Nama Jaringan Bersama: Semua kontainer dalam sebuah Pod berbagi alamat IP dan port jaringan yang sama. Kontainer-kontainer tersebut dapat saling berkomunikasi menggunakan
localhost. - Penyimpanan Bersama: Pod dapat berbagi volume penyimpanan sehingga kontainer dalam Pod yang sama dapat mengakses data bersama.
- Penempatan & Penjadwalan Bersama: Kontainer yang perlu bekerja sama secara erat (misalnya aplikasi dan agen logging) dapat dipastikan berjalan pada node yang sama dan selalu dijadwalkan bersama.
Anatomi Definisi Pod
Pod didefinisikan menggunakan file konfigurasi YAML. Berikut komponen utama yang akan Anda temukan:
apiVersion: Menentukan versi API Kubernetes (misalnya,v1).kind: Jenis objek Kubernetes, yaituPod.metadata: Informasi sepertinamedanlabelsmilik Pod.spec: Keadaan yang diinginkan untuk Pod, termasukcontainersyang harus dijalankan,volumes, dan pengaturan lainnya.
Mendefinisikan Pod dengan Satu Kontainer
Sebagian besar Pod berisi satu kontainer. Hal ini umum untuk aplikasi sederhana. Berikut definisi YAML dasar untuk Pod yang menjalankan server web Nginx:
apiVersion: v1
kind: Pod
metadata:
name: my-nginx-pod
labels:
app: webserver
spec:
containers:
- name: nginx-container
image: nginx:latest
ports:
- containerPort: 80Menerapkan Pod Pertama Anda
Untuk membuat Pod dari file YAML, Anda menggunakan perintah kubectl apply. Perintah ini memberi tahu Kubernetes untuk membuat atau memperbarui sumber daya berdasarkan definisi Anda.
Misalkan Anda menyimpan definisi Pod Nginx sebelumnya sebagai nginx-pod.yaml. Anda dapat menerapkannya seperti berikut:
kubectl apply -f nginx-pod.yaml
Kubernetes kemudian akan menjadwalkan Pod ini agar berjalan pada salah satu node pekerjanya.
Memeriksa Pod: Get & Describe
Setelah diterapkan, Anda tentu ingin memeriksa status Pod. Berikut dua perintah kubectl yang penting:
kubectl get pods: Menampilkan semua Pod dalam ruang nama saat ini, beserta nama, status, dan nodenya.kubectl describe pod <pod-name>: Menyediakan informasi terperinci tentang Pod tertentu, termasuk peristiwa, status kontainer, dan sumber daya yang ditetapkan.
Perintah-perintah ini sangat penting untuk pemantauan dan pemecahan masalah.
Pod Multi-Kontainer: Sidecar
Pod dengan satu kontainer memang umum, tetapi beberapa situasi lebih cocok menggunakan Pod multi-kontainer. Contoh klasiknya adalah Pola Sidecar.
Kontainer sidecar berjalan bersama kontainer aplikasi utama Anda dalam Pod yang sama dan melakukan tugas pendukung seperti:
- Agen logging dan pemantauan
- Sinkronisasi data
- Memproksikan lalu lintas jaringan
Kontainer-kontainer tersebut berbagi jaringan dan penyimpanan Pod sehingga komunikasi menjadi efisien.
Contoh: Pod Multi-Kontainer
Berikut contoh Pod multi-kontainer. Pod ini memiliki server web Nginx dan kontainer sidecar busybox yang menulis log ke volume bersama.
apiVersion: v1
kind: Pod
metadata:
name: multi-container-pod
spec:
volumes:
- name: shared-log-volume
emptyDir: {}
containers:
- name: web-server
image: nginx:latest
ports:
- containerPort: 80
volumeMounts:
- name: shared-log-volume
mountPath: /var/log/nginx
- name: log-writer
image: busybox:latest
command: ["/bin/sh", "-c", "while true; do echo 'Hello from sidecar!' >> /var/log/app.log; sleep 5; done"]
volumeMounts:
- name: shared-log-volume
mountPath: /var/log/appUji Pengetahuan Anda tentang Pod
Pernyataan manakah berikut ini tentang Pod Kubernetes yang TRUE?
Rangkuman: Pod - Unit Inti
Anda baru saja mempelajari Pods Kubernetes, yaitu blok pembangun mendasar aplikasi Anda dalam sebuah klaster.
- Pod membungkus satu atau beberapa kontainer dan menyediakan sumber daya bersama.
- Pod menyediakan jaringan dan penyimpanan bersama serta menjamin penempatan bersama untuk kontainer yang terkait.
- Anda mendefinisikan Pod menggunakan YAML dan menerapkannya dengan
kubectl apply. kubectl get podsdankubectl describe podmembantu Anda memantaunya.
Selanjutnya, kita akan mempelajari lebih banyak perintah kubectl untuk berinteraksi dengan klaster Anda!
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Pod: Unit Terkecil” gratis?
Ya — teks lengkap “Pod: Unit Terkecil” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Docker & DevOps Fundamentals, upgrade ke CoddyKit PRO. Kursus Docker & DevOps Fundamentals mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Pod: Unit Terkecil”?
Pelajari Pod, blok pembangun fundamental dalam Kubernetes, serta cara mendefinisikan dan mengelolanya. Kamu berlatih Docker & DevOps Fundamentals dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Docker & DevOps Fundamentals?
Tidak diperlukan pengalaman sebelumnya. Docker & DevOps Fundamentals di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 2 dari 4.
Berapa lama pelajaran “Pod: Unit Terkecil” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Docker & DevOps Fundamentals ini?
Ya. Setiap pelajaran Docker & DevOps Fundamentals menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Arsitektur Kubernetes
- Pod: Unit Terkecil
- Dasar-Dasar Perintah kubectl
- Namespace dan Label untuk Organisasi