このガイドでは、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を選択します

- 後で使用できるよう、アクセスキーとシークレットアクセスキーを .csv としてダウンロードします

S3 バケットを作成する
- S3 バケットのセクションで、Create bucket を選択します

- バケット名を入力し、その他のオプションはデフォルトのままにします

Block all Public Accessは有効のままにします。パブリックアクセスは不要です。

- ページ下部の Create Bucket を選択します

- リンクを選択して ARN をコピーし、バケットのアクセスポリシーを構成する際に使用できるよう保存します

- バケットを作成したら、S3 バケット一覧で新しい S3 バケットを見つけてバケット名を選択します。すると、以下のページが表示されます。

-
Create folderを選択します -
ClickHouse の S3 ディスクまたは Backup の保存先となるフォルダー名を入力し、ページ下部の
Create folderを選択します

- フォルダーがバケット一覧に表示されます

- 新しいフォルダーのチェックボックスを選択し、
Copy URLをクリックします。次のセクションで ClickHouse のストレージ構成に使用するため、この URL を保存します。

- Permissions タブを選択し、Bucket Policy セクションの Edit ボタンをクリックします

- バケットポリシーを追加します。以下は例です
{
"Version": "2012-10-17",
"Id": "Policy123456",
"Statement": [
{
"Sid": "abc123",
"Effect": "Allow",
"Principal": {
"AWS": "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/*"
]
}
]
}| パラメーター | 説明 | 値の例 |
|---|---|---|
| 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/*" |
- ポリシー設定を保存します