GNU/Linux >> Belajar Linux >  >> Cent OS

Cara Install dan Konfigurasi Docker Swarm Mode di CentOS 7 / RHEL 7

Mode Docker Swarm adalah alat orkestrasi dan pengelompokan container untuk mengelola host Docker. Mode Docker Swarm adalah bagian asli dari mesin Docker. Artinya Anda tidak perlu menginstal apapun kecuali mesin Docker karena mode gerombolan Docker adalah bagian dari mesin Docker.

Mode gerombolan Docker diperkenalkan di Docker 1.12. Beberapa manfaat utama dari mode gerombolan Docker adalah penyembuhan diri wadah , penyeimbangan beban , peningkatan penampung dan turunkan skala , penemuan layanan dan pembaruan berkelanjutan . Dalam beberapa artikel terakhir kita telah membahas topik berikut

  • Cara menginstal Docker di CentOS 7
  • Cara membuat Gambar Kontainer Docker dengan Dockerfile

Pada artikel ini kita akan membahas cara menginstal dan Mengonfigurasi Mode Swarm Docker di CentOS 7.x / RHEL 7.x  Untuk demonstrasi saya akan menggunakan 3 CentOS 7.x atau RHEL 7.x Server tempat saya akan menginstal mesin buruh pelabuhan. Dari mana dua server akan bertindak sebagai Mesin Docker atau Simpul pekerja dan satu akan bertindak sebagai manajer . Dalam kasus saya, saya menggunakan yang berikut:

  • dkmanager.example.com (172.168.10.70 ) – Ini akan bertindak sebagai manajer yang akan mengelola mesin Docker atau host atau node pekerja dan juga akan berfungsi sebagai mesin Docker.
  •  workernode1.example.com ( 172.168.10.80 ) – ini akan menjalankan mesin Docker atau Worker Node
  • workernode2.example.com ( 172.168.10.90 ) – ini akan bertindak sebagai mesin Docker atau Worker Node

Perbarui baris berikut di file /etc/hosts di semua server

172.168.10.70    dkmanager.example.com   dkmanager172.168.10.80    workernode1.example.com        workernode1172.168.10.90    workernode2.example.com        workernode2

Langkah:1 Instal Mesin Docker di semua host

Pertama-tama atur repositori buruh pelabuhan dan kemudian jalankan di bawah perintah di semua host.

[[email protected] ~]# yum install yum-utils –y[[email protected] ~]# yum-config-manager --add-repo https://download.docker.com/linux/centos/ docker-ce.repo[[email protected] ~]# yum install docker-ce docker-ce-cli containerd.io –y[[email protected] ~]# systemctl start docker[[email protected] ~]# systemctl aktifkan docker 

Ulangi langkah di atas untuk workernode1 dan workernode2

Catatan:Saat artikel ini ditulis, Docker Versi 1.13 telah tersedia.

Langkah:2 Buka Port Firewall pada Manajer dan Node Pekerja

Buka port berikut di firewall OS pada pengelola Docker menggunakan perintah di bawah ini

[[email protected] ~]# firewall-cmd --permanent --add-port=2376/tcpsuccess[[email protected] ~]# firewall-cmd --permanent --add-port=2377/tcpsuccess[ [email protected] ~]# firewall-cmd --permanent --add-port=7946/tcpsuccess[[email protected]ager ~]# firewall-cmd --permanent --add-port=7946/udpsuccess[[email protected] ] ~]# firewall-cmd --permanent --add-port=4789/udpsuccess[[email protected] ~]# firewall-cmd --permanent --add-port=80/tcpsuccess[[email protected] ~]# firewall-cmd --reloadsuccess[[email protected] ~]#

Mulai ulang layanan buruh pelabuhan di pengelola buruh pelabuhan

[[email protected] ~]# systemctl restart docker

Buka port berikut pada setiap node pekerja dan mulai ulang layanan buruh pelabuhan

~]# firewall-cmd --permanent --add-port=2376/tcp~]# firewall-cmd --permanent  --add-port=7946/tcp~]# firewall-cmd --permanent -- add-port=7946/udp~]#  firewall-cmd --permanent --add-port=4789/udp~]# firewall-cmd --permanent --add-port=80/tcp~]#  firewall-cmd - -reload~]#  systemctl restart buruh pelabuhan

Langkah:3 Inisialisasi swarm atau cluster menggunakan perintah 'docker swarm init'

Jalankan perintah di bawah ini dari node manager(dkmanager) untuk menginisialisasi cluster.

[[email protected] ~]# docker swarm init --advertise-addr 172.168.10.70

Perintah ini akan menjadikan node kita sebagai node manager dan kita juga mengiklankan ip address manager pada perintah di atas sehingga node slave atau worker dapat bergabung dengan cluster.

Jalankan perintah di bawah ini untuk memverifikasi status pengelola dan melihat daftar node di cluster Anda

[[email protected] ~]# docker node lsID                       NAMA HOSTNAME             STATUS  AVAILABILITY  MANAGER STATUSn64oy2sml1w188              STATUS  AVAILABILITY  MANAGER STATUSn64oy2sml1w188]  109maimanager[] 

Kami juga dapat menggunakan “info buruh pelabuhan ” perintah untuk memverifikasi status swarm

Langkah:3 Tambahkan Node Pekerja ke swarm atau cluster

Untuk menambahkan node Worker ke swarm atau cluster, jalankan perintah yang kita dapatkan saat menginisialisasi swarm. Contoh perintah ditunjukkan pada langkah3

