转载于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. 学习Web Service、wcf、webapi的区别

    csdn:关于wcf,webservice,webapi或者其他服务或者接口有什么区别. wcf,webservice采用的是rpc协议,这个协议很复杂,所以每次要传递.要校验的内容也很复杂,别看我们 ...

  2. 04_Java基础语法_第4天(数组)_讲义

    今日内容介绍 1.流程控制语句switch 2.数组 3.随机点名器案例 01switch语句解构 * A:switch语句解构 * a:switch只能针对某个表达式的值作出判断,从而决定程序执行哪 ...

  3. Scala入门系列(二):条件控制与循环

    条件控制与循环   if表达式 定义:if表达式是有值的,就是if或者else中最后一行语句返回的值. 例如:val isAdult = if (age > 18) 1 else 0 类型推断: ...

  4. MapReduce编程之Map Join多种应用场景与使用

    Map Join 实现方式一:分布式缓存 ● 使用场景:一张表十分小.一张表很大. ● 用法: 在提交作业的时候先将小表文件放到该作业的DistributedCache中,然后从DistributeC ...

  5. Java 单生产者消费者问题

    package com.cwcec.test; class Resource { private int count = 0; private boolean flag = false; public ...

  6. 清除浮动小记,兼容Ie6,7

    .clearfix { *zoom:1;} .clearfix:after{clear:both; display:block; height:0; visibility:hidden; line-h ...

  7. scrapy 直接在编辑器运行

    # *_*coding:utf-8 *_* from scrapy.cmdline import execute execute("scrapy crawl spbeen --nolog&q ...

  8. set_magic_quotes_runtime

    在php的配置文件中,有个布尔值的设置,就是magic_quotes_runtime,当它打开时,php的大部分函数自动的给从外部引入的(包括数据库或者文件)数据中的溢出字符加上反斜线. 当然如果重复 ...

  9. Java多线程(四) —— 线程并发库之Atomic

    一.从原子操作开始 从相对简单的Atomic入手(java.util.concurrent是基于Queue的并发包,而Queue,很多情况下使用到了Atomic操作,因此首先从这里开始). 很多情况下 ...

  10. 题解 P4379 【[USACO18OPEN]Lemonade Line】

    不敢快速排序又想要快排的速度,还不用STL的小伙伴们看这里! 小金羊终于学会了堆排以外的另外的一种排序 (打个题解巩固一下) 归并排序(mergesort): 时间复杂度和快排一样的优秀. 先说归并排 ...