官术网_书友最值得收藏!

前言

為什么要寫這本書

如何對用戶的數(shù)據(jù)中心、業(yè)務系統(tǒng)進行妥善的日常運維和管理?這一課題是我們在日常工作當中研究的重要方向。在研究過程中,我們接觸了很多商業(yè)產(chǎn)品和開源項目,但是在研究過程中發(fā)現(xiàn),很難找到一個行之有效的方案和手段,直到接觸了Cacti這個項目。它既不像企業(yè)級產(chǎn)品架構(gòu)那樣復雜龐大、交互體驗不好,也不像一些開源項目那樣——雖然設計簡單,但是不具備高級功能,制約用戶的需求擴展。

Cacti的外觀和架構(gòu)設計很簡單,而且是松散耦合,深究其內(nèi)涵,我們發(fā)現(xiàn)它對于高級功能的擴展支持也很到位,特別適合中小型企業(yè)、院校機構(gòu)、政府機關(guān)等潛在用戶使用。通過一段時期的實際項目部署,發(fā)現(xiàn)它確實解決了簡化用戶工作、增強運維性能的問題。

那么把Cacti相關(guān)的研究成果歸納成書籍出版的想法是怎么形成的呢?

首先,當我們的研究工作告一段落之后,回顧走來的這一路,發(fā)現(xiàn)Cacti這個開源項目目前在國內(nèi)非常受業(yè)內(nèi)技術(shù)人員的歡迎,大家也很積極地在各大論壇和社區(qū)討論。其實在研究過程中,社區(qū)和論壇對我們的支持是非常大的,也是我們重要參考資料的來源地(在這里必須向那些無名英雄們致敬!)。但是,我們驚訝地發(fā)現(xiàn),目前國內(nèi)竟然沒有任何關(guān)于Cacti的中文技術(shù)書籍。我們在研究過程中恰恰是因為這個原因,走了不少彎路,互聯(lián)網(wǎng)上信息的可信度需要篩選,需要不斷實驗驗證,難以找到一個明確的方法論和解決問題的思路。相比之下,Nagios這些同類項目的書籍在市面上已經(jīng)非常普及了。我們認為,如果希望Cacti可以得到廣大愛好者的青睞,有一本全面介紹它的書籍,那將會是一件非常棒的事情。這本書也一定會成為像我們當初一樣迷茫的技術(shù)人員的“攻略和法寶”。

其次,在我們的日常工作當中,會接觸形形色色、各種各樣的系統(tǒng)項目,通過與用戶的一次次溝通交流,我們發(fā)現(xiàn)日常的運行維護是項目成功最核心的要素,那么如何評價和測量這個核心要素是非常重要的一個環(huán)節(jié)。同時,因為行業(yè)有行業(yè)的特性,每個行業(yè)用戶都有其自身特殊的工作流程、業(yè)務軟件和系統(tǒng)架構(gòu)。所以目前市面上的運維軟件很難滿足要求(開源項目也是基于這個原因,慢慢走近了技術(shù)人員和CTO的眼中)。Cacti也許并不是終極解決方案,但是就目前的情況來說,它的界面好看,可視化功能強大,擴展包完善,特別適合行業(yè)用戶及像政府機關(guān)這樣的用戶使用。通過一段時間的部署使用,用戶也在催促我們能否輸出一些技術(shù)文檔,以便作為培訓教材、研究報告使用。這時候,我們發(fā)現(xiàn)確實是要寫一些東西留下來了。

最后,我們作為從業(yè)者,在某一項技術(shù)研究得到相應成果之后,非常樂于且急于和大家分享,這就要求我們要非常完善地總結(jié)、歸納和提煉,并尋找一種更為友好的方式與大家交流。這是對自己的一種提高,也是對自己前期工作的歸檔和整理。我們覺得在把這些東西落實在白紙黑字的過程,也是對自己研究成果的另一次審視和質(zhì)疑。當然,我們歡迎這種審視和質(zhì)疑。

基于以上三個主要原因,我們覺得完成一本從實戰(zhàn)角度出發(fā),先全面后深入介紹Cacti項目的書籍,一定會是讀者樂于接受的,也是作者敢于挑戰(zhàn)自己的表現(xiàn)。

本書特色

本書寫作的核心思路是“突出實戰(zhàn),先全面后深入”。

按照技術(shù)人員的一般思路,面對一項新技術(shù)或者新產(chǎn)品時,首先要了解它具體是什么東東,能夠解決什么問題;然后開始實操,嘗試安裝配置,使它完好地運行起來,在此過程中會發(fā)生各種各樣的問題和錯誤,嘗試解決它;在全面了解之后,嘗試進行高級功能的探索與開發(fā),以實現(xiàn)自己的需求。本書的內(nèi)容也按照上述的線索闡述。

