AWS發(fā)布Cloud Control API,這是一組通用API,官方設(shè)計(jì)來讓開發(fā)者更方便管理AWS和第三方服務(wù)。
現(xiàn)在AWS云計(jì)算平臺(tái)擁有超過200個(gè)服務(wù),每個(gè)服務(wù)都有特定的API、詞匯、參數(shù)和錯(cuò)誤報(bào)告,AWS API可用來創(chuàng)建基礎(chǔ)設(shè)施即程序代碼,像是管理配置或是配置高性能計(jì)算集群。
官方提到,隨著應(yīng)用程序和基礎(chǔ)設(shè)施越來越復(fù)雜,使用更多的AWS服務(wù),用戶學(xué)習(xí)和管理不同的API則越來越困難,尤其是在基礎(chǔ)設(shè)施中使用第三方服務(wù)時(shí),困難更是會(huì)隨之增加,因?yàn)橛脩舯仨殬?gòu)建和維護(hù)自定義程序代碼,來管理AWS和第三方服務(wù)。
AWS新發(fā)布的Cloud Control API,是一組跨數(shù)百種AWS服務(wù),和數(shù)十種第三方服務(wù)的標(biāo)準(zhǔn)API,可以用來創(chuàng)建、讀取、更新、刪除和表列資源。其提供5種常用的動(dòng)詞,包括CreateResource、GetResource、UpdateResource、DeleteResource和ListResource,來管理服務(wù)的生命周期。例如當(dāng)用戶想要?jiǎng)?chuàng)建Amazon ECS集群或是AWS Lambda函數(shù)時(shí),便可以調(diào)用相同的CreateResource API,并傳遞創(chuàng)建資源類型和屬性作為參數(shù)。
Cloud Control API目前已經(jīng)支持?jǐn)?shù)百種AWS資源,在接下數(shù)個(gè)月內(nèi),官方還會(huì)增加支持EC2或是S3等AWS資源。AWS提到,Cloud Control API有三群主要的目標(biāo)用戶,第一群是使用AWS服務(wù)API管理自己的基礎(chǔ)設(shè)施,或是其客戶基礎(chǔ)設(shè)施的用戶,這些用戶通常會(huì)創(chuàng)建自有工具來滿足特定需求,但通常很難跟上新的AWS服務(wù)和功能,但因?yàn)镃loud Control API提供一致,且以資源為中心的方法,因此可以有效簡化這類工具的開發(fā)。
第二群為HashiCorp和Pulumi等APN合作伙伴,當(dāng)AWS發(fā)布新功能和服務(wù),這些APN合作伙伴也需要學(xué)習(xí)、集成和測試新的AWS服務(wù)API,而這是一個(gè)耗時(shí)的過程。新的Cloud Control API,讓APN合作伙伴能夠使用統(tǒng)一的API動(dòng)詞、通用參數(shù)和通用錯(cuò)誤類型,構(gòu)建獨(dú)特的REST API程序代碼庫,之后僅要整合標(biāo)準(zhǔn)化的預(yù)定義統(tǒng)一資源模型,就可以與作為REST資源公開的AWS新服務(wù)交互。
第三群則是使用Terraform或Pulumi等解決方案的AWS用戶,也就能夠在新的AWS服務(wù)和功能發(fā)布時(shí),在當(dāng)天獲得更新,立刻開始使用這些新功能。
要開始使用Cloud Control API,用戶需要更新到最新的AWS CLI版本,官方提到,Cloud Control API的目的并非用來取代傳統(tǒng)的AWS服務(wù)API,這些API會(huì)一直存在,但是Cloud Control API更簡單也更一致,AWS鼓勵(lì)開發(fā)者在新應(yīng)用程序中使用Cloud Control API。