Azure Arc:管理混合云部署

导读 您如何在自己的数据中心获得云的好处?微软考虑这个问题已经有一段时间了,并提出了一系列不同的解决方案。在规模的一端是“azu一致”的硬件组合,它从基于机架的Azure Stack Hub开

您如何在自己的数据中心获得云的好处?微软考虑这个问题已经有一段时间了,并提出了一系列不同的解决方案。在规模的一端是“azu一致”的硬件组合,它从基于机架的Azure Stack Hub开始,向下扩展到物联网和侧重于计算的Azure Stack edge硬件。但他们都需要你投资新的专业硬件。当您想使用自己现有的基础设施时,应该怎么做?

这就是Azure Arc最近发布的原因,它为您的现代云应用程序启动了一个应用程序级的控制平面。Arc通过Azure门户管理,使用熟悉的Azure概念和工具将应用程序和管理策略交付给运行在服务器或其他公共云上的虚拟机和Kubernetes。

很难理解Azure Arc是什么——微软网站上最初的博客文章和持有页面更多的是营销材料,而不是技术信息。然而,在微软最近的“点燃”(Ignite)活动上,我们与它背后的一些团队进行了交流,现在对它有了一个很好的认识——或许更重要的是,对它没有什么认识。

Azure Arc并不是向数据中心交付类似云的操作平台的另一种方式。它不安装Kubernetes,也不为您管理虚拟基础设施。最重要的是,你当然不应该期望微软使用Azure Arc来交付一个没有硬件的Azure堆栈中心。

相反,这是微软对分布式应用管理思想转变的一部分。在其开放应用程序模型中,它将分布式计算视为三层:物理和虚拟基础设施、一组应用程序服务和一个应用程序的混合。在这个模型中,您分别管理每一层。基础结构层承载应用程序服务,其中包括容器编排服务(如Kubernetes)。应用程序部署在该层上,可以作为独立的虚拟机,也可以作为一组容器和集群定义一起部署。

Azure Arc将Azure管理功能扩展到Linux和Windows服务器,并将Kubernetes集群扩展到跨本地、多云和edge的基础设施上。

Azure Arc是管理中间层的一部分,它使用熟悉的Azure工具来交付和管理在现有私有云安装上运行的应用程序。如果您使用VMware的vSphere这样的工具来运行虚拟基础设施,Azure Arc会连接到这些vm,并将它们附加到Azure的管理工具上。一旦连接上,您就可以使用Azure门户管理它们,并将它们作为应用程序部署的目标。

您不仅可以使用虚拟机,还可以使用Azure Arc来管理Kubernetes,部署带有代码的容器,以及带有Azure SQL数据库和Azure的hyperscale PostgreSQL的容器版本。如果您使用的是AKS,那么您的代码可以根据需要添加额外的azk托管资源,旋转新的节点并托管相同的容器。

Azure Arc的核心是一个管理代理,它运行在Arc所称的被连接的机器上。这些是托管服务器,每个服务器都有一个Azure资源ID,并作为Azure资源组的一部分进行管理。连接服务器后,您可以在Azure门户中看到它,并可以从Azure资源管理器模板应用管理策略。已连接的机器必须运行Windows服务器或Ubuntu的最新版本,并直接连接到Azure Arc的服务端点。这些使用SSL,所以如果您使用代理,请确保它支持HTTPS。

参见:2019年顶级云提供商:主要参与者的领导者指南(TechRepublic Premium)

这些连接的机器是使用您当前的企业基础设施工具管理的,因此您可以继续使用VMware或System Center工具和技能来管理您的虚拟基础设施。Azure Arc所做的是使用ARM策略定义来确保安全运行VM基础架构,应用基于角色的访问控制和管理服务器身份。

托管的vm不需要在您自己的基础设施上运行——如果您使用AWS或GCP,您仍然可以将vm添加到Azure门户。您所需要做的就是将Azure Arc代理捆绑到您的vm中,并在它们启动时立即连接它们。

保持基础设施和应用程序控制平面的分离是管理混合云平台的一种逻辑方式。通过使用ARM模板声明性地将相同的策略应用到相同应用程序的内部和云实例中,您可以确保它们具有相同的设置。Arc的代理不仅设置策略,还监视遵从性,并在必要时纠正更改的设置。通过Azure门户,所有内容都是可见的,因此您可以快速查看哪些服务器是不兼容的。

管理员可以使用命令行工具来配置和调试Azure连接。您可以将它与PowerShell一起用于连接服务器,以及收集和查看状态信息。Azure Arc的大部分管理是使用PowerShell而不是组策略来处理的,PowerShell的理想状态配置管理工具应用了策略,并确保受管理的服务器和vm不会偏离遵从性。

虽然公开预览版还不支持Kubernetes,但微软已经表示Azure Arc的Kubernetes支持是基于相同的代理模型,通过Helm部署。一旦您管理了一个集群,您就可以使用Azure SQL和Azure PostgreSQL来部署数据服务,这是通过Azure其余部分使用的即付即用模型来实现的。通过这种方式,您可以运行托管的数据库服务,其优点与在Azure中运行相同,但是是在您自己的网络上,从而确保法规遵从性。然后,Arc策略可以监视Git存储库的更改,并在构建新代码和容器时下载它们。

微软很清楚Azure Arc是其Azure管理平台的一部分,将Azure资源管理器引入您的云选择。它与您现有的Azure账单绑定在一起,但是如果您在AWS或另一个公共云上管理资源,那么您不会对它的账单有任何了解,并且仍然需要为此使用现有的管理工具。集群不需要总是连接,所以Azure Arc将能够管理运行在船上或偏远地区的云,并在它们连接时下载更新和新策略。

Arc确保的是,无论在何处安装,相同的策略都对相同的代码运行。您的ARM模板是确保正确端口打开、服务器连接到正确域或您没有安全证书过期危险的策略。如果您需要在云本地基础设施中保持亮灯状态,并且您已经获得了对Azure的依赖,那么您需要确保您的混合云以相同的方式运行——无论它安装在哪里。只是不要忘记通过管理底层基础设施的方式让灯光一直亮着。

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时候联系我们修改或删除,多谢