Kubernetes:无法从其他名称空间访问mongodb副本集服务

时间:2018-08-30 12:40:47

标签: kubernetes rancher replicaset

如果我对问题的措词方式有误,请告诉我,这样下次我可以做得更好或编辑问题。

我做了什么。

使用rancher与Amazon EKS创建集群。

在“默认”名称空间中部署了一个nodejs应用。

使用默认设置从rancher应用程序目录中安装了MongoDB副本集。

  • 服务/部署名称为mongodb-replicaset
  • 命名空间也是mongodb-replicaset

当我使用mongodb://mongodb-replicaset:27017/tradeit_system?replicaSet=rs作为连接字符串时。

我得到了错误。

  

MongoNetworkError:第一次连接时无法连接到服务器[mongodb-replicaset-:27017] [MongoNetworkError:getaddrinfo ENOTFOUND mongodb-replicaset mongodb-replicaset:27017]

然后我在kubernetes documentation中读到,要访问其他命名空间中的服务,您还需要指定命名空间以及服务名称。

所以我这样做了mongodb://mongodb-replicaset.mongodb-replicaset:27017/tradeit_system?replicaSet=rss作为连接URL,我得到了错误。

  

MongoError:在副本集中找不到主副本或副本集名称无效

1 个答案:

答案 0 :(得分:0)

因此,如果要访问它,还必须在主机字符串中包含名称空间,并引用不使用的群集域。

引用and it does

  

此服务管理的域的格式为:$(服务名称)。$(名称空间).svc.cluster.local,其中“ cluster.local”是群集域。

因此,在您的情况下,您的pod DNS将写为:

