Anda di halaman 1dari 4

RANGKUMAN TENTANG

DOCKER & KUBERNETES

DIBUAT OLEH :
NAMA : MUHAMMAD AKHMAL AKBAR NURRIZKY
NRP : 3121521026
KELAS : 1 PD ITA-LA D3
Docker
Apa itu docker? Docker adalah aplikasi untuk menyatukan berbagai file software dan pendukungnya
dalam sebuah wadah (container) agar memudahkan proses pengembangan software.

Fungsi Docker
1. Mempermudah Pengembangan Aplikasi
Docker bisa mempermudah pekerjaan developer ketika mengembangkan aplikasi.
2. Menyederhanakan Konfigurasi
Docker tidak memiliki overhead sehingga developer bisa menjalankan aplikasi yang diuji tanpa
konfigurasi tambahan.
3. Memudahkan Pengembangan Kode Pipeline
Developer bisa memanfaatkan Docker container sebagai tempat pengujian kode Pipeline
beserta tools yang diperlukan dengan lebih mudah.
4. Bisa Digunakan untuk Debugging
Adanya fitur debug bisa membantu developer untuk mengatasi masalah pada aplikasi tanpa
perlu bersusah payah meninggalkan environment di Docker.
5. Mendukung Multitenancy
Docker cocok digunakan untuk membuat aplikasi berstruktur multitenance seperti Software as a
Service (SaaS). Anda bisa membuat lebih dari satu environment yang terisolasi dan menjalankan
objek aplikasi untuk setiap tenant.
6. Meningkatkan Sumber Daya dengan Cepat
Dengan Docker, peningkatan sumber daya perangkat dapat dilakukan dengan cepat sehingga
durasi pengembangan software  lebih singkat.

Istilah – istilah dalam Docker

 Docker image — Kumpulan file yang menunjang sebuah aplikasi.


 Docker container — Wadah untuk mengemas dan menjalankan aplikasi. Wadah ini mencakup
kode, runtime, system tools, dan pengaturan. Container hanya bisa mengakses resource yang
telah ditentukan dalam Docker image.
 Docker client — Tempat di mana pengguna dapat mengirimkan perintah seperti Docker build,
Docker pull, dan Docker run kepada Docker daemon.
 Docker Engine Rest API — Komponen yang digunakan untuk berinteraksi dengan Docker
daemon. Komponen ini bisa diakses klien melalui HTTP.
 Docker daemon — Proses pengelolaan Docker images, container, network, dan storage
volumes. Docker daemon menerima request dari Docker API dan akan memprosesnya.
 Docker host — Komponen yang menyediakan lingkungan untuk menjalankan aplikasi. Docker
host bertanggung jawab menerima perintah yang diberikan Docker client.
 Docker registry — Wadah untuk menyimpan Docker image. Docker image akan memberi reaksi
sesuai perintah yang diberikan. Misalnya, saat diberi perintah docker push, docker image akan
didorong atau dibagikan ke registry Docker Hub.
 Docker Hub — Layanan yang disediakan untuk menemukan dan berbagi Docker image.
Kubernetes

Apa itu kubernetes? Kubernetes adalah platform open source untuk mengelola kumpulan kontainer
dalam suatu cluster server. Platform ini pertama kali dikembangkan oleh Google dan kini dikelola oleh
Cloud Native Computing Foundation (CNCF) sebagai platform manajemen kontainer yang cukup populer.

Kontainer sendiri adalah environment dengan sumber daya, CPU, dan sistem file untuk satu aplikasi.
Jadi, aplikasi tersebut akan memiliki sumber daya sendiri. Keuntungannya, aplikasi jadi tidak mudah
mengalami downtime.

Komponen – komponen kubernetes

 Cluster - Cluster adalah suatu kelompok berisi server fisik atau VPS untuk menjalankan
