通过 ssh 隧道设置 pglogical,由对等方重置连接

问题描述

我正在内部部署的 PostgreSQL 10.14(发布者和 AWS RDS Postgresql 10.16(订阅者)之间设置 pglogical 复制,但在设置订阅后,我只能重置连接。谁能发现我在做什么)错了吗?

网络设置:

 for i in range(epochs):
        train_pred = []
        test_pred = []
        for j in range(N):
            dw = gradient_dw(X_train[j],y_train[j],w,b,alpha,N)
            db = gradient_db(X_train[j],b)
            w = w + (eta0 * dw)
            b = b + (eta0 * db)
        for val in range(N):
            train_pred.append(sigmoid(np.dot(w,X_train[val]) + b))
            
        loss1 = logloss(y_train,train_pred)
        train_loss.append(loss1)
            
        for val in range(len(X_test)):
            test_pred.append(sigmoid(np.dot(w,X_test[val]) + b))
            
        loss2 = logloss(y_test,test_pred)
        test_loss.append(loss2)
        
    return w,train_loss,test_loss 

我已验证 ssh 隧道正常工作:

  • 我可以使用连接到隧道的 psql 从 AWS 连接到本地 postgres
  • 使用 postgres_fwd 时,我什至可以从 AWS RDS 连接到本地 postgres

逻辑设置:
本地:

  • 使用 dsn On-premise postgres < jumphost > <-- ssh tunnel --> AWS RDS internal-ip 10.2.0.8 db01.some.tld 创建节点

AWS:

  • 使用 dsn host=10.2.0.8 dbname=... user=... password=... 创建节点
  • 使用 dsn host=db01.some.tld dbname=... user=... password=... 创建订阅

一旦完成:

  • pglogical 进程同时在提供者和订阅者上运行
  • 但我遇到了以下错误: AWS:

LOG:无法从客户端接收数据:连接被对等方重置
日志:客户端连接与打开事务发生意外 EOF

本地:

LOG: 客户端连接有一个打开的事务时出现意外的 EOF

我试过摆弄日志参数,但找不到任何有用的东西。同样,我无法从 ssh 隧道日志中获得任何有用的信息。

知道我做错了什么吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)