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

Cara Menyebarkan RabbitMQ di Kubernetes

Pendahuluan

RabbitMQ adalah broker pesan tujuan umum yang mapan. Pialang memfasilitasi pertukaran pesan antara satu set layanan mikro terdistribusi dan memungkinkan mereka untuk berkomunikasi secara efisien dan andal.

Kubernetes, dengan pendekatan API-centric, adalah operator yang ideal untuk menerapkan instance RabbitMQ dalam sebuah cluster. Kemampuan penskalaan Kubernetes dan penerapan container otomatis meningkatkan ketergantungan RabbitMQ dalam lingkungan cluster yang diperluas.

Tutorial ini menunjukkan cara menginstal instance RabbitMQ di Kubernetes.

Prasyarat

  • Akses ke jendela terminal/ baris perintah
  • Kluster Kubernetes
  • Kubernet kubectl Alat CLI

Menerapkan RabbitMQ di Kubernetes

Menginstal solusi perangkat lunak tingkat lanjut pada cluster Kubernetes sering kali melibatkan pembuatan dan pengeditan beberapa file konfigurasi yang rumit.

Helm , manajer paket aplikasi Kubernetes, dapat menyederhanakan proses instalasi dan menyebarkan sumber daya ke seluruh cluster dengan sangat cepat. Agar berhasil menerapkan RabbitMQ, kita harus menginstal manajer paket Helm.

Instal Manajer Paket Helm

Gunakan perintah berikut untuk menginstal Helm versi terbaru di cluster Kubernetes lokal Anda:

curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3
chmod 700 get_helm.sh
./get_helm.sh

Setelah proses instalasi selesai, inisiasi pengelola paket Helm dengan mengetikkan perintah berikut:

helm init

Sekarang Anda dapat menggunakan Helm untuk menerapkan sumber daya di seluruh cluster dengan beberapa perintah singkat.

Buat Namespace untuk Penempatan RabbitMQ

Semua resource di Kubernetes dimulai di namespace. Kecuali satu ditentukan, sistem menggunakan namespace default. Untuk memiliki kontrol yang lebih baik atas proses penerapan, gunakan perintah berikut untuk membuat namespace yang berbeda:

kubectl create namespace rabbit

Anda dapat menggunakan nama apa pun yang kompatibel dengan DNS. Namespace yang kami buat bernama:kelinci.

Sistem mengonfirmasi bahwa namespace telah berhasil dibuat.

Instal RabbitMQ di Kubernetes

Dengan Helm yang berhasil diinstal dan namespace yang ditentukan, Anda siap untuk memulai proses penerapan RabbitMQ. Masukkan perintah berikut untuk menerapkan default stable/rabbitmq bagan dari repositori git:

helm install mu-rabbit stable/rabbitmq --namespace rabbit

Perintah tersebut menyebarkan RabbitMQ pada cluster Kubernetes dalam konfigurasi default. Penerapan dijalankan di kelinci namespace yang dibuat sebelumnya.

Terminal menyediakan informasi yang Anda butuhkan untuk mengakses antarmuka manajemen RabbitMQ dari browser Anda seperti kredensial, nomor port, dan URL.

Periksa Status Penyediaan RabbitMQ

Penampung mungkin memerlukan beberapa saat untuk diterapkan. Status lengkap dari urutan penyediaan dapat mengonfirmasi apakah penerapan berhasil. Untuk meninjau detail penerapan, masukkan perintah berikut:

watch kubectl get deployments,pods,services --namespace rabbit

Sebuah shell di dalam terminal menyediakan detail untuk namespace kelinci.

Setelah Anda siap untuk keluar dari shell pemantauan, tekan Ctrl+C .

Konfigurasi Server RabbitMQ

Pengaturan untuk server RabbitMQ dan pluginnya diedit di dalam file konfigurasi RabbitMQ.

Anda dapat menggunakan editor teks pilihan Anda untuk mengakses dan mengonfigurasi rabbitmq.conf mengajukan. Sintaks file konfigurasi menggunakan sysctl format, dan ada beberapa prinsip dasar yang harus dipatuhi:

  • Sistem tidak mengeksekusi baris yang dimulai dengan # karakter, karena menganggapnya sebagai komentar
  • Anda hanya dapat menentukan satu setelan per baris
  • Garis menggunakan Kunci =Nilai sederhana struktur

rabbitmq.conf file memungkinkan Anda untuk menentukan sebagian besar item konfigurasi yang diperlukan, seperti port, ambang memori, ruang disk, atau izin untuk terhubung ke broker.

Repositori sumber server RabbitMQ menyediakan contoh lengkap file rabbitmq.conf dengan komentar terperinci. Penting untuk dicatat bahwa file contoh ini merupakan panduan umum dan harus disesuaikan untuk mencerminkan kebutuhan spesifik sistem Anda.

Mengatur Plugin Manajemen RabbitMQ untuk mengaktifkan GUI

Plugin manajemen RabbitMQ sudah tersedia di distribusi default. Gunakan rabbitmq-plugins perintah untuk mengaktifkan layanan:

rabbitmq-plugins enable rabbitmq_management

Akses antarmuka grafis RabbitMQ dengan menggunakan IP dan nomor port untuk server RabbitMQ. Masukkan format lokasi web berikut di browser Anda:

http://rabbitmq-ip-or-server-name:15672/

IP dan nomor port diberikan selama proses instalasi.

Layanan meminta kredensial Anda. Untuk mendapatkan akses ke UI perlu memasukkan nama pengguna dan kata sandi Anda. Pada instalasi RabbitMQ baru, nama pengguna dan kata sandi default keduanya telah ditentukan sebelumnya sebagai “tamu.”

Sekarang Anda memiliki akses ke lingkungan yang mudah digunakan yang memungkinkan Anda mengelola host virtual, antrean, izin, dan pertukaran.

Bagaimana RabbitMQ bekerja di Kubernetes?

Tujuan utama Kubernetes adalah untuk mengatur layanan dan mengotomatisasi pekerjaan di cluster yang sangat terdistribusi. Pialang pesan seperti RabbitMQ dapat meningkatkan kualitas tugas yang berjalan lama dan menstabilkan proses latar belakang yang vital.

RabbitMQ menggunakan Advanced Message Queuing Protocol (AMQP) untuk menstandardisasi pesan antara Produsen, Pialang, dan Konsumen.

  • Seorang Produser memublikasikan pesan ke Bursa .
  • Exchange memformat pesan dan meneruskannya ke Antrian yang telah ditentukan dan dipilih sebelumnya .
  • Seorang Konsumen kemudian mengambil pesan yang telah diformat dan menggunakannya.

Distribusi pesan yang sistematis meningkatkan komunikasi antara aplikasi dan layanan yang digabungkan secara longgar.


Cent OS
  1. Cara Menyebarkan Elasticsearch di Kubernetes

  2. Cara Menyebarkan Instance WordPress di Kubernetes

  3. Cara men-deploy pod pertama Anda di Cluster Kubernetes

  1. Cara Menyebarkan Cluster Redis di Kubernetes

  2. Cara Memulai Ulang Pod Kubernetes

  3. Cara Menyebarkan RabbitMQ di Kubernetes

  1. Cara Menyebarkan PostgreSQL di Kubernetes

  2. Cara menggunakan Mattermost di CentOS 7

  3. Cara menggunakan Rocket.Chat di CentOS 7