С 1991 года на компьютерном рынке России
e-mail

т.: 676 0965, 676 0396
Москва, Сосинская ул. 43,
м. Волгоградский проспект
Реализация облачного хранилища с OpenStack Swift.

Дополнения


Данное приложение предоставляет подробную информацию о наборе команд, которые могут быть запущены из сеанса Swift CLI. Эти командымогут быть использованы для операций CRUD.

Команды

В Swift CLI можно выполнять следующие команды: list, stat, post, upload, download и delete. Каждая команда имеет подробную справку, которая может быть отображена путем выполнения команды swift command –h, например swift list –h.

List

Команда list используется для перечисления контейнеров для учетной записи или объектовдля контейнера. Данный подраздел объясняет использование команды list.
# swift list <container> -A Auth_URL –U User –K Key --os-username=<authuser-name> --os-password=<auth-password> --os-tenant-id=<auth-tenantid> --os-tenant-name=<auth-tenant-name> --os-auth-url=<auth-url> --osauth-token=<auth-token> --os-storage-url=<storage-url> --os-regionname=<region-name> --os-service-type=<service-type> --os-endpointtype=<endpoint-type> --prefix=PREFIX

Примеры

С использованием следующей команды вы можете перечислить контейнеры с информацией об их размере:
# swift -V 2.0 -A https://auth.lts2.evault.com/v2.0 -U admin:user1 -K t1 list --lh

# swift -V 2.0 -A https://auth.lts2.evault.com/v2.0 -U admin:user1 -K t1 list –long

С использованием следующей команды вы можете перечислить контейнеры с информацией об их размере, имеющими префикс con1:
# swift -V 2.0 -A https://auth.lts2.evault.com/v2.0 -U admin:user1 -K t1 list --lh --prefix con1

С использованием следующей команды вы можете перечислить контейнеры с информацией об их размере, имеющими префикс con1 и расположенными в регионе regionOne:
# swift -V 2.0 -A https://auth.lts2.evault.com/v2.0 -U admin:user1 -K t1 list --lh --prefix con1 --os-region-name=regionOne

Stat

Команда stat используется для отображения информации об учетных записях, контейнерах или объектах. Данный подраздел объясняет использование команды stat.
# swift stat <container> <object> -A Auth_URL –U User –K Key --osusername=<auth-user-name> --os-password=<auth-password> --os-tenantid=<auth-tenant-id> --os-tenant-name=<auth-tenant-name> --os-authurl=<auth-url> --os-auth-token=<auth-token> --os-storage-url=<storageurl> --os-region-name=<region-name> --os-service-type=<service-type> --os-endpoint-type=<endpoint-type>

Примеры

С помощью следующей команды вы можете отобразить метаданные учетной записи:
# swift -V 2.0 -A https://auth.lts2.evault.com/v2.0 -U admin: user1 -K t1 stat

С помощью следующей команды вы можете отобразить метаданные контейнера container2:
# swift -V 2.0 -A https://auth.lts2.evault.com/v2.0 -U admin:user1 -K t1 stat container2

С помощью следующей команды вы можете отобразить метаданные учетной записи в регионе regionOne в длинном формате отображения с итоговыми значениями:
# swift -V 2.0 -A https://auth.lts2.evault.com/v2.0 -U admin:user1 -K t1 stat --lh --os-region-name=regionOne

Post

Команда post используется для обновления метаданных информации для учетных записей, контейнеров или объектов. Данный подраздел объясняет использование команды post.
# swift post <container> <object> --read-acl <acl> --write-acl <acl> --meta <name:value> --header <header> -A Auth_URL –U User –K Key --osusername=<auth-user-name> --os-password=<auth-password> --os-tenantid=<auth-tenant-id> --os-tenant-name=<auth-tenant-name> --os-authurl=<auth-url> --os-auth-token=<auth-token> --os-storage-url=<storageurl> --os-region-name=<region-name> --os-service-type=<service-type> --os-endpoint-type=<endpoint-type>

Примеры

С помощью следующей команды обновите метаданные read-acl для контейнера container1:
# swift -V 2.0 -A https://auth.lts2.evault.com/v2.0 -U admin:user1 -K t1 post container1 --read-acl=account1

С помощью следующей команды добавьте метаданные Size:Large и Color:Blue для контейнера container2:
# swift -V 2.0 -A https://auth.lts2.evault.com/v2.0 -U admin:user1 -K t1 post container2 -m Size:Large -m Color:Blue

С помощью следующей команды обновите метаданные заголовка content-type как text/plain в контейнере container3:
# swift -V 2.0 -A https://auth.lts2.evault.com/v2.0 -U admin:user1 -K t1 post container3 -H "content-type:text/plain"

Обновите метаданные read-acl для контейнера container4, осуществив доступ через регион regionOne:
# swift -V 2.0 -A https://auth.lts2.evault.com/v2.0 -U admin:user1 -K t1 post container4 --read-acl=account1 --os-region-name=regionOne

Upload

Команда upload используется для пересылки файлов и каталогов в определенный контейнер. Данный подраздел объясняет использование команды upload.
# swift upload <container> <file_or_directory> --changed --segmentsize <size> --segment-container <container> --leave-segments --header <header> -A Auth_URL –U User –K Key --os-username=<auth-user-name> --ospassword=<auth-password> --os-tenant-id=<auth-tenant-id> --os-tenantname=<auth-tenant-name> --os-auth-url=<auth-url> --os-auth-token=<authtoken> --os-storage-url=<storage-url> --os-region-name=<region-name> --os-service-type=<service-type> --os-endpoint-type=<endpoint-type>

