從代碼到云端:DeveloperWeek活動見聞
本文作者:Talia Nassi。她是Akamai的首席開發(fā)者布道師,同時也是各大國際性會議和活動的主題演講者,致力于創(chuàng)作關(guān)于在云端構(gòu)建、測試和Linode等方面的內(nèi)容。
前段時間,我參加了在美國加利福尼亞奧克蘭舉辦的DeveloperWeek會議。這是一個為開發(fā)者、DevOps工程師和產(chǎn)品經(jīng)理舉辦的,為期兩天的年度性活動。去年,我曾在會上做了一個關(guān)于基礎(chǔ)設(shè)施即代碼構(gòu)建應(yīng)用的演講。今年,我在Akamai展臺上進(jìn)行演示,展示了我們最新的VPC服務(wù)。
延伸閱讀,點(diǎn)擊鏈接了解 Akamai Cloud Computing
與業(yè)內(nèi)的很多其他會議不同,DeveloperWeek專注于工具,并重點(diǎn)凸顯了廣泛的供應(yīng)商。如果想了解新工具和即將推出的技術(shù),這里將會是一個很好的去處。
活動期間,參觀Akamai展臺的人群各有不同。一方面,有很多學(xué)生來尋找招聘人員進(jìn)行交流,其中甚至有些人以前從未聽說過Akamai。不過這也挺常見的。此外,還有一些DevOps專家對服務(wù)器配置比較感興趣,他們還提出了一些很詳細(xì)的技術(shù)問題。
本文詳細(xì)記錄了我參會期間的一些見聞和感受。
與農(nóng)貿(mào)市場的類比帶給我們的啟示
在DeveloperWeek活動全程,我最喜歡的演講是Billy Thompson關(guān)于避免供應(yīng)商鎖定的那一場,畢竟這個話題也是我過去一直在努力解決的問題。他以農(nóng)貿(mào)市場的類比開始了演講。Billy喜歡農(nóng)貿(mào)市場,喜歡那里銷售的各種蔬菜。他去了所有攤位,選擇了自己最喜歡并且價格最劃算的當(dāng)季蔬菜。但如果他只去了農(nóng)貿(mào)市場的一個攤位,而忽略了其他幾十個每天都蹲守在自己攤位前的攤主,結(jié)果會怎樣呢?他會錯過其他攤主提供的多樣選擇,錯過自己選擇的那一個攤主所沒有提供的東西,或者可能錯過以更便宜價格得到同樣蔬菜的機(jī)會。
這種情況其實(shí)與如今的云計(jì)算非常相似。人們的認(rèn)識存在一定局限,認(rèn)為云就是那幾家超大規(guī)模服務(wù)商而已。但其實(shí),市面上有幾十個不同的云服務(wù)提供商,他們提供了許多類似的服務(wù)。作為云工程師,我們需要做出更好的決策,以更好地滿足自己和業(yè)務(wù)的需求。
不要僅僅因?yàn)槊侄x擇某個云服務(wù)商,而是要選擇多個云服務(wù)商,他們的功能會適合我們每一個特定的需求,這樣才能從中獲得最大化收益。我們完全可以像逛農(nóng)貿(mào)市場那樣,從每個攤主那里挑選最好的、當(dāng)季的蔬菜一樣;當(dāng)從多個云服務(wù)商中進(jìn)行選擇時,我們也將可以從每個服務(wù)商那里挑選出自己喜歡,并且價格合適的東西。
Billy讓聽眾進(jìn)行了一種名為“Bare Bones Approach”的練習(xí)。假設(shè)有一個應(yīng)用程序,將其簡化到最基礎(chǔ)的骨架狀態(tài)。然后,逐步添加一層一層的支撐功能。在這種方法中,我們首先要識別出應(yīng)用程序最基本的基礎(chǔ)需求,同時要確保自己不受任何特定技術(shù)或提供商先入為主觀念或偏好的影響。通過這種方法,我們可以保證所添加的每個功能層都是經(jīng)過深思熟慮的,并且所做的選擇可以滿足自己的需求,而不是受到可能不符合應(yīng)用程序目標(biāo)的外部因素的影響。這種方法讓我們可以用更加可定制、更高效,并且更有效的方式使用技術(shù),并確保自己的選擇與應(yīng)用程序的需求維持一致。這種設(shè)計(jì)理念使得應(yīng)用程序更具可移植性。畢竟這不是為了修復(fù)沒有問題的東西,而是為了微調(diào)我們自己的需求,并確保自己的云服務(wù)滿足這些確切的要求。
VPC Terraform演示
另外我所參與的Demo也值得一提。在本次會議中,我與團(tuán)隊(duì)同事、開發(fā)者布道師Austin Gil一起進(jìn)行了演示。
我們首先介紹了虛擬私有云(VPC)的概念。這是云中一個安全、隔離的區(qū)域,用戶可以在其中使用自己定義的虛擬網(wǎng)絡(luò)運(yùn)行各類資源。這種設(shè)置帶來了幾個好處,包括通過隔離計(jì)算資源增強(qiáng)安全性、更好地控制網(wǎng)絡(luò)環(huán)境(如IP地址范圍和網(wǎng)關(guān)),以及創(chuàng)建混合環(huán)境,將本地網(wǎng)絡(luò)擴(kuò)展到云中。我們還介紹了基礎(chǔ)設(shè)施即代碼(IaC)的原則,使用Terraform介紹了該機(jī)制如何通過代碼實(shí)現(xiàn)基礎(chǔ)設(shè)施的自動化和高效管理。
為了讓我們關(guān)于虛擬私有云(VPC)和基礎(chǔ)設(shè)施即代碼(IaC)的討論更生動,我們還演示了兩種不同設(shè)置,涉及兩個數(shù)據(jù)庫的部署。
我們的第一個設(shè)置不涉及VPC,這是為了獲得一個基線,以突出VPC的優(yōu)勢。第二個設(shè)置部署在VPC的安全邊界內(nèi),這樣即可清晰地展示出VPC可以提供的更高安全性和網(wǎng)絡(luò)隔離能力。這種設(shè)置非常有效地展示了VPC如何防止未經(jīng)授權(quán)的訪問,并維護(hù)內(nèi)部網(wǎng)絡(luò)的完整性。
正如上文提到的,我們使用了Terraform來定義和配置基礎(chǔ)設(shè)施。Terraform配置文件使用HashiCorp配置語言(HCL)編寫。其他云提供商通常使用JSON或YAML。如果不熟悉HCL,Terraform網(wǎng)站上有許多代碼庫可供學(xué)習(xí)。我們部署了兩個具有相似配置的數(shù)據(jù)庫,主要區(qū)別在于它們的網(wǎng)絡(luò)設(shè)置。第一個數(shù)據(jù)庫部署在沒有VPC保護(hù)的標(biāo)準(zhǔn)云環(huán)境中,第二個數(shù)據(jù)庫安全地嵌套在VPC中,借此獲得進(jìn)一步的安全性和隔離。
這使我們能夠展示數(shù)據(jù)庫的訪問情況所存在的明顯差異;非VPC環(huán)境中的數(shù)據(jù)庫可以輕易訪問,說明存在潛在安全漏洞。相比之下,VPC內(nèi)的數(shù)據(jù)庫對外部不可訪問,有效凸顯了VPC在網(wǎng)絡(luò)隔離和保護(hù)敏感數(shù)據(jù)方面的作用。
應(yīng)用程序的兩個版本功能是相同的。每個版本都顯示一個數(shù)據(jù)庫。然而,因?yàn)槭褂肰PC來保護(hù)第二個數(shù)據(jù)庫,因此只能看到訪問第一個數(shù)據(jù)庫的應(yīng)用程序的完整細(xì)節(jié)。
當(dāng)嘗試訪問第二個應(yīng)用程序時,我們無法看到數(shù)據(jù)庫,而是收到了一個錯誤信息。很好,這意味著我們成功阻止了不良行為者訪問我們的私密信息。
這個演示中,我們展示了如何通過一種簡單的方式實(shí)施網(wǎng)絡(luò)隔離層來保護(hù)應(yīng)用程序數(shù)據(jù)。在本例中,我們將網(wǎng)絡(luò)的不同部分拆開,以防止未經(jīng)授權(quán)的訪問數(shù)據(jù)庫。但其實(shí)這種操作也可以用來實(shí)現(xiàn)其他更復(fù)雜的目的,例如DevOps環(huán)境或合規(guī)要求。
在DevOps設(shè)置中,我們可能有多個環(huán)境,比如開發(fā)環(huán)境、暫存環(huán)境和生產(chǎn)環(huán)境。每個環(huán)境都需要不同的網(wǎng)絡(luò)配置和訪問控制。通過利用VPC,我們可以在隔離的網(wǎng)絡(luò)邊界內(nèi)創(chuàng)建單獨(dú)的環(huán)境。這確保了在一個環(huán)境中進(jìn)行的更改不會影響其他環(huán)境,并允許對網(wǎng)絡(luò)策略進(jìn)行細(xì)粒度的控制。
在合規(guī)和監(jiān)管要求方面,諸如醫(yī)療保健、金融和政府等行業(yè)受到嚴(yán)格的合規(guī)性法規(guī)的約束,涉及數(shù)據(jù)隱私和安全。使用具有隔離層的VPC,通過將敏感數(shù)據(jù)和工作負(fù)載與網(wǎng)絡(luò)的其余部分隔離開來,可以幫助企業(yè)遵守這些要求。例如,我們可以將個人身份信息隔離在專用子網(wǎng)中,并在網(wǎng)絡(luò)層強(qiáng)制執(zhí)行加密和訪問控制。隔離層的概念可適用于幾乎所有領(lǐng)域的應(yīng)用程序。
又一次成功的DeveloperWeek活動,希望明年能再次參與,也希望能從社區(qū)的其他成員那里學(xué)到更多東西。
同時,我們也會繼續(xù)對Akamai VPC服務(wù)進(jìn)行不斷的完善和改進(jìn),幫助用戶更輕松、便捷、靈活地在Akamai云平臺上部署和運(yùn)行。
—————————————————————————————————————————————————
如您所在的企業(yè)也在考慮采購云服務(wù)或進(jìn)行云遷移,
點(diǎn)擊鏈接了解Akamai Linode的解決方案