基于HAProxy怎么搭建EMQX集群

基于HAProxy怎么搭建EMQ X集群,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。

成都創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),楊浦企業(yè)網(wǎng)站建設(shè),楊浦品牌網(wǎng)站建設(shè),網(wǎng)站定制,楊浦網(wǎng)站建設(shè)報價,網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,楊浦網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。

負(fù)載均衡器(LB)負(fù)責(zé)分發(fā)設(shè)備的 MQTT 連接與消息到 EMQ X 集群,采用 LB 可以提高 EMQ X 集群可用性、實(shí)現(xiàn)負(fù)載平衡以及動態(tài)擴(kuò)容。

HAProxy 是一款使用 C 語言編寫的自由及開放源代碼軟件,其提供高可用性、負(fù)載均衡,以及基于 TCP 和 HTTP 的應(yīng)用程序代理,它是免費(fèi)、快速并且可靠的一種解決方案。

本文將介紹如何基于 HAProxy 部署 EMQ X 集群并在 HAProxy 上終結(jié) SSL 連接,這種部署模式下 EMQ X 單集群可輕松支持?jǐn)?shù)百萬設(shè)備。

準(zhǔn)備

軟硬件版本

  • Ubuntu 18.04

  • EMQ X Broker v4.2.5

  • HAProxy 2.2+

機(jī)器分配

  • 172.16.239.107:HAProxy

  • 172.16.239.108:EMQ X 節(jié)點(diǎn) 1

  • 172.16.239.109:EMQ X 節(jié)點(diǎn) 2

安裝

EMQX

參考 EMQ X Broker

wget https://www.emqx.io/downloads/broker/v4.2.5/emqx-ubuntu18.04-4.2.5-x86_64.zip

unzip emqx-ubuntu18.04-4.2.5-x86_64.zip

HAProxy

sudo apt-get update
sudo apt-get install software-properties-common -y
sudo add-apt-repository -y ppa:vbernat/haproxy-2.2
sudo apt-get update
sudo apt-get install -y haproxy=2.2.\*

配置

EMQX

修改 emqx/etc/emqx.conf 配置文件,另一臺同理

## 修改節(jié)點(diǎn)名
node.name = emqx@172.16.239.108

## 修改集群策略為static,無需手動添加節(jié)點(diǎn)了
cluster.discovery = static

## 所有集群節(jié)點(diǎn)	
cluster.static.seeds = emqx@172.16.239.108, emqx@172.16.239.109

## 為了獲取 IP 地址,需要設(shè)置 proxy_protocol
listener.tcp.external.proxy_protocol = on

HAProxy

修改 /etc/haproxy/haproxy.cfg

添加 TCP backend 配置

backend backend_emqx_tcp
    mode tcp
    balance roundrobin
    server emqx_node_1 172.16.239.108:1883 check-send-proxy send-proxy-v2 check inter 10s fall 2 rise 5
    server emqx_node_2 172.16.239.109:1883 check-send-proxy send-proxy-v2 check inter 10s fall 2 rise 5

添加 dashboard backend 配置

backend backend_emqx_dashboard
    balance roundrobin
    server emqx_node_1 172.16.239.108:18083 check
    server emqx_node_2 172.16.239.109:18083 check

添加 TCP frontend 配置

frontend frontend_emqx_tcp
    bind *:1883
    option tcplog
    mode tcp
    default_backend backend_emqx_tcp

添加 dashboard frontend 配置

frontend frontend_emqx_dashboard
    bind *:18083
    option tcplog
    mode tcp
    default_backend backend_emqx_dashboard

運(yùn)行

EMQX

$ ./bin/emqx start

## 查看集群狀態(tài)
$ ./bin/emqx_ctl cluster status

Cluster status: #{running_nodes =>
                      ['emqx@172.16.239.108','emqx@172.16.239.109'],
                  stopped_nodes => []}

HAProxy

$ sudo service haproxy start

此時便可以通過 18083 訪問 dashboard

基于HAProxy怎么搭建EMQ X集群

通過 1883 連接到集群,連接情況可以在 dashboard 查看,或者在節(jié)點(diǎn)上執(zhí)行命令

$ ./bin/emqx_ctl clients list

證書

如果需要 TLS 終結(jié),先準(zhǔn)備好 emqx.keyemqx.crt 文件,然后合并生成 emqx.pem 文件

$ cat emqx.crt emqx.key > emqx.pem

然后添加以下配置即可

frontend frontend_emqx_tcp
    bind *:8883 ssl crt /opt/certs/emqx.pem no-sslv3
    option tcplog
    mode tcp
    default_backend backend_emqx_tcp

看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進(jìn)一步的了解或閱讀更多相關(guān)文章,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對創(chuàng)新互聯(lián)的支持。

網(wǎng)站名稱:基于HAProxy怎么搭建EMQX集群
網(wǎng)站鏈接:http://bm7419.com/article34/jcidpe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供Google、靜態(tài)網(wǎng)站、虛擬主機(jī)網(wǎng)站營銷、品牌網(wǎng)站制作面包屑導(dǎo)航

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護(hù)公司