當前位置:
首頁 > 知識 > Rancher:一個全面的可用於產品環境的容器管理平台

Rancher:一個全面的可用於產品環境的容器管理平台

Rancher:一個全面的可用於產品環境的容器管理平台

通常,沒有 GUI 的 Docker 軟體對於 Linux 管理員來說很容易,但是對於開發者來就有點困難。當把它搬到生產環境上來,那麼它對 Linux 管理員來說也相當不友好。那麼,輕鬆管理 Docker 的最佳解決方案是什麼呢?

-- Magesh Maruthamuthu

Docker 作為一款容器化應用的新興軟體,被大多數 IT 公司使用來減少基礎設施平台的成本。

通常,沒有 GUI 的 Docker 軟體對於 Linux 管理員來說很容易,但是對於開發者來就有點困難。當把它搬到生產環境上來,那麼它對 Linux 管理員來說也相當不友好。那麼,輕鬆管理 Docker 的最佳解決方案是什麼呢?

唯一的辦法就是提供 GUI。Docker API 允許第三方應用接入 Docker。在市場上有許多 Docker GUI 應用。我們已經寫過一篇關於 Portainer 應用的文章。今天我們來討論另一個應用,Rancher。

容器讓軟體開發更容易,讓開發者更快的寫代碼、更好的運行它們。但是,在生產環境上運行容器卻很困難。

推薦閱讀: Portainer:一個簡單的 Docker 管理圖形工具


Rancher 簡介

Rancher 是一個全面的容器管理平台,它可以讓容器在各種基礎設施平台的生產環境上部署和運行更容易。它提供了諸如多主機網路、全局/本地負載均衡和卷快照等基礎設施服務。它整合了原生 Docker 的管理能力,如 Docker Machine 和 Docker Swarm。它提供了豐富的用戶體驗,讓 DevOps 管理員在更大規模的生產環境上運行 Docker。

訪問以下文章可以了解 Linux 系統上安裝 Docker。

推薦閱讀:

  • 如何在 Linux 上安裝 Docker
  • 如何在 Linux 上使用 Docker 鏡像
  • 如何在 Linux 上使用 Docker 容器
  • 如何在 Docker 容器內安裝和運行應用

Rancher 特性

  • 可以在兩分鐘內安裝 Kubernetes。
  • 一鍵啟動應用(90 個流行的 Docker 應用)。
  • 部署和管理 Docker 更容易。
  • 全面的生產級容器管理平台。
  • 可以在生產環境上快速部署容器。
  • 強大的自動部署和運營容器技術。
  • 模塊化基礎設施服務。
  • 豐富的編排工具。
  • Rancher 支持多種認證機制。

怎樣安裝 Rancher

由於 Rancher 是以輕量級的 Docker 容器方式運行,所以它的安裝非常簡單。Rancher 是由一組 Docker 容器部署的。只需要簡單的啟動兩個容器就能運行 Rancher。一個容器用作管理伺服器,另一個容器在各個節點上作為代理。在 Linux 系統下簡單的運行下列命令就能部署 Rancher。

Rancher 伺服器提供了兩個不同的安裝包標籤如 stable 和 latest。下列命令將會拉取適合的 Rancher 鏡像並安裝到你的操作系統上。Rancher 伺服器僅需要兩分鐘就可以啟動。

  • latest:這個標籤是他們的最新開發構建。這些構建將通過 Rancher CI 的自動化框架進行驗證,不建議在生產環境使用。
  • stable:這是最新的穩定發行版本,推薦在生產環境使用。

Rancher 的安裝方法有多種。在這篇教程中我們僅討論兩種方法。

  • 以單一容器的方式安裝 Rancher(內嵌 Rancher 資料庫)
  • 以單一容器的方式安裝 Rancher(外部資料庫)

方法 - 1

運行下列命令以單一容器的方式安裝 Rancher 伺服器(內嵌資料庫)

$ sudo docker run -d --restart=unless-stopped -p 8080:8080 rancher/server:stable

$ sudo docker run -d --restart=unless-stopped -p 8080:8080 rancher/server:latest

方法 - 2

你可以在啟動 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";

運行下列命令啟動 Rancher 去連接外部資料庫。


$ sudo 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

如果你想測試 Rancher 2.0,使用下列的命令去啟動。

$ sudo docker run -d --restart=unless-stopped -p 80:80 -p 443:443 rancher/server:preview

通過 GUI 訪問 & 安裝 Rancher

瀏覽器輸入 http://hostname:8080 或 http://server_ip:8080 去訪問 rancher GUI.

Rancher:一個全面的可用於產品環境的容器管理平台


怎樣註冊主機

註冊你的主機 URL 允許它連接到 Rancher API。這是一次性設置。

接下來,點擊主菜單下面的 「Add a Host」 鏈接或者點擊主菜單上的 「INFRASTRUCTURE >> Add Hosts」,點擊 「Save」 按鈕。

Rancher:一個全面的可用於產品環境的容器管理平台

默認情況下,Rancher 里的訪問控制認證禁止了訪問,因此我們首先需要通過一些方法打開訪問控制認證,否則任何人都不能訪問 GUI。

