标签: amazon-rds

了解 AWS RDS gp3 卷中的 EBSByteBalance%

我正在对一个 AWS RDS Postgres 实例进行故障排除,该实例在过去几天内已被 AWS 重启了多次,很可能是由于资源限制。这是一个测试数据库,通常不会做太多事情,但我们最近给它增加了一些更高的负载。我发现数据库的 EBS 卷 (200GB gp3) 耗尽了其吞吐量积分,并且数据库重新启动的时间与 EBSByteBalance% 指标达到零的时间非常吻合。然后,当数据库重新启动时,该卷显然会获得一组新的突发积分,如下面的屏幕截图所示:

EBSByteBalance% 3 天

由于我们减轻了数据库的负载,积分现在下降得稍微慢一些,但它们仍在下降。当我查看当前的读写吞吐量指标时,它们的总和似乎仅为 5 到 7 MiB/s,偶尔会出现峰值:

阅读吞吐量3小时 写入吞吐量 3 小时

根据在Amazon RDS 数据库实例存储中找到的信息,低于 400GB 的 gp3 卷的基准吞吐量应为 125MiB/s。那么任何人都可以帮我解释为什么 EBSByteBalance% 指标在这种情况下不断下降吗?谢谢!

postgresql performance amazon-ebs amazon-web-services amazon-rds

3
推荐指数
1
解决办法
6603
查看次数

尝试在 RDS 中创建触发器时,我收到有关二进制日志记录的错误

尝试在 RDS 中创建触发器时,出现以下错误:

ERROR 1419 (HY000): You do not have the SUPER privilege and binary logging is
enabled (you *might* want to use the less safe log_bin_trust_function_creators
variable)
Run Code Online (Sandbox Code Playgroud)

有没有办法获得超级权限或禁用二进制日志记录?

mysql amazon-web-services amazon-rds

2
推荐指数
1
解决办法
5061
查看次数

为什么 AWS RDS 不更新次要版本?

我在 AWS 上有一个小型 RDS 实例,在维护细节上,我将“自动次要版本升级”设置为是。但我仍然有 MySQL 引擎版本 5.5.27,AWS 有可用的版本 5.5.33。我在这里错过了什么吗?

mysql amazon-web-services amazon-rds

2
推荐指数
2
解决办法
3715
查看次数

AWS RDS CLI:CreateDBSnapshot 上的访问被拒绝

我想使用AWS RDS 命令行工具来创建数据库的快照。my-databasecreate-db-snapshot

我在IAM中创建了一个特殊的备份角色,其策略允许我描述、复制和创建快照。它看起来像这样(我用 x 替换了敏感 ID):

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Sid": "Stmtxxxxxxxxxxxxxx",
      "Effect": "Allow",
      "Action": [
        "rds:CopyDBSnapshot",
        "rds:CreateDBSnapshot",
        "rds:DescribeDBSnapshots",
        "rds:DescribeEventCategories",
        "rds:DescribeEvents"
      ],
      "Resource": [
        "arn:aws:rds:eu-west-1:xxxxxxxxxxxxxx:db:my-database"
      ]
    }
  ]
}
Run Code Online (Sandbox Code Playgroud)

配置 CLI 工具并aws configure输入该用户的密钥后,我尝试通过执行以下命令来制作快照:

aws rds create-db-snapshot \
    --db-snapshot-identifier "my-database-backup-$(date +%d-%m-%Y-%Hh%Mm)" \
    --db-instance-identifier "my-database"
Run Code Online (Sandbox Code Playgroud)

这会导致一条错误消息:

调用 CreateDBSnapshot 操作时发生客户端错误 (AccessDenied):用户:arn:aws:iam::xxxxxxxxxxxxxx:user/automated-tasks 无权对资源执行:rds:CreateDBSnapshot:arn:aws:rds:eu-west -1:xxxxxxxxxxxxxx:快照:我的数据库备份-24-11-2014-11h07m

我认为这很奇怪,因为它表示拒绝访问具有我为参数指定的名称的资源(--db-snapshot-identifier与参数相反)--db-instance-identifier。

如果我有足够的权限来创建应用于实例的快照,那么我本身不应该具有该快照的创建权限吗?

无论如何,我尝试将策略中的资源更改为 RDS 中的所有内容:

"Resource": [
    "arn:aws:rds:eu-west-1:xxxxxxxxxxxxxx:*"
]
Run Code Online (Sandbox Code Playgroud)

我希望这会起作用,因为现在我的角色对我帐户的 RDS ARN 内的所有内容都具有创建快照权限,但事实并非如此。

有谁知道为什么我的命令返回错误?

snapshot amazon-web-services amazon-rds amazon-iam aws-cli

