Pada artikel ini, kita akan melihat cara membuat penerapan pertama Anda di Cluster Kubernetes. Sebagai contoh, kami akan membuat penerapan untuk NginX.
Setelah cluster Kubernetes berjalan, kita dapat men-deploy aplikasi dalam container di atasnya. Kita dapat membuat konfigurasi Kubernetes Deployment untuk mencapainya.
A Deployment menyediakan pembaruan deklaratif untuk Pod dan ReplicaSet. Kami menjelaskan status yang diinginkan di Deployment dan Deployment Controller mengubah status aktual menjadi status yang diinginkan pada kecepatan yang terkontrol.
Kita dapat membuat dan mengelola Deployment dengan menggunakan antarmuka baris perintah "kubectl" Kubernetes. Kubectl menggunakan Kubernetes API untuk berinteraksi dengan cluster.
Ada tiga tahap dalam siklus hidup penerapan:
- Maju : Kubernetes menandai Deployment sebagai berkembang saat Deployment membuat ReplicaSet baru, Deployment meningkatkan ReplicaSet terbarunya atau mengurangi ReplicaSet lama atau Pod baru menjadi siap atau tersedia
- Selesai : Kubernetes menandai Deployment sebagai selesai bila semua replika yang terkait dengan Deployment telah diperbarui, tersedia, tidak ada replika lama untuk Deployment yang berjalan.
- Gagal : Hal ini dapat terjadi karena kuota yang tidak mencukupi, kegagalan pemeriksaan kesiapan, kesalahan pengambilan gambar, izin yang tidak memadai.
Prasyarat
- Akun AWS (Buat jika Anda belum memilikinya)
- Kluster Kubernetes
Catatan:Anda juga dapat menggunakan VM untuk membuat cluster jika Anda tidak ingin mencoba Instans AWS EC2.
Apa yang akan kami lakukan
- Buat Deployment Kubenetes untuk NginX
Buat Deployment Kubenetes untuk NginX
Untuk membuat penerapan pertama, buat direktori baru untuk membuat File Objek/Deployment. Gunakan perintah berikut untuk membuat direktori baru di sistem Anda
mkdir my-first-deployment
cd my-first-deployment/
Sebelum melanjutkan, verifikasi status cluster.
Untuk memeriksa Node yang tersedia di cluster dan untuk memeriksa versi "kubectl " gunakan perintah berikut.
versi sudo kubectl
sudo kubectl mendapatkan node
Setelah Anda memiliki Node yang tersedia di cluster, Anda siap membuat penerapan.
Buat file "my-first-deployment.yml" dengan blok kode berikut
vim my-first-deployment.yml
--- apiVersion: apps/v1 kind: Deployment metadata: name: nginx-deployment labels: app: nginx spec: replicas: 2 selector: matchLabels: app: nginx template: metadata: labels: app: nginx spec: containers: - name: nginx image: nginx:1.7.9 ports: - containerPort: 80
Di sini,
- apiVersion : APIVersion menentukan skema berversi dari representasi objek ini.
- kind :Jenis objek yang ingin Anda buat seperti Deployment, Service, Configmap, dan lainnya.
- nama : Nama harus unik dalam namespace.
- labels : Peta kunci string dan nilai yang dapat digunakan untuk mengatur dan mengkategorikan objek
- spesifikasi : Spesifikasi perilaku Penerapan yang diinginkan.
- replika : Jumlah pod yang diinginkan.
- pemilih : Pemilih label untuk pod. ReplicaSet yang ada yang podnya dipilih oleh ini akan menjadi yang terpengaruh oleh penerapan ini. Itu harus cocok dengan label template pod.
Sekarang Anda siap membuat penerapan menggunakan perintah berikut.
sudo kubectl apply -f my-first-deployment.yml
sudo kubectl dapatkan penerapan
Pada tangkapan layar di atas, Anda dapat melihat bahwa penerapan telah dibuat dengan dua pod yang tersedia untuk digunakan.
Anda bisa mendapatkan detail pod menggunakan perintah berikut.
sudo kubectl dapatkan pod
Jika Anda ingin tahu lebih banyak tentang penerapan, Anda dapat menggunakan perintah "kubectl mendeskripsikan" untuk mendapatkan detail lengkap penerapan.
sudo kubectl mendapatkan penerapan
sudo kubectl menjelaskan penerapan nginx-deployment
Jika Anda tidak lagi memerlukan penerapan, Anda dapat menghapusnya menggunakan "perintah hapus kubectl".
sudo kubectl dapatkan penerapan
sudo kubectl hapus penerapan nginx-deployment
sudo kubectl dapatkan penerapan
Pada tangkapan layar di atas, Anda dapat melihat bahwa penerapan tidak lagi tersedia setelah dihapus.
Setelah Anda menghapus penerapan, pod juga akan dihapus.
Anda dapat memeriksa ketersediaan pod menggunakan perintah berikut.
sudo kubectl dapatkan pod
Pada tangkapan layar di atas, Anda dapat melihat bahwa pod telah dihapus setelah penerapan dihapus dan tidak tersedia.
Kesimpulan
Dalam artikel ini, kita melihat langkah-langkah untuk membuat Deployment NginX pertama Anda di Kubernetes. Kami juga melihat bagaimana detail mengenai penerapan dapat diekstraksi. Bersamaan dengan ini, kami menjelajahi perintah untuk menghapus penerapan.