docker - 我们的 GCP docker 实例已启动并正在运行,但是我们无法连接到 GreenPlum
问题描述
我们的 GCP docker 实例已启动并正在运行,但我们无法连接到 GreenPlum,并且拒绝连接到 xx.xxx.xxx.xx:5432。检查主机名和端口是否正确以及 postmaster 是否接受 TCP/IP 连接。连接被拒绝(连接被拒绝)
我们在连接到托管在 GCP 的 docker 容器上的 Greenplum 数据库时遇到了这个问题。已遵循以下步骤,但均无效:
- 重新启动 docker 实例
在重新启动Greenplum时我试过
sudo docker exec -it gp_v1 /bin/bash -c 'sudo su - gpadmin -c ". /opt/greenplum-db-6.4.0/greenplum_path.sh ; gpstart -a"'
它给
[ERROR]:- FATAL - no master dbs defined!
[CRITICAL] :- gpstart failed. (Reason='Error: GpArray() - no master dbs defined') exiting....
任何人都可以帮我解决这个问题,这很关键,我们的 Greenplum 在过去 10 小时内都处于停机状态。
我还怀疑端口 5432 无法正常工作,当我查看此网站https://www.yougetsignal.com/tools/open-ports/时显示已关闭
解决方案
正如用户Martin Zeitler所建议的,您必须转到防火墙配置并为该端口创建规则。在此链接中,您可以查看 VPC 防火墙规则概述。
另外,添加您的Dockerfile EXPOSE 5432
。
推荐阅读
- apache-nifi - 用于 jsonpath 的 Nifi 表达式语言 - 字符串操作,拆分
- python-3.x - 如何使代码足够灵活,以便将空白列值过滤为与 nan 相同?
- r - 在国家边界之间插入图像标志?
- python - Matplotlib x 轴刻度,日期的固定位置
- algorithm - 二维索引数据结构
- python - 找到一系列重复元素的更优雅的方式
- javascript - 在 React.js 中使用 preventDefault
- java - Android Studio ListView 不会显示来自适配器的项目
- angular - 您如何确定用户是否已经在 Angular Firebase 中进行了身份验证?
- c# - 如何获取 ASP.NET Core MVC 控制器中输入按钮的值?