问题标签 [sidecar]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
kubernetes - 如何在 Sidecar 中调整优雅关闭时间
想知道kubernetes中是否有任何设置可以调整sidecar容器的优雅关闭时间?正如我们发现周期太短并希望延长它。
kubernetes - kubelet如何使用livelinessProbe exec命令完成logstash容器
我有多容器应用程序,它是应用程序(执行 cronjob)+ logstash。Cronjob 容器执行 java 进程并在完成后将文件写入共享文件系统,即 /usr/share/example/config/pod/done。Logstash 容器(docker logstash 镜像)启动用于弹性搜索的 API 端点,并从主容器中读取日志并发送到 elasticSearch。因为,cronjob 容器在作业完成后完成,但 logstash 容器继续运行,因为它不知道它现在必须停止运行,我正在尝试使用 livelinessProbe exec 块来向 logstash 容器发出退出容器的信号。
我尝试了上面的代码块,但注意到这些 livelinessProbe 命令没有被执行,并且我的 logstash 容器继续运行,这使我的 pod 处于“未准备好”状态。
如果有人可以帮助我了解如何从 livelinessProbe 执行命令,以便它向我的 logstash 容器发出停止运行的信号,我将不胜感激?
kubernetes - 主容器完成后如何优雅关闭边车容器
我有一个 Kubernetes 清单文件,它有 2 个容器。主容器正在收集某个时间段的数据和其他(logstash)容器读取主容器的日志并将其运送到ELK堆栈。主容器完成其工作后,优雅地发出信号或关闭 logstash 容器的最佳方式是什么?
microservices - Service Mesh(Sidecar) 是否与 Service Discovery 通信?
我正在阅读有关 Service Mesh 的内容,如果 Service Mesh 与 Service Discovery 通信以便与其他微服务通信,我会感到困惑吗?
让我们考虑一种服务网格的实现模式(SideCar 模式),其中单独的单元将与微服务一起运行。
当一个微服务需要调用另一个微服务时,流程是什么?SideCar 是否调用服务发现,然后进一步发送调用?还是仅在 SideCar 之间发生通信,我的意思是 M1 的 SideCar 将调用 M2 的 SideCar?
预先感谢您的回答。
database - 具有数百个只读副本的分布式数据库,可以通过 HTTP 异步同步
我有一项服务作为各种应用程序旁边的边车运行。该服务需要非常快并且不进行远程调用。它必须有内存数据库。该数据库的内容必须通过中央组件填充并保持最新(尽管可以接受滞后)。该服务不接受写入。
当然,这可以通过例如长池机制来完成,但这会带来管理此解决方案的复杂性和一些内在的低效率。
是否有一个轻量级、短暂的进程内数据库,最好是内存数据库,它可以与中央副本异步同步,最好是通过常规 HTTP,这样就不需要打开任何端口?
asp.net-core - 带有 Fluentd 问题的 Kubernetes 中的 ASP.Net Core Sidecar 日志记录
我有一个 K8s 部署,它沿着它的 sidecar 部署应用程序的容器(一个 ASP.Net Core 应用程序)以进行日志记录。我使用 Serilog 的控制台接收器来登录标准输出。我还有一个 Config Map 来存储 fluentd 的配置。关于这部分的一篇非常好的文章是this。
我想要做的是使用边车将日志从应用程序转发到 Elastic Search。我使用相应的输出插件来做到这一点。但是为了实现这一点,应该在源代码和过滤器标签中使用什么?
fluentd的配置如下:
使用此配置,流利的工作,但我没有收到任何消息转发到弹性搜索。
这是fluentd的日志
我做了很多尝试,有各种配置,但没有任何效果。
在此先感谢您的时间。
docker - docker compose 与容器的通信
我正在尝试创建一个示例来创建两个 WEB API 并将它们容器化并在它们之间进行通信。我想看看边车设计模式,我在 Github 中找到了一个我正在尝试运行的示例。
https://github.com/cesaroll/dotnet-sidecar
在上面的示例中,HelloAPI 调用了另一个项目的 HelloSideCar API。在 HelloAPI 中调用另一个项目中的另一个 API。我正在尝试使用 Docker Compose 在本地运行。
当我尝试将 API 从 HelloAPI(localhost:8080/FromSidecar) 项目访问到 SideCarAPI 时,我看到 404 错误,请求不会发送到另一个容器 下面是我的 Docker Compose
kubernetes - OpenShift 容器到容器 localhost 的通信在 pod 中不起作用
我正在尝试在 OpenShift 中实现 SideCar 模式。我的示例有两个项目 API。我在不同的容器和单个 pod 中运行这两个项目。下面是我的部署配置,指定了 2 个图像。
我想通过本地主机将 api 从一个容器打到另一个容器中的 api。当我转到 Pod 终端并选择 hello-api-n 容器并执行 http://localhost:8080/FromSidecar 时,通信没有发生。
实际上,当我点击 /FromSidecar 时,内部代码实现对 localhost:8090/hello 进行 API 调用,这是一个不同的容器。
以下是我面临的错误
我正在尝试做的示例来自以下 https://github.com/cesaroll/dotnet-sidecar
更新代码:
项目 A 容器代码:
你好服务:
项目 B 容器代码:
postgresql - 使用 Cloud SQL Auth 代理作为 sidecar 连接到 postgres cloud sql
在 GKE 上,我有 2 个 Pod,用于使用代理 sidecare(工作负载身份方法)连接到 postgres 云 sql。我为每个 pod 创建了两个单独的代理 sidecare,两个单独的 KSA,它们绑定到它们的 GKA。
一个pad与数据库连接良好,而另一个则没有。(level=warning msg="storage: ping PostgreSQL database error, will retry in 2s" error="dial tcp 127.0.0.1:5432: connect: connection denied")
奇怪的是,两个豆荚几乎是一样的。我已经完成了所有步骤的逐步配置。另外需要注意的是,当我在 GKE 中只有一个 pod 时,它与 psql 通信,但我不能同时这样做。虽然每个吊舱都有两个单独的边车。
我会很感激你们的帮助!
postgresql - 是否可以使用对等身份验证连接到在同一容器中运行的 Kubernetes 边车中的 Postgres?
我在 k8s 中使用postgres_exporter作为 sidecar 来收集 Postgres pod 中的 Postgres 指标。从 postgres_exporter 连接时,我想使用对等身份验证(即无密码),因为我想为许多不同的 Postgres 实例(pod)设置这种 sidecar,并且不想配置对密码的引用每一个人。
我试过省略密码,但这没有用。
正在使用对等身份验证连接到同一 pod 中的 Postgres 容器:
- 原则上可以,
- 可以使用 postgres_exporter 和/或
- 合理的?
任何提示表示赞赏。