SGObjectStorage allows to configure where backups are going to be stored.
The SGObjectStorage represents a location to store backups.
Kind: SGObjectStorage
listKind: SGObjectStorageList
plural: sgobjectstorages
singular: sgobjectstorage
Spec
| Property | Required | Updatable | Type | Default | Description |
|---|---|---|---|---|---|
| type | ✓ | ✓ | string |
Determine the type of object storage used for storing the base backups and WAL segments.
Possible values:
*
s3: Amazon Web Services S3 (Simple Storage Service).
* s3Compatible: non-AWS services that implement a compatibility API with AWS S3.
* gcs: Google Cloud Storage.
* azureBlob: Microsoft Azure Blob Storage. |
|
| s3 | if type = s3 | ✓ | object |
Amazon Web Services S3 configuration.
|
|
| s3Compatible | if type = s3Compatible | ✓ | object |
AWS S3-Compatible API configuration
|
|
| gcs | if type = gcs | ✓ | object |
Google Cloud Storage configuration.
|
|
| azureBlob | if type = azureblob | ✓ | object |
Azure Blob Storage configuration.
|
Example:
apiVersion: stackgres.io/v1beta1
kind: SGObjectStorage
metadata:
name: objectstorage
spec:
type: s3Compatible
s3Compatible:
bucket: stackgres
region: k8s
enablePathStyleAddressing: true
endpoint: http://my-cluster-minio:9000
awsCredentials:
secretKeySelectors:
accessKeyId:
key: accesskey
name: my-cluster-minio
secretAccessKey:
key: secretkey
name: my-cluster-minio
| Property | Required | Updatable | Type | Default | Description |
|---|---|---|---|---|---|
| bucket | ✓ | ✓ | string |
AWS S3 bucket name.
|
|
| awsCredentials | ✓ | ✓ | object |
The credentials to access AWS S3 for writing and reading.
|
|
| region | ✓ | string |
The AWS S3 region. The Region may be detected using s3:GetBucketLocation, but if you wish to avoid giving permissions to this API call or forbid it from the applicable IAM policy, you must then specify this property.
|
||
| storageClass | ✓ | string |
The Amazon S3 Storage Class to use for the backup object storage. By default, the
STANDARD storage class is used. Other supported values include STANDARD_IA for Infrequent Access and REDUCED_REDUNDANCY. |
| Property | Required | Updatable | Type | Default | Description |
|---|---|---|---|---|---|
| bucket | ✓ | ✓ | string |
Bucket name.
|
|
| awsCredentials | ✓ | ✓ | object |
The credentials to access AWS S3 for writing and reading.
|
|
| region | ✓ | string |
The AWS S3 region. The Region may be detected using s3:GetBucketLocation, but if you wish to avoid giving permissions to this API call or forbid it from the applicable IAM policy, you must then specify this property.
|
||
| storageClass | ✓ | string |
The Amazon S3 Storage Class to use for the backup object storage. By default, the
STANDARD storage class is used. Other supported values include STANDARD_IA for Infrequent Access and REDUCED_REDUNDANCY. |
||
| endpoint | ✓ | string |
Overrides the default url to connect to an S3-compatible service.
For example:
http://s3-like-service:9000. |
||
| enablePathStyleAddressing | ✓ | boolean |
Enable path-style addressing (i.e. Defaults to false. |
| Property | Required | Updatable | Type | Default | Description |
|---|---|---|---|---|---|
| secretKeySelectors | ✓ | ✓ | object |
Kubernetes SecretKeySelector(s) to reference the Secret(s) that contain the information about the
awsCredentials. Note that you may use the same or different Secrets for the accessKeyId and the secretAccessKey. In the former case, the keys that identify each must be, obviously, different. |
| Property | Required | Updatable | Type | Default | Description |
|---|---|---|---|---|---|
| accessKeyId | ✓ | ✓ | object |
AWS access key ID. For example,
AKIAIOSFODNN7EXAMPLE. |
|
| secretAccessKey | ✓ | ✓ | object |
AWS secret access key. For example,
wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY. |
| Property | Required | Updatable | Type | Default | Description |
|---|---|---|---|---|---|
| bucket | ✓ | ✓ | string |
GCS bucket name.
|
|
| gcpCredentials | ✓ | ✓ | object |
The credentials to access GCS for writing and reading.
|
| Property | Required | Updatable | Type | Default | Description |
|---|---|---|---|---|---|
| secretKeySelectors | ✓ | ✓ | object |
A Kubernetes SecretKeySelector to reference the Secrets that contain the information about the Service Account to access GCS.
|
| Property | Required | Updatable | Type | Default | Description |
|---|---|---|---|---|---|
| serviceAccountJSON | ✓ | ✓ | object |
A service account key from GCP. In JSON format, as downloaded from the GCP Console.
|
| Property | Required | Updatable | Type | Default | Description |
|---|---|---|---|---|---|
| bucket | ✓ | ✓ | string |
Azure Blob Storage bucket name.
|
|
| azureCredentials | ✓ | ✓ | object |
The credentials to access Azure Blob Storage for writing and reading.
|
| Property | Required | Updatable | Type | Default | Description |
|---|---|---|---|---|---|
| secretKeySelectors | ✓ | ✓ | object |
Kubernetes SecretKeySelector(s) to reference the Secret(s) that contain the information about the
azureCredentials. . Note that you may use the same or different Secrets for the storageAccount and the accessKey. In the former case, the keys that identify each must be, obviously, different. |
| Property | Required | Updatable | Type | Default | Description |
|---|---|---|---|---|---|
| storageAccount | ✓ | ✓ | object |
The Storage Account that contains the Blob bucket to be used.
|
|
| accessKey | ✓ | ✓ | object |