You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* docs: Add S3 compliant storage
* docs: remote storage state (#4949)
* docs: remote storage state
document new remote storage state on the worker
* docs: Add link on worker storage page
* docs: Address feedback
* docs: Call out example
* docs: Fix a typo
* Update website/content/docs/configuration/session-recording/create-storage-bucket.mdx
Co-authored-by: Robin Beck <[email protected]>
* Apply batch of suggestions from code review
Co-authored-by: Hugo <[email protected]>
* docs: Clarify support statement
* docs: Revise support statement
---------
Co-authored-by: Elim Tsiagbey <[email protected]>
Co-authored-by: Robin Beck <[email protected]>
Co-authored-by: Hugo <[email protected]>
Copy file name to clipboardExpand all lines: website/content/docs/configuration/session-recording/configure-worker-storage.mdx
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -64,7 +64,7 @@ Workers can have the following permission states:
64
64
65
65
Boundary uses the permission states to determine the remote storage state of a worker. The worker can have the following remote storage states:
66
66
-`available`: All permission states are healthy. The worker has the required access to the external storage.
67
-
-`error`: One or more of the permission sates are not healthy. Workers may not be able to perform certain actions on the external storage.
67
+
-`error`: One or more of the permission states are not healthy. Workers may not be able to perform certain actions on the external storage.
68
68
69
69
Boundary periodically checks the states of any workers that use the external storage, and then reports them back to the controller.
70
70
@@ -112,4 +112,4 @@ worker {
112
112
113
113
## Next steps
114
114
115
-
After you configure worker storage, you can configure the external storage provider for [Amazon S3](/boundary/docs/configuration/session-recording/storage-providers/configure-s3) or [MinIO](/boundary/docs/configuration/session-recording/storage-providers/configure-minio).
115
+
After you configure worker storage, you can configure the external storage for [Amazon S3](/boundary/docs/configuration/session-recording/storage-providers/configure-s3), [MinIO](/boundary/docs/configuration/session-recording/storage-providers/configure-minio), or an [S3-compliant provider](/boundary/docs/configuration/session-recording/storage-providers/configure-s3-compliant).
@@ -314,6 +315,83 @@ Complete the following steps to create a storage bucket in Boundary.
314
315
</Tab>
315
316
</Tabs>
316
317
318
+
</Tab>
319
+
320
+
<Tabheading="S3-compliant">
321
+
322
+
Complete the following steps to create a storage bucket in Boundary using an S3-compliant storage provider. Hitachi Content Platform is used as an example below.
323
+
324
+
<Note>
325
+
326
+
S3-compliant storage requires a service account and its associated access keys to set up a Boundary storage bucket. Refer to the [Configure S3-compliant storage](/boundary/docs/configuration/session-recording/storage-providers/configure-s3-compliant#s3-compliant-storage-provider-requirements) page to learn more.
327
+
328
+
</Note>
329
+
330
+
<Tabs>
331
+
<Tabheading="UI">
332
+
333
+
1. Log in to Boundary.
334
+
1. Click **Storage Buckets** in the navigation bar.
335
+
1. Click **New Storage Bucket**.
336
+
1. Complete the following fields to create the Boundary storage bucket:
337
+
-**Name**: (Optional) The name field is optional, but if you enter a name it must be unique.
338
+
-**Description**: (Optional) An optional description of the Boundary storage bucket for identification purposes.
339
+
-**Scope**: (Required) A storage bucket can belong to the Global scope or an Org scope.
340
+
It can only be associated with targets from the scope it belongs to.
341
+
-**Provider**: (Required) The external storage bucket provider.
342
+
For S3-compliant storage, select **MinIO**.
343
+
-**Endpoint URL**: (Required) The fully-qualified endpoint pointing to a storage provider's S3 API, such as `https://my-hitachi-instance.dev:9000`.
344
+
-**Bucket name**: (Required) Name of the S3-compliant storage bucket you want to associate with the Boundary storage bucket.
345
+
-**Region**: (Optional) The region to configure the storage bucket for.
346
+
-**Access key ID** (Required): The storage provider's service account's access key to use with this storage bucket.
347
+
-**Secret access key** (Required): The storage provider's service account's secret key to use with this storage bucket.
348
+
-**Worker filter**: (Required) A filter that indicates which Boundary workers have access to the storage. The filter must match an existing worker in order to create a Boundary storage bucket.
349
+
-**Disable credential rotation**: (Optional) Controls whether the plugin will rotate the incoming credentials and manage a new storage service account. If this attribute is set to false, or not provided, the plugin will rotate the incoming credentials, using them to create a new storage service account, then delete the incoming credentials.
350
+
351
+
Note that credential rotation is not supported for Hitachi Content Platform, and it may not function for other S3-compatible providers.
352
+
353
+
1. Click **Save**.
354
+
355
+
</Tab>
356
+
<Tabheading="CLI">
357
+
358
+
1. Log in to Boundary.
359
+
1. Use the following command to create a storage bucket in Boundary:
Replace the values above with the following required secrets and any optional [attributes](/boundary/docs/concepts/domain-model/storage-buckets) you want to associate with the Boundary storage bucket:
376
+
377
+
-`bucket-name`: (Required) Name of the S3-compliant storage bucket you want to associate with the Boundary storage bucket.
378
+
-`plugin-name`: (Required) The name of the Boundary storage plugin.
379
+
Use the `minio` plugin for S3-compatible storage.
380
+
-`scope_id`: (Required) A storage bucket can belong to the Global scope or an Org scope.
381
+
-`worker-filter`: (Required) A filter that indicates which Boundary workers have access to the storage. The filter must match an existing worker in order to create a Boundary storage bucket.
382
+
-`secret`: (Required) The storage provider's credentials to use.
383
+
-`access_key_id` (Required): The storage provider's service account's access key to use with this storage bucket.
384
+
-`secret_access_key` (Required): The storage provider's service account's secret key to use with this storage bucket.
385
+
-`attributes` or `-attr`: Attributes of the S3-compliant storage bucket.
386
+
-`endpoint_url` (Required): Fully-qualified endpoint pointing to an S3-compliant API. This example uses Hitachi, but you should substitute your storage provider's endpoint.
387
+
-`region`: (Optional) The region to configure the storage bucket for.
388
+
-`disable_credential_rotation`: (Optional) Controls whether the plugin will rotate the incoming credentials and manage a new storage service account. If this attribute is set to `false`, or not provided, the plugin will rotate the incoming credentials to create a new storage service account, then delete the incoming credentials.
389
+
390
+
Note that credential rotation is not supported for Hitachi Content Platform, and it may not function for other S3-compatible providers.
How to configure an S3-compliant storage provider for Boundary session recording.
6
+
---
7
+
8
+
# Configure an S3-compliant storage provider
9
+
10
+
<EnterpriseAlertproduct="boundary">This feature requires <ahref="https://www.hashicorp.com/products/boundary">HCP Boundary or Boundary Enterprise</a></EnterpriseAlert>
11
+
12
+
The [MinIO plugin](https://github.com/hashicorp/boundary-plugin-minio/) lets you configure S3-compliant storage providers for session recording.
13
+
14
+
HashiCorp has tested and confirmed that you can configure the following S3-compliant storage products for session recording using the MinIO plugin:
You can also configure other providers' S3-compliant storage products for session recording storage.
19
+
We will update the list of providers as we test them.
20
+
21
+
## Requirements
22
+
23
+
Before you can create a storage bucket in Boundary, you must ensure that your environment meets certain requirements.
24
+
25
+
Session recording requires specific configuration for both the external storage provider and the Boundary worker.
26
+
27
+
Refer to [Configure workers for session recording](/boundary/docs/configuration/session-recording/configure-worker-storage) to learn about configuring self-managed workers for session recording.
28
+
29
+
When you determine storage requirements for the external bucket, you should consider:
You must associate the Boundary storage bucket with a third-party storage bucket. A third-party storage bucket contains the bucket name, endpoint URL, optional region, optional prefix, and the service account credentials needed to access the bucket.
39
+
40
+
- A service account and access keys for the storage provider
41
+
42
+
You must provide service account access keys when you configure a Boundary storage bucket later on.
43
+
44
+
Refer to your storage provider's documentation to learn how to set up a service account.
45
+
46
+
- The storage bucket must be configured with R/W access. If you use a
47
+
restricted IAM user policy, the following policy actions must be allowed at a minimum.
HashiCorp has tested and confirmed that you can configure the Hitachi Content Platform for external session recording storage using the MinIO plugin.
75
+
It is included as an example in this topic.
76
+
You should be able to configure other S3-compliant storage providers to work for session recording storage as well, but we have not tested other providers.
77
+
78
+
You must have an account with Hitachi Content Platform to create storage buckets.
79
+
You can sign up for an account at the following URL:
When you sign up for an account, Hitachi sends you the details you need to connect to the instance including the endpoint, S3 access key ID, and S3 secret key.
84
+
Log in to Hitachi's S3 console to create a storage bucket, and make a note of the bucket's name.
85
+
86
+
In Boundary, set the following environment variables using your Hitachi credentials and the name of the bucket:
Credential rotation is not supported for Hitachi Content Platform.
97
+
98
+
</Note>
99
+
100
+
## Resources
101
+
102
+
Refer to your S3-compliant storage provider's documentation for more information about configuring storage buckets and service accounts.
103
+
104
+
## Next steps
105
+
106
+
After you configure the external storage provider, you can [create the storage bucket](/boundary/docs/configuration/session-recording/create-storage-bucket) in Boundary.
0 commit comments