地理位置分散的微服务:容器能解决我们所有的问题吗?

发布于:2021-01-18 14:37:00

0

116

0

jaxdevops devops 微服务

我们对Jussi Nummelin本周在JAX DevOps上的会议感到兴奋!在这次采访中,我们讨论了地理上分散的微服务的优势,并对我们在他的会议期间应该学到的东西一窥。

JAXenter: 地理分布的微服务有哪些优势?缺点呢?

Jussi Nummelin: 主要优势是出色的弹性。现在,您的服务可以扩展到许多数据中心和/或云提供商。如果其中一个存在严重的连接问题,则您的服务仍可以在其他服务中运行。 主要缺点是在应用程序和基础结构级别上都增加了一些复杂性。复杂性来自以下事实:在应用程序级别上,您必须考虑诸如网络分区,大脑裂开和网络等待时间之类的问题。

JAXenter: 组织如何管理这些日益复杂的系统?

Jussi Nummelin: 容器和容器管理系统是用于这种“混合”环境的工具的日益流行的选择。使用正确的工具集,可以将导致复杂性的许多问题从应用程序和开发人员中抽象出来。使用容器,可以确保应用程序无论运行在哪个数据中心或云提供商上都可以运行相同的内容。此外,借助良好的容器管理平台,例如Kontena;),该平台可以并且将确保您传播应用程序自动跨多个数据中心和区域的容器。使用容器覆盖网络,可以从应用程序中完全抽象出网络,它们可以像在本地平面网络中运行一样进行交互。

JAXenter: 容器可以解决所有这些问题吗?如果组织想要地理位置分散的网络,组织还将面临哪些其他障碍?

Jussi Nummelin: 不幸的是,容器并不是我们IT行业数十年来一直追求的灵丹妙药。:)在这种情况下,容器并不能解决所有问题,但是它们确实使解决应用程序级别的问题变得更加容易。我的意思是,当抽象出部署和网络问题时,我们可以将重点放在应用程序级别上,然后解决实际的应用程序级别问题。我们仍然需要弄清楚我们的应用程序如何以及如何在这种设置下工作

JAXenter: 在管理这类网络时,您使用最多的工具是什么?

Jussi Nummelin: 我们当然使用Kontena。:)通过Kontena,我们可以立即使用所有内容,因为它可以建立所有网络并为我们处理运行和部署所有服务。

JAXenter: 从实施分布式微服务网络中学到的最重要的教训是什么?

Jussi Nummelin: 使用容器和容器协调器,您确实需要信任调度程序。您选择的容器平台应该能够处理各种故障情况,并且能够在基础结构的某些部分出现故障时自动重新计划服务。

另一方面,墨菲定律仍然统治着整个世界。:D您在数据中心,云提供商或其他提供商之间分配服务的次数越多,您发现系统崩溃的方式就越多。这使我进入了我最喜欢的主题之一,混乱测试。最好定期进行某种混乱的测试,以找出一切可能以奇怪的方式破裂的情况。一旦了解了事情可能会如何破裂,您就更有信心在系统停产时也可以轻松修复系统。

JAXenter: 关于微服务的最大误解是什么?

Jussi Nummelin: 他们是一些神奇的生物,可以让您的生活变得轻松。事实是,从长远来看,它们确实提供了很多好处,但是要正确就可能有些棘手。与陈旧的整体设计相比,它们还带来了许多额外的复杂性。

JAXenter: 参与者可以从您的会议中获得什么?

Jussi Nummelin: 他们将看到容器如何帮助构建跨数据中心和云提供商的系统的一些方法。他们还将看到,现代容器覆盖网络是解决方案中的关键组成部分之一,以及容器编排如何使所有这些工作轻松同步。