RabbitMQをSSL対応させてみる(with Graylogでログを受け取らせてみる)

前回、RabbitMQにキューイングされたログをGraylogで取得させるようにしたが、今回はさらにRabbitMQ側でSSL対応させて通信を暗号化させる。 証明書ファイルは(お金もないので)オレオレ証明書で作成する。 (Let's Encryptでもいいのだが、どうせローカルネットワーク内での検証なので)

1. SSL証明書の準備

まずはSSL証明書の準備から。 クライアント側(Graylog側)にクライアント証明書が必要になるので、CA証明書含めこちらを参考に作成を行う。

証明書作成後はRabbitMQへ送るのを忘れずに。 今回の場合は、「/etc/rabbitmq/s...


fluentdでRabbitMQにログを送信する

今回は、前回作成したRabbitMQクラスタにfluentdでログを送信する。

1. RabbitMQ側の設定

まず、事前にRabbitMQ側でvHostsなどの作成をしておこう。 ユーザは新規に「logger」ユーザを作成する。

■ vHostsの作成(「logs」)

rabbitmqadmin declare vhost name=/logs
rabbitmqctl set_permissions -p /logs guest ".*" ".*" ".*"
[root@BS-PUB-RABBITMQ01 ~]# rabbitmqadmin declare vhost...

CentOS 7にRabbitMQをクラスタ構成で構築する

Graylogでログ取得に使うキューイングシステムとしてKafkaをちょこちょこいじってたのだが、ちょっと用途に合ってないことが分かった(暗号化まわり)。 で、ほかに何か使えるのないかなと思って調べてたところ、GraylogはRabbitMQににも対応しているようだ。 なので、今回はRabbit MQを2台構成のクラスタで構築をする(ここでは、MasterをBS-PUB-RABBITMQ01、SlaveをBS-PUB-RABBITMQ02で表現する)。 OSにはCentOS 7を用いる。

なお、RabbitMQのクラスタ構成には互いを名前解決できる必要があるので注意。

1. Rab

...