Pertimbangkan untuk menggunakan plugin rabbitmq / rabbitmq-autocluster :
Plugin RabbitMQ yang mengelompokkan node secara otomatis menggunakan sejumlah mekanisme penemuan rekan:
- Konsul ,
- dlld2
- Catatan DNS A
- Tag AWS EC2
- Grup Autoscaling AWS
Ada sedikit konfigurasi yang harus dipasang untuk mendapatkan pengaturan ini termasuk pengaturan kebijakan IAM dan menambahkan tag EC2 ke instance yang Anda ingin menjadi bagian dari cluster Anda.
Jika Anda menggunakan AWS Autoscaling Groups maka Anda akan menambahkan yang berikut ini ke rabbitmq.config
:
[
{rabbit, [ ... ]},
{autocluster, [
{backend, aws},
{aws_autoscaling, true},
{aws_ec2_region, "us-west-2"}
]}
].
Jika Anda tidak menggunakan AWS Autoscaling Groups, Anda masih dapat mencapai hasil yang diinginkan menggunakan tag pada Instance EC2 Anda:
[
{rabbit, [ ... ]},
{autocluster, [
{backend, aws},
{aws_ec2_tags, [{"region", "us-west-2"}, {"service", "rabbitmq"}]},
{aws_ec2_region, "us-east-1"},
{aws_access_key, "..."},
{aws_secret_key, "..."}
]}
].
Dengan semua itu saya sangat merekomendasikan menggunakan Konsul oleh HashiCorp sebagai mekanisme penemuan layanan Anda, dalam jangka panjang, Anda mendapatkan fleksibilitas yang jauh lebih besar dalam hal memisahkan bagian-bagian Anda dari sistem Anda dari satu sama lain.