1. 程式人生 > >Rancher Server HA的高可用部署實驗-學習筆記

Rancher Server HA的高可用部署實驗-學習筆記

mysql數據庫 haproxy配置 基礎 cal XA red cor 服務器 學習筆記

轉載於https://blog.csdn.net/csdn_duomaomao/article/details/78771731

Rancher Server HA的高可用部署實驗-學習筆記

一、機器規劃

二、數據庫服務器的安裝

三、Rancher Server HA1的安裝

四、Rancher Server HA2的安裝

五、HAProxy 負載均衡器的安裝

六、註冊主機(工作主機)

七、參考鏈接(視頻)

本文主要以Rancher培訓視頻為基礎,做了學習筆記,方便自己日後查看。Rancher Server HA Demo視頻:http://v.youku.com/v_show/id_XMjg2NTE3MDI2OA

一、機器規劃

1、MySQL數據庫服務器: 42.62.83.6

2、RancherServerHA1:42.62.83.5

3、RancherServerHA2:42.62.83.4

4、HAProxy負責均衡主機:42.62.83.3

5、RancherAgent主機:42.62.83.2

二、數據庫服務器的安裝

#安裝mariadb數據庫服務器

yum install -y mariadb mariadb-server

#設置開機啟動,並啟動數據庫服務器

chkconfig mariadb on

service mariadb start

#查看mysql相關的命令

mysql

#MySQL安全加固,設置root密碼

mysql_secure_installation

#登錄mysql數據庫

mysql -u root -p

#使用文檔中的MySQL命令,創建數據庫,設置數據庫訪問權限

CREATE DATABASE IF NOT EXISTS cattle COLLATE = ‘utf8_general_ci‘ CHARACTER SET = ‘utf8‘;

GRANT ALL ON cattle.* TO ‘cattle‘@‘%‘ IDENTIFIED BY ‘cattle‘;

GRANT ALL ON cattle.* TO ‘cattle‘@‘localhost‘ IDENTIFIED BY ‘cattle‘;

三、Rancher Server HA1的安裝

#使用文檔中的命令,在HA1主機上,

#啟動RancherServer容器RancherHA1

docker run -d \

--restart=unless-stopped \

--name RancherHA1 \

-p 8080:8080 \

-p 9345:9345 \

rancher/server:v1.6.10 \

--db-host <IP_of_the_MySQL_Server> \

--db-port 3306 \

--db-user cattle \

--db-pass cattle \

--db-name cattle \

--advertise-address <IP_of_the_Rancher_Server_HA1>

#查看容器運行的狀態:

docker logs -f RancherHA1

#使用谷歌瀏覽器訪問RancherServer的8080端口

http://<IP_of_the_Rancher_Server>:8080

四、Rancher Server HA2的安裝

#在HA2主機上,啟動RancherServer容器RancherHA2

docker run -d \

--restart=unless-stopped \

--name RancherHA2 \

-p 8080:8080 \

-p 9345:9345 \

rancher/server:v1.6.10 \

--db-host <IP_of_the_MySQL_Server> \

--db-port 3306 \

--db-user cattle \

--db-pass cattle \

--db-name cattle \

--advertise-address <IP_of_the_Rancher_Server_HA2>

五、HAProxy負載均衡器的安裝

#在兩臺Rancher Server主機之前,

#使用F5等外部負載均衡器,來實現HA訪問,

#也可以使用HAProxy軟件的方式來實現HA,

#對外1個IP分擔到2個RancherServer上。

#本實驗就是使用一臺主機安裝HAProxy軟件來實現負載均衡的

#下面在Ubuntu系統上安裝HAProxy

sudo apt-get install haproxy

#根據官方提供的HAProxy配置文件進行修改:

#網址:

http://rancher.com/docs/rancher/v1.6/en/installing-rancher/installing-server/basic-ssl-config/#example-haproxy-configuration

#配置文件為/etc/haproxy/haproxy.cfg

#修改bind部分,禁用443端口,啟用8080端口

global

maxconn 4096

ssl-server-verify none

defaults

mode http

balance roundrobin

option redispatch

option forwardfor

timeout connect 5s

timeout queue 5s

timeout client 36000s

timeout server 36000s

frontend http-in

mode http

#bind *:443 ssl crt /etc/haproxy/certificate.pem

bind *:8080

default_backend rancher_servers

# Add headers for SSL offloading

http-request set-header X-Forwarded-Proto https if { ssl_fc }

http-request set-header X-Forwarded-Ssl on if { ssl_fc }

acl is_websocket hdr(Upgrade) -i WebSocket

acl is_websocket hdr_beg(Host) -i ws

use_backend rancher_servers if is_websocket

backend rancher_servers

server websrv1 <rancher_server_HA1_IP>:8080 weight 1 maxconn 1024

server websrv2 <rancher_server_HA2_IP>:8080 weight 1 maxconn 1024

server websrv3 <rancher_server_HA3_IP>:8080 weight 1 maxconn 1024

#啟動HAProxy服務

haproxy -f /etc/haproxy/haproxy.cfg &

#查看8080端口是否已經在監聽中

netstat -antlp |grep 8080

#通過HAProxy的IP:8080端口登錄到RancherServer

http://<HAProxy_IP>:8080

六、註冊主機(工作主機)

#向RancherServer中註冊主機時,

#使用的“主機註冊地址”是<HAProxy_IP>:8080

#不是RancherServerHA1的也不是HA2的

七、參考鏈接:

Rancher Server HA Demo視頻

http://v.youku.com/v_show/id_XMjg2NTE3MDI2OA

Rancher Server HA的高可用部署實驗-學習筆記