如何创建 AWS IAM 用户和 S3 存储桶
本指南将向您展示如何在 AWS 中创建 IAM 用户和 S3 存储桶, 这是将备份写入 S3 或将 ClickHouse 配置为在 S3 上存储数据的先决条件步骤
创建 AWS IAM 用户
在本步骤中,我们将创建一个服务账户用户,而不是登录用户。
-
登录 AWS IAM 管理控制台。
-
在
Users选项卡中,选择Create user

- 输入用户名

- 选择
Next

- 选择
Next

- 选择
Create user
用户已创建。 单击新创建的用户

- 选择
Create access key

- 选择
Application running outside AWS

- 选择
Create access key

- 将访问密钥 ID 和密钥下载为 .csv 文件,以便后续使用

创建一个 S3 bucket
- 在 S3 bucket 部分选择 Create bucket

- 输入一个 bucket 名称,其余选项保持默认

注意
bucket 名称在整个 AWS 账号空间中必须唯一,而不仅仅是在你的组织内,否则会报错。
- 保持启用
Block all Public Access;不需要公共访问。

- 在页面底部选择 Create Bucket

- 点击该链接,复制 ARN,并保存,以便在配置该 bucket 的访问策略时使用

- 创建 bucket 后,在 S3 buckets 列表中找到新的 S3 bucket,并选择该 bucket 名称,这会打开如下所示的页面:

-
选择
Create folder -
输入一个文件夹名称,该文件夹将作为 ClickHouse S3 磁盘或备份的目标,然后在页面底部选择
Create folder

- 现在应当能在 bucket 列表中看到该文件夹

- 勾选新建文件夹前的复选框并点击
Copy URL。保存该 URL,以便在下一节中用于 ClickHouse 存储配置。

- 选择 Permissions 选项卡,然后在 Bucket Policy 部分点击 Edit 按钮

- 添加一个 bucket policy,示例如下
注意
上述策略允许对该 bucket 执行所有操作
| Parameter | Description | Example Value |
|---|---|---|
| Version | 策略解释器的版本,保持不变 | 2012-10-17 |
| Sid | 用户自定义的策略 ID | abc123 |
| Effect | 是否允许或拒绝用户请求 | Allow |
| Principal | 被允许访问的账号或用户 | arn:aws:iam::782985192762:user/docs-s3-user |
| Action | 在该 bucket 上允许执行的操作 | s3:* |
| Resource | 该 bucket 中允许执行操作的资源 | "arn:aws:s3:::ch-docs-s3-bucket", "arn:aws:s3:::ch-docs-s3-bucket/*" |
注意
应与安全团队协作确定要使用的权限,可将这些示例视为起点。 有关策略和设置的更多信息,请参阅 AWS 文档: https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-policy-language-overview.html
- 保存策略配置