本指南将向你展示如何在 AWS 中创建 IAM 用户和 S3 存储桶, 这是将备份保存到 S3 或将 ClickHouse 配置为 在 S3 上存储数据所需的前置步骤
创建 AWS IAM 用户
- 登录 AWS IAM Management Console。
-
在
Users选项卡中,选择Create user
- 输入用户名
- 选择
Next
- 选择
Next
- 选择
Create user
- 选择
Create access key
- 选择
Application running outside AWS
- 选择
Create access key
- 将访问密钥和 secret 下载为 .csv 文件,供稍后使用
创建 S3 存储桶
- 在 S3 存储桶 部分,选择 Create bucket
- 输入存储桶 名称,其他选项保持默认即可
存储桶 名称必须在整个 AWS 范围内唯一,而不只是组织内唯一,否则会报错。
- 保持
Block all Public Access为启用状态;无需开启公共访问。
- 在页面底部选择 Create Bucket
- 选择该链接,复制 ARN,并保存下来,以便在为存储桶 配置访问策略时使用
- 存储桶 创建完成后,在 S3 buckets 列表中找到新建的 S3 存储桶,并选择其名称,这会进入如下所示的页面:
-
选择
Create folder -
输入一个文件夹名称,作为 ClickHouse S3 disk 或 Backup 的目标位置,然后在页面底部选择
Create folder
- 该文件夹现在应已显示在存储桶 列表中
- 选中新文件夹对应的复选框,然后点击
Copy URL。保存该 URL,以便在下一节的 ClickHouse Storage configuration 中使用。
- 选择 Permissions 选项卡,并点击 Bucket Policy 部分中的 Edit 按钮
- 添加存储桶 策略,示例如下
上述策略允许对该存储桶执行所有操作
| 参数 | 描述 | 示例值 |
|---|---|---|
| Version | 策略语言版本,保持原样即可 | 2012-10-17 |
| Sid | 用户自定义的策略 ID | abc123 |
| Effect | 用户请求是被允许还是被拒绝 | Allow |
| Principal | 允许访问的账户或用户 | arn:aws:iam::782985192762:user/docs-s3-user |
| Action | 存储桶上允许执行的操作 | s3:* |
| Resource | 允许对存储桶中的哪些资源执行操作 | ”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
- 保存策略配置