Kubernetes. Ada dua jenis server yang dibutuhkan, yaitu master node dan worker node.

 Object - Di dalam sebuah cluster, terdapat berbagai object, yaitu entitas yang
merepresentasikan kondisi dari suatu cluster.

Keunggulan kubernetes

 Service Discovery dan Load Balancing


Fitur service discovery memudahkan untuk melacak kontainer dengan otomatis. Hal ini tentu
sangat penting di dalam mengembangkan aplikasi microservices. Kubernetes dapat mengenali
sebuah service berdasar DNS atau IP address server tersebut.
 Storage Orchestration
Kubernetes memungkinkan Anda melakukan mount pada media penyimpanan (storage) pilihan
Anda seperti, storage lokal atau yang berbasis cloud seperti AWS dan lainnya. 
 Automated Rollouts and Rollbacks
Fitur automated rollouts dan rollback sangat penting untuk membantu Anda terkait
deployment. Pada Kubernetes, deployment bisa menggunakan file YAML yang di dalamnya nanti
akan berisi ReplicaSet. 
 Automatic Bin Packing
Menggunakan fitur Automatic Bin Packing, Anda bisa mengatur kapasitas CPU dan sumber daya
tiap kontainer secara spesifik. Jadi saat limit kapasitas sudah ditentukan, aplikasi terhindar dari
berebut sumber daya. Selain itu, sumber daya jadi lebih hemat. 
 Self Healing
Fitur self-healing sangat penting bagi Anda yang ingin terus menjalankan aplikasi selama 24 jam.
Nah, Kubernetes memiliki kemampuan untuk memeriksa kontainer yang ada, apakah dalam
keadaan running (berjalan) atau mengalami error.
Kubernetes Vs Docker
Kubernetes sering dibandingkan dengan Docker karena keduanya sama-sama mengelola kontainer.
Padahal, dua platform tersebut berbeda dan tidak saling menggantikan. 
Docker merupakan platform yang berfungsi untuk membuat kontainer untuk aplikasi dalam perannya
sebagai container manager. Sedangkan, Kubernetes adalah platform dari seluruh ekosistem kerja yang
berisi kumpulan container manager.
Singkatnya, Docker bisa menjadi bagian dari Kubernetes dan bukan sebaliknya. Namun, Anda dapat
menggunakan keduanya bersamaan dalam sebuah ekosistem kerja.
Docker sendiri memiliki platform ekosistem yang disebut dengan Docker Swarm. Jadi, perbandingan
yang tepat sebenarnya adalah antara Kubernetes dan Docker Swarm.
Pun demikian, inilah tabel perbandingan Kubernetes vs Docker untuk lebih memudahkan Anda
memahaminya:

Parameter Kubernetes Docker

Aplikasi untuk mengelola kontainer Aplikasi untuk membuat kontainer di


Definisi
dalam suatu cluster server sebuah server

Deployment Kombinasi pod dan service Kumpulan service

Melakukan replikasi service secara


Skalabilitas  Otomatis menambah jumlah pod
manual

Load Menggunakan service yang Menggunakan DNS untuk


Balancing mengekspos Pod mendistribusikan trafik ke sebuah service

Penggunaan Harus dengan platform kontainer Bisa berjalan tanpa platform lain

Docker masih tetap menjadi favorit di antara software container lainnya karena Docker Engine yang
dimilikinya bisa berjalan di berbagai ekosistem. Inilah yang membuat Docker cocok digunakan untuk
membangun aplikasi yang scalable.

Sayangnya, perkembangan aplikasi yang terlalu kompleks akan menjadi sulit dikelola. Itulah kenapa
Kubernetes diperlukan.

Penting untuk dicatat bahwa untuk dapat membangun aplikasi yang scalable, Anda tentu harus
menggunakan server yang bisa diatur sesuai dengan kebutuhan resource Anda. Untuk itu layanan VPS
lah yang paling tepat digunakan.

Anda mungkin juga menyukai