From 4b9fb3100439d3271029354faa0ed16c1e4c21b6 Mon Sep 17 00:00:00 2001 From: Kishan Kavala Date: Tue, 8 Aug 2023 11:52:31 +0530 Subject: [PATCH 1/4] Documentation for Object Storage feature --- source/adminguide/storage.rst | 29 +++++++++++++++++++ source/conceptsandterminology/concepts.rst | 7 +++++ source/installguide/configuration.rst | 33 ++++++++++++++++++++++ 3 files changed, 69 insertions(+) diff --git a/source/adminguide/storage.rst b/source/adminguide/storage.rst index 84bbe6224d..6bb5c8008e 100644 --- a/source/adminguide/storage.rst +++ b/source/adminguide/storage.rst @@ -1070,6 +1070,35 @@ primary storage see :ref:`add-primary-storage`. For protocol choose ``Linstor`` and as server specify the controller REST-API URL e.g.: ``http://127.0.0.1:3370`` and use the resource group name you added in the LINSTOR cluster. +Object Storage +--------------- + +This section gives technical details about CloudStack +object storage. For more information about the concepts behind object storage +see :ref:`about-object-storage` . For information about how to install and configure +object storage through the CloudStack UI, see the in the Installation Guide. + + +Creating a New Bucket +~~~~~~~~~~~~~~~~~~~~~ + +Buckets are logical containers for storing objects. To create a New Bucket: + +#. Log in to the CloudStack UI as a user or administrator. + +#. In the left navigation bar, click Storage. + +#. In Select View, choose Buckets. + +To create a new bucket, click create Bucket, provide the following details, and click OK. + +#. Name: Give the bucket a unique name. + +#. Object Store: Select the object store where you want the Bucket to reside + +Based on the selected Object Store, you can specify additional details like quota, encryption, policy etc. + + .. |AttachDiskButton.png| image:: /_static/images/attach-disk-icon.png :alt: Attach Disk Button. diff --git a/source/conceptsandterminology/concepts.rst b/source/conceptsandterminology/concepts.rst index 3babaf9584..182e61032e 100644 --- a/source/conceptsandterminology/concepts.rst +++ b/source/conceptsandterminology/concepts.rst @@ -502,6 +502,13 @@ cloud. you cannot set up multiple zones, one using NFS secondary and the other using S3 or Swift secondary. +About Object Storage +~~~~~~~~~~~~~~~~~~~~~~~ +Object storage (also known as object-based storage) is a data storage that manages data as objects. +CloudStack admin can setup supported Object Storage systems and add them to CloudStack as an Object Storage Pool. +Users can create buckets within the object storage pool. +The basic storage units of Object Store are objects. Any type of data, regardless of content type, is stored as an object. +Buckets are logical containers for storing objects. About Physical Networks ~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/source/installguide/configuration.rst b/source/installguide/configuration.rst index 016994cc79..9705b5933e 100644 --- a/source/installguide/configuration.rst +++ b/source/installguide/configuration.rst @@ -1583,6 +1583,39 @@ zone: - Path. The path to the zone's Secondary Staging Store. +Adding Object Storage +~~~~~~~~~~~~~~~~~~~~~~~~ + +You can add storage object pools at any time to add more capacity or providers to CloudStack + + + +#. Make sure you have installed supported Object Storage provider and is accessible from CloudStack Management Server + + +#. Log in to the CloudStack UI as root administrator. + +#. In the left navigation bar, click Infrastructure. + +#. In Object Storage, click View All. + +#. Click Add Object Storage. + +#. Fill in the following fields: + + - Name. Give the object store a descriptive name. + + - Provider. Choose provider and then fill in the related + fields which appear. The fields will vary depending on the object storage + provider; for more information, consult the provider's + documentation (such as the MinIO website). + + - URL: API endpoint of the object storage server + + - Access key: Credentials with access to admin API of the object storage server + + - Secret key: Credentials with access to admin API of the object storage server + .. _initialize-and-test: From c90848b6f56aae28d4ff2c0d1c5d292d54d6ef1e Mon Sep 17 00:00:00 2001 From: Kishan Kavala Date: Tue, 8 Aug 2023 12:07:30 +0530 Subject: [PATCH 2/4] Update Object Store references --- source/adminguide/storage.rst | 2 +- source/conceptsandterminology/concepts.rst | 2 ++ source/installguide/configuration.rst | 5 +++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/source/adminguide/storage.rst b/source/adminguide/storage.rst index 6bb5c8008e..b1298adf4e 100644 --- a/source/adminguide/storage.rst +++ b/source/adminguide/storage.rst @@ -1096,7 +1096,7 @@ To create a new bucket, click create Bucket, provide the following details, and #. Object Store: Select the object store where you want the Bucket to reside -Based on the selected Object Store, you can specify additional details like quota, encryption, policy etc. +Based on the selected Object Store, you can specify additional details like quota, encryption, policy. diff --git a/source/conceptsandterminology/concepts.rst b/source/conceptsandterminology/concepts.rst index 182e61032e..467b6b94fa 100644 --- a/source/conceptsandterminology/concepts.rst +++ b/source/conceptsandterminology/concepts.rst @@ -502,6 +502,8 @@ cloud. you cannot set up multiple zones, one using NFS secondary and the other using S3 or Swift secondary. +.. _about-object-storage: + About Object Storage ~~~~~~~~~~~~~~~~~~~~~~~ Object storage (also known as object-based storage) is a data storage that manages data as objects. diff --git a/source/installguide/configuration.rst b/source/installguide/configuration.rst index 9705b5933e..f0f4fff187 100644 --- a/source/installguide/configuration.rst +++ b/source/installguide/configuration.rst @@ -1583,14 +1583,15 @@ zone: - Path. The path to the zone's Secondary Staging Store. + Adding Object Storage ~~~~~~~~~~~~~~~~~~~~~~~~ -You can add storage object pools at any time to add more capacity or providers to CloudStack +You can add object storage pools at any time to add more capacity or providers to CloudStack -#. Make sure you have installed supported Object Storage provider and is accessible from CloudStack Management Server +#. Make sure you have installed supported Object Storage provider and the Object Store is accessible from CloudStack Management Server #. Log in to the CloudStack UI as root administrator. From 2be4321ecef6669a84bc926206168c3eba6c5005 Mon Sep 17 00:00:00 2001 From: Kishan Kavala Date: Thu, 30 Nov 2023 10:32:00 +0530 Subject: [PATCH 3/4] Add screenshots and minIO link --- source/_static/images/add-bucket.png | Bin 0 -> 32707 bytes source/_static/images/add-object-store.png | Bin 0 -> 23347 bytes source/adminguide/storage.rst | 3 +++ source/installguide/configuration.rst | 4 ++++ 4 files changed, 7 insertions(+) create mode 100644 source/_static/images/add-bucket.png create mode 100644 source/_static/images/add-object-store.png diff --git a/source/_static/images/add-bucket.png b/source/_static/images/add-bucket.png new file mode 100644 index 0000000000000000000000000000000000000000..988a7e48c0253fe5265190c7d32eaf9a7fb7010c GIT binary patch literal 32707 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 Date: Wed, 6 Dec 2023 17:18:47 +0530 Subject: [PATCH 4/4] fix screenshot file name --- source/installguide/configuration.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/installguide/configuration.rst b/source/installguide/configuration.rst index 9ea7b9a5d1..1b23cd127f 100644 --- a/source/installguide/configuration.rst +++ b/source/installguide/configuration.rst @@ -1822,4 +1822,4 @@ zone denied.routes Routes that .. |addcluster.png: add a cluster| image:: /_static/images/add-cluster.png .. |add-Host.png: Adding a KVM Host| image:: /_static/images/add-Host.png .. |ConsoleButton.png: button to launch a console| image:: /_static/images/console-icon.png -.. |AddObjectStore.png: Add Object Storage| image:: /_static/images/add-object-storage.png +.. |AddObjectStore.png: Add Object Storage| image:: /_static/images/add-object-store.png