1
fcfangcc 248 天前 1
实际生产环境中,每一个服务的 Pod 是不是一般都是只有一个 Container 在跑?
是的,一般都只有一个。 多个的话,如果用了 service mesh 那么会起一个 sidecar 用来代理主 container 的流量,这个时候就有 2 个 |
3
ZeekChatCom 248 天前
nginx + php-fpm 分 2 个 container 跑的😄
|
4
fatyoung OP @ramirezyolis808 #3 请教下老哥,这样子做的原因是什么呢?
|
5
wangzi168 248 天前 via iPhone
一个 pod 里面还可以有加解密的 container 、网关 container 等等。业务的 container 只需要关系自己的业务就好
|
6
ZeekChatCom 248 天前
@fatyoung 单纯地不想在同一个容器中存在不同类的进程。这有违容器化的初衷吧。
|
7
ZeekChatCom 248 天前
@wangzi168 内敛原则,自己的依赖自己解决。
|
9
fatyoung OP @ramirezyolis808 #6 这点我也疑惑。。
|
10
homolabby 248 天前
监控的 sidecar.,serviceesh 的 sidecar 或者 CSI 的 sidecar ,尤其是 CSI 的 sidecar ,如果不使用 sidecar ,使用 mount pod 模式的话,csi 的爆炸半径是所有使用这个 CSI 的 pod ,所有。所以,csi 作为 sidecar 模式是非常必须的。我不是很清楚贵司这方面是如何处理的,是无状态,不写,只读取数据吗? @fcfangcc 请问是不是没有使用 CSI 啊?请指点一下,谢谢您
|
11
mr0joker 248 天前
有些业务场景可以使用边车模型,也就是上面提到过的一个 pod 里带两个 container
|
12
gabon 248 天前 via iPhone
我们用 sidecar 做流量转发(跨协议)、监控等
|
13
isno 248 天前 1
https://www.thebyte.com.cn/container/orchestration.html#%E5%AE%B9%E5%99%A8%E7%9A%84%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F-sidecar
今晚能写完吧,可以明天再看。 实际生产环境中,一个 Pod 一般有多个容器,比如 service-mesh 中的 envoy 容器,日志收集的容器,监控的容器。 |
14
nthin0 248 天前
我们一个 pod 下有一个业务 container 和一个 filebeat container
|
16
wqferan 248 天前 1
@homolabby 从应用层面, 一般是要做到无状态方便横向扩展, 有状态数据都写到数据库里去, 有临时目录的需求用 emptyDir
CSI 早期版本应该都在 kube controller 里, 现在抽出来一般也是注册为 controller, 应该都是多实例单主运行,这个服务挂掉一般也是不影响已挂载的业务, 把这个东西注入到有状态容器里感觉没啥必要 另外 k8s 开发手册里也有 csi sidecar,这几个 sidecar 是和 apiserver 交互的抽象, 让存储商专注驱动开发 |
17
whileFalse 248 天前 via Android
用 aws ecs ,外挂监控组件、代理组件、日志组件什么的。
|
18
fcfangcc 248 天前 1
@homolabby 我们是除了 mesh 的是 sidecar 模式。其他监控,日志收集等的容器都是 node 级别的,一个 node 上部署一个 StatefulSet 或 Deployment 来管理该 node 下所有的 pod 。你说的 csi 我不太了解
|
19
T4b918jJOXdkJ3h8 248 天前
@ramirezyolis808 哥们上班了
|
20
ZeekChatCom 247 天前 via iPhone
@gzldc 今天休息😁
|
21
T4b918jJOXdkJ3h8 247 天前
@ramirezyolis808 你这公司不错
|