天天看點

【内網福音】如何離線部署Rancher

對于在公司内網環境中、無法通路網際網路的使用者而言,離線安裝部署Rancher是解決問題的關鍵。本文是Rancher離線部署教程,專為内網使用者排坑解難。

版本說明

OS:Centos7.3

Docker version: 1.12.6

Rancher version: 1.6.10

主機角色說明

<a href="https://s4.51cto.com/oss/201711/08/6d6f017a1b3cf5339930662b69bf1c86.jpg-wh_500x0-wm_3-wmp_4-s_3510657380.jpg" target="_blank"></a>

前期準備

docker rpm

<code>wget https:</code><code>//yum.dockerproject.org/repo/main/centos/7/Packages/docker-engine-1.12.6-1.el7.centos.x86_64.rpm</code>

<code>wget https:</code><code>//yum.dockerproject.org/repo/main/centos/7/Packages/docker-engine-selinux-1.12.6-1.el7.centos.noarch.rpm</code>

harbor offline

<code>wget https:</code><code>//github.com/vmware/harbor/releases/download/v1.2.0/harbor-offline-installer-v1.2.0.tgz</code>

<code>curl -L https:</code><code>//github.com/docker/compose/releases/download/1.16.1/docker-compose-`uname -s`-`uname -m` -o ./docker-compose</code>

打包 Rancher Server 及各元件 image:

<code>rancher/server:v1.</code><code>6.10</code>

<code>rancher/agent:v1.</code><code>2.6</code>

<code>rancher/network-manager:v0.</code><code>7.8</code>

<code>rancher/net:v0.</code><code>11.9</code>

<code>rancher/dns:v0.</code><code>15.3</code>

<code>rancher/metadata:v0.</code><code>9.4</code>

<code>rancher/healthcheck:v0.</code><code>3.3</code>

<code>rancher/lb-service-haproxy:v0.</code><code>7.9</code>

<code>rancher/scheduler:v0.</code><code>8.2</code>

<code>rancher/net:holder</code>

如:

<code>docker pull rancher/agent:v1.</code><code>2.6</code>

<code>docker save rancher/agent:v1.</code><code>2.6</code> <code>&gt; agent126.tar</code>

部署環境

安裝配置 docker (所有主機)

<code>yum localinstall -y docker-engine-</code><code>1.12</code><code>.</code><code>6</code><code>-</code><code>1</code><code>.el7.centos.x86_64.rpm docker-engine-selinux-</code><code>1.12</code><code>.</code><code>6</code><code>-</code><code>1</code><code>.el7.centos.noarch.rpm</code>

<code>注:如有依賴使用 ISO 做 yum 源</code>

指向docker私有鏡像庫IP

<code>vi /usr/lib/systemd/system/docker.service</code>

<code>如修改為:</code>

<code>ExecStart=/usr/bin/dockerd --insecure-registry=</code><code>192.168</code><code>.</code><code>100.1</code><code>:</code><code>80</code><code>(私有庫位址:端口)</code>

安裝配置 Harbor

<code>1</code><code>.解壓:</code>

<code>tar -zxvf harbor-offline-installer-v1.</code><code>2.0</code><code>.tgz</code>

<code>配置 harbor</code>

<code>2</code><code>.編輯harbor.cfg </code>

<code>vi harbor.cfg</code>

<code>修改 hostname = IP</code>

<code>harbor_admin_password = Rancher123</code>

<code>3</code><code>.運作 install.sh</code>

<code>cp docker-compose /usr/local/bin/</code>

<code>chmod +x /usr/local/bin/docker-compose</code>

<code>./install.sh</code>

<code>4</code><code>.添加項目</code>

<code>a)通過浏覽?通路harbor http:</code><code>//IP admin/Rancher123 登入</code>

<code>b)添加名稱為 </code><code>'rancher'</code> <code>的項目并設定為“公開”</code>

<code>5</code><code>.導入 images</code>

<code>登入 docker login 私有倉庫 IP:端口</code>

<code>a) docker load -i agent126.tar</code>

<code>b) docker tag rancher/agent:v1.</code><code>2.6</code> <code>192.168</code><code>.</code><code>100.1</code><code>:</code><code>80</code><code>/rancher/agent:v1.</code><code>2.6</code>

<code>c) docker push </code><code>192.168</code><code>.</code><code>100.1</code><code>:</code><code>80</code><code>/rancher/agent:v1.</code><code>2.6</code>

<code>按照以上方式将所有 Rancher image 導入私有鏡像倉庫</code>

配置 Rancher 環境

<code>a) docker run -d --restart=unless-stopped -p </code><code>8080</code><code>:</code><code>8080</code> <code>192.168</code><code>.</code><code>100.1</code><code>:</code><code>80</code><code>/rancher/server:v1.</code><code>6.10</code>

<code>b) 登入 Rancher Server UI  “Admin” --&gt;“Settings”--&gt;“Advanced Settings”編輯“registry.</code><code>default</code><code>=</code><code>192.168</code><code>.</code><code>100.1</code><code>:</code><code>80</code><code>”</code>

<code>c) 添加Environments “Manage Environments” --&gt;</code><code>"Add Environment"</code><code>。 在建立完成後設定為預設并切換到該環境。</code>

<code>d) 添加主機指令修改為</code>

<code>docker run --rm --privileged -v/var/run/docker.sock:/var/run/docker.sock - v</code>

<code>/var/lib/rancher:/var/lib/rancher </code><code>192.168</code><code>.</code><code>100.1</code><code>:</code><code>80</code><code>/rancher/agent:v1.</code><code>2.6</code> <code>http:</code><code>//192.168.100.1:8080/ v1/scripts/8EBE0FB0C3DE0AA32047:1483142400000:7Md3cXHoSIYYwHADyBpGQNZavTE</code>

<code>e) 在主機節點上修改 agent image tag</code>

<code>docker tag </code><code>192.168</code><code>.</code><code>100.1</code><code>:</code><code>80</code><code>/rancher/agent:v1.</code><code>2.6</code> <code>rancher/agent:v1.</code><code>2.6</code>

本文轉自 RancherLabs 51CTO部落格,原文連結:http://blog.51cto.com/12462495/1979863

繼續閱讀