GNU/Linux >> Belajar Linux >  >> Panels >> Docker

Cara Membuat Docker Swarm Manager dan Node di Linode

Sebelum Anda Mulai

  1. Menyelesaikan panduan ini akan membutuhkan setidaknya dua Linode yang terletak di pusat data yang sama. Instruksi dalam panduan ini ditulis untuk Ubuntu 16.04, tetapi distribusi lain dapat digunakan; Linode tidak perlu menggunakan distribusi yang sama.

  2. Ikuti panduan Menyiapkan dan Mengamankan Instans Komputasi untuk memperbarui sistem Anda. Anda mungkin juga ingin mengatur zona waktu, mengkonfigurasi nama host Anda, membuat akun pengguna terbatas, dan memperkuat akses SSH.

  3. Instal Docker di setiap Linode. Lihat panduan Menginstal Docker dan Menyebarkan LAMP Stack atau dokumen penginstalan Docker untuk informasi selengkapnya.

Catatan Langkah-langkah dalam panduan ini memerlukan hak akses root. Pastikan untuk menjalankan langkah-langkah di bawah ini sebagai root atau dengan sudo awalan. Untuk informasi lebih lanjut tentang hak istimewa, lihat panduan Pengguna dan Grup kami.

Tingkatkan kekuatan Docker dengan membuat sekelompok host Docker, yang disebut Docker Swarm. Anda memerlukan satu Linode untuk berfungsi sebagai Docker Swarm Manager dan beberapa host Docker untuk bergabung dengan Swarm sebagai Node.

Dalam panduan ini, Anda akan menyiapkan Docker Swarm Manager dan menghubungkan Nodes untuk penerapan container yang skalabel. Ini membutuhkan beberapa Linode dengan Docker yang diinstal dan dijalankan di pusat data yang sama. Mereka tidak perlu menjalankan distribusi yang sama.

Buat Docker Swarm Manager

Tujuan Docker Swarm Manager adalah untuk menerima perintah atas nama cluster dan menetapkan container ke node. Manajer Swarm menggunakan Algoritma Konsensus Rakit untuk mengelola status Swarm. Algoritma Konsensus Raft memastikan bahwa semua node manajer yang bertanggung jawab untuk mengelola dan menjadwalkan tugas dalam sebuah cluster menyimpan status yang sama dan konsisten. Jika terjadi kegagalan, satu node mengambil alih tugas dan memulihkan status stabil.

Dalam panduan ini, kami membuat Manajer Swarm tunggal. Jika sasaran Anda adalah ketersediaan tinggi, Anda dapat membuat beberapa pengelola.

  1. Masuk ke Linode yang Anda pilih untuk manajer Swarm dan inisialisasi manajer. Ganti PUBLIC_IP dalam contoh ini dengan alamat IP publik Linode Anda:

    docker swarm init --advertise-addr PUBLIC_IP
    

    Docker merespons dengan perintah yang diperlukan agar node bergabung dengan Swarm:

  2. Gunakan docker info untuk memverifikasi bahwa Swarm Anda berjalan dan aktif:

    docker info
    

Menggabungkan Node ke Manajer

Pada Langkah 1 dari bagian sebelumnya, docker swarm init perintah mengeluarkan instruksi tentang cara bergabung dengan manajer.

docker swarm join --token TOKEN PUBLIC_IP:2377

Dimana TOKEN adalah string panjang karakter yang disajikan kepada Anda saat Anda menginisialisasi Swarm, dan PUBLIC_IP adalah alamat IP publik dari Swarm Manager Linode Anda. Jika Anda tidak ingat tokennya, jalankan join-token pada manajer untuk melihat informasi dari swarm init perintah:

docker swarm join-token worker
  1. Untuk menggabungkan node ke Swarm, jalankan docker swarm join dari simpul. Ubah TOKEN ke token dari Langkah 1 di bagian sebelumnya, dan PUIBLIC_IP ke IP publik manajer:

    docker swarm join --token TOKEN PUBLIC_IP:2377
    

    Outputnya menunjukkan bahwa node telah bergabung dengan swarm sebagai pekerja. Anda sekarang memiliki cluster Docker Swarm kecil, dengan satu manajer dan satu node:

  2. Ulangi Langkah 1 untuk menggabungkan node ke Swarm sebanyak yang diperlukan.

  3. Pada manajer, gunakan docker node ls untuk melihat informasi tentang manajer dan daftar semua node:

    docker node ls
    

Menyebarkan Layanan dengan Docker Swarm

Untuk menerapkan layanan dengan Docker Swarm, gunakan manajer untuk menyiapkan satu node, lalu skala konfigurasi yang sesuai dengan kebutuhan Anda. Dalam contoh ini, Anda akan menginstal NGINX pada satu node, lalu menskalakannya ke cluster (swarm) yang terdiri dari tiga node.

  1. Dari Swarm Manager, gunakan service create untuk menyebarkan layanan ke node. Ubah nginxexample untuk apa pun yang Anda suka:

    docker service create -p 80:80 --name nginxexample nginx
    
  2. Skala layanan NGINX ke tiga node:

    docker service scale nginxexample=3
    
  3. Verifikasi bahwa layanan telah di-deploy dengan docker ps -a dari simpul mana pun:

    docker ps -a
    
  4. Untuk menghentikan nginxexample layanan, gunakan service remove perintah:

    docker service remove nginxexample
    

Informasi Lebih Lanjut

Anda mungkin ingin berkonsultasi dengan sumber daya berikut untuk informasi tambahan tentang topik ini. Meskipun ini disediakan dengan harapan dapat bermanfaat, harap perhatikan bahwa kami tidak dapat menjamin keakuratan atau ketepatan waktu materi yang dihosting secara eksternal.

  • Dokumen Docker
  • Tutorial Coba Docker
  • Pusat Docker

Docker
  1. Cara Menyebarkan Wadah nginx dengan Docker di Linode

  2. Bagaimana dan Mengapa Menggunakan Host Docker Jarak Jauh

  3. Cara Menginstal dan Menggunakan Docker Compose di CentOS

  1. Volume Docker NFS:Cara Membuat dan Menggunakan

  2. Cara Mengekspor dan Mengimpor Kontainer Docker

  3. Cara membuat Gambar Docker dari Wadah dan File Docker

  1. Belajar Docker:Cara Membuat Wadah Docker

  2. Bagaimana Setup dan Konfigurasi Docker Swarm Cluster di Ubuntu

  3. Bagaimana Menginstal dan Mengonfigurasi Docker Swarm Cluster di CentOS 8