DevOps ? mungkin dari kita sudah sering mendengar istilah DevOps atau mungkin masih asing dengan istilah DevOps? disini kami akan mencoba menjelaskan sedikit tentang definisi DevOps, karena topik yang akan kita bahas adalah pengenalan software docker orchestration yaitu kubernetes.
DevOps merupakan istilah baru atau paradigma baru tentang metode kolaborasi antara tim developer dan tim operasional, dimana biasanya yang menerapkan metode DevOps adalah Software Engineer, System Administrator dan Network Engineer.
Kubernetes adalah platform open-source berbasis Linux yang dirancang untuk mengotomatisasi penempatan, penskalaan, dan manajemen aplikasi yang berada dalam kontainer. Dengan Kubernetes, Anda dapat dengan cepat dan efisien menanggapi permintaan pelanggan.
Fitur Kubernetes
- Automatic Binpacking
otomatis menempatkan kontainer berdasarkan kebutuhan sumber daya yang dibutuhkan dan tidak mengobarkan ketersedian resource. mengabungkan kritikal dan beban kerja terbaik untuk meningkatkan pemanfaatan dan menghemat lebih banyak sumber daya.
- Horizontal Scaling
melakukan scale up dan down aplikasi mengunakan perintah sederhana, dengan UI, atau dengan otomatis berdasarkan pengunaan cpu.
- Self-healing
merestart container yang gagal, menggantikan dan menjadwalkan ulang container saat node worker mati. mematikan container yang tidak merespon pemeriksaan kesehatan yang dibuat oleh penguna, dan tidak mengadvertise container ke klien hingga siap untuk digunakan.
- Service discovery and load balancing
tidak diperlukan memodifikasi aplikasi untuk menggunakan mekanisme service discovery yang tidak dikenal. kubernetes memberikan alamat ip pada container dan memberikan single DNS untuk sekumpulan container dan dapat load balance diantara container.
- Secret and configuration management
Deploy dan update secret dan konfigurasi aplikasi tanpa rebuild image anda tanpa memberitahukan secret dalam stack konfigurasi.
- Storage orchestration
Secara otomatis akan mounting ke sistem penyimpanan yang sudah dipilih, baik penyimpanan local, public cloud storage seperti GCP atau AWS dan network storage seperti NFS, iSCSI, Gluster, Ceph, Cinder atau Flocker.
Arsitektur Kubernetes
Pada diagram arsitektur kubernetes diatas terdapat beberapa komponen berbeda yang saling terintegrasi diantaranya adalah
1. Kubelet
2. Kubernetes controller manager
3. Kubernetes API server
Komponen Kubernetes
1. Master Components
Komponen Master menyediakan cluster control plane. komponen master berfungsi untuk mengatur penjadwalan, memulai pembuatan pod dengan replicate. berikut komponen master :
- kube-apiserver
- etcd
- kube-scheduler
- kube-controller-manager
- cloud-controller-manager
2. Node Componentes
komponen node jalan pada setiap node / worker, menjaga pod yang berjalan dan menyediakan runtime untuk kubernetes. berikuti komponen node
- kubelet
- kube-proxy
- container runtime
3. Addons
Addons adalah pod dan layanan yang mengimplementasikan fitur cluster. Pod dapat dikelola oleh Deployment, ReplicationControllers, dan sebagainya. beirkut adalah bagian dari addons.
- DNS
- Web UI (Dashboard)
- Container Resource Monitoring
- Cluster Level Logging
Refrensi :
terabitkomputer.com/2017/11/28/mengenal-open-source-container-kubernetes
https://kubernetes.io/docs/concepts/overview/components/
System Engineer
Komentar