如何在Ubuntu上使用Rancher管理Docker容器
Rancher是一个开源的容器管理平台。 它允许您轻松运行和管理Docker和Kubernetes容器。 Rancher提供基础架构服务,如多主机网络,负载平衡和卷快照。
在本教程中,我将向您展示如何在Ubuntu 16.04 LTS上安装和配置Rancher。 我们将在Ubuntu服务器上安装Rancher,启用本地身份验证,添加牧人主机,然后尝试从Rancher Dashboard运行单个容器应用程序。
先决条件
- Ubuntu服务器16.04
- hakase-labs - 192.168.33.10
- rancher-host01 - 192.168.33.11
- 根特权
我们将要做什么?
- 在Ubuntu 16.04上安装Docker
- 安装Rancher服务器
- 启用本地身份验证服务器
- 添加新主机
- 部署新容器
第1步 - 在Ubuntu 16.04上安装Docker
Rancher可以作为一组Docker容器安装 - 一个容器作为管理服务器,另一个容器作为代理。 我们需要在我们的所有Rancher机上安装Docker。
更新您的Ubuntu存储库并升级所有软件包。
sudo apt update
sudo apt upgrade
现在使用下面的apt命令安装docker。
sudo apt install -y docker.io
安装完成后,启动Docker服务并使其每次在系统启动时运行。
systemctl start docker
systemctl enable docker
Docker现在已经安装并运行在我们的Rancher机上 - 请使用下面的命令检查它。
systemctl status docker
docker --version
你应该得到如下所示的结果。
第2步 - 安装Rancher服务器
要运行并安装Rancher,我们只需要在主机上运行Rancher容器。 在这一步中,我们将在我们的'host01'服务器上安装Rancher服务器单个容器。
在'hakase-labs'服务器上安装Rancher服务器之前,我们将创建一个新目录并将其定义为Rancher数据库卷。
运行以下命令。
HOST_VOLUME=$HOME/rancher-data/mysql
mkdir -p $HOST_VOLUME
现在使用下面的docker命令安装Rancher服务器。
sudo docker run -d \
-v $HOST_VOLUME:/var/lib/mysql \
--restart=unless-stopped \
-p 8080:8080 \
rancher/server
等待Rancher服务器安装。
安装完成后,可通过Web浏览器访问Rancher服务器。
打开您的Web浏览器并使用端口8080键入服务器IP地址。
http://192.168.33.10:8080/
你将得到Rancher首页安装如下。
第3步 - 配置Rancher访问控制
在Rancher安装之后,我们需要配置Rancher访问控制。 访问控制允许您管理对Rancher服务器具有访问权限的用户。
Rancher支持许多访问控制提供程序,包括Active Directory,Azure AD,Github,OpenLDAP,SAML和本地身份验证。
对于本指南,我们将为我们的Rancher服务器安装启用本地身份验证。
打开您的Web浏览器并使用端口8080键入服务器IP地址。
http://192.168.33.10:8080/
将光标移至“管理员”菜单并点击“访问控制”。
现在我们要使用“本地身份验证”方法。 点击页面上的“LOCAL”,然后输入您的用户名和密码。
然后点击“启用本地身份验证”按钮。
您将被重定向到启用本地身份验证的Rancher仪表板。
第4步 - 添加新主机
主机是Rancher中最基本的资源单元,可以表示为任何Linux服务器(安装了Docker的虚拟或物理服务器)。
在这一步中,我们将使用Ubuntu作为操作系统和2GB RAM来添加新主机'rancher-host01'。
使用ssh连接到'rancher-host01'服务器。
ssh rot@rancher-host01
使用apt命令将最新的Docker版本安装到服务器上。
sudo apt install docker.io
安装完成后,启动Docker服务并使其每次在系统引导时启动。
systemctl start docker
systemctl enable docker
Docker已安装在'rancher-host01'服务器上。
接下来,我们将rancher-host01添加到Rancher服务器。
打开Rancher Dashboard,将光标移动到'INFRASTRUCTURE'菜单并点击'Hosts'。
现在点击“添加主机”按钮。
对于主机注册URL,我们将使用如下的默认值。
点击“保存”按钮。
现在选择主机类型。 Rancher支持许多主机类型,包括Amazon EC2,Azure,DigitalOcean和Rackspace主机。
选择'自定义'主机,输入'hots02'IP地址,然后在框中复制docker命令。
现在打开rancher-host01终端shell并粘贴命令,如下所示。
sudo docker run -e CATTLE_AGENT_IP="192.168.33.11" --rm --privileged -v /var/run/docker.sock:/var/run/docker.sock -v /var/lib/rancher:/var/lib/rancher rancher/agent:v1.2.9 http://192.168.33.10:8080/v1/scripts/C7871D15E9CE6FFA892F:1514678400000:T9qDygb2pHroTMBuqA9Jylol8tU
该命令将下载并在rancher-host01服务器上创建新的容器Rancher Agent。
完成后,您将得到如下结果。
现在返回Rancher Dashboard Host Add页面并点击'Close'按钮。
你会得到如下的页面。
rancher-host01已经添加到Rancher服务器,我们现在准备运行由Rancher服务器管理的容器。
第5步 - 测试通过Rancher目录创建新容器
Rancher为应用程序提供目录。 应用程序模板可以轻松部署新应用程序。
Rancher提供两种类型的目录。 库目录包含Rancher认证目录中的模板以及包含Rancher社区目录模板的社区目录。
在这一步中,我们将尝试通过Rancher目录社区模板部署一个简单的博客平台“Ghost”作为容器。
在Rancher仪表板上,将光标移至“CATALOG”菜单并单击社区目录。
在'搜索'框中输入我们要安装的应用程序名称('Ghost'),然后点击'查看详情'按钮。
为新的Ghost容器提供名称和说明。
然后点击'启动'按钮。
完成后,您将得到如下结果。
“Ghost”容器已创建,现在正在Rancher代理服务器上运行。
现在将光标移动到'INFRASTRUCTURE'菜单并点击'Host'。 并确保你的'Ghost'容器运行在'host2'服务器上。
要验证Ghost容器安装,打开您的Web浏览器并输入'rancher-host01'IP地址,您将获得ghost博客的默认主页。
http://192.168.33.11/
Ubuntu 16.04上的Rancher服务器和Rancher代理安装已成功完成。