最近リニューアルした新ConoHa(
https://www.conoha.jp/)のオブジェクトストレージを試してます。
公式にはオブジェクトストレージを操作する方法として下記2つが紹介されていました。
・CyberDuck(GUIクライアント)を使う方法
・APIを叩く方法
CyberDuck
GUIクライアントは下記記事の通り接続できました。
新ConoHaのオブジェクトストレージにCyberDuckで接続しようとして401認証エラー
コンテナの作成やファイルのアップロード、ダウンロードは問題なくできるんですがコンテナへの属性追加とか、細かい操作はできないみたい。
やりたいのはそっちなので結局APIを使う方法に切り替えることに。
APIによる操作
APIを操作する方法はCURLを使う方法とSwiftコマンドラインクライアントを使う方法がある(?)っぽいです。(ちゃんと調べてない)
swiftコマンドラインクライアントを使う方が、OpenStackSwiftの操作に適してそうな気がしたのでそっちを先に試してみます。
インストールは下記記事の通り行いました。
ConoHaのオブジェクトストレージを操作するためにOpenStackSwiftのコマンドラインクライアントをインストールする
swiftコマンドラインクライアントによる接続
環境
MacOSX 10.10.3
swift 2.4.0
環境変数ファイルを準備
~/swift_conoha
export OS_AUTH_URL=https://identity.tyo1.conoha.io/v2.0 (認証サーバーのAPIエンドポイント)
export OS_TENANT_NAME=XXXXXXXXXXXX (テナント名)
export OS_USERNAME=XXXXXXXXXXXX (APIユーザー名)
export OS_PASSWORD=XXXXXXXXXXXX (APiユーザーパスワード)
起動確認
$ source ~/swift_conoha
$ swift stat
Auth versions 2.0 and 3 require python-keystoneclient, install it or use Auth
version 1.0 which requires ST_AUTH, ST_USER, and ST_KEY environment
variables to be set or overridden with -A, -U, or -K.
なんか怒られた。python-keystoneclientが足りない?
python-keystoneclientをインストール
$ sudo pip install python-keystoneclient
再チャレンジ
$ swift stat
Account: xx_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Containers: 1
Objects: 1
Bytes: 0
Containers in policy "policy-0": 1
Objects in policy "policy-0": 1
Bytes in policy "policy-0": 0
Meta Quota-Bytes: 107374182400
X-Timestamp: 1432076457.10619
X-Trans-Id: txa813d66137274a32b79f2-0055954ee7
Content-Type: text/plain; charset=utf-8
Accept-Ranges: bytes
いけたー
とりあえずここまで。
関連記事
ConoHa関連の記事をまとめました。
ConoHa関連まとめ