1. Ana Sayfa
  2. DevOps
  3. RabbitMQ Kurulumu – Cluster Yapılandırması

RabbitMQ Kurulumu – Cluster Yapılandırması

Erlang diliyle geliştirilmiş olan bir uygulamadan bir mesajı alıp başka bir uygulamaya veya uygulamalara sırasıyla ileten bir mesaj kuyruk sistemidir.

Resim-1

Kurulum yaptığım OS : Sles 15 SP2

Kullanacağım Sayısı : 3

Kuruluma Başlamadan Önce:

Resim-2

3 Adet Sles 15 SP2 sunucu kurdum sunucuların tüm update ve upgradelerini tamamladım.

Her birine _MNESIA_BASE için ayrı ayrı bir disk ekledim .(200gb)

3 node içinde /etc/hosts altında tüm sunucuların gerçek ip adresleri ile beraber hostnameleri girilmesi gerekiyor.

Ip adresi

Ip adresi hostname

Ip adresi hostname

Her sunucunun mail atıyor olması gerekiyor postfix veya benzeri bi uygulama ile bunun olmasını sağlamalısınız.

RabbitMQ Kurulum

Resim-3

zypper in erlang

Ardından kurulan paket sonrasında bu yapacağımız kritik ayar çok önemli

vi /usr/lib/systemd/system/epmd.socket

Listener Stream 0.0.0.0:4369 bu şekilde ayarlayınız.

Resim-4

Kaydedip çıkın.

systemctl enable epmd.service

systemctl start epmd.service

Komutuyla epmd servisini çalıştırın ve özellikle aşağıdaki komutla kontrol edin.

ss –tulpn | grep 4369

Resim-5

Eğer yukardaki gibi çıktı aldıysanız herşey yolunda demektir. ( 0.0.0.0:4369)

Şimdi rabbitmq servisini kurmaya geldi.

zypper in rabbitmq-

Bu komutla beraber socat dependecie de install olması gerekiyor.

Rabbitmq servisi yüklendikten sonra

vi /etc/rabbitmq/rabbitmq-env.conf içine girilir.

RABBITMQ_MNESIA_BASE=Her sunucu için bahsetmiş olduğum eklenen disk yolu

NODENAME=rabbit@sunucuhostnameadı

Bu ayarlar girilir ve kaydedilir.

Ardından

vi /etc/rabbitmq/rabbitmq.conf

içine girilir.

default_user = Kullanıcıadı

default_pass = Şifre

Değerler girilir ve kaydedilir.

systemctl enable rabbitmq-server

systemctl start rabbitmq-server

 

systemctl status rabbitmq-server komutuyla status kontrol edilir.

Resim-6

ps –ef | grep rabbitmq ilede çalışan proccesler görülür.

Rabbitmq servisini kurdugumuza göre diğer 2 sunucuda da aynı işlemler tekrarlanır.

Bütün hepsinde aynı sonucu aldığınızda cluster kurulumuna ve pluginleri enable etme aşamasına geçilir.

RabbitMQ Cluster Kurulumu


Resim-7

Kurulan her sunucuda aşağıdaki dosya içine girilir ve ilgili satırlar eklenir.

vi /etc/rabbitmq/rabbitmq.conf

cluster_formation.peer_discovery_backend = rabbit_peer_discovery_classic_config

cluster_formation.classic_config.nodes.1 = rabbit@hostname1

cluster_formation.classic_config.nodes.2 = rabbit@hostname2

cluster_formation.classic_config.nodes.3 = rabbit@hostname3

Kaydedip çıkılır her 3 sunucuda da bu ayarlar girilir.

Sonra bir sunucu belirlenir ben ilk kurduğum sunucuyu belirledim, bu sunucu içinde aşağıdaki dosya diğer 2 sunucuya da kopyalanır.

vi /var/lib/rabbitmq/.erlang.cookie bu ilk sunucudaki dosyanın içeriği diğer 2 sunucuya aynı dosya yoluna kopyalanır.

Sonra zypper in rabbitmq-server-plugins kurulur

Ardından

rabbitmq-plugins enable rabbitmq_management rabbitmq_top

Bu pluginler devreye alındıktan sonra webbrowser üstünden 15672 portundan clusterlara erişimimiz açılmış olacak.

Bu işlemi her 3 sunucuda da yapın.

Şimdi ise 1 sunucu master olarak belirleyin.

Aşağıdaki komutları master seçmediğiniz diğer 2 sunucuda girin

rabbitmqctl stop_

rabbitmqctl join_cluster rabbit@hostname1

rabbitmqctl start_app

/etc/rabbitmq/rabbitmq.conf içine girdiğiniz username ve password ile 1. Sunucu hostname veya ip adresi ile browser üstünden aşağıdaki adrese girin.

http://hostname1:15672/#/


Resim-8

RabbitMQ kurulumu ve cluster yapısı başarıyla oluşturulmuştur.

Bu konuyla ilgili sorularınızı http://forum.mshowto.org linkini kullanarak ulaşacağınız forum sayfamızda sorabilirsiniz. 

Referanslar

www.mshowto.org 

TAGs:RabbitMQ Kurulumu, , , RabbitMQ makale

Yorum Yap

Yazar Hakkında

1988 İstanbul doğumluyum, Küçük yaşlardan beri bilişim sektörüne derinden tutkum ve merakım var. Bilişim sektöründeki iş hayatına 2005 yılında başladım, üniversite öncesi, üniversite öğrenimim içerisinde ve üniversite öğrenim hayatını 4 sene içerisinde başarı ile bitirdiğim andan sonra 2013 yılı itibari ile ATOS firmasında helpdesk olarak başladım. Askerlik görevimi yerine getirmek için ayrıldığım ATOS firmasından sonra Eczacıbaşı Bilişim, Teknotel firmalarında sistem uzmanı olarak çalıştım. Ardından Radore Veri Merkezinde Operasyon Takım Lideri ve Kıdemlı Uzman olarak çalıştım. Şu an Ford Otosan firmasında Linux Admin olarak çalışmaktayım. İlgi alanlarım : Linux işletim sistemleri ve OpenSource Projeler Uzmanlık Alanlarım : Linux (Centos, Ubuntu,SUSE,OEL,ShellScript), Windows İşletim Sistemleri, E-Mail Sistemleri (Postfix, Qmail, Zimbra, Mailenable, Exchange, Zimbra) Hosting Sistemleri Kurulum ve Yönetim (cPanel,plesk,whmcs,wordpress)

Yorum Yap