Deployment untuk Aplikasi Tanpa Status
Gunakan Deployment untuk mengelola aplikasi tanpa status, termasuk pembaruan bergulir dan pengembalian versi.
Deployment untuk Aplikasi Tanpa Status adalah pelajaran Docker & DevOps Fundamentals gratis di CoddyKit. Ini adalah pelajaran 1 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.
Berkenalan dengan Deployment Kubernetes
Selamat datang di konsep dasar Kubernetes: Deployments! Deployment adalah sumber daya andalan Anda untuk mengelola aplikasi tanpa status.
Anggap Deployment sebagai cetak biru aplikasi Anda. Deployment memberi tahu Kubernetes berapa banyak salinan (replika) aplikasi yang ingin Anda jalankan dan cara memperbaruinya tanpa waktu henti.

Melampaui Pod dan ReplicaSets
Anda telah mempelajari Pod (unit terkecil) dan ReplicaSets (yang memastikan jumlah Pod tertentu).
Deployment berada di atas ReplicaSet. Deployment menyediakan abstraksi tingkat lebih tinggi untuk:
- Membuat dan memperbarui ReplicaSet.
- Meluncurkan versi baru aplikasi.
- Mengembalikan aplikasi ke versi sebelumnya jika terjadi masalah.
Dengan demikian, pengelolaan aplikasi menjadi jauh lebih mudah dan aman.
Bagian Dalam YAML Deployment
Seperti sumber daya Kubernetes lainnya, Deployment didefinisikan menggunakan YAML. Mari kita lihat struktur dasarnya:
apiVersion: Menentukan versi API Kubernetes (misalnya,apps/v1).kind: SelaluDeploymentuntuk sumber daya Deployment.metadata: Berisi informasi sepertinameDeployment danlabelsopsional.
Kolom-kolom ini membantu Kubernetes mengidentifikasi dan mengatur deployment Anda.
Menentukan Replika & Templat
Inti dari Deployment adalah bagian spec. Di sini, Anda mendefinisikan:
replicas: Jumlah Pod identik yang diinginkan untuk aplikasi Anda.selector: Cara Deployment menemukan Pod yang dikelolanya (menggunakan label).template: Pada dasarnya ini adalah definisi Pod yang menjelaskan kontainer, volume, dan lain-lain untuk setiap Pod.
template digunakan Deployment untuk membuat Pod baru.
Deployment Nginx Kita
Berikut manifes Deployment sederhana untuk server web Nginx. Manifes ini memberi tahu Kubernetes untuk menjaga agar 3 Pod Nginx tetap berjalan.
Cobalah memahami setiap bagiannya!
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
labels:
app: nginx
spec:
replicas: 3
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:1.14.2
ports:
- containerPort: 80Membuat Deployment Anda
Setelah memiliki file YAML Deployment (misalnya, nginx-deployment.yaml), Anda dapat membuat Deployment dalam klaster Kubernetes menggunakan perintah kubectl apply.
Kubernetes kemudian akan memastikan jumlah Pod yang diinginkan dibuat dan dipertahankan.
kubectl apply -f nginx-deployment.yamlAnda dapat memeriksa statusnya dengan:
kubectl get deploymentsMenambah & Mengurangi Skala
Memerlukan lebih banyak atau lebih sedikit instans aplikasi? Deployment memudahkan penskalaan! Anda dapat menyesuaikan kolom replicas dalam YAML lalu menerapkannya kembali, atau menggunakan perintah langsung:
kubectl scale deployment nginx-deployment --replicas=5Perintah ini akan segera memberi tahu Deployment untuk membuat 2 Pod Nginx tambahan sehingga jumlah totalnya menjadi 5.
Pembaruan Tanpa Waktu Henti
Salah satu manfaat terbesar Deployment adalah kemampuannya melakukan pembaruan bergulir. Saat Anda memperbarui templat Pod (misalnya, mengubah versi image), Kubernetes tidak mematikan semua Pod lama sekaligus.
Sebaliknya, Kubernetes secara bertahap mengganti Pod lama dengan yang baru sehingga aplikasi Anda tetap tersedia selama proses pembaruan.
kubectl set image deployment/nginx-deployment nginx=nginx:1.16.1Melakukan Rollback dengan Mudah
Apakah Anda melakukan kesalahan saat memperbarui? Jangan khawatir! Deployment menyimpan riwayat revisi Anda sehingga Anda dapat dengan mudah kembali ke versi sebelumnya yang stabil.
Proses ini disebut rollback dan merupakan jaring pengaman penting untuk deployment.
kubectl rollout undo deployment/nginx-deploymentAnda juga dapat memeriksa riwayatnya dengan kubectl rollout history deployment/nginx-deployment.
Saatnya Kuis Deployment
Seorang pengembang memperbarui Deployment Nginx dari image nginx:1.14.2 menjadi nginx:1.16.1. Apa manfaat utama menggunakan Deployment Kubernetes untuk pembaruan ini?
Deployment: Inti Pembelajaran
Bagus sekali! Anda telah mempelajari Deployment Kubernetes, sumber daya yang andal untuk mengelola aplikasi tanpa status.
- Deployment mengelola ReplicaSets, yang kemudian mengelola Pod.
- Deployment menentukan keadaan yang diinginkan, termasuk jumlah
replicas. - Fitur utamanya mencakup penskalaan yang mudah, pembaruan bergulir tanpa waktu henti, dan rollback sederhana ke versi sebelumnya.
Selanjutnya, kita akan mempelajari Layanan untuk mengekspos aplikasi Anda!
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Deployment untuk Aplikasi Tanpa Status” gratis?
Ya — teks lengkap “Deployment untuk Aplikasi Tanpa Status” 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 “Deployment untuk Aplikasi Tanpa Status”?
Gunakan Deployment untuk mengelola aplikasi tanpa status, termasuk pembaruan bergulir dan pengembalian versi. 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 1 dari 4.
Berapa lama pelajaran “Deployment untuk Aplikasi Tanpa Status” 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
- Deployment untuk Aplikasi Tanpa Status
- Service untuk Akses Jaringan
- ConfigMaps & Secret
- Ingress dan Perutean Eksternal