簡體   English   中英

bitnami/postgresql-repmgr docker 容器找不到彼此

[英]bitnami/postgresql-repmgr docker containers not finding each other

我正在為兩個數據庫容器使用 bitnami/postgresql-repmgr docker 圖像。 如果兩個容器都在一台服務器上運行並與我的本地 docker.network 相互連接,它們工作沒有問題並且復制完成(在 bitnami 的 dockerhub 中注意到默認配置),但是當我將它們分成兩部分時服務器並發布它們的端口(與我們為服務器所做的所有常見配置相同)復制無法完成,容器無法找到彼此作為伙伴節點。

數據庫一的 docker-compose 配置的一部分:

  pg-0:
    image: bitnami/postgresql-repmgr:14
    ports:
      - "5432:5432"
    container_name: db1
    volumes:
      - pg_0_data:/bitnami/postgresql
    environment:
      - POSTGRESQL_POSTGRES_PASSWORD=adminpassword
      - POSTGRESQL_USERNAME=customuser
      - POSTGRESQL_PASSWORD=custompassword
      - POSTGRESQL_DATABASE=customdatabase
      - REPMGR_PASSWORD=repmgrpassword
      - REPMGR_PRIMARY_HOST=pg-0
      - REPMGR_PARTNER_NODES=pg-0,< second database servers public ip >
      - REPMGR_NODE_NAME=pg-0
      - REPMGR_NODE_NETWORK_NAME=pg-0
    networks:
      - main

對於數據庫二:

  pg-1:
    image: bitnami/postgresql-repmgr:14
    ports:
      - "5432:5432"
    container_name: db2
    volumes:
      - pg_1_data:/bitnami/postgresql
    environment:
      - POSTGRESQL_POSTGRES_PASSWORD=adminpassword
      - POSTGRESQL_USERNAME=customuser
      - POSTGRESQL_PASSWORD=custompassword
      - POSTGRESQL_DATABASE=customdatabase
      - REPMGR_PASSWORD=repmgrpassword
      - REPMGR_PRIMARY_HOST=< first database servers public ip> 
      - REPMGR_PARTNER_NODES=< first database servers public ip >,pg-1
      - REPMGR_NODE_NAME=pg-1
      - REPMGR_NODE_NETWORK_NAME=pg-1
    networks:
      - main

請注意,我在第三台服務器上的 pgpool 容器可以連接到第一台服務器並寫入數據庫,但是當涉及到復制時,它們無法正常工作。 感謝您的關注!

我試圖通過重疊的 docker.network 來做到這一點。 當我將它們部署在單個主機上時,副本可以正常工作。

當我將它們部署在不同的主機上時,無法建立網絡。 並且日志顯示:

postgresql-repmgr 03:18:22.32 INFO  ==> Waiting for primary node...

我已經使用 docker alpine 容器測試了 basic.network 配置,我可以 ping 不同主機上的不同容器。

此外,不可能將圖像作為 docker 群運行的配置。

我找到了解決辦法。

  1. 在兩台主機所在的位置創建一個overlay.network。
  2. 運行以下命令: sudo ethtool -K .network interface> tx off
  3. 用他們的名字創建容器,並用他們的名字訪問它們。

有關此問題(一般)的更多詳細信息,請參見: https://serverfault.com/questions/1073337/docker-swarm-containers-in-one-overlay.network-but-on-different-nodes-cant-rea

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM