$ bundle install --path vendor/bundle --binstubs
$ ./bin/sakurraform
Commands:
sakurraform bs SUBCOMMAND # Manage Sakura no Base Storage
sakurraform help [COMMAND] # Describe available commands or one specific command
sakurraform init # initiaize .sakuracloud/credentials
sakurraform map # open sakura cloud map!
sakurraform plan SUBCOMMAND # Manage plan
sakurraform status # show status [--sync](to update cached_state)
sakurraform version # show version
$ cd chef_repo
$ bundle install --path vendor/bundle --binstubs
$ ./bin/knife zero
FATAL: Cannot find sub command for: 'zero'
Available zero subcommands: (for details, knife SUB-COMMAND --help)
** ZERO COMMANDS **
knife zero bootstrap FQDN (options)
knife zero chef_client QUERY (options)
$ cd chef_repo
$ ./bin/rake -vT
rake add_hostname # add hosts to dozens
rake bootstrap # bootstrap servers with knife-zero
rake data_bag # convert credentials to data_bag
rake default # show server_states for debug
rake flush_hostname # clear all hosts on dozens (Caution! All record of domain will be deleted.)
このデモのプランはこんな構成になります。
- network1
- server1 (fluent-fowarder)
- server2 (fluent-aggregater)
- network2
- server3 (fluent-fowarder)
- server4 (fluent-aggregater)
※ さくらのクラウド APIキー、BASE STORAGEのAPIキーが必要です。
./bin/sakurraform init
でcredencials
を作る./env.sh.sample
を元にenv.sh
を作成、ssh鍵のIDを登録し、sourceで読んでおく。./bin/sakurraform plan apply
でインフラ作成./bin/sakurraform status --sync
でリモート状態をローカルキャッシュと同期- 割り当てたIPアドレスなど
plan apply
ではAPIが結構落ちます(503)が、もう一度実行すれば続きからリソースを作成します。
事前にSSH-Agentにログイン用の秘密鍵を登録しておきましょう。
※ Dozens連携を試したければホストの登録が何もないドメインを用意。
- (※option)
./env.sh.sample
を元にenv.sh
を作成、DOZENS_ID、sourceで読んでおく。 rake data_bag
でBase Storageの情報入りData_Bagを作成rake bootstrap
でfluent準備OK- (※option)
rake add_hostname
でDozensにAレコードを作成します
chef_repo
ディレクトリでデータ投入echo '{"hoge" : "piyo"}' | ./bin/fluent-cat -h {IPまたはホスト名} stdin.test
でfluent-fowarderにデータ送信。
- 60秒くらい待機
- プロジェクトルートでデータを表示
./bin/sakurraform bs ls
でオブジェクト一覧を確認。./bin/sakurraform bs cat {キー名}
で中身を確認。./bin/sakurraform bs delete {キー名}
でオブジェクトを削除。