` SELECT F.PBC_NUMBER, F.EY_SAMPLE, F.DISTRIBUTION_CENTER, F.SITE_ID, F.NIIN, MIN(F.CAT) AS CAT FROM ( SELECT DISTINCT E.PBC_NUMBER, E.EY_SAMPLE, E.DISTRIBUTION_CENTER, E.SITE_ID, E.NIIN, CONCAT(E.TRX_DT, E.SEQ_TIME) AS CAT FROM ( SELECT C.PBC_NUMBER, C.EY_SAMPLE, C.NIIN, C.DISTRIBUTION_CENTER, C.SITE_ID, C.TRX_DT, MIN(D.SEQ_TIME) AS SEQ_TIME FROM ( SELECT A.PBC_NUMBER, A.EY_SAMPLE, A.DISTRIBUTION_CENTER, A.SITE_ID, MIN(B.TRX_DT) AS TRX_DT, A.NIIN, B.SEQ_TIME FROM KCA0001.TRANS12 A LEFT OUTER JOIN DDRVENVR.ATR B ON B.SITE_ID = A.SITE_ID AND B.NIIN = A.NIIN AND (B.TRX_DT BETWEEN '2018232' AND '2018236') AND B.DOC_ID IN ('D8A', 'D9A') WHERE A.SITE_ID = 'HERV' GROUP BY A.PBC_NUMBER, A.EY_SAMPLE, A.DISTRIBUTION_CENTER, A.SITE_ID, A.NIIN, B.MED_STA_CD, B.SEQ_TIME UNION SELECT A.PBC_NUMBER, A.EY_SAMPLE, A.DISTRIBUTION_CENTER, A.SITE_ID, MIN(B.TRX_DT) AS TRX_DT, A.NIIN, B.SEQ_TIME FROM KCA0001.TRANS12 A LEFT OUTER JOIN DDJFENVR.ATR B ON B.SITE_ID = A.SITE_ID AND B.NIIN = A.NIIN AND (B.TRX_DT BETWEEN '2018232' AND '2018236') AND B.DOC_ID IN ('D8A', 'D9A') WHERE A.SITE_ID IN ('HEJF', 'HEJG') GROUP BY A.PBC_NUMBER, A.EY_SAMPLE, A.DISTRIBUTION_CENTER, A.SITE_ID, A.NIIN, B.MED_STA_CD, B.SEQ_TIME UNION SELECT A.PBC_NUMBER, A.EY_SAMPLE, A.DISTRIBUTION_CENTER, A.SITE_ID, MIN(B.TRX_DT) AS TRX_DT, A.NIIN, B.SEQ_TIME FROM KCA0001.TRANS12 A LEFT OUTER JOIN DDCNENVR.ATR B ON B.SITE_ID = A.SITE_ID AND B.NIIN = A.NIIN AND (B.TRX_DT BETWEEN '2018225' AND '2018229') AND B.DOC_ID IN ('D8A', 'D9A') WHERE A.SITE_ID = 'HECN' GROUP BY A.PBC_NUMBER, A.EY_SAMPLE, A.DISTRIBUTION_CENTER, A.SITE_ID, A.NIIN, B.MED_STA_CD, B.SEQ_TIME UNION SELECT A.PBC_NUMBER, A.EY_SAMPLE, A.DISTRIBUTION_CENTER, A.SITE_ID, MIN(B.TRX_DT) AS TRX_DT, A.NIIN, B.SEQ_TIME FROM KCA0001.TRANS12 A LEFT OUTER JOIN DDDEENVR.ATR B ON B.SITE_ID = A.SITE_ID AND B.NIIN = A.NIIN AND (B.TRX_DT BETWEEN '2018225' AND '2018229') AND B.DOC_ID IN ('D8A', 'D9A') WHERE A.SITE_ID = 'EGDE' GROUP BY A.PBC_NUMBER, A.EY_SAMPLE, A.DISTRIBUTION_CENTER, A.SITE_ID, A.NIIN, B.MED_STA_CD, B.SEQ_TIME UNION SELECT A.PBC_NUMBER, A.EY_SAMPLE, A.DISTRIBUTION_CENTER, A.SITE_ID, MIN(B.TRX_DT) AS TRX_DT, A.NIIN, B.SEQ_TIME FROM KCA0001.TRANS12 A LEFT OUTER JOIN DDWGENVR.ATR B ON B.SITE_ID = A.SITE_ID AND B.NIIN = A.NIIN AND (B.TRX_DT BETWEEN '2018226' AND '2018229') AND B.DOC_ID IN ('D8A', 'D9A') WHERE A.SITE_ID = 'HEWG' GROUP BY A.PBC_NUMBER, A.EY_SAMPLE, A.DISTRIBUTION_CENTER, A.SITE_ID, A.NIIN, B.MED_STA_CD, B.SEQ_TIME UNION SELECT A.PBC_NUMBER, A.EY_SAMPLE, A.DISTRIBUTION_CENTER, A.SITE_ID, MIN(B.TRX_DT) AS TRX_DT, A.NIIN, B.SEQ_TIME FROM KCA0001.TRANS12 A LEFT OUTER JOIN DDAAENVR.ATR B ON B.SITE_ID = A.SITE_ID AND B.NIIN = A.NIIN AND (B.TRX_DT BETWEEN '2018233' AND '2018236') AND B.DOC_ID IN ('D8A', 'D9A') WHERE A.SITE_ID = 'HEAA' GROUP BY A.PBC_NUMBER, A.EY_SAMPLE, A.DISTRIBUTION_CENTER, A.SITE_ID, A.NIIN, B.MED_STA_CD, B.SEQ_TIME UNION SELECT A.PBC_NUMBER, A.EY_SAMPLE, A.DISTRIBUTION_CENTER, A.SITE_ID, MIN(B.TRX_DT) AS TRX_DT, A.NIIN, B.SEQ_TIME FROM KCA0001.TRANS12 A LEFT OUTER JOIN DDDKENVR.ATR B ON B.SITE_ID = A.SITE_ID AND B.NIIN = A.NIIN AND (B.TRX_DT BETWEEN '2018232' AND '2018236') AND B.DOC_ID IN ('D8A', 'D9A') WHERE A.SITE_ID = 'YKBK' GROUP BY A.PBC_NUMBER, A.EY_SAMPLE, A.DISTRIBUTION_CENTER, A.SITE_ID, A.NIIN, B.MED_STA_CD, B.SEQ_TIME UNION SELECT A.PBC_NUMBER, A.EY_SAMPLE, A.DISTRIBUTION_CENTER, A.SITE_ID, MIN(B.TRX_DT) AS TRX_DT, A.NIIN, B.SEQ_TIME FROM KCA0001.TRANS12 A LEFT OUTER JOIN DDPJENVR.ATR B ON B.SITE_ID = A.SITE_ID AND B.NIIN = A.NIIN AND (B.TRX_DT BETWEEN '2018232' AND '2018236') AND B.DOC_ID IN ('D8A', 'D9A') WHERE A.SITE_ID = 'YYAL' GROUP BY A.PBC_NUMBER, A.EY_SAMPLE, A.DISTRIBUTION_CENTER, A.SITE_ID, A.NIIN, B.MED_STA_CD, B.SEQ_TIME) AS C INNER JOIN ( SELECT A.PBC_NUMBER, A.EY_SAMPLE, A.DISTRIBUTION_CENTER, A.SITE_ID, B.TRX_DT, A.NIIN, MIN(B.SEQ_TIME) AS SEQ_TIME FROM KCA0001.TRANS12 A LEFT OUTER JOIN DDRVENVR.ATR B ON B.SITE_ID = A.SITE_ID AND B.NIIN = A.NIIN AND (B.TRX_DT BETWEEN '2018232' AND '2018236') AND B.DOC_ID IN ('D8A', 'D9A') WHERE A.SITE_ID = 'HERV' GROUP BY A.PBC_NUMBER, A.EY_SAMPLE, A.DISTRIBUTION_CENTER, A.SITE_ID, A.NIIN, B.MED_STA_CD, B.TRX_DT UNION SELECT A.PBC_NUMBER, A.EY_SAMPLE, A.DISTRIBUTION_CENTER, A.SITE_ID, B.TRX_DT, A.NIIN, MIN(B.SEQ_TIME) AS SEQ_TIME FROM KCA0001.TRANS12 A LEFT OUTER JOIN DDJFENVR.ATR B ON B.SITE_ID = A.SITE_ID AND B.NIIN = A.NIIN AND (B.TRX_DT BETWEEN '2018232' AND '2018236') AND B.DOC_ID IN ('D8A', 'D9A') WHERE A.SITE_ID IN ('HEJF', 'HEJG') GROUP BY A.PBC_NUMBER, A.EY_SAMPLE, A.DISTRIBUTION_CENTER, A.SITE_ID, A.NIIN, B.MED_STA_CD, B.TRX_DT UNION SELECT A.PBC_NUMBER, A.EY_SAMPLE, A.DISTRIBUTION_CENTER, A.SITE_ID, B.TRX_DT, A.NIIN, MIN(B.SEQ_TIME) AS SEQ_TIME FROM KCA0001.TRANS12 A LEFT OUTER JOIN DDCNENVR.ATR B ON B.SITE_ID = A.SITE_ID AND B.NIIN = A.NIIN AND (B.TRX_DT BETWEEN '2018225' AND '2018229') AND B.DOC_ID IN ('D8A', 'D9A') WHERE A.SITE_ID = 'HECN' GROUP BY A.PBC_NUMBER, A.EY_SAMPLE, A.DISTRIBUTION_CENTER, A.SITE_ID, A.NIIN, B.MED_STA_CD, B.TRX_DT UNION SELECT A.PBC_NUMBER, A.EY_SAMPLE, A.DISTRIBUTION_CENTER, A.SITE_ID, B.TRX_DT, A.NIIN, MIN(B.SEQ_TIME) AS SEQ_TIME FROM KCA0001.TRANS12 A LEFT OUTER JOIN DDDEENVR.ATR B ON B.SITE_ID = A.SITE_ID AND B.NIIN = A.NIIN AND (B.TRX_DT BETWEEN '2018225' AND '2018229') AND B.DOC_ID IN ('D8A', 'D9A') WHERE A.SITE_ID = 'EGDE' GROUP BY A.PBC_NUMBER, A.EY_SAMPLE, A.DISTRIBUTION_CENTER, A.SITE_ID, A.NIIN, B.MED_STA_CD, B.TRX_DT UNION SELECT A.PBC_NUMBER, A.EY_SAMPLE, A.DISTRIBUTION_CENTER, A.SITE_ID, B.TRX_DT, A.NIIN, MIN(B.SEQ_TIME) AS SEQ_TIME FROM KCA0001.TRANS12 A LEFT OUTER JOIN DDWGENVR.ATR B ON B.SITE_ID = A.SITE_ID AND B.NIIN = A.NIIN AND (B.TRX_DT BETWEEN '2018226' AND '2018229') AND B.DOC_ID IN ('D8A', 'D9A') WHERE A.SITE_ID = 'HEWG' GROUP BY A.PBC_NUMBER, A.EY_SAMPLE, A.DISTRIBUTION_CENTER, A.SITE_ID, A.NIIN, B.MED_STA_CD, B.TRX_DT UNION SELECT A.PBC_NUMBER, A.EY_SAMPLE, A.DISTRIBUTION_CENTER, A.SITE_ID, B.TRX_DT, A.NIIN, MIN(B.SEQ_TIME) AS SEQ_TIME FROM KCA0001.TRANS12 A LEFT OUTER JOIN DDAAENVR.ATR B ON B.SITE_ID = A.SITE_ID AND B.NIIN = A.NIIN AND (B.TRX_DT BETWEEN '2018233' AND '2018236') AND B.DOC_ID IN ('D8A', 'D9A') WHERE A.SITE_ID = 'HEAA' GROUP BY A.PBC_NUMBER, A.EY_SAMPLE, A.DISTRIBUTION_CENTER, A.SITE_ID, A.NIIN, B.MED_STA_CD, B.TRX_DT UNION SELECT A.PBC_NUMBER, A.EY_SAMPLE, A.DISTRIBUTION_CENTER, A.SITE_ID, B.TRX_DT, A.NIIN, MIN(B.SEQ_TIME) AS SEQ_TIME FROM KCA0001.TRANS12 A LEFT OUTER JOIN DDDKENVR.ATR B ON B.SITE_ID = A.SITE_ID AND B.NIIN = A.NIIN AND (B.TRX_DT BETWEEN '2018232' AND '2018236') AND B.DOC_ID IN ('D8A', 'D9A') WHERE A.SITE_ID = 'YKBK' GROUP BY A.PBC_NUMBER, A.EY_SAMPLE, A.DISTRIBUTION_CENTER, A.SITE_ID, A.NIIN, B.MED_STA_CD, B.TRX_DT UNION SELECT A.PBC_NUMBER, A.EY_SAMPLE, A.DISTRIBUTION_CENTER, A.SITE_ID, B.TRX_DT, A.NIIN, MIN(B.SEQ_TIME) AS SEQ_TIME FROM KCA0001.TRANS12 A LEFT OUTER JOIN DDPJENVR.ATR B ON B.SITE_ID = A.SITE_ID AND B.NIIN = A.NIIN AND (B.TRX_DT BETWEEN '2018232' AND '2018236') AND B.DOC_ID IN ('D8A', 'D9A') WHERE A.SITE_ID = 'YYAL' GROUP BY A.PBC_NUMBER, A.EY_SAMPLE, A.DISTRIBUTION_CENTER, A.SITE_ID, A.NIIN, B.MED_STA_CD, B.TRX_DT) AS D ON C.NIIN = D.NIIN AND C.SITE_ID = D.SITE_ID AND C.TRX_DT = D.TRX_DT AND C.SEQ_TIME = D.SEQ_TIME GROUP BY C.PBC_NUMBER, C.EY_SAMPLE, C.TRX_DT, C.DISTRIBUTION_CENTER, C.SITE_ID, C.NIIN) AS E ) AS F GROUP BY F.PBC_NUMBER, F.EY_SAMPLE, F.DISTRIBUTION_CENTER, F.SITE_ID, F.NIIN `

相关问题