[[email protected] ~]# docker swarm join --token SWMTKN-1-4jjyu1btmdky0ou6gl2dwgt24bolpsdn5yd77pohmcnmz0s288-11xwcvzjar29fskkhfvlzsmhr 172.168.10.10 .70:2377~protected aworker[smailed a][smailed a] ~]# docker swarm join --token SWMTKN-1-4jjyu1btmdky0ou6gl2dwgt24bolpsdn5yd77pohmcnmz0s288-11xwcvzjar29fskkhfvlzsmhr 172.168.10.70:2377Node email ini bergabung dengan swarm sebagai pekerja.[][email dilindungi sebagai pekerja.[] 

Verifikasi status node menggunakan perintah “docker node ls ” dari manajer buruh pelabuhan

Pada titik waktu ini, mode gerombolan buruh pelabuhan atau klaster kami aktif dan berjalan dengan dua node pekerja. Pada langkah berikutnya kita akan melihat bagaimana mendefinisikan sebuah layanan.

Langkah:4 Meluncurkan layanan dalam mode Docker Swarm

Dalam mode gerombolan Docker, wadah diganti dengan kata tugas dan tugas (atau wadah) diluncurkan dan digunakan sebagai layanan dan Mari kita asumsikan saya ingin membuat layanan dengan nama “server web” dengan lima kontainer dan ingin memastikan keadaan kontainer yang diinginkan di dalam layanan adalah lima.

Jalankan perintah di bawah ini hanya dari Docker Manager.

[[email protected] ~]# docker service create -p 80:80 --name webserver --replicas 5 httpd7hqezhyak8jbt8idkkke8wizi[[email protected] ~]#

Perintah di atas akan membuat layanan dengan nama "server web", di mana status wadah atau tugas yang diinginkan adalah 5 dan wadah akan diluncurkan dari gambar buruh pelabuhan "httpd “. Container akan di-deploy melalui node cluster  yaitu dkmanager , workernode1 dan workernode2

Daftar layanan Docker dengan perintah di bawah ini

[[email protected] ~]# docker service lsID           NAME       MODE       REPLIKAS  IMAGE7hqezhyak8jb  server web  direplikasi  5/5       httpd:latest[[email protected>] ~]# 

Jalankan perintah di bawah ini untuk melihat status "server web" layanan Anda

[[email protected] ~]# layanan buruh pelabuhan ps server web

Sesuai dengan output di atas, kita dapat melihat container dikerahkan di seluruh node cluster termasuk node manager. Sekarang kita dapat mengakses halaman web dari setiap node pekerja dan Docker Manager menggunakan URL berikut :

http:// 172.168.10.70 atau  http://172.168.10.80 atau http://172.168.10.90

Langkah:5 Sekarang Uji Penyembuhan Diri Wadah

Penyembuhan diri kontainer adalah fitur penting dari mode kawanan buruh pelabuhan. Seperti namanya jika ada yang salah dengan container , manajer akan memastikan setidaknya 5 container harus dijalankan untuk layanan "server web". Mari kita hapus container dari workernode2 dan lihat apakah container baru diluncurkan atau tidak.

[[email protected] ~]# docker ps[[email protected] ~]# docker rm a9c3d2172670 -f

Sekarang verifikasi Layanan dari manajer buruh pelabuhan dan lihat apakah wadah baru diluncurkan atau tidak

[[email protected] ~]# layanan buruh pelabuhan ps server web

Sesuai output di atas, kita dapat melihat wadah baru diluncurkan di simpul dkmanager karena salah satu wadah di workernode2 dihapus

Langkah:6 Perbesar dan perkecil container yang terkait dengan Layanan

Dalam mode gerombolan Docker, kita dapat meningkatkan dan menurunkan wadah atau tugas. Mari kita tingkatkan penampung menjadi 7 untuk layanan 'server web

[[email protected] ~]# docker service scale webserver=7webserver diskalakan ke 7[[email protected] ~]#

Verifikasi status Layanan lagi dengan perintah berikut

Mari Kecilkan penampung menjadi 4 untuk server web layanan

[[email protected] ~]# docker service scale webserver=4webserver diskalakan ke 4[[email protected] ~]#

Verifikasi Layanan lagi dengan perintah di bawah

Itu saja untuk artikel ini. Semoga Anda mendapat ide tentang cara menginstal dan mengkonfigurasi mode kawanan buruh pelabuhan di CentOS 7.x dan RHEL 7.x. Jangan ragu untuk membagikan umpan balik dan komentar Anda


Cent OS
  1. Cara Menginstal Docker di CentOS 7 / RHEL 7

  2. Cara menginstal dan mengkonfigurasi buruh pelabuhan Di Rocky Linux/Centos 8

  3. CentOS / RHEL 7 :Cara menginstal dan mengkonfigurasi telnet

  1. Cara menginstal dan mengkonfigurasi R pada Sistem Linux RHEL 8 / CentOS 8

  2. Cara menginstal dan mengkonfigurasi samba di RHEL 8 / CentOS 8

  3. Cara menginstal dan mengkonfigurasi Samba di CentOS / RHEL

  1. Cara menginstal Docker CE di RHEL 8 / CentOS 8

  2. Cara Install dan Konfigurasi oVirt 4.0 di CentOS 7 / RHEL 7

  3. Cara Menginstal dan Mengkonfigurasi Jenkins di CentOS 7 dan RHEL 7