networking - Sidecar与Ambassador和Adapter模式的区别

标签 networking design-patterns kubernetes proxy

我对多容器 Pod 设计模式感到困惑。
(sidecar、适配器、大使)

我的理解是:
Sidecar :容器+容器(共享相同资源并执行其他功能)
适配器:容器+适配器(用于检查其他容器的状态。例如监控)
Ambassador:容器+代理(到外部网络)

But, According to Istio -Installing the Sidecar, They introduce proxy as a sidecar pattern.

Adapter是容器,Proxy也是容器。

所以,我的问题是Sidecar模式和Adapter&Ambassador模式有什么区别?

Sidecar模式概念是否包含Adapter&Ambassador模式?

最佳答案

首先,你是对的,术语 sidecar 容器现在已经成为描述 pod 中额外容器的词。 Originally(?)这是一种特定的多容器设计模式。

多容器设计模式

边车模式

容器中的一个额外容器,用于增强扩展主容器的功能。

大使图案

将网络连接代理到主容器的容器。

适配器模式

一个转换主容器输出的容器。

这取自 2015 年的原始文章:Patterns for Composite Containers

摘要

您的注释

But, According to Istio -Installing the Sidecar, They introduce proxy as a sidecar pattern.

在上面的模式中,大使适配器实际上都必须代理网络连接,但目的不同。使用 Istio,可以完成此操作,例如终止mTLS连接,收集指标等以增强您的主容器。因此,它实际上是一个 sidecar 模式,但令人困惑的是,正如您正确指出的那样,所有模式代理连接 - 但目的不同。

关于networking - Sidecar与Ambassador和Adapter模式的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59451056/

相关文章:

node.js - 如何从 Node js 中的 'net' 模块捕获 ECONNRESET 错误?并防止整个程序被终止?

c# - Photon PUN 2+ Unity 仅在我本地运行两个实例时才工作

java - 装饰器模式的问题

java - JcaPEMKeyConverter 由可选依赖项 BouncyCaSTLe 提供。要使用对 EC key 的支持,您必须显式添加对类路径的依赖

amazon-web-services - 在 KOP 中定义自定义 SSH key 或查找自动生成的 SSH key

networking - Kubernetes,在集群外访问IP

windows - 使用 Wireshark 捕获网络路由器流量

c++ - 设计模式会破坏抽象吗?

java - 如何在Java中抽象出不同的返回类型?

kubernetes - 如何从 Kubernetes ConfigMap 中执行 shell 命令?