Rancher HA高可用集群部署文档

Rancher HA高可用集群部署文档

一.前期准备工作

1.rancher server节点:

1).8G或者16G及以上(测试环境你又3个G就够了)
2). server节点此次操作将会占用8080,9435端口(如果这两个端口已经被占用可以自定义其他端口)。
3). 版本:rancher: V1.6

2.rancher agent節點要求:

1). docker版本建议是v1.13.1,其实用其他版本也可以了,反正我用yum直接装的可以用。
2). 9345,8080端口要求各节点互相访问同server节点要求,保证端口统一即可。
3). 各节点内存至少1GB以上最好不要出现跳崖式的差异。

3.数据库MYSQL:

1).推荐选用mysql-5.7和mariadb(懒人推荐mariadb)
2). mysql正式环境最好做个主从或者双主集群

4.各节点机器信息

Rancher-servier:
192.168.120.9
192.168.120.176

Rancher-agent:
192.168.120.9
192.168.120.176
192.168.120.17

Haproxy:
192.168.120.17

Mysql:
192.168.120.17

部署架构图:

Rancher HA高可用集群部署文档

因为单纯是测试玩的,每台机器内存都不高,数据库和haproxy装在一起了。

二.Mysql安装及配置

192.168.120.17:(selinux,firewall关闭)

#安装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命令,创建数据库,设置数据库访问权限

三.Rancher-Server节点安装

192.168.120.9:

docker run -d --restart=unless-stopped -p 8080:8080 -p 9345:9345 docker.io/rancher/server:latest --db-host 192.168.120.17 --db-port 3306 --db-user cattle --db-pass cattle --db-name cattle --advertise-address 192.168.120.9

192.168.120.176:

docker run -d --restart=unless-stopped -p 8080:8080 -p 9345:9345 docker.io/rancher/server:latest --db-host 192.168.120.17 --db-port 3306 --db-user cattle --db-pass cattle --db-name cattle --advertise-address 192.168.120.176

#不要尝试加“--name”参数,docker容器的名字是随机的镜像里不支持这个参数,这个是根据镜像来的不是每个帖子都能用,这里咱们使用的rancher-server镜像是 v1.6.24

当出现如下问题时:(去掉—name参数即可)

/usr/bin/entry: line 119: exec: --: invalid option
exec: usage: exec [-cl] [-a name] [command [arguments ...]] [redirection ...]
/usr/bin/entry: line 119: exec: --: invalid option
exec: usage: exec [-cl] [-a name] [command [arguments ...]] [redirection ...]
/usr/bin/entry: line 119: exec: --: invalid option

Rancher HA高可用集群部署文档

Rancher HA高可用集群部署文档

Rancher HA高可用集群部署文档``

四.Haproxy安装及配置

192.168.120.17:
yum -y install haproxy

[root@bogon ~]# vim /etc/haproxy/haproxy.cfg
[root@bogon ~]# cat /etc/haproxy/haproxy.cfg
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 *:8080
default_backend rancher_servers

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 192.168.120.9:8080 weight 1 maxconn 1024
server websrv2 192.168.120.176:8080 weight 1 maxconn 1024

测试:
浏览器访问192.168.120.17:8080

五.安装Rancher-agent并添加host

Rancher HA高可用集群部署文档

Rancher HA高可用集群部署文档

Rancher HA高可用集群部署文档

点击上图复制按钮,将复制的命令在需要添加的主机中执行,添加后效果2图
#host的名字是调取Linux主机的hostname

Rancher HA高可用集群部署文档

转载于:https://blog.51cto.com/13386520/2321096

要实现高可用部署Rancher,可以采取以下步骤: 1. 部署多个Rancher服务器:在高可用环境中,至少需要两个Rancher服务器来实现冗余和故障转移。可以使用Rancher官方提供的Docker容器进行部署。 2. 配置负载均衡器:在Rancher服务器之前设置负载均衡器,以实现流量的分发和故障转移。常见的负载均衡器有Nginx、HAProxy等。 3. 配置数据库:为Rancher部署一个稳定可靠的数据库,例如MySQL或PostgreSQL。可以使用数据库高可用特性,如主从复制或集群来确保数据的可用性和冗余。 4. 启用数据库备份和恢复:定期备份Rancher数据库,并确保备份数据的完整性和可恢复性。这样在发生故障时可以快速恢复。 5. 配置持久化存储:对于Rancher管理的容器和卷数据,使用持久化存储来确保数据的持久性和可靠性。可以选择使用本地存储或云存储解决方案。 6. 监控和日志记录:设置监控和日志记录系统,实时监控Rancher服务器和相关组件的状态,并记录故障和事件。这有助于及时发现并解决潜在的问题。 7. 定期更新和升级:定期更新和升级Rancher服务器和相关组件,以获取最新的功能和安全修复。在升级过程中,确保先备份数据并进行测试。 总之,高可用部署Rancher需要考虑多个方面,包括服务器冗余、负载均衡、数据库配置、持久化存储、监控和日志记录等。以上步骤可以作为一个基础指南来实现高可用部署。具体的实施方法可能因环境和需求而异,建议在实施前进行充分的规划和测试。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值