第一篇(第1~2章)為準備篇。第1章首先介紹Cacti的起源、概念、架構(gòu)等內(nèi)容,給讀者留下初步的印象,讓大家清楚Cacti的一些基本情況。任何系統(tǒng)和軟件都是從安裝與初始化配置開始的,Cacti也不例外。第2章主要介紹Cacti系統(tǒng)安裝配置的過程,本章分為兩個主要的部分,第一部分是針對操作系統(tǒng)環(huán)境的安裝和配置,另一部分是Cacti系統(tǒng)本身的安裝配置,以及如何對Cacti進行升級和更新。

第二篇(第3~5章)為基礎(chǔ)篇。在安裝完成之后,第3章對Cacti系統(tǒng)的三大主流程進行介紹,以便讀者對Cacti系統(tǒng)的內(nèi)部運行機制有比較詳細的了解。第4章把Cacti的每一個操作細節(jié)展現(xiàn)出來,包括控制臺、圖形窗頁簽的樹狀菜單中的每一個節(jié)點的功能和作用。這部分相當于一個快速查詢手冊,在不清楚某些部分的概念時,可以快速查詢這一章的內(nèi)容并得到答案。第5章主要介紹如何對Cacti用戶進行管理操作。

第三篇(第6~8章)為實戰(zhàn)篇。在第6章中,我們通過真正對接一臺服務器和一臺存儲設備等的過程來體會到Cacti的強大。系統(tǒng)的日常運行維護是非常重要的環(huán)節(jié),第7章介紹了日常維護系統(tǒng)運行時需要注意的地方,還通過3個比較典型的案例來展現(xiàn)如何處理Cacti系統(tǒng)運行中出現(xiàn)的緊急情況。在第8章中,大家可以通過命令行來進行Cacti的相關(guān)操作,包括新建一個被監(jiān)控的設備主機、修改圖形的權(quán)限、重建索引、關(guān)聯(lián)模板和設備,等等。

第四篇(第9~12章)為高級篇。第9章主要介紹數(shù)據(jù)輸入方式上的擴展,包括創(chuàng)建一個新的數(shù)據(jù)字段、通過腳本來實現(xiàn)數(shù)據(jù)采集的擴展功能。在第10~11章中,我們編寫XML文件來增強數(shù)據(jù)檢索的能力,以及基于單一的OID生成具體圖形。我們希望大家可以掌握建立PHP腳本服務器的技巧和Spine模塊的使用方法,這部分內(nèi)容在第12章中介紹。

附錄A通過剖析參數(shù)和數(shù)據(jù)庫,希望可以為讀者提供本書的快速定位索引。

另外,在本書創(chuàng)作的過程中,我們增加了針對某些周邊知識(相關(guān)IT發(fā)展史、名人介紹和周邊技術(shù)等)的介紹,也就是我們在“本章小結(jié)”后增加的“IT講堂”部分,這樣做的目的有3個:一是盡量增加本書的閱讀價值;二是盡量減少本書的枯燥程度;三是盡量使基礎(chǔ)較弱的技術(shù)人員也可以非常容易地上手實操。

讀者對象

我們認為,本書的讀者對象主要分為三類。

具備扎實的系統(tǒng)集成基礎(chǔ)知識,希望選擇Cacti作為運維平臺的系統(tǒng)管理員或者研發(fā)人員(如開發(fā)工程師、系統(tǒng)集成工程師、項目經(jīng)理等)。

對于這一類人群,本書詳細介紹了安裝和配置過程,盡量深入介紹Cacti的軟件實現(xiàn)機制,并在介紹排錯的部分列舉了相關(guān)的案例,通過案例來指導這些具有技術(shù)背景的讀者按圖索驥,由錯誤發(fā)生的線索開始一步一步深入Cacti內(nèi)部尋找錯誤根源。同時,通過介紹幾種典型的應急預案來滿足讀者在使用過程中發(fā)生關(guān)鍵事件而尋找解決方案的需求。本書還介紹了如何通過編寫代碼來定制屬于用戶自己的Cacti,這一部分特別適合具有專業(yè)技術(shù)基礎(chǔ)的讀者從中得到一些創(chuàng)作靈感。

有系統(tǒng)運維需求,希望對Cacti有基本認識的技術(shù)管理者和決策者(如政府技術(shù)主管、企業(yè)CTO、研究所總工程師等)。

對于這類人群,本書通篇采用簡單、直白的文字敘述風格,避免過多地出現(xiàn)技術(shù)專有名詞,讓這類讀者可以快速初步認識某些陌生的技術(shù)和名詞。在前言以及“IT講堂”部分,詳細介紹了IT業(yè)內(nèi)的動態(tài)、歷史,以及Cacti的優(yōu)勢和劣勢、應用價值等。

