Swift Object Storage
OpenStack Object Storage (Swift)
This guide explains how to manage Object Storage using the OpenStack CLI. It applies to OpenStack Swift environments.
Prerequisites
Some Swift operations require an extra client.
pip install python-swiftclient
Make sure your OpenStack credentials are loaded (for example, using an openrc file).
Create a Container
A container is the main storage unit in Swift.
Create a container named data:
openstack container create data
Download an object.
To download an object locally:
openstack object save data test/example.png \
--file local-file.png
Delete a Container
If you want to delete the container, you can use the following command:
openstack container delete data
List Containers
To list all containers in your project:
openstack container list
+-------------+
| Name |
+-------------+
| data |
+-------------+
Upload Objects
You can upload files to a container using the OpenStack client. Object names can include path-like prefixes.
openstack object create data \
--name test/example.png \
./example.png
+------------------------------------+--------------+----------------------------------+
| object | container | etag |
+------------------------------------+--------------+----------------------------------+
| test/example.png | data | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx |
+------------------------------------+--------------+----------------------------------+
List Objects in a Container
openstack object list data
+------------------------------------+
| Name |
+------------------------------------+
| test/example.png |
+------------------------------------+
Container Usage
To see how much storage are you using in your container, use the following commnand:
openstack container show data
+----------------+-------------------+
| Field | Value |
+----------------+-------------------+
| container | data |
| bytes_used | 3045 |
| object_count | 1 |
| storage_policy | default-placement |
+----------------+-------------------+