如何在 Ubuntu 上使用 Rancher 管理 Docker 容器
Rancher 是一个开源的容器管理平台。它允许您轻松运行和管理 Docker 和 Kubernetes 容器。 Rancher 提供基础设施服务,例如多主机网络、负载均衡和卷快照。
在本教程中,我将向您展示如何在 Ubuntu 16.04 LTS 上安装和配置 Rancher。我们将在 Ubuntu 服务器上安装 Rancher,启用本地身份验证,添加 Rancher 主机,然后尝试从 Rancher Dashboard 运行单个容器应用程序。
先决条件
- Ubuntu 服务器 16.04
- hakase-labs - 192.168.33.10
- rancher-host01 - 192.168.33.11
我们将要做什么?
- 在 Ubuntu 16.04 上安装 Docker
- 安装Rancher服务器
- 启用本地身份验证 Rancher Server
- 添加新主机
- 部署新容器
第 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 dockerDocker 现在已经安装并运行在我们的 rancher 主机上——使用下面的命令检查它。
systemctl status docker
docker --version你应该得到如下所示的结果。
第 2 步 - 安装 Rancher Server
要运行和安装 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 Access Control。访问控制允许您管理对您的 Rancher 服务器具有访问权限的用户。
Rancher 支持许多访问控制提供程序,包括 Active Directory、Azure AD、Github、OpenLDAP、SAML 和本地身份验证。
对于本指南,我们将为我们的 Rancher 服务器安装启用本地身份验证。
打开您的 Web 浏览器并输入端口为 8080 的服务器 IP 地址。
http://192.168.33.10:8080/
将光标移动到 ADMIN 菜单并单击 Access Control。
现在我们要使用本地身份验证方法。单击页面上的本地,然后键入您的用户名和密码。
然后单击启用本地身份验证按钮。
您将被重定向到启用了本地身份验证的 Rancher 仪表板。
第 4 步 - 添加新主机
主机是 Rancher 中最基本的资源单元,表示为任何 Linux 服务器(安装了 Docker 的虚拟或物理服务器)。
在此步骤中,我们将添加新主机 rancher-host01,使用 Ubuntu 作为操作系统和 2GB RAM。
使用 ssh 连接到 rancher-host01 服务器。
ssh
使用 apt 命令将最新的 Docker 版本安装到服务器。
sudo apt install docker.io
安装完成后,启动 docker 服务并使其在每次系统启动时启动。
systemctl start docker
systemctl enable dockerDocker已经安装在rancher-host01服务器上。
接下来,我们将把 rancher-host01 添加到 Rancher Server。
打开 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 Catalog 测试创建新容器
Rancher 为应用程序提供目录。应用程序模板可以轻松部署新应用程序。
Rancher 提供两种类型的目录。图书馆目录,其中包含来自 Rancher 认证目录的模板,以及社区目录,其中包含来自 Rancher 社区目录的模板。
在这一步中,我们将尝试通过 Rancher Catalog Community Templates 将一个简单的博客平台 Ghost 部署为一个容器。
在 Rancher Dashboard 上,将光标移动到 CATALOG 菜单并单击 Community Catalog。
在搜索框中 - 输入我们要安装的应用程序名称 (Ghost),然后单击查看详细信息按钮。
为新的 Ghost 容器命名和描述。
然后单击启动按钮。
完成后,您将得到如下结果。
Ghost 容器已创建并正在 Rancher 代理服务器上运行。
现在将光标移动到 INFRASTRUCTURE 菜单并单击 Host。并确保你得到 ghost 容器正在 host2 服务器上运行。
要验证 Ghost 容器安装,请打开您的 Web 浏览器并输入 rancher-host01 IP 地址,您将获得 ghost 博客默认主页。
http://192.168.33.11/
Rancher server 和 Rancher agent 在 Ubuntu 16.04 上的安装已经成功完成。
参考
- http://rancher.com/docs/