對Cacti有了初步的了解,并且實操過,希望了解更多技術(shù)細節(jié),或者希望找到某一問題解決方案的技術(shù)專家(如系統(tǒng)管理員、測試工程師等)。

這一類人已經(jīng)有實操Cacti項目的經(jīng)驗,在打開本書的一刻開始,腦中已經(jīng)有了對Cacti的某些認識,一方面他們是帶著問題來閱讀,希望本書能夠給予相關(guān)問題的答案;另一方面,他們希望在閱讀過程中得到某些共鳴。所以本書著重在各個環(huán)節(jié)談一些安裝和使用過程中的感受以及總結(jié)的經(jīng)驗,希望可以和這一類讀者有良好的互動,使這類用戶可以從中得到一些解決問題的啟發(fā)。

知識準備

我們盡量不把一些事情搞得太高深莫測,其實完全沒有必要,我們希望讀者在閱讀本書的過程中,可以輕松、專注地享受這一過程,而不是糾結(jié)于非常專業(yè)的技術(shù)理論、技術(shù)操作。但是任何事情的完成都需要有一定的前提準備,所以希望讀者可以在如下幾個方面豐富自己的知識地圖。

基礎(chǔ)的計算機概念是必需的,需要知道CPU、內(nèi)存、存儲、總線、接口、網(wǎng)絡等基礎(chǔ)知識,以及它們和應用軟件、操作系統(tǒng)之間的交互機制。

基礎(chǔ)的OS安裝和操作,知道如何在Windows和Linux平臺上管理服務器,如何配置和啟動相關(guān)服務,如何查看系統(tǒng)的日志信息,如何配置存儲資源,等等。

中間件,尤其是Web服務器的相關(guān)知識。本書需要用到其中的功能來展現(xiàn)用戶界面與數(shù)據(jù)可視化。

數(shù)據(jù)庫,特別是一些開源數(shù)據(jù)庫的相關(guān)知識,數(shù)據(jù)庫作為元數(shù)據(jù)的管理載體,在Cacti系統(tǒng)當中也發(fā)揮著至關(guān)重要的作用。我們需要具備基礎(chǔ)的編寫SQL查詢語句的能力,明白數(shù)據(jù)庫平臺、實例、存儲區(qū)、表、字段等一系列與數(shù)據(jù)庫相關(guān)的知識。如果掌握這些,那么你學習的時間將會極大地縮短。

Perl和PHP(Hypertext Preprocessor)編程能力,如果讀者有簡單的Perl和PHP語言的編程能力,將會極大地發(fā)揮Cacti內(nèi)在的優(yōu)勢,在Cacti的日常使用中,我們經(jīng)常會碰到需要自己開發(fā)相關(guān)模板的情況,這就是我們進行創(chuàng)作的核心。

勘誤和支持

由于筆者的水平有限,加之編寫時間倉促,書中難免會出現(xiàn)一些錯誤或者不準確的地方,懇請讀者批評指正,期待能夠得到你們的真摯反饋。

致謝

首先兩位筆者需要互相感謝一下,在一起學習和工作十余年結(jié)下的友誼對于我們是異常珍貴的一筆財富。

感謝ChinaUnix、CSDN、51CTO等網(wǎng)站及大牛們的默默支持,你們才是我們不斷披荊斬棘、無畏前進的引路人。

感謝鄧偉、駱蕭蕭和王雨,三位的人格魅力是我們能一直堅持下來的精神支柱!感謝曾慶豐、孟祥利和程顯峰,我們折服于你們卓越的技術(shù)能力,每當我們走投無路,沮喪絕望的時候,你們總能伸出雙手把我們帶出困境。

感謝機械工業(yè)出版社華章公司的楊福川、高婧雅。在寫作的過程中,為了防止我們寫出一堆垃圾,你們兩位付出了很大的努力和心血,沒有你們的鼓勵和建議,我們完不成如此浩大的工程,這本書有你們一半的功勞。

感謝我們的爸爸、媽媽!

劉釗:謹以此書獻給我美麗的老婆杜瀟,我可愛的女兒劉筱昭!

張躍:謹以此書獻給我的新婚妻子楊碩,以及多年來一直支持我的家人和朋友!

劉釗 張躍

主站蜘蛛池模板: 都江堰市| 庄河市| 伊宁市| 延边| 呼玛县| 潮安县| 临洮县| 南和县| 北票市| 卓资县| 滦平县| 休宁县| 云霄县| 淳安县| 吉安县| 利津县| 额尔古纳市| 洛宁县| 嵊泗县| 尉犁县| 平塘县| 安新县| 余姚市| 江口县| 揭西县| 凤城市| 腾冲县| 翼城县| 马山县| 读书| 丹寨县| 横峰县| 长顺县| 贵德县| 荣成市| 连南| 禄丰县| 正定县| 莱州市| 宁远县| 美姑县|