今天我们很高兴地宣布普卢米3.0的可用性,下一个主要版本的Pulumi开源项目,以及Pulumi的云工程平台的基础。
Pulumi提供了最完整的基础设施作为建筑,部署和管理现代云基础架构和应用的代码平台。 Pulumi使云工程师能够使用熟悉的语言来描述其云基础架构 - 将核心软件工程工具和实践带入管理和获取他们云平台的最大值 - 跨越数十个云和SaaS提供商。
Pulumi 3.0包括许多重要的新功能和数百种改进,在此基础上建立。此版本包括来自Pulumi社区的超过150个成员的200多个捐款,并在过去的一年内与成千上万的Pulumi用户和客户合作建立反馈。
Pulumi Automation API:Pulumi的所有功能,现在可以在Node.js,Python,Go和.NET中嵌入您自己的软件和应用程序中 - 开辟了一个全新的现代云基础架构用例,包括自助式基础架构门户,自定义CLIS和更丰富的CI / CD工作流。
Azure(GA)和Google Cloud的本机Pulumi提供商(预览):具有100%平台覆盖的新提供程序,具有新功能的同日支持,以及云提供商定义的完全相同的资源模型 - 最齐全和最常见的方式管理Azure和Google Cloud中的云基础架构。
Pulumi包和多语言组件:采取以您的语言编写的任何Pulumi组件,并使它们作为所有其他Pulumi语言的用户提供的Pulumi包 - 将每种语言生态系统普鲁米汇集在一起进入单个Pulumi组件生态系统。
改进了Go和Python SDK:对核心Go和Python SDK的更新使API更简单,更加一致,解锁更多的工具支持,并改善编译时 - 使您在构建和管理云时更容易使用您喜爱的编程语言的所有优势基础设施。
Pulumi服务中的新集成和功能:与Pulumi 3.0一起,Pulumi服务的用户现在也可以访问组织级云基础架构洞察的新仪表板,CI / CD助手,简易版本控制和CI / CD集成,只有a几次点击次数,以及新的身份,访问控制和审核功能。
◦立即使用Pulumi 3.0开始或查看Pulumi 3.0迁移指南,以将现有的Pulumi项目更新为Pulumi 3.0。
Pulumi的自动化API在去年预览中被释放,现在是Pulumi 3.0的一部分。它提供了一个用于在您自己的应用程序中嵌入Pulumi的API,并支持所有Pulumi语言,包括类型/ JavaScript,Python,Go和C#。而不是直接使用Pulumi CLI,或者编写脚本以在CI / CD环境中执行CLI,您现在可以构建您自己的软件解决方案,该解决方案在Pulumi的强大,期望的状态基础架构上构建为代码部署引擎。只需几行代码即可将Pulumi嵌入软件定义的工作流程中。
这为您的团队如何管理云基础设施的方式开辟了这么多令人兴奋的新机会;我们已经看到了惊人的创造力,因为Pulumi的客户和社区在自动化API之上创建了解决方案。此外,Pulumi Automation API为Pulumi Kubernetes操作员,Pulumi Github Artuct V3和对Pulumi的Concours CI支持等若干其他新功能。
Pulumi提供了用于管理超过50个云和SaaS应用程序的云基础设施的软件包,自普卢米2.0以来增加了十几个新的提供商,包括与Civo,Venafi,Okta,Auth0,Equinix金属,天蓝色的斑点海洋的合作伙伴关系,以及Splunk。
对于最大和最广泛使用的云提供商,我们已经创建了新的东西:Pulumi本机提供商,为您提供了现代云的最完整和一致的界面。这些本机提供者自动从云提供商服务团队直接维护的云提供商API和资源模型生成。这使本机提供商能够为新功能提供100%API覆盖,同行支持,由提供商服务团队设计的完全相同的API,以及更少的错误和可靠性问题。这使得本机提供商能够在支持的云平台中管理基础架构的最佳方式,将Pulumi基础设施的优势与资源模型和云提供者本身的交付步伐相结合。
与Pulumi 3.0一起,新的Azure本机提供商最初在去年的预览中发布,现在通常可以作为1.0版。 Azure本机提供商建立在Azure资源管理器REST API规范的顶部,由Azure服务团队开发和维护。它支持超过2倍的资源数,以及3x资源属性的数量作为经典Azure提供程序。 Azure Native还支持每个资源API的每个版本,以便最大地兼容现有的基础架构。 Azure本机提供商的新版本每晚都会发布具有Azure的最新功能,确保立即可用于Azure服务团队的新功能和改进。
今天,我们也很高兴释放新的Google云本机提供商的预览。此本机提供商提供100%的Google云平台覆盖范围,与现有提供商相比,支持的资源属性具有70%。它还支持每个支持的资源的每个版本,包括Alpha,Beta和Ga Google Cloud产品。
👉在Pulumi本机提供商博客文章和Pulumi Google本机提供商博客文章中阅读更多。当然,我们没有忘记AWS - AWS本地提供商预计今年晚些时候。
Pulumi包是核心技术,使云基础设施资源提供一次,并为Pulumi支持的所有语言提供给用户。如果您曾在Pulumi使用过云提供商,则使用Pulumi封装。使用Pulumi 3.0,我们正在延长普鲁米封装,还可以支持建筑和包装普鲁米组分:云基础设施模式的更高级别抽象描述为普通普鲁米计划。这使得拍摄普鲁米程序可以易于定义资源集合,并将其转化为可重用的东西:普鲁米包可以由Pulumi支持的所有语言发布和使用的普鲁米包。
作为Pulumi封装的建筑和包装普卢米组分的一个例子是Pulumi EKS封装。我们最初发布了一个组件,可轻松构建和管理近两年前的生产准备eks集群,但它仅适用于Pulumi的Node.js用户作为NPM包。这个组件非常流行,因为它在所有移动的碎片中摘要摘要很多,需要设法站在AWS资源和群集Kubernetes资源中站立eks集群。最近,我们将此组件转换为Pulumi包,使其在Python,Go和.NET中的用户提供,只有一个实现。 Pulumi EKS只是应用这项技术的第一个例子;未来几个月在这里有更多的作品!
包主要导入(" github.com/pulumi/pulumi-eks/sdk/go/eks"" github.com/pulumi/pulumi/sdk/v3/1go/pulumi")func main(){pulumi。 run(func(ctx * pulumi。上下文)错误{cluster,err:= eks。newcluster(ctx,"我的群集",nil)如果err!= nil {returner} ctx。导出(& #34; kubeconfig",群集。kubeconfig)返回nil})}
使用pulumi;使用pulumi.eks; Class MyStack:堆栈{[输出(" kubeconfig")]公共输出<对象> Kubeconfig {GET;放 ; public mystack(){var cluster = new cluster(" my-cluster"); kubeconfig =群集。 Kubeconfig; }}
所有Pulumi包都定义了一个常见的pulumi模式,它描述了包裹曝光的资源模型,可用于生成特定于语言的SDK和文档。有几种不同类型的Pulumi包:
本机Pulumi提供程序包:使用Pulumi资源模型的完整功能为新的云平台创建提供商。示例:Kubernetes,Azure-Native和Google-Native软件包。
桥接提供商包:从另一个支持的生态系统中获取现有资源提供者(如Terraform提供者),并将其桥接为普鲁米包。示例:AWS,TLS和CloudFlare包。
组件包:在您的选择语言中编写Pulumi组件,并将其公开给Pulumi支持的所有语言的用户。示例:EKS包。
这些选项在一起提供了通过Pulumi封装暴露于Pulumi开发人员的资源和组件的广度和深度的组合。
Pulumi的语言SDKS以自然和高效的方式将云基础设施管理的力量带入您的首选语言,使您也可以使用您的所有现有的软件工程知识和工具为云基础架构项目。在Pulumi 3.0中,我们对Go和Python SDK进行了改进,以提高开发人员的生产力并启用额外的工具。
对于Go用户,Pulumi 3.0将二进制大小减少4倍并将构建时间提高到3倍,导致基础设施开发循环更快。除此之外,还简化了用于处理Pulumi输出值的GO API,以提供转换输出而不是三种不同选项的单个方式。这使得Pulumi Go SDK更一致,更容易开始。您可以了解Pulumi 3.0迁移指南中的这些更改。
对于Python用户,Pulumi 3.0为云资源提供了一种新的,更强烈的类型的方式,确保用户获得完成列表,键入检查,文档等。除此之外,还删除了输入属性命名中的一些不一致;现在,所有属性名称都遵循一致和可预测的命名约定。您可以了解Pulumi 3.0迁移指南中的这些更改。
除了Pulumi 3.0开源版本外,我们还为Pulumi服务的用户提供了新功能:所有Pulumi用户的简单易用的默认后端,为团队和企业提供了额外的功能。
将Pulumi集成到CI / CD系统中是实现现代基础设施作为代码的全部好处的关键步骤,我们已经努力使这比以往任何时候都更容易。自2.0以来,我们已经使用Spinnaker,GitHub操作和CodeFresh以及新的Pulumi Kubernetes运算符添加了合作伙伴集成。此外,我们还向服务推出了一个新的CI / CD助手,以帮助为Pulumi项目配置版本控制和CI / CD集成,只需点击几下即可。
对于企业用户,我们为SAML SSO和SCIM支持添加了多个增强功能。 Pulumi的SSO支持现在与OKTA(以及Google Identity,Azure Active Directory)无缝地工作,现在可以通过SAML提供程序中的SCIM支持同步用户和组,以及新的Team Admin角色使Team Management为大型组织更简单。
最后,Pulumi服务现在提供仪表板着陆页,这为您的基础架构的洞察力带来了洞察力,无论您是个人用户,还是大型组织的一部分。
👉在Pulumi CI / CD助理博客文章和SAML SSO和SCIM博客文章中阅读更多。
Pulumi 3.0是Pulumi项目的重要新里程碑,并通过新的Pulumi本地提供商支持普鲁米云工程平台的基础,支持云的最佳云,支持与Pulumi包装的可重复使用的基础设施组件的统一生态系统,支持Pulumi Automation API启用的云基础架构管理方案的新时代。这些中的每一个都只是一个开始:在这些基础上有更多的东西,我们很兴奋地与客户和社区在云工程中的下一波创新浪潮中工作!
要了解有关每个新领域的更多信息 - 查看这些博客文章更多详细信息:
您可以立即开始使用Pulumi 3.0,或者查看Pulumi 3.0迁移指南,以将现有的Pulumi项目更新为Pulumi 3.0。