Skip to main content

Container Orchestration Memakai Docker Swarm



Container Orchestration memakai Docker Swarm - Pada artikel sebelumnya, cara memakai docker compose.  Salah satu fitur docker yang dihentikan kita lewatkan ialah docker swarm. Docker Swarm merupakan Container Orchestration System yang disediakan oleh docker untuk memdistribusikan docker contrainer pada system cluster. Dengan kita memanfaatkan docker swarm, kita sanggup menciptakan sebuah management yang centralized baik itu create, destroy, scaling up dan scaling down container pada docker swarm manager.

Konfigurasi Docker Swarm

Untuk menciptakan sebuah docker swarm, diharapkan host yang sudah terinstall docker engine. Pada pola kali ini aku akan menciptakan 3 buah docker node, dimana 1 node akan dipakai sebagai manager dan 2 buah node lainnya dipakai untuk swarm worker. Agar lebih gampang menciptakan docker host kita sanggup memakai docker machine.

Setup docker host memakai docker machine
docker-machine create -d virtualbox manager
docker-machine create -d virtualbox node1
docker-machine create -d virtualbox node2
Output :



Setup docker swarm cluster pada node manager

Login ke dalam docker swarm manager memakai docker-machine.
docker-machine ssh manager
Create initial sebagai master dengan ip dari host docker swarm manager 192.168.99.100
docker swarm init --advertise-addr 192.168.99.100
Setelah di setup, akan muncul token yang dipakai untuk join node ke docker swarm manager.
docker swarm join --token SWMTKN-1-2rqhmivd1tx2c3pdw50x383tzf0v486kej1or3rk6ecjy31476-3cz5305q7mc2sfnvervpd8bmy 192.168.99.100:2377 
Output :

Setup docker worker untuk join ke cluster

Login ke dalam docker node1 memakai docker-machine.
docker-machine ssh node1
Jalankan command dari swarm manager pada node 1 dan node 2 untuk join node pada cluster.

Output :


Sempai disini semua node sudah join pada cluster.



Create service pada docker swarm

Pada pola kali ini aku akan menciptakan sebuah service http memakai nginx dengan jumlah container 5.
docker service create --name web --replicas=5 -p 8080:80 nginx:alpine
Pastikan container sudah terbuat.
docker service ls
Output :

Kita juga sanggup melihat proses orchestration untuk service web yang running pada node lain.
docker service ps web
Output :


Sampai disini web service sudah running, pastikan sudah sanggup di terusan via browser.
http://192.168.99.100:8080
Output:


Scaling up dan Scaling down

Seperti yang sudah aku sebutkan di atas, salah satu fitur dari docker swarm ialah scaling. Pada pola kali ini, aku akan scale jumlah container untuk service web.
docker service scale web=10
Output :


Inspect node via swarm manager

Pada docker swarm manager kita sanggup melihat gosip mengenai node worker.
docker node inspect --pretty node1
Output :


Setup mode drain untuk maintenance

Jika kita ingin melaksanakan update pada host tanpa mengganggu container yang sedang running sanggup memakai mode drain. Mode drain akan memindahkan seluruh container ke host yang sedang aktif. Pada pola kali ini aku kan mencoba setup mode drain pada docker swarm manager.
docker node update --availability drain manager
Output:


Dari gambar diatas, terlihat container yang running pada swarm manager sudah pindah ke node1 dan node2.

Selanjutnya kita sanggup update image melalui swarm manager. Sebagai pola aku akan update image dari nginx ke httpd.
docker service update --image httpd:alpine web
Output :


Dari gambar diatas container sudah memakai images httpd.

Remove service

Jika kita ingin menghapus service sanggup memakai perintah berikut.
docker service rm web
Demikian tutorial docker kali ini mengenai container orchestration dengan docker swarm. Docker swarm sangat powerfull, akan tetapi jikalau teman ingin mencoba orchestration yang lebih menarik sanggup mencoba Kubernetes. Semoga bermanfaat bagi kita semua dan selamat mencoba.!!!

Sumber http://www.dimasrio.com/
Comment Policy: Silahkan tuliskan komentar Anda yang sesuai dengan topik postingan halaman ini. Komentar yang berisi tautan tidak akan ditampilkan sebelum disetujui.
Buka Komentar
Tutup Komentar