【问题标题】:Redis as a Sidecar to a Container/POD?Redis 作为容器/POD 的 Sidecar?
【发布时间】:2020-05-12 05:26:16
【问题描述】:

我需要在一个容器/POD 中运行两个服务...

1. An App
2. Redis - the App uses it

是否有可能,比如让 Redis 成为 Sidecar?

【问题讨论】:

  • 您确定要为每个应用实例创建一个 redis 实例吗?不应该所有应用实例都使用相同的 redis-data 吗?

标签: docker kubernetes containers kubernetes-pod sidecar


【解决方案1】:

你只需要制作一个包含两个容器的 pod,如下所示:

    containers:
  - name: 1st
    image: redis
...
  - name: 2nd
    image: app

【讨论】:

    【解决方案2】:

    如果您想将 redis 的生命周期与应用程序的单个实例联系起来,您可以做到这一点。您只需要创建一个包含多个容器的 pod。如果它们在同一个 pod 中运行,您可以从您的应用程序访问 localhost 上的 redis。

    https://kubernetes.io/docs/tasks/access-application-cluster/communicate-containers-same-pod-shared-volume/#creating-a-pod-that-runs-two-containers

    apiVersion: v1
    kind: Pod
    metadata:
      name: two-containers
    spec:
      containers:
      - name: app
        image: myapp
      - name: redis
        image: redis
    

    您的问题听起来更像是XY problem。为什么不将 redis 作为一个单独的 pod 并通过 service 访问它?这样您就可以独立扩展您的应用程序。

    【讨论】:

    • 是的,同意,1-1 容器服务确实是理想的,但我有点尴尬的用例要求需要两个容器。
    猜你喜欢
    • 1970-01-01
    • 2017-05-31
    • 2021-12-10
    • 1970-01-01
    • 1970-01-01
    • 2019-04-05
    • 2021-04-29
    • 1970-01-01
    • 2021-11-27
    相关资源
    最近更新 更多