Skip to content

Commit 4c2899a

Browse files
authored
tidb-cloud: add configuring storage access for Premium (#22072)
1 parent 8256144 commit 4c2899a

14 files changed

+85
-66
lines changed

TOC-tidb-cloud-essential.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -226,7 +226,7 @@
226226
- [Import Snapshot Files from Cloud Storage](/tidb-cloud/import-snapshot-files-serverless.md)
227227
- [Import with MySQL CLI](/tidb-cloud/import-with-mysql-cli-serverless.md)
228228
- Reference
229-
- [Configure External Storage Access for TiDB Cloud](/tidb-cloud/serverless-external-storage.md)
229+
- [Configure External Storage Access for TiDB Cloud](/tidb-cloud/configure-external-storage-access.md)
230230
- [Naming Conventions for Data Import](/tidb-cloud/naming-conventions-for-data-import.md)
231231
- [CSV Configurations for Importing Data](/tidb-cloud/csv-config-for-import-data.md)
232232
- [Troubleshoot Access Denied Errors during Data Import from Amazon S3](/tidb-cloud/troubleshoot-import-access-denied-error.md)

TOC-tidb-cloud-premium.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -216,7 +216,7 @@
216216
- [Import Snapshot Files from Cloud Storage](/tidb-cloud/import-snapshot-files-serverless.md)
217217
- [Import Data Using MySQL CLI](/tidb-cloud/premium/import-with-mysql-cli-premium.md)
218218
- Reference
219-
- [Configure External Storage Access for TiDB Cloud](/tidb-cloud/serverless-external-storage.md)
219+
- [Configure External Storage Access for TiDB Cloud](/tidb-cloud/configure-external-storage-access.md)
220220
- [Naming Conventions for Data Import](/tidb-cloud/naming-conventions-for-data-import.md)
221221
- [CSV Configurations for Importing Data](/tidb-cloud/csv-config-for-import-data.md)
222222
- [Troubleshoot Access Denied Errors during Data Import from Amazon S3](/tidb-cloud/troubleshoot-import-access-denied-error.md)

TOC-tidb-cloud-starter.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -229,7 +229,7 @@
229229
- [Import Snapshot Files from Cloud Storage](/tidb-cloud/import-snapshot-files-serverless.md)
230230
- [Import with MySQL CLI](/tidb-cloud/import-with-mysql-cli-serverless.md)
231231
- Reference
232-
- [Configure External Storage Access for TiDB Cloud](/tidb-cloud/serverless-external-storage.md)
232+
- [Configure External Storage Access for TiDB Cloud](/tidb-cloud/configure-external-storage-access.md)
233233
- [Naming Conventions for Data Import](/tidb-cloud/naming-conventions-for-data-import.md)
234234
- [CSV Configurations for Importing Data](/tidb-cloud/csv-config-for-import-data.md)
235235
- [Troubleshoot Access Denied Errors during Data Import from Amazon S3](/tidb-cloud/troubleshoot-import-access-denied-error.md)

tidb-cloud/serverless-external-storage.md renamed to tidb-cloud/configure-external-storage-access.md

Lines changed: 47 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,28 @@
11
---
2-
title: Configure External Storage Access for {{{ .starter }}} or Essential
3-
summary: Learn how to configure Amazon Simple Storage Service (Amazon S3) access.
2+
title: Configure External Storage Access
3+
summary: Learn how to configure cross-account access to an external storage such as Amazon Simple Storage Service (Amazon S3).
4+
aliases: ['/tidbcloud/serverless-external-storage']
45
---
56

6-
# Configure External Storage Access for {{{ .starter }}} or Essential
7+
# Configure External Storage Access
8+
9+
<CustomContent plan="starter,essential">
710

811
If you want to import data from or export data to an external storage in a TiDB Cloud cluster, you need to configure cross-account access. This document describes how to configure access to an external storage for {{{ .starter }}} and {{{ .essential }}} clusters.
912

13+
</CustomContent>
14+
15+
<CustomContent plan="premium">
16+
17+
If you want to import data from or export data to an external storage in a TiDB Cloud instance, you need to configure cross-account access. This document describes how to configure access to an external storage for {{{ .premium }}} instances.
18+
19+
</CustomContent>
20+
1021
If you need to configure these external storages for a TiDB Cloud Dedicated cluster, see [Configure External Storage Access for TiDB Cloud Dedicated](/tidb-cloud/dedicated-external-storage.md).
1122

1223
## Configure Amazon S3 access
1324

14-
To allow a TiDB Cloud cluster to access the source data in your Amazon S3 bucket, configure the bucket access for the cluster using either of the following methods:
25+
To allow a TiDB Cloud <CustomContent plan="starter,essential">cluster</CustomContent><CustomContent plan="premium">instance</CustomContent> to access the source data in your Amazon S3 bucket, configure the bucket access for the <CustomContent plan="starter,essential">cluster</CustomContent><CustomContent plan="premium">instance</CustomContent> using either of the following methods:
1526

1627
- [Use a Role ARN](#configure-amazon-s3-access-using-a-role-arn): use a Role ARN to access your Amazon S3 bucket.
1728
- [Use an AWS access key](#configure-amazon-s3-access-using-an-aws-access-key): use the access key of an IAM user to access your Amazon S3 bucket.
@@ -22,13 +33,13 @@ It is recommended that you use [AWS CloudFormation](https://docs.aws.amazon.com/
2233

2334
> **Note:**
2435
>
25-
> Role ARN access to Amazon S3 is only supported for clusters with AWS as the cloud provider. If you use a different cloud provider, use an AWS access key instead. For more information, see [Configure Amazon S3 access using an AWS access key](#configure-amazon-s3-access-using-an-aws-access-key).
36+
> Role ARN access to Amazon S3 is only supported for <CustomContent plan="starter,essential">clusters</CustomContent><CustomContent plan="premium">instances</CustomContent> with AWS as the cloud provider. If you use a different cloud provider, use an AWS access key instead. For more information, see [Configure Amazon S3 access using an AWS access key](#configure-amazon-s3-access-using-an-aws-access-key).
2637
27-
1. Open the **Import** page for your target cluster.
38+
1. Open the **Import** page for your target <CustomContent plan="starter,essential">cluster</CustomContent><CustomContent plan="premium">instance</CustomContent>.
2839

29-
1. Log in to the [TiDB Cloud console](https://tidbcloud.com/) and navigate to the [**Clusters**](https://tidbcloud.com/project/clusters) page of your project.
40+
1. Log in to the [TiDB Cloud console](https://tidbcloud.com/) and <CustomContent plan="starter,essential">navigate to the [**Clusters**](https://tidbcloud.com/project/clusters) page of your project.</CustomContent><CustomContent plan="premium">navigate to the [**TiDB Instances**](https://tidbcloud.com/tidbs) page.</CustomContent>
3041

31-
2. Click the name of your target cluster to go to its overview page, and then click **Data** > **Import** in the left navigation pane.
42+
2. Click the name of your target <CustomContent plan="starter,essential">cluster</CustomContent><CustomContent plan="premium">instance</CustomContent> to go to its overview page, and then click **Data** > **Import** in the left navigation pane.
3243

3344
2. Open the **Add New ARN** dialog.
3445

@@ -40,7 +51,7 @@ It is recommended that you use [AWS CloudFormation](https://docs.aws.amazon.com/
4051

4152
- If you want to export data to Amazon S3, open the **Add New ARN** dialog as follows:
4253

43-
1. Click **Export data to...** > **Amazon S3**. If your cluster has neither imported nor exported any data before, click **Click here to export data to...** > **Amazon S3** at the bottom of the page.
54+
1. Click **Export data to...** > **Amazon S3**. If your <CustomContent plan="starter,essential">cluster</CustomContent><CustomContent plan="premium">instance</CustomContent> has neither imported nor exported any data before, click **Click here to export data to...** > **Amazon S3** at the bottom of the page.
4455
2. Fill in the **Folder URI** field.
4556
3. Choose **AWS Role ARN** and click **Click here to create new one with AWS CloudFormation**.
4657

@@ -56,7 +67,7 @@ It is recommended that you use [AWS CloudFormation](https://docs.aws.amazon.com/
5667

5768
5. After the CloudFormation stack is executed, you can click the **Outputs** tab and find the Role ARN value in the **Value** column.
5869

59-
![img.png](/media/tidb-cloud/serverless-external-storage/serverless-role-arn.png)
70+
![Role ARN](/media/tidb-cloud/serverless-external-storage/serverless-role-arn.png)
6071

6172
If you have any trouble creating a role ARN with AWS CloudFormation, you can take the following steps to create one manually:
6273

@@ -79,10 +90,10 @@ If you have any trouble creating a role ARN with AWS CloudFormation, you can tak
7990

8091
4. On the **Create policy** page, click the **JSON** tab.
8192

82-
5. Configure the policy in the policy text field according to your needs. The following is an example that you can use to export data from and import data into a TiDB Cloud cluster.
93+
5. Configure the policy in the policy text field according to your needs. The following is an example that you can use to export data from and import data into a TiDB Cloud <CustomContent plan="starter,essential">cluster</CustomContent><CustomContent plan="premium">instance</CustomContent>.
8394

84-
- Exporting data from a TiDB Cloud cluster needs the **s3:PutObject** and **s3:ListBucket** permissions.
85-
- Importing data into a TiDB Cloud cluster needs the **s3:GetObject**, **s3:GetObjectVersion**, and **s3:ListBucket** permissions.
95+
- Exporting data from a TiDB Cloud <CustomContent plan="starter,essential">cluster</CustomContent><CustomContent plan="premium">instance</CustomContent> needs the **s3:PutObject** and **s3:ListBucket** permissions.
96+
- Importing data into a TiDB Cloud <CustomContent plan="starter,essential">cluster</CustomContent><CustomContent plan="premium">instance</CustomContent> needs the **s3:GetObject**, **s3:GetObjectVersion**, and **s3:ListBucket** permissions.
8697

8798
```json
8899
{
@@ -150,7 +161,7 @@ If you have any trouble creating a role ARN with AWS CloudFormation, you can tak
150161

151162
- In **Trusted entity type**, select **AWS account**.
152163
- In **An AWS account**, select **Another AWS account**, and then paste the TiDB Cloud account ID to the **Account ID** field.
153-
- In **Options**, click **Require external ID (Best practice when a third party will assume this role)**, and then paste the TiDB Cloud External ID to the **External ID** field. If the role is created without a Require external ID, once the configuration is done for one TiDB cluster in a project, all TiDB clusters in that project can use the same Role ARN to access your Amazon S3 bucket. If the role is created with the account ID and external ID, only the corresponding TiDB cluster can access the bucket.
164+
- In **Options**, click **Require external ID (Best practice when a third party will assume this role)**, and then paste the TiDB Cloud External ID to the **External ID** field.<CustomContent plan="starter,essential"> If the role is created without a Require external ID, once the configuration is done for one TiDB cluster in a project, all TiDB clusters in that project can use the same Role ARN to access your Amazon S3 bucket. If the role is created with the account ID and external ID, only the corresponding TiDB cluster can access the bucket.</CustomContent>
154165

155166
3. Click **Next** to open the policy list, choose the policy you just created, and then click **Next**.
156167

@@ -178,6 +189,8 @@ Take the following steps to configure an access key:
178189
>
179190
> TiDB Cloud does not store your access keys. It is recommended that you [delete the access key](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_access-keys.html#Using_CreateAccessKey) after the import or export is complete.
180191

192+
<CustomContent plan="starter,essential">
193+
181194
## Configure GCS access
182195

183196
To allow a TiDB Cloud cluster to access your GCS bucket, you need to configure the GCS access for the bucket. You can use a service account key to configure the bucket access:
@@ -206,11 +219,15 @@ Take the following steps to configure a service account key:
206219

207220
3. Choose the default `JSON` key type, and then click **CREATE** to download the Google Cloud credentials file. The file contains the service account key that you need to use when configuring the GCS access for the TiDB Cloud cluster.
208221

222+
</CustomContent>
223+
224+
<CustomContent plan="starter,essential">
225+
209226
## Configure Azure Blob Storage access
210227

211228
To allow TiDB Cloud to access your Azure Blob container, you need to create a service SAS token for the container.
212229

213-
You can create a SAS token either using an [Azure ARM template](https://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/overview) (recommended) or manual configuration.
230+
You can create a SAS token either using an [Azure ARM template](https://learn.microsoft.com/en-us/azure/azure-resource-manager/templates/overview) (recommended) or manual configuration.
214231

215232
To create a SAS token using an Azure ARM template, take the following steps:
216233

@@ -221,23 +238,23 @@ To create a SAS token using an Azure ARM template, take the following steps:
221238
2. Click the name of your target cluster to go to its overview page, and then click **Data** > **Import** in the left navigation pane.
222239

223240
2. Open the **Generate New SAS Token via ARM Template Deployment** dialog.
224-
241+
225242
1. Click **Export data to...** > **Azure Blob Storage**. If your cluster has neither imported nor exported any data before, click **Click here to export data to...** > **Azure Blob Storage** at the bottom of the page.
226-
227-
2. Scroll down to the **Azure Blob Storage Settings** area, and then click **Click here to create a new one with Azure ARM template** under the SAS Token field.
228-
243+
244+
2. Scroll down to the **Azure Blob Storage Settings** area, and then click **Click here to create a new one with Azure ARM template** under the SAS Token field.
245+
229246
3. Create a SAS token with the Azure ARM template.
230247

231248
1. In the **Generate New SAS Token via ARM Template Deployment** dialog, click **Click to open the Azure Portal with the pre-configured ARM template**.
232-
249+
233250
2. After logging in to Azure, you will be redirected to the Azure **Custom deployment** page.
234251

235252
3. Fill in the **Resource group** and **Storage Account Name** in the **Custom deployment** page. You can get all the information from the storage account overview page where the container is located.
236253

237254
![azure-storage-account-overview](/media/tidb-cloud/serverless-external-storage/azure-storage-account-overview.png)
238255

239256
4. Click **Review + create** or **Next** to review the deployment. Click **Create** to start the deployment.
240-
257+
241258
5. After it completes, you will be redirected to the deployment overview page. Navigate to the **Outputs** section to get the SAS token.
242259

243260
If you have any trouble creating a SAS token with the Azure ARM template, take the following steps to create one manually:
@@ -246,7 +263,7 @@ If you have any trouble creating a SAS token with the Azure ARM template, take t
246263
<summary>Click here to see details</summary>
247264

248265
1. On the [Azure Storage account](https://portal.azure.com/#browse/Microsoft.Storage%2FStorageAccounts) page, click your storage account to which the container belongs.
249-
266+
250267
2. On your **Storage account** page, click the **Security+network**, and then click **Shared access signature**.
251268

252269
![sas-position](/media/tidb-cloud/serverless-external-storage/azure-sas-position.png)
@@ -269,26 +286,28 @@ If you have any trouble creating a SAS token with the Azure ARM template, take t
269286

270287
</details>
271288

289+
</CustomContent>
290+
272291
## Configure Alibaba Cloud Object Storage Service (OSS) access
273292

274293
To allow TiDB Cloud to access your Alibaba Cloud OSS bucket, you need to create an AccessKey pair for the bucket.
275294

276295
Take the following steps to configure an AccessKey pair:
277296

278297
1. Create a RAM user and get the AccessKey pair. For more information, see [Create a RAM user](https://www.alibabacloud.com/help/en/ram/user-guide/create-a-ram-user).
279-
298+
280299
In the **Access Mode** section, select **Using permanent AccessKey to access**.
281300

282301
2. Create a custom policy with the required permissions. For more information, see [Create custom policies](https://www.alibabacloud.com/help/en/ram/user-guide/create-a-custom-policy).
283-
302+
284303
- In the **Effect** section, select **Allow**.
285304
- In the **Service** section, select **Object Storage Service**.
286305
- In the **Action** section, select the permissions as needed.
287-
288-
To import data into a TiDB Cloud cluster, grant **oss:GetObject**, **oss:GetBucketInfo**, and **oss:ListObjects** permissions.
289306

290-
To export data from a TiDB Cloud cluster, grant **oss:PutObject**, **oss:GetBucketInfo**, and **oss:ListBuckets** permissions.
291-
307+
To import data into a TiDB Cloud <CustomContent plan="starter,essential">cluster</CustomContent><CustomContent plan="premium">instance</CustomContent>, grant **oss:GetObject**, **oss:GetBucketInfo**, and **oss:ListObjects** permissions.
308+
309+
To export data from a TiDB Cloud <CustomContent plan="starter,essential">cluster</CustomContent><CustomContent plan="premium">instance</CustomContent>, grant **oss:PutObject**, **oss:GetBucketInfo**, and **oss:ListBuckets** permissions.
310+
292311
- In the **Resource** section, select the bucket and the objects in the bucket.
293312

294313
3. Attach the custom policies to the RAM user. For more information, see [Grant permissions to a RAM user](https://www.alibabacloud.com/help/en/ram/user-guide/grant-permissions-to-the-ram-user).

tidb-cloud/dedicated-external-storage.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ aliases: ['/tidb-cloud/config-s3-and-gcs-access']
88

99
If your source data is stored in Amazon S3 buckets, Azure Blob Storage containers, or Google Cloud Storage (GCS) buckets, before importing or migrating the data to TiDB Cloud, you need to configure cross-account access to the buckets. This document describes how to do this for TiDB Cloud Dedicated clusters.
1010

11-
If you need to configure these external storages for {{{ .starter }}} or {{{ .essential }}} clusters, see [Configure External Storage Access for {{{ .starter }}} or Essential](/tidb-cloud/serverless-external-storage.md).
11+
If you need to configure these external storages for {{{ .starter }}} or {{{ .essential }}} clusters, see [Configure External Storage Access for {{{ .starter }}} or Essential](/tidb-cloud/configure-external-storage-access.md).
1212

1313
## Configure Amazon S3 access
1414

0 commit comments

Comments
 (0)