Archive Storage CLI

Prev Next

Classic/VPC環境で利用できます。

OpenStack swift CLIと互換性のある Archive Storage CLIの初期設定方法から、簡単な使用方法などを確認します。

初期設定

Archive Storage CLIを使用するためのインストールと認証方法について説明します。

インストール

インストールコマンドは、次の通りです。

  • Python 3.9以下:
pip install python-keystoneclient==3.17.0
pip install python-swiftclient==3.6.0
  • Python 3.10以上:
pip install python-keystoneclient==5.1.0
pip install python-swiftclient==4.3.0
参考

関連資料は、以下をご参照ください。

認証

認証情報を設定する方法は、次の通りです。

  • リクエスト

    swift --os-auth-url https://kr.archive.ncloudstorage.com:5000/v3 --auth-version 3 \
          --os-username {access_key_id} --os-password {secret_key} \
          --os-user-domain-id {domain_id} --os-project-id {project_id} \
          auth
    
  • 結果

    export OS_STORAGE_URL=https://kr.archive.ncloudstorage.com/v1/AUTH_{project_id}
    export OS_AUTH_TOKEN={token}
    
    • 結果値に表示されている exportコマンドで、OS STORAGE URL、OS AUTH TOKENを環境変数として宣言し、再認証なしでサービスリクエストを利用可能

      export OS_STORAGE_URL=https://kr.archive.ncloudstorage.com/v1/AUTH_{project_id}
      export OS_AUTH_TOKEN={token}
      
      swift list
      
    • 環境変数として使用せず、--os-storage-url、--os-auth-tokenのオプション値を入力して使用可能

      swift --os-storage-url https://kr.archive.ncloudstorage.com/v1/AUTH_{project_id} \
            --os-auth-token {token} \
            list
      
    • サービス URLとトークン値を保存して使用せず、リクエストごとに認証する方法で使用可能

      swift --os-auth-url https://kr.archive.ncloudstorage.com:5000/v3 --auth-version 3 \
            --os-username {access_key_id} --os-password {secret_key} \
            --os-user-domain-id {domain_id} --os-project-id {project_id} \
            list
      
      参考

      サービスリクエストの前に、毎回認証リクエストを実行するため、お勧めしません。

コマンド

Archive Storage CLIについて説明します。

コンテナリストの照会

コンテナリストを照会するコマンドは、次の通りです。

swift --os-storage-url https://kr.archive.ncloudstorage.com/v1/AUTH_{project_id} \
      --os-auth-token {token} \
      list
参考

サブアカウントの場合、コンテナリストへの照会コマンド(swift list)は使用できません。

オブジェクトリストの照会

オブジェクトリストを照会するコマンドは、次の通りです。

swift --os-storage-url https://kr.archive.ncloudstorage.com/v1/AUTH_{project_id} \
      --os-auth-token {token} \
      list {container}

オブジェクトのアップロード

オブジェクトをアップロードするコマンドは、次の通りです。

swift --os-storage-url https://kr.archive.ncloudstorage.com/v1/AUTH_{project_id} \
      --os-auth-token {token} \
      upload {container} --object-name {object} {local_file_path}

大容量オブジェクトのアップロード

大容量オブジェクトをアップロードするときは、セグメントコンテナとマニフェストコンテナをそれぞれ異なるように指定する必要があります。
以下はマニフェストファイルを container1にアップロードし、セグメントファイルを container2にアップロードするコマンド例です。

swift --os-storage-url https://kr.archive.ncloudstorage.com/v1/AUTH_{project_id} \
      --os-auth-token {token} \
      upload container1 --object-name {object} {local_file_path} --segment-size {size} --segment-container container2 [--use-slo]

ダウンロードを実行するには、container1にアップロードされたオブジェクトをダウンロードします。

ローカルパス全体のアップロード

recursiveにローカルパス全体をアップロードするコマンドは、次の通りです。

swift --os-storage-url https://kr.archive.ncloudstorage.com/v1/AUTH_{project_id} \
      --os-auth-token {token} \
      upload {container} {local_file_path}

オブジェクトの削除

オブジェクトを1つ以上入力して削除するコマンドは、次の通りです。

swift --os-storage-url https://kr.archive.ncloudstorage.com/v1/AUTH_{project_id} \
      --os-auth-token {token} \
      delete {container} {object} [...]

--prefixオプションを使って指定した prefixで始まるオブジェクトを削除するには、以下のようにコマンドを実行します。

swift --os-storage-url https://kr.archive.ncloudstorage.com/v1/AUTH_{project_id} \
      --os-auth-token {token} \
      delete {container} --prefix {prefix}

コンテナの削除

コンテナのすべてのオブジェクトを削除して、最後にコンテナを削除するコマンドは次の通りです。

swift --os-storage-url https://kr.archive.ncloudstorage.com/v1/AUTH_{project_id} \
      --os-auth-token {token} \
      delete {container}