GNU/Linux >> Belajar Linux >  >> Ubuntu

Bagaimana Setup dan Konfigurasi Docker Swarm Cluster di Ubuntu

Docker Swarm adalah alat yang memungkinkan Anda untuk menyebarkan sekelompok Host Docker. Ini adalah alat pengelompokan asli yang disediakan oleh Docker yang menyediakan ketersediaan tinggi dan kinerja tinggi untuk aplikasi Anda dengan mendistribusikannya ke semua node di dalam swarm cluster.

Dalam tutorial ini, kami akan menunjukkan kepada Anda langkah demi langkah cara membuat Swarm Cluster menggunakan Ubuntu 16.04. Kami akan membuat swarm cluster menggunakan 2 mesin server ubuntu, 1 node server sebagai pengelola dan 1 lainnya sebagai pekerja. Dan kemudian kami akan mencoba menerapkan layanan Nginx sederhana ke swarm cluster.

Prasyarat

  • 2 atau lebih - Server Ubuntu 16.04
    • manajer     132.92.41.4
    • pekerja01   132.92.41.5
  • Hak istimewa root

Apa yang akan kita lakukan?

  1. Konfigurasi Host
  2. Instal Docker-ce
  3. Inisialisasi Docker Swarm
  4. Menerapkan Layanan Pertama ke Cluster

Langkah 1 - Konfigurasikan Host

Sebelum menginstal paket apa pun untuk swarm cluster, kami akan mengonfigurasi file host di kedua server.

Jalankan perintah di bawah ini di semua server, 'manager' dan 'worker01'.

Edit file '/etc/hosts' menggunakan editor vim.

vim /etc/hosts

Tambahkan konfigurasi berikut ke akhir baris.

132.92.41.4    manager
132.92.41.5    worker01

Simpan dan keluar.

Sekarang ping semua node menggunakan 'hostname' alih-alih menggunakan alamat IP.

ping -c 3 manager
ping -c 3 worker01

Dan pastikan itu berfungsi di semua host.

Langkah 2 - Instal Docker-ce

Untuk membuat swarm cluster, kita perlu menginstal docker di semua node server. Pada langkah ini, kita akan menginstal Docker-ce Community Edition pada kedua server manager dan worker01.

Instal dependensi Docker-ce menggunakan perintah apt di bawah ini.

sudo apt install apt-transport-https software-properties-common ca-certificates -y

Sekarang tambahkan kunci Docker dan repositori Docker-ce ke server kami.

curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
sudo echo "deb [arch=amd64] https://download.docker.com/linux/ubuntu xenial stable" > /etc/apt/sources.list.d/docker-ce.list

Perbarui repositori dan instal paket Docker-ce menggunakan perintah apt install di bawah ini.

sudo apt update
sudo apt install docker-ce -y

Setelah instalasi selesai, mulai layanan buruh pelabuhan dan aktifkan untuk diluncurkan setiap kali sistem boot.

systemctl start docker
systemctl enable docker

Docker-ce sekarang diinstal pada node server kami.

Selanjutnya, kita akan mengkonfigurasi buruh pelabuhan untuk berjalan sebagai pengguna biasa atau pengguna non-root.

Buat pengguna baru bernama 'mohammad' dan tambahkan ke grup 'docker'.

useradd -m -s /bin/bash mohammad
sudo usermod -aG docker mohammad

Sekarang login ke pengguna 'mohammad' dan jalankan perintah docker hello-world seperti di bawah ini.

su - mohammad
docker run hello-world

Dan Anda akan mendapatkan hello world dari docker seperti gambar di bawah ini.

Langkah 3 - Buat Swarm Cluster

Pada langkah ini, kita akan membuat Swarm Cluster dari node kita. Dan untuk membuat node swarm cluster, kita perlu menginisialisasi mode swarm pada node 'manager' dan kemudian menggabungkan node 'worker01' ke cluster.

Inisialisasi mode Docker Swarm dengan menjalankan perintah docker di bawah ini pada node 'manager'.

