Add Openstack Swift storage driver
Signed-off-by: Sylvain Baubeau <sbaubeau@redhat.com>
This commit is contained in:
parent
5ee441cdc7
commit
ea7c53df08
8 changed files with 828 additions and 0 deletions
|
@ -49,6 +49,7 @@ This section lists all the registry configuration options. Some options in
|
|||
the list are mutually exclusive. So, make sure to read the detailed reference
|
||||
information about each option that appears later in this page.
|
||||
|
||||
<<<<<<< HEAD
|
||||
version: 0.1
|
||||
log:
|
||||
level: debug
|
||||
|
@ -92,6 +93,14 @@ information about each option that appears later in this page.
|
|||
poolname: radospool
|
||||
username: radosuser
|
||||
chunksize: 4194304
|
||||
swift:
|
||||
username: username
|
||||
password: password
|
||||
authurl: https://storage.myprovider.com/v2.0
|
||||
tenant: tenantname
|
||||
region: fr
|
||||
container: containername
|
||||
rootdirectory: /swift/object/name/prefix
|
||||
cache:
|
||||
blobdescriptor: redis
|
||||
maintenance:
|
||||
|
@ -580,6 +589,107 @@ must be set.
|
|||
|
||||
Note: `age` and `interval` are strings containing a number with optional fraction and a unit suffix: e.g. 45m, 2h10m, 168h (1 week).
|
||||
|
||||
### Openstack Swift
|
||||
|
||||
This storage backend uses Openstack Swift object storage.
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<th>Parameter</th>
|
||||
<th>Required</th>
|
||||
<th>Description</th>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<code>authurl</code>
|
||||
</td>
|
||||
<td>
|
||||
yes
|
||||
</td>
|
||||
<td>
|
||||
URL for obtaining an auth token.
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<code>username</code>
|
||||
</td>
|
||||
<td>
|
||||
yes
|
||||
</td>
|
||||
<td>
|
||||
Your Openstack user name.
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<code>password</code>
|
||||
</td>
|
||||
<td>
|
||||
yes
|
||||
</td>
|
||||
<td>
|
||||
Your Openstack password.
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<code>region</code>
|
||||
</td>
|
||||
<td>
|
||||
no
|
||||
</td>
|
||||
<td>
|
||||
The Openstack region in which your container exists.
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<code>container</code>
|
||||
</td>
|
||||
<td>
|
||||
yes
|
||||
</td>
|
||||
<td>
|
||||
The container name in which you want to store the registry's data.
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<code>tenant</code>
|
||||
</td>
|
||||
<td>
|
||||
no
|
||||
</td>
|
||||
<td>
|
||||
Your Openstack tenant name.
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<code>chunksize</code>
|
||||
</td>
|
||||
<td>
|
||||
no
|
||||
</td>
|
||||
<td>
|
||||
Size of the data segments for the Swift Dynamic Large Objects. This value should be a number (defaults to 5M).
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<code>rootdirectory</code>
|
||||
</td>
|
||||
<td>
|
||||
no
|
||||
</td>
|
||||
<td>
|
||||
This is a prefix that will be applied to all Swift keys to allow you to segment data in your container if necessary.
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
## auth
|
||||
|
||||
auth:
|
||||
|
|
21
docs/storage-drivers/swift.md
Normal file
21
docs/storage-drivers/swift.md
Normal file
|
@ -0,0 +1,21 @@
|
|||
# Openstack Swift storage driver
|
||||
|
||||
An implementation of the `storagedriver.StorageDriver` interface which uses Openstack Swift for object storage.
|
||||
|
||||
## Parameters
|
||||
|
||||
`authurl`: URL for obtaining an auth token.
|
||||
|
||||
`username`: Your Openstack user name.
|
||||
|
||||
`password`: Your Openstack password.
|
||||
|
||||
`container`: The name of your Swift container where you wish to store objects. An additional container - named `<container>_segments` to store the data will be used. The driver will try to create both containers during its initialization.
|
||||
|
||||
`tenant`: (optional) Your Openstack tenant name.
|
||||
|
||||
`region`: (optional) The name of the Openstack region in which you would like to store objects (for example `fr`).
|
||||
|
||||
`chunksize`: (optional) The segment size for Dynamic Large Objects uploads (performed by WriteStream) to swift. The default is 5 MB. You might experience better performance for larger chunk sizes depending on the speed of your connection to Swift.
|
||||
|
||||
`rootdirectory`: (optional) The root directory tree in which all registry files will be stored. Defaults to the empty string (container root).
|
|
@ -23,6 +23,7 @@ This storage driver package comes bundled with several drivers:
|
|||
- [s3](storage-drivers/s3.md): A driver storing objects in an Amazon Simple Storage Solution (S3) bucket.
|
||||
- [azure](storage-drivers/azure.md): A driver storing objects in [Microsoft Azure Blob Storage](http://azure.microsoft.com/en-us/services/storage/).
|
||||
- [rados](storage-drivers/rados.md): A driver storing objects in a [Ceph Object Storage](http://ceph.com/docs/master/rados/) pool.
|
||||
- [swift](storage-drivers/swift): A driver storing objects in Openstack Swift.
|
||||
|
||||
## Storage Driver API
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue