私有容器服务管理: Rancher

这里写图片描述

Rancher是进入容器服务管理中的后起之秀,后发优势也确实一览无余。但是在这个阶段还能挤进容器管理领域试图分一杯羹的,其也确实有过人之处,rancher的目标之一就是Easy to use,确实在新的技术层出不穷的出现的今天,如果缺少了这个特性势必无法得到用户的拥护。在本文中我们将会介绍如何安装和使用rancher server,同时也来看一下如何在这个开源的容器管理平台中实现私有容器服务,是不是Easy to use。

提供容器服务

提供容器服务,但什么是容器的服务呢。至少要包含以下三个方面才能称得上是一个容器的服务。

  • 容器编排:docker-compose/k8s等类似的功能
  • 容器管理:用户的管理以及镜像的管理等等
  • Infra管理:主机/网络/存储管理等

这里写图片描述

服务容器的编排,rancher和kubernetes以及mesos的定位是怎样的呢。对于这两位目前低位无法撼动的情况,看起来rancher选择的是支持,不重复造轮子,虽然多多少少造了一些,但那些是难免的。

前提条件

依赖软件版本
docker1.10及后续版本

docker pull

# docker pull rancher/server

目前是842.9M的镜像,稍微有点大。

[root@host131 ~]# docker images |grep server
docker.io/rancher/server          latest              0a18f1c0ead2        2 weeks ago         842.9 MB
[root@host131 ~]#

docker run

因为8080口被别的服务所占用,所以改用8888,可自行指定port

[root@host131 ~]# docker run -d --restart=always -p 8888:8080 rancher/server
475ce179145a090179d66eb03ed5885206d5947ca62fd338c07e574f1459915c
[root@host131 ~]#

web access

URLhttp://192.168.32.131:8888/

提示追加host

这里写图片描述

设定server信息

这里写图片描述

添加host
创建3个host的组成的环境(Default)

机器项番机器hostname
No.1host132
No.2host133
No.3host134

这里写图片描述

将图中所提示的下列代码,到下面三台机器上分别执行,因为本文中使用root,所以sudo可以不用。

sudo docker run -d --privileged -v /var/run/docker.sock:/var/run/docker.sock -v /var/lib/rancher:/var/lib/rancher rancher/agent:v1.0.2 http://192.168.32.131:8888/v1/scripts/6FFA1E6826E16F541770:1473177600000:9yuG5DRzdCuDMuMSts7p4TA94

注意事项:其实所做的事情就是在这3台机器上启动rancher的agent,要保证其所启动的container中能够联到rancher server的8888口,需要注意 防火墙/iptable/内网代理等问题的影响。详细可以通过使用rancher server的audit log页面和docker logs命令来确认信息。
添加host132

[root@host132 ~]# docker run -d --privileged -v /var/run/docker.sock:/var/run/docker.sock -v /var/lib/rancher:/var/lib/rancher rancher/agent:v1.0.2 http://192.168.32.131:8888/v1/scripts/6FFA1E6826E16F541770:1473177600000:9yuG5DRzdCuDMuMSts7p4TA94
Unable to find image 'rancher/agent:v1.0.2' locally
Trying to pull repository docker.io/rancher/agent ...
v1.0.2: Pulling from docker.io/rancher/agent

5a132a7e7af1: Pull complete
fd2731e4c50c: Pull complete
28a2f68d1120: Pull complete
a3ed95caeb02: Pull complete
7fa4fac65171: Pull complete
33de63de5fdb: Pull complete
d00b3b942272: Pull complete
Digest: sha256:b0b532d1e891534779d0eb1a01a5717ebfff9ac024db4412ead87d834ba92544
Status: Downloaded newer image for docker.io/rancher/agent:v1.0.2
a0e525a9e0e79a76cadfe06c084fc37ba1144739c9244a25ac57ab9e22a27a32
[root@host132 ~]#

添加host133

[root@host133 ~]# docker run -d --privileged -v /var/run/docker.sock:/var/run/docker.sock -v /var/lib/rancher:/var/lib/rancher rancher/agent:v1.0.2 http://192.168.32.131:8888/v1/scripts/6FFA1E6826E16F541770:1473177600000:9yuG5DRzdCuDMuMSts7p4TA94
Unable to find image 'rancher/agent:v1.0.2' locally
Trying to pull repository docker.io/rancher/agent ...
v1.0.2: Pulling from docker.io/rancher/agent

