Istio如何与Kubernetes互送助攻?

Olaph Waggoner是IBM的一名软件工程师和开发人员,他在关于微服务的讨论中引用了一个研究结果:2021年容器收入将达到35亿美元,2018年预计为15亿美元。

在OpenInfra Days Vietnam的演讲中,他对微服务、Kubernetes和Istio进行了概述。

小把戏?

他表示,目前业内尚未就微服务的性质达成共识,但已定义的特征包括可独立部署和易于更换。

至于这些服务实际上是不是“很小”,是有争议的。 “如果你有一个hello world应用程序,它所做的只是“print”至控制台,那么可能会被认为很小。”他解释道: “而运行整个应用的数据库服务器仍然可以被视为微服务,但我想没有人会认为它小。”

K8S

Kubernetes将自己定义为可移植的、可扩展的开源平台,用于管理容器化工作负载和服务,方便声明性配置和自动化。 “简而言之,这是一种管理一堆容器或服务的方式,无论你想要什么,”他说。

啮合良好

Istio是一种开源服务网格,可以透明地分层到现有的分布式应用程序中,允许你连接、保护、控制和观察服务。最后一个定义:服务网格是构成这些分布式应用程序及它们之间交互的微服务网络。

这对用户意味着什么?

“Istio扩展了你可以用Kubernetes集群做的所有事情。比如:HTTP、gRPC、WebSocket和TCP流量的自动负载均衡;通过丰富的路由规则、重试、故障转移和故障注入,对流量行为进行细粒度控制;支持访问控制、速率限制和配额的可插入的策略层和配置API;安全的service-to-service授权,在集群中的服务之间具有强大的授权认证。

“最酷的事情是指标、日志和痕迹。突然之间,你可以根据随心所欲地阅读日志,并确切知道哪些服务正在互相交流,交流了多少次等。”

Istio如何与Kubernetes互送助攻?_第1张图片

 

Istio

Istio的主要组成部分有:Envoy、Pilot、Citidel (istio-auth)、Mixer。

“深入了解细节”

Wagoner详细介绍了Istio如何与OpenStack合作以及为什么值得这么做。

一旦你用上了Kubernetes并在其之上安装了Istio,K8s管理员就可以使用OpenStack API创建一个集群。OpenStack中的K8s用户仅可使用集群,而无法看到所有在幕后进行繁重工作的API。现在,由于Kubernetes OpenStack云提供商的所作所为,这一切成为可能。“Kubernetes服务有时需要来自底层云、服务、端点等的支持。”Ingress(Mixer的一部分)是一个很好的例子,它依赖于OpenStack Cloud Provider进行负载均衡并添加结束点。

“这是我关于让OpenStack运行Kubernetes(网格扩展想法)中最喜欢的部分。你有了你的云,并且你已经在你的OpenStack云上运行Kubernetes,它会告诉你集群正在做的一切。你可以展开扩展该服务网格,不仅包括OpenStack云中的虚拟机,还包括裸机实例。”

你可能感兴趣的:(Istio如何与Kubernetes互送助攻?)