【aws】在DBeaver上用终端节点连接Redshift

碎碎念

最近想要尝试redshift的一个叫做重新定位的功能,重新定位触发之后会停止当前的集群,转而在同一个区域的另一个可用区中启动一个一样的集群,这个过程视情况会花上10到60分钟不等。

但是目前项目中连接到redshift用的是私有ip,很多运维工具也是使用私有ip,这样做虽然简单,有时候用脚本处理ip也很方便,但终究有一个大问题------需要保持ip地址不变。于是改用终端节点连接的方式

需要的信息

由于本次使用的是从本地的DBeaver连接到跳板机,再从跳板机连接到redshift的结构(这也是大多数环境中会用到的结构,公网跳板机和内网服务)

所以在正式配置之前需要准备的信息有:

1 在redshift的控制面板中找到终端节点的url,并且知道了redshift的数据库名,用户名,密码

2 跳板机的host,用户名,密码(或者密匙)

3 在本地安装好DBeaver(或者类似的数据库工具)

配置数据库连接

打开工具栏的 数据库 → 创建新连接 后,在弹出的界面的搜索栏中搜索redshift

选择了之后可以看到创建连接的详情页面,在main页面中选择host方式连接,然后把redshift控制台复制的终端节点url输入进来。

注意:从控制台复制的终端节点的url中,在最末尾有 :dev:5439 字样的要删除掉,如下图所示,末尾要确保是以 .amazonaws.com结尾,然后删除掉的那两个东西分别要填入 端口 和 数据库名称中

然后点击ssh标签,进入到ssh跳板机的设置

按照提示文字输入即可

测试连接

配置好之后在配置页面左下方有一个测试按钮,点击之后发现连接已经成功

此时的Redshift的IP地址是

上文说过,重新定位之后ip地址会完全变化,使用了ip的数据库连接也会随之全部失效

所以为了验证终端节点的适应性手动出发重新定位功能

选择一个其他的可用区

切换到可用区2后再次测试

首先看一下ip地址,不仅公网ip变化了,私有ip也变得一塌糊涂

但是好在只要是使用了终端节点就能够不管ip如何变化,都能够将终端节点转化成最新的ip地址

所以连接仍然保持有效

切换回可用区1后再次测试

到这一步的时候我有个疑问:

从可用区1切换到可用区2的时候确实ip会改变,但是如果再切换回去的话,私有ip会复原吗

于是试着切回去,结果是ip照样我行我素地变化着

终端节点连接还是发挥稳定

综上,既然使用了aws的云服务,就尽可能使用终端节点或者服务id这种不变的东西,代替可变化的某种参数,在各种服务发生变化的时候不仅能够保证各种连接健康维持,还能够减少运维不必要的压力。

相关推荐
猫猫不是喵喵.8 小时前
从0到1创建一个微服务项目
java·数据库·微服务·1024程序员节
lsc_blog9 小时前
听到优化风声,先准备能由自己掌控的事
数据库·分布式·中间件·职场和发展·重构
墨痕诉清风9 小时前
SSRF漏洞实战记录+OSS桶命令执行+MCP漏洞
linux·服务器·数据库
Ashe81312 小时前
MySQL 慢日志先别急着加索引:三个指标能拦掉大半误判
数据库
ClouGence12 小时前
最基础的异构数据库 DDL 同步,我们踩过哪些坑?
数据库·mysql·postgresql
羑悻的小杀马特13 小时前
Redis持久化三剑客:RDB二进制快照、AOF文本日志、混合模式如何守护你的数据安全?
数据库·redis·缓存·aof·持久化存储·rdb
小呆爱发呆13 小时前
第三章 MySQL 库表操作
数据库·mysql·adb
时间的拾荒人14 小时前
Redis 进阶实战:渐进式遍历、持久化机制与事务详解
数据库·redis·缓存
普通人615 小时前
MySQL_FIND_IN_SET函数详解
android·数据库·mysql