2
推荐指数
1
解决办法
4814
查看次数

AWS RDS 的自定义域名

将 my-name.ck4k21dvamqbq9.eu-west-1.rds.amazonaws.com:5432 等入口点转换为 db.domain.com 的可能方法有哪些?

对于自己的实例,我们根据私有 ip 在 /etc/hosts 中使用映射。存储长入口点名称有点混乱,而且必须在很多设置文件中维护。

amazon-web-services amazon-rds

2
推荐指数
1
解决办法
1876
查看次数

适用于 RDS 的 AWS 安全组 - 出站规则

我有一个分配给 RDS 实例的安全组,它允许来自我们的 EC2 实例的端口 5432 流量。

但是,此安全组为所有 IP 的所有流量启用了所有出站流量。

这是安全风险吗?理想的出站安全规则应该是什么?在我看来,RDS 安全组的出站流量应该限制在我们 EC2 实例的 5432 端口,对吗?

amazon-web-services amazon-rds

2
推荐指数
1
解决办法
3505
查看次数

如何更改RDS KMS密钥而不丢失数据?

我们有一个托管在 AWS RDS 上的 PostgreSQL 数据库。当使用cloudformation创建它时,我将其设置为加密,但没有设置加密密钥。因此,它被设置为使用默认加密密钥。

此后我被告知,有一个公司标准,所有 RDS 实例都应该有自己的密钥。

我已经使用 cloudformation 创建了新密钥并将其与 RDS 实例关联,但是当我部署此模板时,它想要删除并重新创建数据库。

我不太熟悉这一切是如何工作的,并且我正在寻找一个不会导致我们丢失数据的程序。如果需要的话,一点停机时间不会对我们造成伤害。

amazon-web-services amazon-rds amazon-cloudformation amazon-kms

2
推荐指数
1
解决办法
4382
查看次数

Force SSL on AWS RDS Postgres

I've got a brand new Postgres 11 RDS instance that I can connect to with or without an SSL cert. However, I would like to ensure that we never connect to this database without SSL. So I have taken the following steps to attempt to enforce this:

  1. Create a new parameter group because the default ones are not editable.
  2. Change the value of rds.force_ssl to 1.
  3. Change my database parameter group to the new one, selecting "Apply immediately"
  4. Wait …

postgresql amazon-web-services amazon-rds

2
推荐指数
1
解决办法
7256
查看次数

跟踪导致 AWS RDS 使用超高带宽的原因

我们在 AWS 上托管了一个高流量(每天 10 万次点击)的 Drupal 新闻网站。它的背后是 cloudflare 和 2 个负载平衡 Varnish 服务器。出于某种原因,RDS 的带宽使用率非常高。这是在 Elastic Cache 的 memcache 中托管所有缓存表之后。100% 的流量是匿名的。除了新的或更新的内容,流量是由清漆提供的。

但 RDS 带宽仍然非常高。例如到本月 18 日,使用量已经达到 15TB+。这个成本正在扼杀整个网站。

我们如何检测正在占用所有带宽的内容?我们如何去找出根本原因?

查看复制我们我的帐单页面的详细信息:

Bandwidth
$0.000 per GB - data transfer in per month  -   4.808 GB  -     $0.00
$0.000 per GB - first 1 GB of data transferred out per month    -  1 GB  -  $0.00
$0.010 per GB - regional data transfer - in/out/between EC2 AZs or using IPs or ELB  -  15,147.744 GB …
Run Code Online (Sandbox Code Playgroud)

bandwidth optimization rds amazon-rds

1
推荐指数
1
解决办法
495
查看次数

为 AWS RDS PostgreSQL 创建只读账户

我想为 AWS (PostGreSQL) 中的所有 RDS 实例创建一个只读帐户。我首先创建了一个 IAM 组并附加了 AmazonRDSReadOnlyAccess 策略。我创建了一个新的 IAM 用户并将他放在这个组中。我无法使用这个新的只读用户连接到我们的数据库(使用我们的管理员帐户成功测试就好了)。我现在意识到我在数据库本身中没有只读用户。这向我提出了三个问题:

  1. 当我可以在数据库中创建只读数据库用户时,为我们的 RDS 实例创建只读 IAM 用户是否有意义?
  2. 当我通过命令行访问数据库时,例如。psql --host=servername --port=portnumber --username=username --password --dbname=databasename。据我了解,这是数据库用户的名称,因此创建单独的 RDS IAM 只读用户是否有意义?
  3. 如果我有 RDS 的只读 IAM 用户,如果说其他人为他们创建了一个数据库写帐户,他们仍然拥有写访问权限是否有任何危险?

postgresql amazon-web-services amazon-rds

1
推荐指数
1
解决办法
2103
查看次数