转载于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的高可用部署实验-学习笔记的更多相关文章

  1. [MariaDB]MHA高可用部署-实验

    目录 一.简介 1.1MHA角色 二.MHA的工具 三.MHA部署过程 3.1.1 配置 3.1.2 环境规划 3.1.3 配置一主多从 3.2 MHA配置 3.2.1 master权限授予 3.2. ...

  2. 高可用工具keepalived学习笔记

    keepalived完全遵守VRRP协议包括竞选机制,至于VRRP是什么这里不说了参考http://wenku.baidu.com/link? url=1UbkmHuQlGECgC90P7zF6u2x ...

  3. Rancher安装多节点高可用(HA)

    Rancher版本:Rancher v1.0.1 基本配置需求 多节点的HA配置请参照单节点需求 节点需要开放的端口 全局访问:TCP 端口22,80,443,18080(可选:用于在集群启动前 查看 ...

  4. Spark入门:第2节 Spark集群安装:1 - 3;第3节 Spark HA高可用部署:1 - 2

    三. Spark集群安装 3.1 下载spark安装包 下载地址spark官网:http://spark.apache.org/downloads.html 这里我们使用 spark-2.1.3-bi ...

  5. kubernetes1.7.6 ha高可用部署

    写在前面:  1. 该文章部署方式为二进制部署. 2. 版本信息 k8s 1.7.6,etcd 3.2.9 3. 高可用部分 etcd做高可用集群.kube-apiserver 为无状态服务使用hap ...

  6. Keepalived+LVS实现LNMP网站的高可用部署

    Keepalived+LVS实现LNMP网站的高可用部署   项目需求   当我们访问某个网站的时候可以在浏览器中输入IP或者域名链接到Web Server进行访问,如果这个Web Server挂了, ...

  7. MooseFS及其高可用部署

    MooseFS的工作原理分析 MooseFS(下面统一称为MFS)由波兰公司Gemius SA于2008年5月30日正式推出的一款Linux下的开源存储系统,是OpenStack开源云计算项目的子项目 ...

  8. HDFS的HA(高可用)

    HDFS的HA(高可用) 概述 (1)实现高可用最关键的策略是[消除单点故障].HA 严格来说应该分成各个组件的 HA 机制:HDFS 的 HA 和 YARN 的 HA. (2)Hadoop2.0 之 ...

  9. kubernetes 1.15.1 高可用部署 -- 从零开始

    这是一本书!!! 一本写我在容器生态圈的所学!!! 重点先知: 1. centos 7.6安装优化 2. k8s 1.15.1 高可用部署 3. 网络插件calico 4. dashboard 插件 ...

随机推荐

  1. SpringMvc跨域支持

    SpringMvc跨域支持 在controller层加上注解@CrossOrigin可以实现跨域 该注解有两个参数 1,origins  : 允许可访问的域列表 2,maxAge:飞行前响应的缓存持续 ...

  2. 2017-2018-20172311 暑期编程作业:APP

    2017-2018-20172311 暑期编程作业:实现一个简单倒计时APP 写在前面:暑假的时候就单纯的想要设计一个倒计时软件,然后就通过查阅资料等学了一些,包括实现倒计时功能及显示:背景音乐的添加 ...

  3. connect by prior id= pid start with id='1' 树结构查询

    基础表创建: with temp as ( ' id, '' pid from dual union all ' pid from dual union all ' pid from dual uni ...

  4. Ubuntu下开启mysql远程访问

    1. 开启数据库3306端口 首先,使用如下指令查看3306端口是否对外开放. netstat -an | grep 3306 tcp 0 0 127.0.0.1:3306 0.0.0.0:* LIS ...

  5. 网络助手之NABCD

    Sunny--Code团队:刘中睿,杜晓松,郑成       我们小组这次做的软件名字叫为校园网络助手.它主要有着两项功能:网络助手与校内网盘.          N--need:在学校里有时候我们就 ...

  6. Myeclipse2014 用Maven创建第一个web项目(1)---helloworld

    一.创建项目 1.Eclipse中用Maven创建项目 2.继续Next 3.选maven-archetype-webapp后,next 4.填写相应的信息,Packaged是默认创建一个包,不写也可 ...

  7. Codeforces Round #304 (Div. 2) E. Soldier and Traveling 最大流

    题目链接: http://codeforces.com/problemset/problem/546/E E. Soldier and Traveling time limit per test1 s ...

  8. 【CSAPP笔记】10. 代码优化

    写程序的主要目标是使它在所有可能的情况下都能正确运行(bug free),一个运行得很快但有 bug 的程序是毫无用处的.在 bug free 的基础上,程序员必须写出清晰简洁的代码,这样做是为了今后 ...

  9. SQL Server查询已锁的表及解锁

    --查询已锁的表 select request_session_id spid,OBJECT_NAME(resource_associated_entity_id) tableName ,* from ...

  10. Internet History, Technology and Security (Week 3)

    Week 3 History: The Web Makes it Easy to Use Welcome to week 3! This is our fourth and final week of ...