前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Rancher入门

Rancher入门

作者头像
一条老狗
发布2019-12-26 11:52:09
1.8K0
发布2019-12-26 11:52:09
举报
文章被收录于专栏:极客运维极客运维极客运维

Rancher简介

Rancher是目前市面上唯一一个能满足开箱即用的容器管理平台,同时能够支持多种编排引擎,如Mesos,Rancher自己的Cattle,Google的K8S,以及Docker官方的Swarm作为容器编排引擎。同时Rancher提供的Catalog应用商店能够帮助研发团队自主创建所需要的服务实例。Rancher 是以在生产环境中运行容器为目标而构建的开源软件平台。随着 Docker 容器这种类型的应用工作负载的逐渐流行,它催生了很多与之相应的基础架构服务,如网络服务、存储服务、负载均衡,安全,服务发现和资源管理。

1.计算资源

Rancher 使用的是来自于公有云或私有云上 Linux 主机的裸计算资源。每一个 Linux 主机既可以是虚拟机,也可以是物理机。Rancher 对每一个主机的期望不会多于 CPU,内存,磁盘存储和网络连接。Rancher可以直接调度接入到其中的阿里云,AWS,DigitalOcean,或者物理机。从 Rancher 的角度看来,一个来自云服务商的云主机和私有数据中心的物理机是没多大差异。

2.相关功能

Rancher 产品的关键功能包括:

  • 主机网络: Rancher 为每个环境生成一个软件定义网络(SDN),为主机和云的容器之间提供了安全的网络通讯。
  • 持久化存储服务: Rancher 对 Docker 提供持久化存储服务的编排,让开发者在部署容器化应用的同时可靠地部署与之相应的存储。这项新功能基于 Docker 1.9的卷插件功能,这让开发人员可以更加方便地运行需要有状态数据库和持久存储的应用。
  • 容器的负载均衡:Rancher 提供的内置、弹性负载均衡能在容器之间或者服务之间分发流量。负载均衡服务可以跨多个云工作。
  • 服务发现:Rancher 实现了分布式服务发现功能,具有内置的健康检查功能,并使容器自动地注册自己到相应至相应服务,并且各种服务之间可以在网络上动态地彼此发现。
  • 多租户和用户环境:Rancher 为多用户而设计,企业各个部门间可以跨应用生命周期协作。通过与已有目录服务的集成,Rancher 的用户可以创建独立的开发,测试和生产环境,然后邀请相关人员一起协作地管理资源和应用。
  • 服务升级:通过使用服务克隆和请求重定向功能,Rancher 使用户能更加容易地升级以及存在的容器服务。这让新版本的服务在处理生产流量前,有机会在其所依赖的生产环境中被校验和确认。
  • 多编排引擎支持:Rancher 用户在创建环境的时候,可以为他们的容器选择不同的容器编排引擎,默认是 Cattle,或者是 Kubernets MesosDocker Swarm。这让用户可以选择任意市场领先的调度框架的同时,依然能利用到Ranher 的其它所有功能,如:应用商店/目录,企业级用户管理,容器网络,和存储技术。

Rancher部署

Rancher的部署十分简单,首先准备一台Linux发行版主机,内核至少3.10以上,并安装好docker,可使用安装脚本: curl -fsSL https://get.docker.com/ | sh 相关的安装脚本很多,可以找一个国内源的脚本,以防被墙。

1.安装启动Rancher

启动 Rancher 服务器所需要做的动作就只有一条命令。在启动了这个容器之后,我们将能查看到这个运行中的服务器的日志。

$ sudo docker run -d --restart=always -p 8080:8080 rancher/server
# 显示 Rancher 服务器的容器 ID,替换containerid
$ sudo docker ps
# 显示并查看 Rancher 服务器的日志
$ sudo docker logs -f containerid

启动 Rancher 服务器可能需要花几分钟时间。这取决于您下载 Rancher Server镜像的速度。当日志中显示 “…. Startup Succeeded, Listening on port…” 以后,Rancher UI 图形界面现在就能正常访问了。

Rancher 服务器的图形界面访问端口是 8080 ,通过在浏览器中访问这个网址 http://linux_host_ip:8080 , 您就可以打开 Rancher 服务器的图形界面。如果您的浏览器和 Rancher 服务器都运行在同一台服务器上,你需要使用主机的真实 Ip 地址,如: http://192.168.1.100:8080 , 而不是 http://localhost:8080 或者http://127.0.0.1:8080

注意: Rancher镜像下载过慢一般都是墙的问题,可以使用并配置阿里云或者Daocloud的docker源镜像加速,具体方法自行搜索,非常简单。

Rancher OS

Rancher OS为定制化,专供Rancher运行的Docker环境,精简Linux系统。

  • 可以与 Docker 的开发速度相匹配,提供最新版本的 Docker;
  • 不再需要复杂的初始化系统,使用一个简单的配置文件,管理人员很容易就可以将系统服务配置成 Docker 容器;
  • 容易扩展,用户很容易通过配置使 RancherOS 启动一个自定义的控制台容器,提供 Ubuntu、CentOS 或者 Fedora 发行版的体验;
  • 资源占用小,启动速度快,容易移植,安全性更好;
  • 升级、回滚简单;
  • 可以使用像 Rancher 这样的容器管理平台,容易维护。

迁移如同备份与恢复的步骤一样, 只需要将老服务器/var/opt/gitlab/backups目录下的备份文件拷贝到新服务器上的/var/opt/gitlab/backups即可(如果你没修改过默认备份目录的话)。但是需要注意的是新服务器上的Gitlab的版本必须与创建备份时的Gitlab版本号相同. 比如新服务器安装的是最新的8.5版本的Gitlab, 那么迁移之前, 最好将老服务器的Gitlab 升级为8.5再进行备份。

1.Rancher OS部署

Rancher OS安装十分简单,大部分人在安装后可能会发现不知道登录密码。 从镜像启动后,执行以下命令即可设定系统密码并安装到本地:

sudo ros install -d /dev/sda -c cloud-config.yml --append "rancher.password=mySecret"

cloud-config.yml配置文件内可以指定系统SSH秘钥,以及设定一些系统定制配置。 系统安装到本地硬盘完成后,使用之前设定的密码登录,修改registry_mirror,否则后续拉取docker镜像容易被墙。

sudo ros config set rancher.docker.registry_mirror "http://****.m.daocloud.io”
sudo ros config set rancher.system_docker.registry_mirror "http://****.m.daocloud.io”

安装完成Rancher OS和Rancher后,访问8080端口即可。

添加节点

通过点击图形界面的 Infrastructure 标签来添加主机,然后您将会看到 Hosts 页面。Rancher 会提示您选择一个 IP 地址。这个 IP 地址必须可以被所有即将添加的主机访问到。把 Rancher 服务器的端口通过防火墙的 NAT 或者负载均衡器暴露出来,或者暴露到 Internet上在有些情况下是很有用的。如果你的主机有一个私有或者本地 IP 地址,例如:192.168.*.*;Rancher 将打印一个提示信息,告诉您是否确认这个 IP 地址可以被正常访问到。

在待添加节点服务器上运行提示的命令即可。

添加完成,即可开始正常使用。

如图,创建一个nginx应用,十分便捷。


本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-07-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 极客运维 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
负载均衡
负载均衡(Cloud Load Balancer,CLB)提供安全快捷的流量分发服务,访问流量经由 CLB 可以自动分配到云中的多台后端服务器上,扩展系统的服务能力并消除单点故障。负载均衡支持亿级连接和千万级并发,可轻松应对大流量访问,满足业务需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档