azure云服务使用方法_在Azure Kubernetes服务上使用HashiCorp Consul

azure云服务使用方法

Kubernetes之类的工具在简化大规模构建分布式应用程序的过程上大有帮助。 但是它们只是故事的一部分,提供了在主机系统之间复制容器化微服务的方法。 如果要获得抽象的数据中心级操作系统的好处,那么我们需要考虑如何大规模管理网络,尤其是当这种规模是像Azure这样的大型公共云的规模时。

解决这个问题的方法之一就是服务网格 。 最好将服务网格作为软件定义网络的控制平面的抽象,这是一种构建软件层的方法,该软件层可管理支持代码所需的进程间通信。

[InfoWorld解释: 什么是云原生? 开发软件的现代方法 | 入门: Azure云迁移指南 •教程: Google Cloud入门 | 通过InfoWorld的云计算新闻通讯了解云计算的最新发展。 ]

精心设计的服务网格不只是简单的网络层。 它支持您在网络设备中发现的大多数功能,例如负载平衡和加密,以及支持现代系统管理模型的工具(例如可观察性)。 支持关键的分布式应用程序功能,允许服务发现,以便不同的应用程序层可以以不同的速率扩展,同时仍允许应用程序运行。

[ 单击此处注册免费的三个小时的Kubernetes入门课程,该课程由Pluralsight和InfoWorld提供。 ]

通过在sidecar模块中实现所有这些功能,服务网格可提供在Kubernetes上和跨云交付应用程序所需的许多缺少的功能。 您可以在没有服务网格的情况下构建分布式应用程序,但是您将需要重新设计轮子。 随着Azure将其大部分分布式应用程序开发模型围绕Kubernetes进行集中,Microsoft云中对服务网格的需求日益增长。

Azure和服务网格

Azure提供了其自己的Service Fabric Mesh形式的Service Mesh ,但它专注于Microsoft的Service Fabric平台。 如果您要构建仅在Azure上运行的应用程序,那很好,但是如果您想要多云支持和服务可移植性,最好选择众多针对Kubernetes的开源服务网格之一。

一种选择是Consul ,它由HashiCorp构建和维护。 微软一直在与HashiCorp一起为服务网格接口定义标准 ,并使用与实现无关的通用API,因此将其与Azure Kubernetes应用程序以及AKS(Azure Kubernetes Service)一起使用是有意义的。

在Azure上设置HashiCorp Consul

在AKS中设置领事是一个相对简单的过程。 您需要运行Kubernetes 1.12或更高版本的最新AKS集群,因为Consul 1.5已在最新版本的Kubernetes上进行了测试。 Consul使用Helm来管理其安装,因此一旦您的AKS实例启动,就启动并运行Helm。

安装Consul需要首先克隆Helm图表的HashiCorp GitHub存储库。 本地副本至关重要,因为您需要为AKS实例设置适当的配置文件。 它们将故障转移副本配置为具有弹性,并确保您的Kubernetes群集使用Consul进行服务发现。 确保Consul在Linux节点上运行非常重要,即使您使用Consul来管理同一AKS群集中的Windows Server节点也是如此。

运行Helm图表并安装Consul服务后,您可以使用Kubernetes命令行kubectl来检查它们是否在您的集群中运行,同时检查服务和Pod。 Consul在其管理UI上运行自己的Web服务器,在浏览器中打开管理UI之前,您需要通过Kubernetes为本地PC提供与Consul的直接安全连接。

Consul安装的核心是Consul代理。 它作为服务器或客户端运行,每次安装至少需要一台服务器。 客户端注册服务并检查运行状况,并将查询转发到服务器。 您将为每个节点部署一个客户端,并至少部署三台服务器以提高可靠性。 Consul的Connect服务网格在此架构之上运行,使用Sidecar代理链接您的服务并管理流量。 服务不需要了解Consul,可以轻松地将其添加到现有应用程序中。 如果您决定对其进行标准化,则可以开始编写支持Consul的代码。

将服务定义添加到领事

Consul代理中的服务定义是用JSON编写的,可以即时进行编辑,并在重新加载时重新配置代理。 代理可用于公开外部IP端口,绑定到内部端口,例如处理加密的连接。 领事代理服务器到位后,它们将使用“意图”,即一组访问控制列表来管理服务到服务的连接。 为了更全面地控制服务,Consul使用键值存储来动态配置应用程序,并使用代理将数据加载到存储中。 作为命令行管理工具, Consul的Web用户界面在其服务器上运行,并为您提供用于管理节点和服务以及管理访问控制列表和意图的图形工具。

领事有很多,配置和运行可能需要一些时间。 如果您不想花时间实施Consul,则可以利用HashiCorp即将推出的托管服务 。 当前处于私有预览中,它简化了在应用程序中支持Consul所需的基础架构的部署过程,同时加快了部署并减少了管理开销。

使用Azure托管应用程序将服务作为领事

HashiCorp的Consul Service Azure实施是在Azure的托管应用程序服务之上构建的。 这是专为服务提供商和ISV通过Azure市场或Azure服务目录提供服务而设计的。 用户可以订阅服务,服务提供商提供所有服务。 无需维护或更新您使用的服务,更重要的是,无需构建自己处理维护所需的技能。

要在Azure的Kubernetes应用程序中使用Consul,您需要一个HashiCorp帐户以及一个Azure帐户。 准备就绪后,即可通过Azure门户实施Consul服务,并通过Azure订阅付费。

初始设置是要从市场将HashiCorp Consul Service添加到Azure资源组。 输入Azure区域,所选版本和网络详细信息后,将Consul服务添加到您的订阅中。 这将配置服务器,准备在您的应用程序中使用,并准备通过Azure门户中的Consul Web UI进行管理。

无需学习任何新知识。 如果您已在自己的网络上实施Consul或将其安装在现有Azure基础结构之上,则配置和使用Consul服务网格的方式没有任何区别。

尽管Consul on Azure服务目前处于私人测试阶段,但这是Microsoft如何扩展Azure的分布式计算产品而无需添加自己的工具的一个示例。 可以选择服务网格非常重要,并且为供应商提供了使用Azure市场部署托管服务的机会,使供应商和开发人员都可以更轻松地利用这些服务。

翻译自: https://www.infoworld.com/article/3439176/getting-started-with-hashicorp-consul-on-azure-kubernetes-service.html

azure云服务使用方法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值