點擊 「>> Admin >> Access Control」,輸入下列的值最後點擊 「Enable Authentication」 按鈕去打開它。在我這裡,是通過 「local authentication」 的方式打開的。

  • 「Login UserName」: 輸入你期望的登錄名
  • 「Full Name」: 輸入你的全名
  • 「Password」: 輸入你期望的密碼
  • 「Confirm Password」: 再一次確認密碼

Rancher:一個全面的可用於產品環境的容器管理平台

註銷然後使用新的登錄憑證重新登錄:

Rancher:一個全面的可用於產品環境的容器管理平台

現在,我能看到本地認證已經被打開。

Rancher:一個全面的可用於產品環境的容器管理平台


怎樣添加主機

註冊你的主機後,它將帶你進入下一個頁面,在那裡你能選擇不同雲服務提供商的 Linux 主機。我們將添加一個主機運行 Rancher 服務,因此選擇「custom」選項然後輸入必要的信息。

在第 4 步輸入你伺服器的公有 IP,運行第 5 步列出的命令,最後點擊 「close」 按鈕。


$ sudo docker run -e CATTLE_AGENT_IP="192.168.56.2" --rm --privileged -v /var/run/docker.sock:/var/run/docker.sock -v /var/lib/rancher:/var/lib/rancher rancher/agent:v1.2.11 http://192.168.56.2:8080/v1/scripts/16A52B9BE2BAB87BB0F5:1546214400000:ODACe3sfis5V6U8E3JASL8jQ

INFO: Running Agent Registration Process, CATTLE_URL=http://192.168.56.2:8080/v1

INFO: Attempting to connect to: http://192.168.56.2:8080/v1

INFO: http://192.168.56.2:8080/v1 is accessible

INFO: Configured Host Registration URL info: CATTLE_URL=http://192.168.56.2:8080/v1 ENV_URL=http://192.168.56.2:8080/v1

INFO: Inspecting host capabilities

INFO: Boot2Docker: false

INFO: Host writable: true

INFO: Token: xxxxxxxx

INFO: Running registration

INFO: Printing Environment

INFO: ENV: CATTLE_ACCESS_KEY=9946BD1DCBCFEF3439F8

INFO: ENV: CATTLE_AGENT_IP=192.168.56.2

INFO: ENV: CATTLE_HOME=/var/lib/cattle

INFO: ENV: CATTLE_REGISTRATION_ACCESS_KEY=registrationToken

INFO: ENV: CATTLE_REGISTRATION_SECRET_KEY=xxxxxxx

INFO: ENV: CATTLE_SECRET_KEY=xxxxxxx

INFO: ENV: CATTLE_URL=http://192.168.56.2:8080/v1

INFO: ENV: DETECTED_CATTLE_AGENT_IP=172.17.0.1

INFO: ENV: RANCHER_AGENT_IMAGE=rancher/agent:v1.2.11

INFO: Launched Rancher Agent: e83b22afd0c023dabc62404f3e74abb1fa99b9a178b05b1728186c9bfca71e8d

Rancher:一個全面的可用於產品環境的容器管理平台

等待幾秒鐘後新添加的主機將會出現。點擊 「Infrastructure >> Hosts」 頁面。

Rancher:一個全面的可用於產品環境的容器管理平台


怎樣查看容器

只需要點擊下列位置就能列出所有容器。點擊 「Infrastructure >> Containers」 頁面。

Rancher:一個全面的可用於產品環境的容器管理平台


怎樣創建容器

非常簡單,只需點擊下列位置就能創建容器。

點擊 「Infrastructure >> Containers >> Add Container」 然後輸入每個你需要的信息。為了測試,我將創建一個 latest 標籤的 CentOS 容器。

Rancher:一個全面的可用於產品環境的容器管理平台

在同樣的列表位置,點擊 「 Infrastructure >> Containers」。

Rancher:一個全面的可用於產品環境的容器管理平台

點擊容器名展示容器的性能信息,如 CPU、內存、網路和存儲。

Rancher:一個全面的可用於產品環境的容器管理平台

選擇特定容器,然後點擊最右邊的「三點」按鈕或者點擊「Actions」按鈕對容器進行管理,如停止、啟動、克隆、重啟等。

Rancher:一個全面的可用於產品環境的容器管理平台

如果你想控制台訪問容器,只需要點擊 「Actions」 按鈕中的 「Execute Shell」 選項即可。

Rancher:一個全面的可用於產品環境的容器管理平台


怎樣從應用目錄部署容器

Rancher 提供了一個應用模版目錄,讓部署變的很容易,只需要單擊一下就可以。 它維護了多數流行應用,這些應用由 Rancher 社區貢獻。

Rancher:一個全面的可用於產品環境的容器管理平台

點擊 「Catalog >> All >> Choose the required application」,最後點擊 「Launch」 去部署。

Rancher:一個全面的可用於產品環境的容器管理平台



via: https://www.2daygeek.com/rancher-a-complete-container-management-platform-for-production-environment/

作者: Magesh Maruthamuthu 譯者: arrowfeng 校對: wxy

本文由 LCTT 原創編譯, Linux中國 榮譽推出

點擊「了解更多」可訪問文內鏈接

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 Linux技術 的精彩文章:

2019 年的 19 個高效日:失敗了
如何查看 Linux 下 CPU、內存和交換分區的佔用率?

TAG:Linux技術 |