誰在害怕云原生?
如今,IT世界正在以極快的速度發(fā)生變化,其中很大一部分只涉及一種技術(shù)——應(yīng)用容器,尤其是Kubernetes。這種方法專為云計(jì)算而設(shè)計(jì),并在“云原生”的旗幟下誕生的整個(gè)軟件生態(tài)系統(tǒng),其中包括Prometheus、Fluentd、rkt、Linkerd等眾多項(xiàng)目。但究竟什么是云原生?它是否會使數(shù)據(jù)中心自動化工作不復(fù)存在?
幸運(yùn)的是,負(fù)責(zé)管理Kubernetes的一個(gè)非營利組織——云原生計(jì)算基金會(CNCF)的團(tuán)隊(duì)在幾個(gè)月前開發(fā)了一個(gè)有用的定義。
開源
它以真正的開源方式發(fā)布在GitHub上,并且正在不斷完善中。這個(gè)定義指出:“云原生技術(shù)使組織能夠在現(xiàn)代的動態(tài)環(huán)境(如公共云、私有云和混合云)中構(gòu)建和運(yùn)行可擴(kuò)展的應(yīng)用程序。容器、服務(wù)網(wǎng)格、微服務(wù)、不可變基礎(chǔ)設(shè)施和聲明性API是這種方法的例證。”
這些技術(shù)使松散耦合的系統(tǒng)具有彈性、可管理性和可觀察性。結(jié)合強(qiáng)大的自動化功能,它們使工程師能夠以最少的工作量和可預(yù)測地進(jìn)行高影響力的變更。
這一運(yùn)動源于一些世界上最成功的數(shù)字業(yè)務(wù)的經(jīng)驗(yàn)。云原生計(jì)算基金會(CNCF執(zhí)行董事DanKohn表示,“在過去的十年中,許多前瞻性的公司一直在考慮這些問題。谷歌公司無疑是***的廠商,但實(shí)際上,每家廠商都試圖以更大的規(guī)模運(yùn)營,例如亞馬遜、Twitter、Yelp、Pinterest、SoundCloud等這些公司都提出了相對類似的解決方案。一旦他們確定了這一點(diǎn),他們開始將所有學(xué)習(xí)內(nèi)容放入一組開源項(xiàng)目,在共同擁有基礎(chǔ)設(shè)施,然后他們就可以升級到創(chuàng)新。我認(rèn)為這是一個(gè)偉大的事情,這個(gè)創(chuàng)新現(xiàn)在對任何人都可用。”
需要注意的重要事項(xiàng)之一是,遷移到云原生并不一定需要公共云,只要它支持某種形式的私有云架構(gòu),企業(yè)就可以在其本地?cái)?shù)據(jù)中心輕松運(yùn)行Kubernetes。
“關(guān)鍵的想法是,不要在一臺機(jī)器上運(yùn)行一個(gè)應(yīng)用程序,然后說‘好的,這是我的數(shù)據(jù)庫服務(wù)器,這是我的web服務(wù)器,這是我的中間件服務(wù)器’,而是將所有應(yīng)用程序都裝入容器,為它們建立一組需求,然后讓它們自動編排。”Kohn說,“這實(shí)際上是如何管理和部署基礎(chǔ)設(shè)施的范例轉(zhuǎn)變。”
Kohn指出,“Kubernetes是歷史上發(fā)展最快的開源項(xiàng)目之一——這取決于數(shù)量,它名列在Linux之后排在第二位,并且經(jīng)常被描述為‘云計(jì)算的Linux'。它背后有巨大的發(fā)展動力,并且在很多方面,它正成為那些想要遷移到現(xiàn)代基礎(chǔ)設(shè)施組織的默認(rèn)選擇。”
“整個(gè)生態(tài)系統(tǒng)的發(fā)展速度越來越快。”Packet公司共同創(chuàng)始人和高級副總裁JacobSmith說道,“這是一個(gè)面向應(yīng)用程序開發(fā)人員的公共云服務(wù)。如果你問一個(gè)10年前的IT人員,他們會這方面投入大量的資源,比如VMware。而Kubernetes只有四年的歷史,但卻推動了所有***公司的企業(yè)戰(zhàn)略。”
敏捷開發(fā)
云原生保護(hù)傘還包括持續(xù)集成和持續(xù)部署(CI/CD),這是用于描述與DevOps密切相關(guān)的敏捷開發(fā)方法的術(shù)語。
“持續(xù)集成和持續(xù)部署(CI/CD)或DevOps文化應(yīng)該成為企業(yè)的目標(biāo),無論他們是否想要云原生。”SolarWinds公司營銷總監(jiān)PatrickHubbard說,“解決你想要的敏捷程度可能是最終采用云計(jì)算更加成功的***步,因?yàn)樵圃?wù)都是為API管理而設(shè)計(jì)的,它們旨在以編程方式進(jìn)行管理。”
Hubbard指出,一些云計(jì)算供應(yīng)商談?wù)揇evOps,就像喜歡使用SKU一樣,組織可以為它支付費(fèi)用并安裝,突然他們采用了敏捷方法。不幸的是,情況并非如此:像容器一樣,使用DevOps需要額外的技能,而且還需要在業(yè)務(wù)本身內(nèi)進(jìn)行結(jié)構(gòu)性變更,這也是為什么它仍被視為一種替代品而不是標(biāo)準(zhǔn)的原因之一。
但是,數(shù)據(jù)中心行業(yè)人士是否應(yīng)該擔(dān)心這種突然涌入的新技術(shù)呢?畢竟,他們依靠原有的技術(shù)知識生存,而Kubernetes則呈現(xiàn)出一個(gè)新的陌生領(lǐng)域。
“他們應(yīng)該把這看作是一個(gè)機(jī)會。”Kohn說,“員工的技能組合相互依賴。如果你是一位經(jīng)驗(yàn)豐富的系統(tǒng)管理員,并且擅長配置機(jī)器并在Linux中工作,那么將幾乎所有這些技能應(yīng)用于DevOps和微服務(wù)和容器的現(xiàn)代世界是非??尚械?。
我認(rèn)為不要埋頭苦干,可以學(xué)習(xí)一些在線提供的培訓(xùn)課程,花費(fèi)時(shí)間學(xué)習(xí)和了解這個(gè)新技術(shù)和新領(lǐng)域,你會發(fā)現(xiàn),這里涉及有Linux,還有服務(wù)器等技術(shù),其現(xiàn)有的知識和經(jīng)驗(yàn)仍然有用,只是需要增加一些額外的功能。”
Hubbard也有類似的觀點(diǎn),他說“我們發(fā)現(xiàn)這一點(diǎn),當(dāng)看到我們的IT趨勢報(bào)告和其他一些調(diào)查時(shí),似乎在云計(jì)算還有這種職業(yè)重啟的機(jī)會,因?yàn)闆]有真正采用虛擬化。
在虛擬機(jī)出現(xiàn)之前,組織的數(shù)據(jù)中心中配備‘機(jī)架和堆棧'管理人員,可以維護(hù)電纜,并確保機(jī)架物理硬件的運(yùn)營和安全。如今這種職位將會消失,組織采用承包商安裝部署所有以太網(wǎng)和光纖,但兩年之后不知所蹤,因?yàn)椴辉傩枰9ぷ魅藛T需要學(xué)習(xí)編碼,并不是說讓其成為一名開發(fā)人員,而是能夠采取基本的策略,并把它轉(zhuǎn)化為Python,可以在無人監(jiān)管的時(shí)候執(zhí)行,這是人們五年之后工作的方式。”
“在中小企業(yè)中,仍然有人喜歡使用命令行管理本地資源,但我發(fā)現(xiàn)有很多人仍在使用15到20年之前的技術(shù),并且發(fā)現(xiàn)這種能力可以運(yùn)用API提供的大量資源,尤其是云原生服務(wù),快速轉(zhuǎn)換,以及根據(jù)需要調(diào)整配置的能力。當(dāng)他們遇到這種情況時(shí),他們在工作方面幾乎獲得重生,則這是他們首先在IT方面所需要做的事情。”Hubbard說。