某所でのLTネタとして、OpenStack Swiftを使って即席クラウドストレージを作ってみました。VirtualBoxとVagrantを使って、同一LAN内からアクセス可能なSwiftサーバを用意します。環境はWindows7です。
Swift-All-In-One
SwiftStackが公開している vagrant-swift-all-in-one を利用して、Swiftサーバを構築します。
https://github.com/swiftstack/vagrant-swift-all-in-one
上記のリポジトリをZipでダウンロードして、適当なフォルダに解凍します。
Swiftサーバ用の固定IPとブリッジ接続の設定をVagrantfile
に追加しておきます。
Vagrant.configure("2") do |config|
+ config.vm.network :public_network, ip: "192.168.0.1", netmask: "255.255.255.0", gateway: "192.168.0.254", bridge:"eth0"
end
コマンドプロンプトから解凍したフォルダへ移動してVMを起動します。
cd vagrant-swift-all-in-one
vagrant up
VM起動後、Chefが実行されてSwiftを自動的にインストールしてくれます。
起動後の確認
インストールが終了したら、ユーザ名:vagrant、パスワード:vagrantで127.0.0.1:2222にSSH接続し、適当なファイルをアップロード/ダウンロードして、Swiftが動作していることを確認します。
echo "awesome" > test
swift upload test test
swift download test test -o -
CloudBerryやCyberduckといったクライアントを利用すればGUIでSwiftにアクセスできます。
testユーザでアクセスする場合の認証情報は以下を利用します。
- UserName: test:tester
- Password: testing
- AuthURL: http://192.168.0.1:8080/auth/v1.0