5a132a7e7af1: Pull complete
fd2731e4c50c: Pull complete
28a2f68d1120: Pull complete
a3ed95caeb02: Pull complete
7fa4fac65171: Pull complete
33de63de5fdb: Pull complete
d00b3b942272: Pull complete
Digest: sha256:b0b532d1e891534779d0eb1a01a5717ebfff9ac024db4412ead87d834ba92544
Status: Downloaded newer image for docker.io/rancher/agent:v1.0.2
36b020c4097fa3382fd62e71ca98bd459487b5076cb97a7f41acfc07893a5105
[root@host133 ~]#

添加host134

[root@host134 ~]# docker run -d --privileged -v /var/run/docker.sock:/var/run/docker.sock -v /var/lib/rancher:/var/lib/rancher rancher/agent:v1.0.2 http://192.168.32.131:8888/v1/scripts/6FFA1E6826E16F541770:1473177600000:9yuG5DRzdCuDMuMSts7p4TA94
Unable to find image 'rancher/agent:v1.0.2' locally
Trying to pull repository docker.io/rancher/agent ...
v1.0.2: Pulling from docker.io/rancher/agent

5a132a7e7af1: Pull complete
fd2731e4c50c: Pull complete
28a2f68d1120: Pull complete
a3ed95caeb02: Pull complete
7fa4fac65171: Pull complete
33de63de5fdb: Pull complete
d00b3b942272: Pull complete
Digest: sha256:b0b532d1e891534779d0eb1a01a5717ebfff9ac024db4412ead87d834ba92544
Status: Downloaded newer image for docker.io/rancher/agent:v1.0.2
515a85531fa406313cde12368195e80d352d5643428a4224c931ebba04294b47
[root@host134 ~]#

结果确认:因为这几台机器上同时设定过kubernetes,所以也被识别出来了
这里写图片描述

使用Catalog

这里写图片描述

选中gogs,然后launch

这里写图片描述

可以看到其add了一个stack

这里写图片描述

在hosts页面也可以看到增加了一个Stack: gogs。

这里写图片描述

总结:功能非常强大,确实简单易用。作为简单介绍,这里只能是冰山一角,强烈建议实际操作一下。另外Rancher还提供了一个RancherOS,是和Docker进行深度整合的一个作品,创意性的将所有的东西都跑在了容器中,分成了system container和user container,而且非常之小,也是值得稍微花点时间看看的。

Rancher是一个开源的容器管理平台,它提供了一套完整的工具和界面,用于简化容器的部署、管理和监控。Rancher私有化部署是指将Rancher部署在己的私有境中,而不是使用Rancher供的托管服务。 要进行Rancher私有化部署,您需要按照以下步骤进行操作1. 确定部署环境:您需要选择一个适的服务器或虚拟机环境来部署Ranch。可以选择使用物理服务器、虚拟机或云台等。 2. 安装Docker:Rancher是基于Docker的,所以您需要先安装Docker。根据您的操作系统类型,可以参考Docker官方文档进行安装。 3. 部署Rancher服务器:您可以通过使用Docker命令或者Docker Compose文件来部署Rancher服务器。具体的部署方式可以参考Rancher官方文档中的指南。 4. 配置Rancher服务器:一旦Rancher服务器成功部署,您可以通过访问Rancher的Web界面来进行配置。在配置过程中,您需要设置管理员账号、访问控制、注册节点等。 5. 添加节点:在私有化部署中,您可以将其他服务器或虚拟机作为节点添加到Rancher中,以便进行容器的部署和管理。您可以通过Rancher界面或者使用Rancher提供的命令行工具来添加节点。 6. 部署和管理容器:一旦Rancher服务器和节点都配置好了,您就可以使用Rancher界面来部署和管理容器了。您可以选择使用Rancher提供的应用商店来快速部署常用的容器应用,也可以自定义部署您自己的容器应用。 希望以上介绍对您有所帮助!如果您还有其他问题,请随时提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值