rancher v1.2已經發布,相信眾多容器江湖的夥伴們正魔拳擦準備好好體驗一番。由於docker能夠落地的作業系統眾多,各種docker版本不同的graph driver,所以通常大版本的第乙個release都會在相容性上有一些小問題。為了更好的體驗rancher v1.2的完整特性,我們選取了rancher測試比較嚴格的執行環境。手握眾多伺服器資源的devops們可以飄過此文,身背mbp或windows筆記本的sales/pre-sales們可以品讀一番。
在用docker-machine驅動virtualbox來建立host時,可以指定作業系統iso的url路徑,由於我們使用rancheros,所以最好把rancheros放到本機http伺服器內。mbp內自帶apache httpd,將apache的vhosts模組開啟,並新增配置:
# 開啟vhost /etc/apache2/httpd.conf
# 以下兩行的預設注釋去掉
# vhost的配置 /etc/apache2/extra/httpd-vhosts.conf
# documentroot目錄就是在使用者根目錄下建立sites
# 如使用者名稱niusmallnan,則documentroot就是/users/niusmallnan/sites
80>
documentroot "/users/niusmallnan/sites"
servername localhost
errorlog "/private/var/log/apache2/sites-error_log"
customlog "/private/var/log/apache2/sites-access_log"
common
options indexes followsymlinks multiviews
allowoverride none
order allow,deny
allow from all
require all granted
# 重啟 apache
$ sudo apachectl restart
# 拷貝 rancheros的iso 到 documentroot
$ cp rancheros.iso /users/niusmallnan/sites/
首先開啟docker,並配置registry mirror,配置完成後重啟docker。mirror的服務可以去各個公用雲廠商申請乙個,比如我這裡使用的是阿里雲的registry mirror,如圖所示:
開啟terminal,安裝rancher server:
$ docker run -d
--restart=unless-stopped
-p8080:8080 rancher/server:stable
#!/usr/bin/env bash
ros_iso_url=''
ros_cpu_count=2
ros_memory=2048
docker-machine create -d virtualbox \
--virtualbox-boot2docker-url $ros_iso_url \
--virtualbox-cpu-count $ros_cpu_count \
--virtualbox-memory $ros_memory \
$1 docker-machine ls
新增節點則需執行:
$ ./add_ros_host.sh ros-1
新增完成後,可以進入虛機內進行設定:
$ docker-machine ls
name active driver state
url
swarm dockererrors
ros-1 - virtualbox running tcp: v1.12.3
# 進入vm中
$ docker-machine ssh ros-1
# rancheros內設定registry mirror
$ sudo ros config set rancher.docker.extra_args \
"['--registry-mirror','']"
$ sudo system-docker restart docker
由於我們要使用virtualbox的虛機組成乙個小集群,所以建議把rancher的host registration url設定為如下圖所示:
新增rancher agent的時候也要注意,cattle_agent_ip引數要設定成虛機內192.168.99.0/24網段的ip,如下圖所示:
如此就可以基本完全解鎖rancher v1.2的各種功能了,完整演示各種特性。
docker目前版本分支眾多,雖然最新的v1.13即將發布,但是各個公司的使用版本應該說涵蓋了v1.9到v1.12,而且docker graph driver也有很多,再加上很多的linuxos,可以說使用docker而產生組合有很多種,這就會帶來各種各樣的相容性問題,因此導致的生產環境故障會讓人頭疼不已。當然如果純粹基於演示和調研新功能,我們可以優先相容性較好的選擇。
LINQ TO SQLite實踐指南
前言 當前,軟體應用程式中,資料庫已經成為不可缺少的重要組成部分.然而傳統資料庫正趨向巨無霸化,對系統的要求一步步提高,管理成本也越來越大,對於中小型專案的應用,它的很多功能變得越來越多餘,但是我卻不得不為這些不需要的功能付出更多的資金和人力成本.在這些場景,嵌入式資料庫的輕量,零部署,跨平台,義移...
STL實踐指南
stl實踐指南 作者 jeff bogan 介紹這是一篇指導您如何在microsoft visual studio下學習stl並進行實踐的文章。這篇文章從stl的基礎知識講起,循序漸進,逐步深入,涉及到了stl編寫 的方法 stl 的編譯和除錯 命名空間 namespace stl中的ansi is...
systemd nspawn 快速指南
我目前已從 chroot 譯者注 chroot可以構建類似沙盒的環境,建議各位同學先了解chroot 遷移到 systemd nspawn,同時我寫了一篇快速指南。簡單的說,我強烈建議正在使用 systemd 的使用者從 chroot 轉為 systemd nspawn,因為只要你的核心配置正確的話...