RDS实例和对应的EC2
RDS instance and corresponding EC2
我在 AWS 账户中只有很少的 EC2 和 RDS 实例 运行。
我想知道哪个 EC2 正在使用哪个 RDS 实例?
有什么办法可以从控制台找到它吗?
我无法访问这些 EC2 中的 application/services 运行,所以我无法检查它。
选项 1:
确保 AWS VPC flow logs 已启用,如果未启用则启用它们。
转到AWS CloudWatch logs insights和select AWS VPC流日志组,运行查询
执行以下 AWS CloudWatch 日志洞察查询;
fields srcAddr | filter interfaceId='<elastic network interface id here>' and dstPort=<database connection port here> and action='ACCEPT' | stats count(*) as connection_count by srcAddr | sort connection_count desc
其中,
interfaceId - 是 RDS 实例的网络接口 ID,通常以 eni-
为前缀
dstPort - 是数据库端口号,应用程序使用它进行数据库连接
srcAddr - 是网络接口的 ipv4 地址,are/were 成功连接到 dstPort
上的数据库
您还可以修改此查询以获取多个 RDS 数据库的记录
- 转到 advanced query feature of AWS Config 并执行步骤 3) 中的以下 IPv4 地址查询
SELECT configuration.attachment.instanceId WHERE resourceType = 'AWS::EC2::NetworkInterface' AND configuration.privateIpAddress='<ipv4 address here>'
其中,
configuration.attachment.instanceId - 是 ec2 实例 ID
configuration.privateIpAddress - 是连接到 ec2 实例的网络接口的主要私有 IPv4 地址
您还可以修改此查询以获取多个 ec2 和网络接口的记录
或
选项 2:
您可以启用 AWS RDS Performance Insights 并在仪表板上查看已连接的客户端
或
选项 3:
您可能有正在使用的特定数据库供应商提供的方法,但为此您需要连接到单个数据库并获取详细信息。所以,这是一个耗时的选项。
或
选项 4:更适合您的用例
我在 AWS 账户中只有很少的 EC2 和 RDS 实例 运行。
我想知道哪个 EC2 正在使用哪个 RDS 实例? 有什么办法可以从控制台找到它吗?
我无法访问这些 EC2 中的 application/services 运行,所以我无法检查它。
选项 1:
确保 AWS VPC flow logs 已启用,如果未启用则启用它们。
转到AWS CloudWatch logs insights和select AWS VPC流日志组,运行查询
执行以下 AWS CloudWatch 日志洞察查询;
fields srcAddr | filter interfaceId='<elastic network interface id here>' and dstPort=<database connection port here> and action='ACCEPT' | stats count(*) as connection_count by srcAddr | sort connection_count desc
其中,
interfaceId - 是 RDS 实例的网络接口 ID,通常以 eni-
为前缀dstPort - 是数据库端口号,应用程序使用它进行数据库连接
srcAddr - 是网络接口的 ipv4 地址,are/were 成功连接到 dstPort
上的数据库您还可以修改此查询以获取多个 RDS 数据库的记录
- 转到 advanced query feature of AWS Config 并执行步骤 3) 中的以下 IPv4 地址查询
SELECT configuration.attachment.instanceId WHERE resourceType = 'AWS::EC2::NetworkInterface' AND configuration.privateIpAddress='<ipv4 address here>'
其中,
configuration.attachment.instanceId - 是 ec2 实例 ID
configuration.privateIpAddress - 是连接到 ec2 实例的网络接口的主要私有 IPv4 地址
您还可以修改此查询以获取多个 ec2 和网络接口的记录
或
选项 2:
您可以启用 AWS RDS Performance Insights 并在仪表板上查看已连接的客户端
或
选项 3:
您可能有正在使用的特定数据库供应商提供的方法,但为此您需要连接到单个数据库并获取详细信息。所以,这是一个耗时的选项。
或
选项 4:更适合您的用例