正在經(jīng)歷變革的Linux系統(tǒng)管理員技能
你上次編譯內(nèi)核是多久以前的事兒了?新生代 Linux 管理員的答案很簡單:我壓根兒沒編譯過內(nèi)核。我也從沒編譯過內(nèi)核,當(dāng)然自己弄著玩兒的不算。我實在想不到我為啥需要自定義內(nèi)核,所以我就用我的“開箱即用”內(nèi)核了。
Linux 老鳥們可能會笑話我們,但你不能否認(rèn):隨著越來越多的企業(yè)采用 Linux,新生代的 Linux 管理員雖然生就一身相當(dāng)不錯的技術(shù)實力,卻因缺乏編譯內(nèi)核這類簡單卻基礎(chǔ)的技能而和一個優(yōu)秀的 Linux 管理員之間存在差距。我們能用時下最前沿的技術(shù)搭建一套高性能、高可用的 Web 基礎(chǔ)設(shè)施,但你別讓我們修理一臺無法啟動的 Linux 機器——我們會建議你扔了它,然后換個新的虛擬機。
過去的十來年里發(fā)生了很多有意思的事兒:Linux 不但變成了商品,而且其層出不窮的發(fā)行版也越來越強大和靈活。如今,一個普通的系統(tǒng)管理員完全不必掌握編譯內(nèi)核這類底層技能了。
然后,我們又見證了虛擬機技術(shù)的商品化。使用 Amazon 云主機或者 VPS 的用戶也許永遠(yuǎn)不用在裸機上部署 Linux。隨著混合云和私有云的日益普及,甚至很多企業(yè)級的系統(tǒng)管理員都不需要在裸機上部署 Linux——登錄 Web 管理界面,一次性就能搞定不止 5 臺 Apache 虛擬機。
時下***的兩個趨勢:一個是配置管理,另一個看起來很前沿(其實一點兒都不前沿)—— 像 docker 這樣的部署工具包,它們隱藏了更多 Linux 底層技術(shù)細(xì)節(jié)。每當(dāng)客戶要求我們在 OlinData 上配置 Linux 機器時,我們的***個動作就是架設(shè) Puppet。有了功能強大值得信賴的 Puppet 模塊,手工配置也更快更簡單了。
例如,我可以這樣使用 Puppet 在新機器上安裝 Apache:
- node 'web01.olindata.com' {
- include apache
- apache::vhost{ 'www.olindata.com':
- docroot => '/var/www/olindata'
- }
- }
在這種環(huán)境下,我甚至都不用在機器上打開日志。通過 Jenkins 這樣的不間斷部署工具,我可以完全自動化部署我的基礎(chǔ)設(shè)施代碼,并確保它們通過了我預(yù)置的測試。
系統(tǒng)管理員技能日益升級
就算有更新的工具對我們隱藏更多的技術(shù)細(xì)節(jié),堅持 Linux 訓(xùn)練對系統(tǒng)管理員來說仍然很有價值。了解基礎(chǔ)知識很關(guān)鍵,這些抽象高級工具把管理員從舊的任務(wù)中解放了出來,那么系統(tǒng)管理員就應(yīng)該強化自己使用這些高級工具的能力。熟悉高級工具對系統(tǒng)管理員提升層次來說很關(guān)鍵,這會迫使系統(tǒng)管理員不斷練習(xí)編寫代碼一類的能力,并借此發(fā)揮這些新玩意兒更大的潛力。
底層 Linux 技能需求會完全消失么?當(dāng)然不會。除了商業(yè)服務(wù)器部署之外,Linux 還有大量其他用途。同時,人們也從底層操作知識中獲益頗豐。最重要的是,如果你的簡歷上體現(xiàn)出了這些技能,我(還有很多其他老板)總是會優(yōu)先選擇你,而不是那些尚未掌握這些技能的候選人。因為你也不知道啥時候你就用上這些技能了!
Walter Heck 是 荷蘭開源培訓(xùn)顧問公司 Olindata(一個 Linux 基金會授權(quán)的培訓(xùn)機構(gòu))的創(chuàng)始人兼 CEO,這里是計劃中由 OlinData 提供的 Linux 基金會官方培訓(xùn)課程單。
原文作者:Walter Heck