Object Storage management through OpenStack common client.
Create a container
In order to create a container in the Object Storage service, you can use the openstack client with the following command.
[lxplus]$ openstack container create mycontainer01
+---------+---------------+----------------------------------------------------+
| account | container | x-trans-id |
+---------+---------------+----------------------------------------------------+
| v1 | mycontainer01 | tx000000000000000bef338-005beedb1a-1ff5583-default |
+---------+---------------+----------------------------------------------------+
Manipulate objects in a container
To upload files to a container you can use the following command
[lxplus]$ openstack object create --name mytestfile01 mycontainer01 testfile.txt
+--------------+---------------+----------------------------------+
| object | container | etag |
+--------------+---------------+----------------------------------+
| mytestfile01 | mycontainer01 | c73f47d1969e955b1cd354825b310398 |
+--------------+---------------+----------------------------------+
Once uploaded you can see the metadata through:
[lxplus]$ openstack object show mycontainer01 mytestfile01
+----------------+----------------------------------+
| Field | Value |
+----------------+----------------------------------+
| account | v1 |
| container | mycontainer01 |
| content-length | 504 |
| content-type | text/plain |
| etag | c73f47d1969e955b1cd354825b310398 |
| last-modified | Fri, 16 Nov 2018 15:20:00 GMT |
| object | mytestfile01 |
+----------------+----------------------------------+
You can retrieve the contents by using, please note that this will overwrite the file in the local directory
Finally you can delete the object with the following command
Delete the container
If you want to delete the container, you can use the following command
If the container has some data, you can trigger the recursive option to delete the objects internally.
[lxplus]$ openstack container delete mycontainer01
Conflict (HTTP 409) (Request-ID: tx000000000000000b8058a-005beee207-20075e4-default)
[lxplus]$ openstack container delete --recursive mycontainer01
List existing containers
You can check the existing containers with
[lxplus ~]$ openstack container list
+---------------+
| Name |
+---------------+
| mycontainer01 |
+---------------+
Space utilization
To check the overall space used, you can use the following command
[lxplus]$ openstack object store account show
+------------+---------------+
| Field | Value |
+------------+---------------+
| Account | v1 |
| Bytes | 5065108948906 |
| Containers | 81 |
| Objects | 375322 |
+------------+---------------+
To check the space used by a specific container
[lxplus]$ openstack container show mycontainer01
+----------------+-------------------+
| Field | Value |
+----------------+-------------------+
| account | v1 |
| bytes_used | 1502 |
| container | mycontainer01 |
| object_count | 1 |
| storage_policy | default-placement |
+----------------+-------------------+