使用rancher管理docker

1. 介绍
Rancher 是一个容器管理的完整解决方案,并且即将成为一个完整的容器管理平台。了解rancher的功能可以看下官方的提供的介绍视频 Rancher Overview 。注意看该视频需要科学上网。


详细的rancher使用建议查看 rancher官方文档


2. 安装
2.1 下载镜像
# server
docker pull rancher/server
2.2 部署mysql
因为rancher需要使用mysql,所以需要启动mysql容器


docker pull mysql
docker run -d  --name mysqldb -e MYSQL_ROOT_PASSWORD=wkm  mysql:latest --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
首先进入mysql bash


docker run -it --link mysqldb:mysql --rm mysql sh -c 'exec mysql -h"$MYSQL_PORT_3306_TCP_ADDR" -P"$MYSQL_PORT_3306_TCP_PORT" -uroot -p"$MYSQL_ENV_MYSQL_ROOT_PASSWORD"'
进入mysql创建用户给rancher用


> 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';
2.2 部署 server
使用以下方式执行容器


# Launch on each node in your HA cluster
$ docker run -d --restart=unless-stopped -p 8080:8080  rancher/server \
     --db-host myhost.example.com --db-port 3306 --db-user username --db-pass password --db-name cattle \
     --advertise-address <IP_of_the_Node>
我这里实验时,将server部署到了10.45.10.32和10.45.10.33这两台上了,例如10.45.10.32这台上执行的命令如下:


# 注意这里的db host使用容器本身的IP,通过docker inspect xxx来获取
docker run -d --name rancher-server --restart=unless-stopped -p 8080:8080  rancher/server \
     --db-host 172.17.0.2  --db-port 3306 --db-user cattle --db-pass cattle --db-name cattle \
     --advertise-address 10.45.10.32
启动rancher server容器后,用docker logs rancher-server来查看是否正常启动。正常启动后效果如下:




然后就可以通过IP来访问rancher的WEB管理中心了。




右下角可以换成中文




3. 集成管理swarm
rancher功能十分强大,能集成各种第三方,当然也包括swarm。虽然该功能还处于experimental,不过swarm这么流行,相信很快就能发布正式版。这里作为测试使用,我们直接用该特性。


3.1 创建swarm环境


然后再点击下方的add environment




创建一个swarm环境




切换到该环境,我创建的swarm环境名字为rancher_swarm




3.2 添加主机
PS: 注意每个环境有自己对应的主机集群。默认是default环境。上面切换到我们创建的SWARM集群,所以在新环境添加主机。注意SWARM集群至少需要3台主机。


点击基础架构里面主机来添加主机:




点击下方的添加主机




设定需要加入的HOST IP,根据图形界面提供的提示操作即可。主要操作就是在各个node上启动rancher/agent容器,按照图形界面上的提示启动




3.3 将主机加入swarm集群
虽然前面创建了主机,不过将node加入集群的操作,仍然需要命令解决。首先在swarm manager所在节点上查看JOIN集群的命令,然后在需要被加入的节点上执行命令。


4. 更多功能
rancher功能非常多,可以轻松部署企业级应用。各种图形展示也十分友好。例如可以展示容器之间的拓扑这点就非常好。更多功能读者可以自己参考官方文档了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值