Rancher 快速上手指南操作(1)該指南知道用戶如何快速的部署Rancher Server 管理容器。前提是假設(shè)你的機(jī)器已經(jīng)安裝好docker了。1 確認(rèn) docker 的版本,下面是 ubuntu 的輸出
[#63#cloudsoar@cloudsoar-virtual-machine ~]$sudo docker version
[sudo] password for cloudsoar:
Client:
Version: 1.9.1
API version: 1.21
Go version: go1.4.3
Git commit: a34a1d5
Built: Fri Nov 20 17:56:04 UTC 2015
OS/Arch: linux/amd64
Server:
Version: 1.9.1
API version: 1.21
Go version: go1.4.3
Git commit: a34a1d5
Built: Fri Nov 20 17:56:04 UTC 2015
OS/Arch: linux/amd64
2 確認(rèn) docker 服務(wù)已經(jīng)啟動(dòng)[#64#cloudsoar@cloudsoar-virtual-machine ~]$sudo service docker status
● docker.service - Docker Application Container Engine
Loaded: loaded (/lib/systemd/system/docker.service; disabled; vendor preset: enabled)
Active: inactive (dead)
Docs: https://docs.docker.com
[#9#cloudsoar@cloudsoar-virtual-machine ~]$service docker start
==== AUTHENTICATING FOR org.freedesktop.systemd1.manage-units ===
Authentication is required to manage system services or units.
Authenticating as: cloudsoar,,, (cloudsoar)
Password:
[#10#cloudsoar@cloudsoar-virtual-machine ~]$service docker status
● docker.service - Docker Application Container Engine
Loaded: loaded (/lib/systemd/system/docker.service; disabled; vendor preset: enabled)
Active: active (running) since 三 2016-03-16 13:48:08 CST; 3s ago
Docs: https://docs.docker.com
Main PID: 10526 (docker)
CGroup: /system.slice/docker.service
└─10526 /usr/bin/docker daemon -H fd://
我使用 sudo docker status 觀察的時(shí)候,發(fā)現(xiàn) docker 服務(wù)并沒(méi)有啟動(dòng),手動(dòng)調(diào)用 service do
cker start 啟動(dòng)。然后再次查看,看到狀態(tài)是 running 了。
3 啟動(dòng) Rancher 服務(wù)器
Rancher 服務(wù)器是一個(gè) Docker image,所以其軟件本身不需要安裝,只需要執(zhí)行 Docker 命
令下載并且成功運(yùn)行 Docker 服務(wù)器鏡像即可。
[#13#cloudsoar@cloudsoar-virtual-machine ~]$sudo docker run -d --restart=always -p 8080:8080 rancher/server
Unable to find image 'rancher/server:latest' locally
latest: Pulling from rancher/server
d46dba346816: Pulling fs layer
a2851d201e25: Pulling fs layer
b262e58356c2: Pulling fs layer
ceffdc5777c7: Pulling fs layer
a28d44434980: Pulling fs layer
f800a1597427: Pulling fs layer
60af5060daf4: Pull complete
b1dd93d5a711: Pull complete
0d7dfe35cf6a: Pull complete
58e93f0715e7: Pull complete
a9dbd765bf44: Pull complete
4bfcf74f9624: Pull complete
d330fcc1e464: Pull complete
3da33c2536ae: Pull complete
95241837a38f: Pull complete
ec54f4e41d98: Pull complete
cdc934c804b3: Pull complete
ab8a261178e3: Pull complete
89833fcf633e: Pull complete
7df15d047ef2: Pull complete
2c5bb9b85b2e: Pull complete
2517d3de4cde: Pull complete
dca61fda9ea4: Pull complete
8566ccc2c63c: Pull complete
720ffa009a71: Pull complete
3c65bd6b0c6d: Pull complete
f8b5f2d5eebe: Pull complete
9c495859a0e4: Pull complete
20bee38968e6: Pull complete
f80a8ea9cd3e: Pull complete
c9c864eb9bef: Pull complete
Digest: sha256:989c47a7eb94352826f420c48ec4d0343ef43aee83d619bfa064f1642f1811fb
Status: Downloaded newer image for rancher/server:latest
1613c4b9d70d6f39a82e6148a0ce08422cef3541de19de5d68dfed22196c4076
命令行參數(shù)解釋:
docker run 的 -d 參數(shù)標(biāo)示在后臺(tái)運(yùn)行, --restart=always 容器如果異常停止自動(dòng)重啟。-p
8080:8080 把 Rancher 服務(wù)器的UI 對(duì)外服務(wù)(容器內(nèi))的端口 8080 ,綁定到到宿主機(jī)的
8080 端口。 后面跟的鏡像名 rancher/server ,Docker 會(huì)首先檢查本地有沒(méi)有這個(gè)鏡像,
如果沒(méi)有,Docker 會(huì)去 Docker Hub 將這個(gè)鏡像下載下來(lái),并且啟動(dòng)。
我這里下載了將近一個(gè)小時(shí)。
4 檢查是否成功正確下載了 rancher/server 鏡像
[#15#cloudsoar@cloudsoar-virtual-machine ~]$sudo docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
ubuntu latest 001d664e2dd4 7 hours ago 188 MB
zhiyewang/apache2 latest e9c0ce8fc3ae 23 hours ago 244.6 MB
rancher/server latest c9c864eb9bef 28 hours ago 768.2 MB
paulcos11/docker-tutorial latest e37931352714 9 days ago 587.8 MB
fedora latest 9bdb5101e5fc 11 days ago 204.7 MB
ubuntu 14.04 8ed581e3fa7a 12 days ago 188 MB
hello-world latest 0a6ba66e537a 5 months ago 960 B
可以看到我這里成功下載了。
5 檢查 Rancher 服務(wù)器容器是否已經(jīng)正常運(yùn)行
[#17#cloudsoar@cloudsoar-virtual-machine ~]$sudo docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
1613c4b9d70d rancher/server "/usr/bin/s6-svscan /" 5 minutes ago Up 5 minutes 3306/tcp, 0.0.0.0:8080->8080/tcp modest_bell
042ff0ac2af7 zhiyewang/apache2 "/bin/bash" 20 minutes ago Up 20 minutes elated_hoover
6 用瀏覽器打開(kāi) Rancher 服務(wù)器容器 UI 界面[#20#cloudsoar@cloudsoar-virtual-machine ~]$ifconfig
eth0 Link encap:以太網(wǎng) 硬件地址 00:0c:29:72:dc:f7
inet 地址:192.168.2.28 廣播:192.168.2.255 掩碼:255.255.255.0
inet6 地址: fe80::20c:29ff:fe72:dcf7/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 躍點(diǎn)數(shù):1
接收數(shù)據(jù)包:571758 錯(cuò)誤:0 丟棄:0 過(guò)載:0 幀數(shù):0
發(fā)送數(shù)據(jù)包:335098 錯(cuò)誤:0 丟棄:0 過(guò)載:0 載波:0
碰撞:0 發(fā)送隊(duì)列長(zhǎng)度:1000
接收字節(jié):620330947 (620.3 MB) 發(fā)送字節(jié):125962556 (125.9 MB)
可以看到我的宿主機(jī)的 IP 是 192.168.2.28,之前我們通過(guò) docker run 命令將 Rancher Serv
er 容器的 8080 端口綁定到了宿主機(jī)的 8080 端口。現(xiàn)在要想訪問(wèn)容器內(nèi)部的網(wǎng)頁(yè),可以輸入宿
主機(jī)器的 IP 和端口即可。

7 Rancher 服務(wù)器配置
7.1 添加賬號(hào)
首次登錄,還沒(méi)有配置訪問(wèn)權(quán)限,為了安全期間,首先點(diǎn)擊上面的 ACCESS CONTROL 來(lái)新建
一個(gè)本地賬號(hào)和密碼。

輸入自己要設(shè)置的賬號(hào)和密碼
點(diǎn)擊 Enable Local Authentication,打開(kāi)本地驗(yàn)證,下次就需要輸入用戶名和密碼才能登錄了。
7.2 日志觀測(cè)
單獨(dú)開(kāi)一個(gè)終端,打開(kāi) Rancher Server 容器的日志輸出,觀測(cè):
命令是: sudo docker logs -f 容器ID
7.3 添加主機(jī)
主機(jī)是 Rancher 工作的節(jié)點(diǎn),類似服務(wù)器虛擬化的 Hypervisor,我們現(xiàn)在做 All-in-one 測(cè)試
,將宿主機(jī)添加到 Rancher 節(jié)點(diǎn)主機(jī)。

選擇 APPLICATIONS 下面的 Add Host,彈出的界面選擇 Custom,將頁(yè)面第 4 步出現(xiàn)的內(nèi)
容復(fù)制粘貼下來(lái)。拿到宿主機(jī)的命令行執(zhí)行。

7.4 安裝 Rancher Agent
將上述的命令拷貝到宿主機(jī)粘貼執(zhí)行
[#26#cloudsoar@cloudsoar-virtual-machine ~]$sudo docker run -d --privileged -v /var/run/docker.sock:/var/run/docker.sock -v /var/lib/rancher:/var/lib/rancher rancher/agent:v0.10.0 http://192.168.2.28:8080/v1/scripts/D7A384BCBAC6FF19B5FC:1458111600000:JFTgk9cNkZFY5iZVQM9kInyRmuw
[sudo] password for cloudsoar:
Unable to find image 'rancher/agent:v0.10.0' locally
v0.10.0: Pulling from rancher/agent
b3efe11ed0e2: Downloading 526.1 kB/65.69 MB
會(huì)自動(dòng)下載 rancher/agent 鏡像并運(yùn)行。等待下載完畢。
查看一下進(jìn)程,多出一個(gè) rancher/agent 的進(jìn)程,并且已經(jīng)運(yùn)行。
此時(shí)再回網(wǎng)頁(yè)查看 Web 控制臺(tái)界面,查看 Host 添加之后的結(jié)果。

可以看到已經(jīng)多了一臺(tái)活動(dòng)主機(jī)(宿主機(jī)),上面運(yùn)行一個(gè) Rancher Server 容器,就是 Ranc
her 服務(wù)器自己。如果你有其他主機(jī),也可以添加其他主機(jī)進(jìn)來(lái)。
8 通過(guò) Web UI 運(yùn)行容器
現(xiàn)在通過(guò)圖形界面來(lái)運(yùn)行容器,而不是通過(guò)命令行。

8.1 添加容器
在 INFRASTRUCTURE 標(biāo)簽選擇 CONTAINERS,選擇 Add Container
1 輸入 first_container 作為容器名稱
2 使用默認(rèn)的 Ubuntu 14.04.3 鏡像
3 點(diǎn)擊Create 按鈕
點(diǎn)擊創(chuàng)建即可。
經(jīng)過(guò)幾秒鐘可以看到多出一個(gè) first_container 容器和一個(gè) Network Agent。first_container
作為本測(cè)試創(chuàng)建的容器。
下面哪個(gè) Network Agent 作用是用戶主機(jī)之間的網(wǎng)絡(luò)通信。

1 在新建的 Ubuntu 容器的菜單上點(diǎn)擊向下按鈕
2 在Web 頁(yè)面中選擇運(yùn)行 Shell 選項(xiàng)
以后就可以在此操作容器了。如果您偏愛(ài) CLI 命令行,可以直接到宿主機(jī)的命令行操作。