Rancher Server HA的高可用部署实验-学习笔记

Posted 技术颜良

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Rancher Server HA的高可用部署实验-学习笔记相关的知识,希望对你有一定的参考价值。

转载于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的高可用部署实验-学习笔记的主要内容,如果未能解决你的问题,请参考以下文章

Rancher 2.x 生产环境HA(高可用)部署

Rancher 2.2.2 - HA 部署高可用k8s集群

rancher2 HA部署注意事项

第十一课——codis-server的高可用,对比codis和redis cluster的优缺点

RHEL6搭建 keepalived (HA) 任意单故障节点的高可用集群

rancher server 单节点部署/K8S高可用部署