從IAC到云管理:Pulumi的演變歷程
該公司多年來(lái)一直是基礎(chǔ)設(shè)施即代碼的參與者,但現(xiàn)在正在擴(kuò)展到包括安全和云管理,作為三足凳的另外兩條腿。
譯自From IaC to Cloud Management: Pulumi's Evolution Story,作者 Jeffrey Burt。
Pulumi七年來(lái)一直在構(gòu)建其旗艦基礎(chǔ)設(shè)施即代碼(IaC)產(chǎn)品,為開(kāi)發(fā)人員和DevOps團(tuán)隊(duì)提供一種更輕松、開(kāi)源的方式來(lái)自動(dòng)創(chuàng)建和管理其云基礎(chǔ)設(shè)施。他們可以使用任何他們想要的編程語(yǔ)言,從C#和YAML到Python、Go和Java。他們可以將其成果部署到超過(guò)170個(gè)對(duì)他們有意義的云提供商中,包括亞馬遜網(wǎng)絡(luò)服務(wù) (AWS)、微軟Azure和谷歌云平臺(tái)等巨頭。
這對(duì)公司來(lái)說(shuō)非常有效,聯(lián)合創(chuàng)始人兼首席執(zhí)行官在最近的一篇博客文章中指出,Pulumi的IaC下載量超過(guò)1億次,并且在之前的幾周內(nèi)獲得了HashiCorp的Terraform貢獻(xiàn)量的167%和OpenTofu貢獻(xiàn)量的300%。
“Pulumi不僅是最強(qiáng)大的IaC技術(shù),而且越來(lái)越受歡迎和充滿活力,”Duffy寫(xiě)道。
現(xiàn)在,該公司發(fā)現(xiàn)自己身處一個(gè)正在經(jīng)歷劇變的IaC市場(chǎng),因?yàn)镠ashiCorp近年來(lái)已成為主導(dǎo)玩家,正準(zhǔn)備被納入龐大的IBM體系,IBM收購(gòu)該公司的64億美元交易預(yù)計(jì)將在年底前完成。此次收購(gòu)將在已經(jīng)競(jìng)爭(zhēng)激烈且不斷發(fā)展的市場(chǎng)中為Pulumi等供應(yīng)商創(chuàng)造更多空間。
這是一個(gè)巨大且不斷增長(zhǎng)的領(lǐng)域。根據(jù)Fortune Business Insights的分析師預(yù)測(cè),全球IaC市場(chǎng)將從去年的9.087億美元增長(zhǎng)到2030年的33億美元以上。
該公司將繼續(xù)發(fā)展Pulumi IaC,同時(shí)還將提供Pulumi ESC和Pulumi Insights用于云管理的安全管理產(chǎn)品。Duffy和其他高管過(guò)去曾談到過(guò)這些產(chǎn)品,但在最近的PulumiUP虛擬活動(dòng)中,他們將所有這些產(chǎn)品整合在一起,創(chuàng)建了一個(gè)統(tǒng)一的平臺(tái),他們表示該平臺(tái)將滿足開(kāi)發(fā)人員的所有基礎(chǔ)設(shè)施需求。
“這是Pulumi第一次真正作為一個(gè)多產(chǎn)品平臺(tái)推出,”Duffy告訴The New Stack。“我們以我們的基礎(chǔ)設(shè)施即代碼產(chǎn)品而聞名,它是開(kāi)源的。這仍然是我們正在做的一切的動(dòng)力。如果沒(méi)有Pulumi IaC的基礎(chǔ),Insights就不可能實(shí)現(xiàn)。現(xiàn)在,我們擁有這三個(gè)相互獨(dú)立但協(xié)同更好的產(chǎn)品,它們可以獨(dú)立采用。我們真的想成為一個(gè)值得信賴的合作伙伴。如果您是基礎(chǔ)設(shè)施副總裁,我們正試圖解決您遇到的每一個(gè)關(guān)鍵任務(wù)問(wèn)題。”
一年多的籌備
這家位于西雅圖的公司首次向業(yè)界展示了Pulumi ESC(代表“環(huán)境、密鑰和配置”)——去年,數(shù)百家組織參與了公開(kāi)測(cè)試。它現(xiàn)在已正式上市。對(duì)于開(kāi)發(fā)人員來(lái)說(shuō),Pulumi ESC 是一個(gè)管理所有環(huán)境、密鑰和配置的中心位置,它正好位于他們的源代碼(例如HashiCorp的Vault、AWS Secrets Manager、Azure Key Vault、谷歌云Secrets Manager、Password1和Pulumi Cloud Secrets)和目標(biāo)環(huán)境(例如相同的 major cloud providers 以及 GitLab、Docker 容器、Kubernetes、Cloudflare Workers 和 Pulumi 本身)之間。
“它是全自動(dòng)的。你可以在中心位置定義所有密鑰和所有環(huán)境,然后開(kāi)發(fā)人員可以訪問(wèn)和組合它們,”他說(shuō)。“它與現(xiàn)有的密鑰存儲(chǔ)集成……我們?yōu)樗麄兲峁┝艘粋€(gè)標(biāo)準(zhǔn)接口,開(kāi)發(fā)人員可以輕松使用,而基礎(chǔ)設(shè)施和安全團(tuán)隊(duì)可以審核所有訪問(wèn)權(quán)限,控制所有訪問(wèn)權(quán)限,并在必要時(shí)從一個(gè)地方撤銷(xiāo)訪問(wèn)權(quán)限。你無(wú)需再關(guān)注可能出現(xiàn)密鑰的十幾個(gè)不同的地方。只需訪問(wèn)一個(gè)中心位置即可。”
Pulumi 加強(qiáng)安全功能
在平臺(tái)內(nèi)部,Pulumi 的安全產(chǎn)品變得越來(lái)越重要,因?yàn)樵絹?lái)越多的企業(yè)數(shù)據(jù)和應(yīng)用程序遷移到云端。Duffy 說(shuō),這項(xiàng)工具對(duì)大小公司都很重要。
“許多公司最重要的數(shù)據(jù)和最重要的資產(chǎn)現(xiàn)在都在云端,這意味著它們可能對(duì)互聯(lián)網(wǎng)開(kāi)放,”他說(shuō)。“人們不再能夠依賴數(shù)據(jù)中心的物理安全錯(cuò)覺(jué)。現(xiàn)在他們必須考慮基于軟件的安全。”
這種情況已經(jīng)持續(xù)了一段時(shí)間,但在 COVID-19 大流行期間加速了,當(dāng)時(shí)各組織清空了辦公室,業(yè)務(wù)變得高度分散和基于云。然而,即使在這些左移時(shí)期, 在很多方面,安全仍然是事后考慮的問(wèn)題,他說(shuō)。
“人們開(kāi)發(fā)和交付軟件的方式,安全通常是事后考慮的問(wèn)題,開(kāi)發(fā)人員編寫(xiě)代碼,基礎(chǔ)設(shè)施團(tuán)隊(duì)將代碼放入云中,然后安全團(tuán)隊(duì)追查所有發(fā)現(xiàn)的問(wèn)題,無(wú)論是 CVE 和未修補(bǔ)的容器還是可訪問(wèn)互聯(lián)網(wǎng)的虛擬機(jī),還是云基礎(chǔ)設(shè)施本身的錯(cuò)誤配置,”Duffy 說(shuō)。“如今許多工具和軟件都傾向于假設(shè)混亂已經(jīng)存在,并‘讓我們?nèi)ゲ檎液托迯?fù)問(wèn)題’。”
然而,隨著向左移的推動(dòng)以及持續(xù)集成和持續(xù)交付所推動(dòng)的加速步伐,企業(yè)希望他們的開(kāi)發(fā)人員能夠掌控全局并快速迭代,將代碼交付到云端,幾乎沒(méi)有障礙和很少的摩擦。代碼交付每天進(jìn)行多次,而不是每季度一次。管理密鑰是關(guān)鍵。
“錯(cuò)誤的因素之一是密鑰,以及確保您最敏感的信息(無(wú)論是數(shù)據(jù)庫(kù)密碼、令牌還是訪問(wèn)您的[帳戶]的應(yīng)用程序密鑰)得到安全可靠的處理,”Duffy 說(shuō)。“為了能夠左移,您的開(kāi)發(fā)人員需要一個(gè)解決方案,讓他們知道所有這些東西都將始終安全。它需要內(nèi)置其中。它不能是你事后添加的東西。”
獲取對(duì)云基礎(chǔ)設(shè)施的洞察
Pulumi在 2023 年初啟動(dòng)了 Insights,為組織提供對(duì)其多個(gè)云環(huán)境的可見(jiàn)性、智能和控制。與 ESC 一樣,Insights 的目標(biāo)是默認(rèn)情況下實(shí)現(xiàn)安全等功能,但通過(guò)云資產(chǎn)和合規(guī)性管理服務(wù)實(shí)現(xiàn)。它不僅幫助開(kāi)發(fā)人員和其他人員了解他們擁有的資源及其位置,而且還為他們提供合規(guī)性補(bǔ)救功能、搜索、資源可視化和基于 AI 的洞察。這是 Pulumi 之前工作的一大進(jìn)步。
“這并非直接在我們擅長(zhǎng)的領(lǐng)域內(nèi),但……由于我們的基礎(chǔ)設(shè)施是良好的產(chǎn)品,我們了解所有這些云的全部情況,”他說(shuō)。“我們說(shuō)的是,‘如果我們有一種方法可以發(fā)現(xiàn)您擁有的所有資源,無(wú)論它們?cè)谀睦铮⑺鼈円胛覀円呀?jīng)擁有的數(shù)據(jù)模型(包括搜索和 AI 以及所有這些優(yōu)秀的功能),那么我們將能夠提供更好的可見(jiàn)性。’這與我們的策略代碼引擎相結(jié)合,該引擎已經(jīng)在為基礎(chǔ)設(shè)施即代碼工作負(fù)載執(zhí)行合規(guī)性檢查,我們找到了一種方法,可以利用我們所做的所有工作,并將其應(yīng)用于您運(yùn)行的任何基礎(chǔ)設(shè)施。”
更好、更強(qiáng)大的 Insights
Insights 的第一個(gè)版本包括對(duì) IaC 基礎(chǔ)設(shè)施的搜索和儀表板,以及將其導(dǎo)出到 Snowflake 的功能。Pulumi 加強(qiáng)了 Insights 2.0,使組織能夠?qū)⑵涔δ軕?yīng)用于其所有云基礎(chǔ)設(shè)施,無(wú)論其位置如何。它支持近 200 個(gè)云,并提供所有云資產(chǎn)的即時(shí)清單。Pulumi 內(nèi)部有完整的透視表、可自定義的報(bào)表和儀表板、搜索和 Pulumi Copilot,用于發(fā)現(xiàn)云資源并交互式地提出問(wèn)題。
此功能還利用 Pulumi 的 CrossGuard 策略即代碼功能,該功能包括自動(dòng)化補(bǔ)救措施的能力,因此 Insights 不僅可以提醒安全或合規(guī)性問(wèn)題,還可以通過(guò)單擊按鈕幫助團(tuán)隊(duì)修復(fù)這些問(wèn)題。
它探討了利用人工智能解決問(wèn)題的能力,以及對(duì)某種程度人工干預(yù)的渴望,這也是Pulumi一直在努力解決的問(wèn)題。
“我們討論了一段時(shí)間,因?yàn)槲覀兒芏嗳讼M惺虑槎荚贑I/CD管道中,并且圍繞它有一個(gè)軟件開(kāi)發(fā)生命周期流程,我們總是遵循這個(gè)流程,”Duffy說(shuō)。“你永遠(yuǎn)不會(huì)點(diǎn)擊一個(gè)按鈕來(lái)修復(fù)問(wèn)題。但如果你坐在那里盯著一個(gè)安全漏洞,你可能想要一個(gè)按鈕,上面寫(xiě)著‘去修復(fù)它’,即使你之后會(huì)有一些工作流程來(lái)確保它永久修復(fù),并且其中涉及Jira工單等等。我認(rèn)為這將成為我們的一個(gè)關(guān)鍵差異化因素。”
Pulumi Kubernetes Operator 2.0
與此同時(shí),本月早些時(shí)候,該公司發(fā)布了Pulumi Kubernetes Operator 2.0測(cè)試版,它使用戶能夠從Kubernetes環(huán)境中部署和管理云基礎(chǔ)設(shè)施。通過(guò)2.0版本的發(fā)布,Pulumi解決了影響早期用戶的可擴(kuò)展性和隔離性限制。
Pulumi Kubernetes Operator定義了一個(gè)名為pulumi.com/v1/Stack的Kubernetes自定義資源,它代表一個(gè)Pulumistack,Pulumi的軟件工程師Eron Wright在一篇博客文章中寫(xiě)道。Pulumi stack可以使用任何受支持的Pulumi語(yǔ)言(TypeScript、Python、Go、.NET、Java、YAML)編寫(xiě),并可以在任何受支持的云(AWS、Azure、GCP、Kubernetes和60多個(gè)其他云和SaaS提供商)中部署和管理云基礎(chǔ)設(shè)施。Wright說(shuō),Pulumi Kubernetes Operator根據(jù)Stack自定義資源或其使用的資源的變化觸發(fā)云部署。
因此,Pulumi Kubernetes Operator使用戶能夠通過(guò)使用直接在其Kubernetes集群中管理的資源來(lái)指定其云基礎(chǔ)設(shè)施的期望狀態(tài)。該公司表示,修改這些Kubernetes資源將觸發(fā)對(duì)其管理的基礎(chǔ)云基礎(chǔ)設(shè)施的創(chuàng)建、更新和刪除。
PulumiUP Europe
Pulumi將在即將于11月20日虛擬舉行的PulumiUP Europe大會(huì)上展示這款產(chǎn)品和其他關(guān)鍵產(chǎn)品。
除了產(chǎn)品信息外,Pulumi還將贊助關(guān)于平臺(tái)工程、DevOps和安全等主題的會(huì)議。
例如,根據(jù)Gartner的預(yù)測(cè),到2026年,80%的開(kāi)發(fā)公司預(yù)計(jì)將擁有內(nèi)部平臺(tái)服務(wù)和團(tuán)隊(duì)來(lái)提高開(kāi)發(fā)效率。隨著平臺(tái)工程繼續(xù)重塑組織管理基礎(chǔ)設(shè)施的方式,集成DevOps和安全對(duì)于構(gòu)建可擴(kuò)展、安全的平臺(tái)至關(guān)重要。這包括在將DevSecOps集成到規(guī)模化平臺(tái)時(shí)面臨的挑戰(zhàn)和機(jī)遇,以確保開(kāi)發(fā)人員的自主性,同時(shí)保持治理和合規(guī)性。
IaC的不足
StackGen,一家生成式Infrastructure from Code (IfC)公司,于10月30日發(fā)布了關(guān)于IaC采用面臨重大挑戰(zhàn)的研究。他們對(duì)315名參與者的調(diào)查中的主要發(fā)現(xiàn)包括:97%的IaC用戶報(bào)告遇到困難,只有13%的組織實(shí)現(xiàn)了IaC成熟度。此外,56%的開(kāi)發(fā)人員表示他們花費(fèi)超過(guò)20%的時(shí)間在基礎(chǔ)設(shè)施管理上。
此外,一些主要挑戰(zhàn)包括安全性和可靠性問(wèn)題(56%的人難以保持一致的配置)。然而,根據(jù)StackGen的說(shuō)法,IfC正在成為一種潛在的解決方案,盡管目前只有22%的人熟悉它。
StackGen將其IfC解決方案定位為通過(guò)根據(jù)應(yīng)用程序源代碼自動(dòng)生成基礎(chǔ)設(shè)施配置來(lái)解決這些挑戰(zhàn),并具有內(nèi)置的安全性和合規(guī)性標(biāo)準(zhǔn)。