docker swarm init --advertise-addr 132.92.41.4

Dan Anda akan mendapatkan hasil seperti gambar di bawah ini.

Anda akan melihat 'join-token' telah dibuat oleh node 'manager'.

Selanjutnya, kita perlu menambahkan node 'worker01' ke cluster 'manager'. Dan untuk melakukannya, kita memerlukan 'join-token' dari node cluster 'manager', jadi pastikan untuk menuliskannya di catatan Anda.

Jalankan perintah docker swarm join pada node 'worker01'.

docker swarm join --token SWMTKN-1-5p5ujrr67rl2rlmyvrj56fksblbcrtaeirf7fj5r4snid2vn6y-918gbqr02m64xct43i2ssi4qs 132.92.41.4:2377

Sekarang Anda akan mendapatkan hasil seperti gambar di bawah ini.

Node 'worker01' telah bergabung ke cluster.

Periksa dengan menjalankan perintah berikut pada node 'manager'.

docker node ls

Sekarang Anda melihat node 'worker01' telah bergabung dengan swarm cluster.

Swarm Cluster telah dibuat.

Langkah 4 - Menerapkan Layanan Pertama ke Cluster

Pada langkah ini, kami akan membuat dan menyebarkan layanan pertama kami ke swarm cluster. Kami ingin membuat server web Nginx layanan baru yang akan berjalan pada port http default 80, dan kemudian mengeksposnya ke port 8080 di server host, dan kemudian mencoba mereplikasi layanan nginx di dalam swarm cluster.

Buat Layanan

Buat layanan Nginx baru bernama 'my-web' dan ekspos port HTTP container ke port 8080 di host.

docker service create --name my-web --publish 8080:80 nginx:1.13-alpine

Dan ketika sudah dibuat, periksa menggunakan perintah layanan buruh pelabuhan di bawah ini.

docker service ls

Dan Anda akan mendapatkan hasil seperti gambar di bawah ini.

Layanan Nginx telah dibuat dan disebarkan ke swarm cluster sebagai layanan bernama 'my-web', didasarkan pada Nginx Alpine Linux, mengekspos port HTTP dari layanan kontainer ke port '8080' di host, dan itu hanya memiliki 1 replika.

Replika dan Skala Layanan

Sekarang kita akan membuat replika untuk layanan 'my-web'. Kami akan membuat 2 replika layanan 'my-web', sehingga layanan tersebut dapat diakses di node 'manager' dan 'worker01'.

Untuk mereplikasi layanan 'web-saya', jalankan perintah berikut.

docker service scale my-web=2

Dan setelah selesai, cek kembali menggunakan perintah docker service.

docker service ls

Dan sekarang server memiliki 2 ulangan.

Buka browser web Anda dan ketik alamat IP node manager dengan port 8080.

http://manager:8080/

Dan Anda akan mendapatkan halaman default Nginx.

Di bawah ini adalah hasil dari simpul 'worker01'.

http://worker01:8080/

Swarm Cluster telah dibuat, dan layanan Nginx telah selesai di-deploy ke Swarm Cluster kami.


Ubuntu
  1. Cara Menginstal dan Mengonfigurasi Redis di Ubuntu 18.04

  2. Cara Menginstal dan Mengkonfigurasi Redmine di Ubuntu 18.04

  3. Cara Mengatur Cluster MariaDB Galera di Ubuntu 20.04

  1. Cara Menginstal dan Mengonfigurasi Samba di Ubuntu 18.04

  2. Cara Menginstal dan Mengonfigurasi Redis di Ubuntu 20.04

  3. Cara Menginstal dan Mengonfigurasi Jenkins di Ubuntu 20.04

  1. Cara Menginstal dan Mengatur Docker di Ubuntu 18.04

  2. Cara Menginstal dan Mengonfigurasi Kubernetes dan Docker di Ubuntu 18.04 LTS

  3. Cara Mengatur Kluster Basis Data Riak KV di Ubuntu 18.04