Add storage
Adds additional storage resources to the provider.
Example cURL requests
Add storage
curl -H "X-Auth-Token: $TOKEN" -X POST https://$HOST/api/v3/onepanel/provider/storages \
-H "Content-Type: application/json" -d '{
"My S3 Storage": {
"type": "s3",
"hostname": "iam.example.com",
"bucketName": "bucket1.iam.example.com",
"skipStorageDetection": true
}
}'
Request body
The configuration details of storage resources to be added to the provider deployment. Must be an object with unique names for the storages as keys and their corresponding configuration (objects) as values - see the request body example.
<key> object The storage configuration.
The storage configuration.
The type of storage.
type = "posix"
Any POSIX compatible storage, typically attached over high-throughput local network, such as NFS.
Type of the storage. Must be given explicitly and must match the actual type of subject storage - this redundancy is needed due to limitations of OpenAPI polymorphism.
Type of the storage. Must be given explicitly and must match the actual type of subject storage - this redundancy is needed due to limitations of OpenAPI polymorphism.
The type of storage.
type = "localceph"
Local Ceph cluster that has been deployed during deployment of Oneprovider. For more information on local Ceph deployment please see here.
Type of the storage. Must be given explicitly and must match the actual type of subject storage - this redundancy is needed due to limitations of OpenAPI polymorphism.
The type of storage.
type = "nulldevice"
POSIX compatible storage which emulates behavior of /dev/null on
local filesystem. Allows running various performance tests, which are
not impacted by actual storage latency. Skip storage detection option
is obligatory for this type of storage.
Type of the storage. Must be given explicitly and must match the actual type of subject storage - this redundancy is needed due to limitations of OpenAPI polymorphism.
Type of the storage. Must be given explicitly and must match the actual type of subject storage - this redundancy is needed due to limitations of OpenAPI polymorphism.
Type of the storage. Must be given explicitly and must match the actual type of subject storage - this redundancy is needed due to limitations of OpenAPI polymorphism.
Storage operation timeout in milliseconds.
If true, detecting whether storage is directly accessible by the Oneclient will not be performed. This option should be set to true on readonly storages.
Type of feed for LUMA DB. Feed is a source of user/group mappings used to populate the LUMA DB. For more info please read: https://onedata.org/#/home/documentation/doc/administering_onedata/luma.html
URL of external feed for LUMA DB. Relevant only if lumaFeed equals external.
API key checked by external service used as feed for LUMA DB. Relevant only if lumaFeed equals external.
Map with key-value pairs used for describing storage QoS parameters.
Defines whether storage contains existing data to be imported.
Defines whether the storage is readonly. If enabled, Oneprovider will block any operation that writes, modifies or deletes data on the storage. Such storage can only be used to import data into the space. Mandatory to ensure proper behaviour if the backend storage is actually configured as readonly. This option is available only for imported storages.
Request Examples
{
"s3": {
"type": "s3",
"s3Hostname": "s3.example.com",
"iamHostname": "iam.example.com",
"bucketName": "bucket1.iam.example.com",
"accessKey": "4efb70ad3e1fc8dd73c721b8f683b2e831503892",
"secretKey": "fdeac26aedd3a179f9551d7007cc6a6273165782"
},
"swift": {
"type": "swift",
"authUrl": "http://keystone2.example.com",
"tenantName": "Project1",
"containerName": "Container1",
"username": "user",
"password": "p@$$w0rd"
}
}Responses
The storage resources have been successfully added to the provider deployment.
Invalid request.
error object Object describing an error.
Object describing an error.
String identifying the error type. Does not change between error instances.
Human readable error description. May contain information specific to given error instance.
Details about the error instance. The object schema is specific to each error type.
Example
{
"error": {
"id": "badValueString",
"details": {
"key": "name"
},
"description": "Bad value: provided \"name\" must be a string."
}
}Unauthorized request.
Forbidden request.
Internal server error.
error object Object describing an error.
Object describing an error.
String identifying the error type. Does not change between error instances.
Human readable error description. May contain information specific to given error instance.
Details about the error instance. The object schema is specific to each error type.
Example
{
"error": {
"id": "badValueString",
"details": {
"key": "name"
},
"description": "Bad value: provided \"name\" must be a string."
}
}Services needed to fulfill this request are not running.