簡單介紹自動化運維工具clip(1)
2016-02-20 19:33:36 來源: 王冬生 運維幫 評論:0 點擊:
Clip是一款自動化運維工具,適用于海量服務器的管理場景,可以降低系統誤操作風險,提高工作效率等。
Clip將傳統的IP管理緯度替換為String管理緯度,管理方式的改變使海量運維時更加的便捷、可靠與高效。Clip是C/S架構,它將IP關系保存在Server端,Client端可以下載SDK,通過SDK遍歷Server端的IP與模塊關系等,并在本地對獲取的IP模塊關系進行重新的組織與編排,這就是Clip。在此基礎上Clip還提供了遠程命令、文件拷貝、IP組織樹遍歷、歷史命令查看、IP對應String關系正反解析與導入等功能。為海量服務器運維保駕護航,奠定基礎。
下面來詳細介紹以下clip這款自動換運維工具。
首先,傳統服務器管理方式與String管理方式的相比,String管理方式的3點優勢:
1) 傳統為IP管理方式,IP由4組無意義的數字組成,比較難記憶。與傳統方式相比String可以見名識意,方便記憶;
2) 管理海量服務時,IP相似經常會導致運營故障,譬如A模塊(10.131.24.37 )和B模塊(10.117.24.37) ,后兩位數字一致,慣性的認為兩個B模塊就是A模塊,發送配置導致線上故障。通過string管理方式可以很方便的規避此問題;
3) String 可以解析1個IP,也可以解析一組IP ,根據IP也可以反解析String對應關系,這讓我們管理一組服務更加的方便。
我們再來看一下String的組成。String由(idc-product-modules-group) 4段組成,了解cmdb的同學會發現它與cmdb的結構很像,4級模塊定位一個服務,但是隨著業務的發展,筆者覺得4級服務已經無法定位到一個服務,譬如,在一臺服務器上混合部署不同的業務模塊,這里4級只能定位到服務的IP級別,而無法精確定位到真正的服務,所以Clip在此基礎上增加了一級(idc-product-modules-group-port),port端口,通過5段定位一個服務,這也是Clip優勢,靈活變換來定位一組服務,滿足業務需求。再來舉一個實際的例子,上海機房,A模塊使用80端口提供服務,目前有100多個機器 ,B模塊使用8080端口提供服務,目前有100多個機器,由于業務流量下降,為了節約資源目前想將兩個模塊200臺機器資源合并,但功能不合并 。我們可將兩個服務表示到不通的String中,如A模塊(sh-weixin-friend-a-80), B模塊(sh-weixin-friend-b-8080),通過String就很容易的將兩個服務分別開,并部署在相同的服務器上提供服務了。
剛介紹到Clip 為C/S架構 ,String對應的IP關系保存在server服務器中,Client 通過Clip的SDK獲取IP ,其優勢3點:
1) IP與String建議一次關系后,所有的的服務器上通過SDK都可以調用到。
2)SDK在解析IP的基礎上提供了其他豐富的功能,如掃描服務器,遠程命令,遠程拷貝等。
3)Clip 提供簡單清晰的API與SDK代碼結構與文檔,當Clip不能滿足我們需求時,可以通過文檔很容易的擴展Clip 滿足自己的需求。
接著我們來看Clip SDK,目前SDK共有8個子命令:
各SDK子命令功能如下:
◆scan:用于對String對應的IP進行端口存活狀態掃描;
◆cstring:用于對String對應IP解析,與IP對應String關系的解析;
◆ssh:用于對String對應IP,遠程執行系統命令;
◆scp:用于對String對應IP,遠程拷貝文件;
◆tree:遍歷String下的子節點;
◆history:顯示歷史執行過的命令;
◆import:導入IP對應String關系;
◆lt:從本地獲取IP關系進行管理;
◆help:顯示Clip當天有多少子命令。
最后,我們再來看一下應用案例 ,來比較一下傳統方式vs clip管理方式差異:
傳統方式:在 A 模塊的100臺服務器上,執行uptime命令,具體的操作步驟如下:
1) 找到要同步的A模塊ip列表;
2) 編寫腳本與ip列表中的服務器建立連接;
3) 連接服務器時輸入賬號密碼;
4) 賬號密碼認證成功后拷貝文件;
5) 在每個IP重復以上步驟。
Clip 方式:
1)建立A模塊ip列表與string對應關系,譬如為tj-qzone-qzoneini-access6;
2)clip ssh -p 密碼 root@tj-qzone-qzoneini-access6 “執行命令”,以下為結構。
上一篇:【專題】如何應對運維工作的幾大挑戰?
下一篇:我從【優維計劃】訪談中看到的運維現狀
