Objects
File storage architecture may be divided into three classes.
- Object storage architecture
- File storage architecture
- Block storage architecture
Object storage architecture
Object storage (also known as object-based storage) is a storage architecture that manages data as distinct units called objects. The object storage system is self-contained, containing all data from each object. With an object storage system, you can retain a massive amount of unstructured data.
File storage architecture
File storage architecture organizes data similarly to the way paper file storage. It stores data as a single piece of information inside folders. To access your data, you need to know the path to the folder.
Block storage architecture
In block storage architecture, data is segmented into blocks (blocking process) and stored on separate blocks, each with a unique identifier. When needed, data extract from blocks by running deblock process.
Before you begin
To create an object filesystem with the S1 system, you need to:
- Create at least one floating IP.
- Create at least one access key.
Create access keys
To create an access key, use the applications objects access_keys create
command. You must create an access key before you can use an
object filesystem (OFS).
Usage
applications objects access_keys create <accessKey> --secretKey=<secretKey> --role=<objectPermissions>
Options
Options and arguments | Description |
---|---|
<accessKey> |
Specify the name of the key. Replace the positional argument <accessKey> with s1: and append it with a name of your choice containing at least five characters. |
--secretKey=<secretKey> |
Create a master access key for all the objects. Replace <secretKey> with your chosen password. Your password must be at least eight characters long. |
--role=<objectPermissions> |
Grant a user with permissions. Replace <objectPermissions> with either Admin or Regular (Regular grants read and write privileges). |
Examples
- To create access key
Abraham
with secrete keypwd123456
and roleadmin
; run:applications objects access_keys create s1:Abraham --secretKey pwd123456 --role admin
List all access keys
To list all access keys, use the applications objects access_keys list
command.
Usage
applications objects access_keys list [--accessKey=<text>]
Options
Options and arguments | Description |
---|---|
--accessKey=<text> |
To list only results for a specific access key, replace <text> with the name of the access key. |
Examples
-
To list all access keys, run:
applications objects access_keys list
Edit an access key
You can edit the access key using the application access_keys edit
command.
Usage
applications objects access_keys edit <accessKey> [--newAccessKey=<accessKey> --secretKey=<secretKey> --role=<objectPermissions>] [--force]
Options
Options and arguments | Description |
---|---|
<accessKey> |
Specify the access key you want to delete. Replace the positional argument <accessKey> with the existing access key name you want to delete. |
--newAccessKey=<accessKey> |
To rename the access key. Replace the positional argument <accessKey> with s1: and append it with a name of your choice with at least five characters. |
--secretKey=<secretKey> |
To create a master access key for all the objects. Replace <secretKey> with your chosen password. Your password must be at least eight characters long. |
--role=<objectPermissions> |
To grant the user with permissions. Replace <objectPermissions> with either Admin or Regular (Regular user grants read and write privileges). |
--force |
To force editing the access key, even though it might be associated with an existing object filesystem. |
Examples
-
To change access key name
Abraham
toJacob
; change password frompwd123456
topwd654321
, and restrict his permission access toRegular
; and to force the edit, run:applications objects access_keys edit Abraham --newAccessKey Jacob --secretKey pwd654321 --role Regular --force
Delete an access key
You can delete an access key using the applications objects access_keys delete
command.
Usage
applications objects access_keys delete <accessKey>
Options
Options and arguments | Description |
---|---|
<accessKey> |
Specify the name of the access key you want to delete. Replace <accessKey> with the existing access key you want to delete. |
Examples
-
To delete access key
Jacob
; runapplications objects access_keys delete Jacob
Creating an object storage
To create an object storage file system on a volume, use the
applications objects stores create
command.
Usage
applications objects stores create --application=<app_name> --volume=<vol_name> --floatingIp=<name> --port=<port> --accessKeys=<text…> [--enableUseSsl]
Options
Options and arguments | Description |
---|---|
--application=<app_name> |
Specify the app instance of the volume. Replace <app_name> with the name of the application instance name. |
--volume=<vol_name> |
Specify the volume where the object file system is to create. Replace <vol_name> with the name of the volume. |
--floatingIp=<name> |
Specify the floating IP which will be used for this object. Replace <name> with the floating IP name. |
--port=<port> |
Specify the TCP port for the object storage file system. |
--accessKeys=<text…> |
Grant users with the specified access-keys permission to use the object filesystem. Replace <text…> with a list of access keys. |
--enableUseSsl |
To enable communication through a secure socket layer (SSL). |
Remark:
- The access key option allows access from multiple users, where each of the users has its key.
Example
-
To create an object file system on volume
vol1
(mapped to application instancesales
) with floating IP nameconnect1
on port 8088 over SSL communication with access keys `Abraham, Jacob, run:applications object stores create --application sales --volume vol1 --floatingIp connect1 --port 8088 --accessKeys Abraham Jacob --enableusessl
List all object filesystem
You can list all object storage using the applications objects stores list
command.
Usage
applications objects stores list [(--application=<app_name> --volume=<vol_name>)]
Options
Options and arguments | Description |
---|---|
--application=<app_name> |
To specify the app instance of the volume, replace <app_name> with the name of the application instance name. |
--volume=<vol_name> |
To specify the volume from where the object file system will be listed, replace <vol_name> with the name of the volume. |
Examples
-
To list all object file systems, run:
applications objects stores list
-
To list all objects file systems on a volume
vol1
mapped to an application instancesales
, runapplications objects stores list --application sales --volume vol1
Edit an existing object filesystem
To edit the object filesystem, use the applications objects stores edit
command.
Usage
applications objects stores edit --application=<app_name> --volume=<vol_name> [--floatingIp=<name> --port=<port> --accessKeys=<text…> --enableUseSsl | --disableUseSsl]
Options
Options and arguments | Description |
---|---|
--application=<app_name> |
Specify the app instance of the volume. Replace <app_name> with the name of the application instance name. |
--volume=<vol_name> |
Specify the volume where the object file system is to create. Replace <vol_name> with the name of the volume. |
--floatingIp=<name> |
To specify the floating IP which will be used for this object. Replace <name> with the floating IP name. |
--port=<port> |
To specify the TCP port for the object storage file system. |
--accessKeys=<text…> |
To edit the granted user list. Replace <text…> with a list of access keys. |
--enableUseSsl |
To enable communication through a secure socket layer (SSL). |
--disableUseSsl |
To disable communication through a secure socket layer (SSL). |
Examples
-
Suppose that we have an object filesystem on volume
vol1
(mapped to application instancesales
) with floating IP nameconnect1
on port 8088 over SSL communication with access keysIsaac Jacob
. To disable SSL communication and change the access key passwords, run:applications objects stores edit --application sales --volume vol1 --disableUseSsl
-
Suppose that we have an object filesystem on volume
vol1
(mapped to application instancesales
) with floating IP nameconnect1
on port 8088 over SSL communication with access keysIsaac Jacob
. To rewrite the list of access keys replacing it with the listDavid Jonathan
; to change floating IP name tomycel
; and to change the port to 9090, run:application objects stores edit --application sales --volume vol1 --floatingIp cel --port 9090 --accessKeys David Jonathan
Delete an object filesystem
To delete an object filesystem, use the applications objects stores delete
command.
Usage
applications objects stores delete --application=<name> --volume=<name>
Options
Options and arguments | Description |
---|---|
--application=<app_name> |
Specify the app instance of the volume. Replace <app_name> with the name of the application instance name. |
--volume=<vol_name> |
Specify the volume where the object store that you want to delete resides. Replace <vol_name> with the name of the volume. |
Example
- To delete all object filesystems on volume
vol1
; mapped to application instancesales
; run:applications objects stores delete --application sales --volume vol1
Add access keys to objects
Use this command when you want to add existing access keys to the
Object filesystems (OFSs) in a volume. To add access keys that
already exist to an object, use the applications objects stores access_keys add
command.
Usage
applications objects stores access_keys add --application=<app_name> --volume=<vol_name> --accessKeys=<text…>
Options
Options and arguments | Description |
---|---|
--application=<app_name> |
Specify the app instance of the volume. Replace <app_name> with the name of the application instance name. |
--volume=<vol_name> |
Specify the volume of the OFSs. Replace <vol_name> with the name of the volume. |
--accessKeys=<text…> |
Add object keys of the OFSs. Replace <text…> with a list of existing access keys. |
Examples
-
To add new access keys
Abraham Isaac Jacob
to all object filesystems on volumevol1
that mapped to application instancesales
; run:applications objects stores access_keys add --application sales --volume vol1 --accessKeys Abraham Isaac Jacob
Remove access keys from objects
Use this command to restrict users from using the object filesystems of a volume. To delete access keys from volume objects, use the applications objects stores access_keys delete
command.
Usage
applications objects stores access_keys delete --application=<app_name> --volume=<vol_name> --accessKeys=<text…>
Options
Options and arguments | Description |
---|---|
--application=<app_name> |
Specify the app instance of the volume. Replace <app_name> with the name of the app instance name. |
--volume=<vol_name> |
Specify the volume of the OFSs. Replace <vol_name> with the name of the volume. |
--accessKeys=<text…> |
Delete the object keys of the OFSs. Replace <text…> with a list of access keys. |
Examples
-
To delete access keys
Abraham
andIsaac
from all object filesystems on a volumevol1
( mapped to application instancesales
), run:applications objects stores access_keys delete --application sales --volume vol1 --accessKeys pwd01 pwd58