RancherOS 學習筆記(一),rancheros學習筆記
今天只是簡單瞭解下rancheros,以及嘗試安裝了下。
這是官網文檔:http://docs.rancher.com/os/
這是官網Github地址:https://github.com/rancher/os
rancheros的系統管理方式很奇特,作業系統的所有系統層級的服務,如udev、syslog,均已docker容器形式存在,此為系統層級的dockerContainer Service;另一個是應用層級的,即一般使用意義上的dockerContainer Service。
rancheros的docker engine軟體,是可以直接支援線上升級的,說的更貼切點,就是多個docker engine版本之間是可以隨意切換的。這點很好,可以及時體驗到docker的新特性。
rancheros的安裝包,目前最新版本為0.8.1,大小才54Mb。
rancheros的命令列十分強大,可以管理系統服務、切換控制台、切換docker engine、切換作業系統版本。好了廢話不都說了,要體驗得先安裝。
我使用的是ESXi 5.5下建立的虛擬機器(注意,記憶體不能低於1Gb,我是用的是2Gb。)
首先載入剛下載的rancheros.iso檔案,並從光碟機啟動。大概十幾秒,就進入系統了(自動登入,登入名稱為rancher)。如果要安裝到磁碟,需要先寫一個設定檔:cloud-config.yml。推薦配置4個:hostname(主機名稱)、ssh_authorized_keys(登入授權公開金鑰,其實就是openssh的配置)、(rancher.network.interfaces)網路設定、rancher.services_include(在虛擬機器裡開啟vmware-tools的話,這裡寫open-vm-tools: true)。
#cloud-confighostname: rancher-01rancher: network: interfaces: eth0: address: 192.168.0.101/16 dhcp: false gateway: 192.168.1.1 mtu: 1500 services_include: open-vm-tools: truessh_authorized_keys:- ssh-rsa AAAXXXXXX
說下,這裡的公開金鑰是在別的電腦上產生秘鑰對後,提供的公開金鑰。由於不能剪貼簿copy,所以只能通過網路方式。如果你有一台linux伺服器,可以在rancheros的機子上,使用scp連到那台linux上,將檔案copy過來。呵呵,如果你手頭沒有,只有一台windows怎麼辦?在IIS下掛一個網站,把設定檔丟上去。然後在rancheros通過wget命令下載下來:wget -O cloud-config.yml http://<你的伺服器:你的網站連接埠>/cloud-config.txt
自己用vi編輯此檔案,看看是否有特殊符號的,刪掉。如果不確定是否設定檔正確,執行以下命令
sudo ros c validate -i cloud-config.yml
如果控制台無顯示,說明驗證OK;否則,會提示哪裡配置有問題。
接下來就是執行安裝到硬碟了。我只配置了一個硬碟,即/dev/sda,我就安裝到此硬碟上。
sudo ros install -c cloud-config.yml -d /dev/sda
一路預設往下走,待自動重啟後就安裝好了。
如果用戶端是Windows,推薦用XShell,遠程連linux不要太方便哦。。。
看下ros命令有哪些?
rancher@rancher-01:~$ sudo rosNAME: ros - Control and configure RancherOSUSAGE: ros [global options] command [command options] [arguments...] VERSION: v0.8.1 AUTHOR(S): Rancher Labs, Inc. COMMANDS: config, c configure settings console manage which console container is used engine manage which Docker engine is used service, s Command line interface for services and compose. os operating system upgrade/downgrade tls setup tls configuration install install RancherOS to disk selinux Launch SELinux tools container. help, h Shows a list of commands or help for one commandGLOBAL OPTIONS: --help, -h show help --version, -v print the version
第一個是配置相關的,可以直接通過命令方式更改配置。
第二個是控制台,預設的幾乎什麼都不能幹,你可以選擇切換為debian、centos、xfce這類帶有包管理的控制台。控制台,主要是協助你管理linux伺服器的,而不是為了安裝服務,這個切記。應用服務類的,還是以docker容器方式為好。(雖然console本身其實也是一個docker容器而已,還是分開比較好)
第三個是docker engine,可以切換docker版本
第四個是系統服務,你也可以自行將docker鏡像配置為系統服務
第五個是作業系統,你可以升降系統版本。(我剛剛從rancher/os:v0.7.1升級到rancher/os:v0.8.1)
第六個是安裝系統到硬碟,就開頭安裝的時候用到的命令。
第七個,selinux,懂linux的自然就懂了,就不多說了。
關於容器的使用,如何叢集化,後續熟悉了在放上去。