Примеры

С использованием следующей команды перешлите объект key.txt в контейнер container1:
# swift -V 2.0 -A https://auth.lts2.evault.com/v2.0 -U admin:user1 -K t1 upload container1 key.txt

С использованием следующей команды перешлите множество объектов (key1.txt, key2.txt и key3.txt) в контейнер container1:
# swift -V 2.0 -A https://auth.lts2.evault.com/v2.0 -U admin:user1 -K t1 upload container1 key1.txt key2.txt key3.txt

Перешлите объект key.txt в контейнер container2 с использованием размера сегмента (segment-size) 100 Байт. Swift имеет ограничение на объект, установленное по умолчанию в значение 5ГБайт. Файлы бОльшего размера могут пересылаться с использованием параметра segment-size. Объект будет сохраняться в нескольких сегментах в хранилище объектов Swift. В данном примере каждый созданный объект будет иметь размер 100 Байт и будет переслано множество таких сегментов, определяемое размером объекта. Параметр –changed используется для того, чтобы файл был перемещен только в случае если он был изменен с момента последней пересылки, как это делается в следующей команде:
# swift -V 2.0 -A https://auth.lts2.evault.com/v2.0 -U admin:user1 -K t1 upload container2 key.txt --changed --segment-size=100 Перешлите объект key.txt в контейнер container3 с использованием размера сегмента (segment-size) 100 Байт. Также мы неявно описываем каталог сегмента seg_container3 в который будут перемещаться сегменты.
# swift -V 2.0 -A https://auth.lts2.evault.com/v2.0 -U admin:user1 -K t1 upload container3 key.txt --segment-size=100 --segment-container=seg_container3

Перешлите объект key.txt в контейнер container4 с использованием размера сегмента (segment-size) 100 Байт. Параметр use-slo задается для создания статичного большого объекта вместо определяемого по умолчанию динамичногообльшого объекта, как продемонстрировано в следующей команде:
# swift -V 2.0 -A https://auth.lts2.evault.com/v2.0 -U admin:user1 -K t1 upload container4 key.txt --segment-size=100 --use-slo --os-regionname=regionOne

Download

Команда download используется для выгрузки объектов из контейнера. Данный подраздел объясняет использование команды download.
# swift download <container> <object> --all --prefix <prefix> --output <out_file> -A Auth_URL –U User –K Key --os-username=<auth-username> --os-password=<auth-password> --os-tenant-id=<auth-tenant-id> --os-tenant-name=<auth-tenant-name> --os-auth-url=<auth-url> --osauth-token=<auth-token> --os-storage-url=<storage-url> --os-regionname=<region-name> --os-service-type=<service-type> --os-endpointtype=<endpoint-type>

Примеры

С использованием следующей команды выгрузите все объекты из всех контейнеров:
# swift -V 2.0 -A https://auth.lts2.evault.com/v2.0 -U admin:user1 -K t1 download --all

С помощью следующей команды выгрузите все объекты с префиксом key из контейнера container1:
# swift -V 2.0 -A https://auth.lts2.evault.com/v2.0 -U admin:user1 -K t1 download container1 --prefix key

С помощью следующей команды выгрузите объект key.txt из контейнера container1:
# swift -V 2.0 -A https://auth.lts2.evault.com/v2.0 -U admin:user1 -K t1 download container1 key.txt

С использованием следующей команды выгрузите все объекты из всех контейнеров с применением двух потоков для выгрузки объектов:
# swift -V 2.0 -A https://auth.lts2.evault.com/v2.0 -U admin:user1 -K t1 download --all --object-threads 2 --os-region-name=regionOne

Delete

Команда delete используется для удаления контейнера или удаления объектов в контейнере. Данный подраздел объясняет использование команды delete.
# swift delete <container> <object> --all –leave_segments -A Auth_URL –U User –K Key --os-username=<auth-user-name> --os-password=<authpassword> --os-tenant-id=<auth-tenant-id> --os-tenant-name=<auth-tenantname> --os-auth-url=<auth-url> --os-auth-token=<auth-token> --osstorage-url=<storage-url> --os-region-name=<region-name> --os-servicetype=<service-type> --os-endpoint-type=<endpoint-type>

Примеры

С помощью следующей команды удалите объект key.txt из контейнера container1:
# swift -V 2.0 -A https://auth.lts2.evault.com/v2.0 -U admin:user1 -K t1 delete container1 key.txt

С помощью следующей команды удалите все объекты из контейнера container2 и оставьте сегменты как есть:
# swift -V 2.0 -A https://auth.lts2.evault.com/v2.0 -U admin:user1 -K t1 delete container2 --leave-segments

С помощью следующей команды удалите все объекты и все контейнеры:
# swift -V 2.0 -A https://auth.lts2.evault.com/v2.0 -U admin:user1 -K t1 delete --all

С помощью следующей команды удалите все объекты и все контейнеры с применением двух потоков для удаления объектов:
# swift -V 2.0 -A https://auth.lts2.evault.com/v2.0 -U admin:user1 -K t1 delete --all --object-threads=2 --os-region-name=regionOne

Глава 8 Оглавление Указатель
 
Перевод: Copyright © 2014  .
All rights reserved.
Ссылки обязательны (Refs and links obligatory).
http://www.mdl.ru