オブジェクトストレージ開発するためにローカルのRiak CS環境が欲しいので、ネットで探してみたら、https://github.com/basho-labs/vagrant-riak-cs-cluster
レポジトリがありました。そのまま使うとRiakのバージョンは1.4.8、RiakCSのバージョンは1.5.4になっています。しかし自分が使いたいのはRiak 1.4.12とRiakCS 1.5.4です。なので幾つのファイルを修正する必要があります。
まずBerksfileを修正
$ cat Berksfile
source "https://supermarket.chef.io"
cookbook "ntp"
cookbook "nmap"
cookbook "htop"
cookbook "openssh"
cookbook 'riak', '= 2.4.21'
cookbook 'riak-cs', '~> 2.2.11'
cookbook "riak-cs-create-admin-user", github: "hectcastro/chef-riak-cs-create-admin-user", ref: "0.3.1"
riakのcookbook 2.4.21はRiak 1.4.12バージョン使っていて、
riak-csのcookbook 2.2.11はRiak-CS 1.5.4バージョンを使っています。
そしてrols/riak.rbファイルは下のように変更
name "riak"
description "Role for Riak Enterprise nodes."
run_list(
"recipe[riak-cs::package]",
"recipe[riak]"
)
default_attributes(
"riak" => {
"cs_version" => "1.4.5",
"args" => {
"+zdbbl" => 96000,
"-env" => {
"ERL_MAX_PORTS" => 16384
}
},
"config" => {
"riak_api" => {
"pb_backlog" => 128
},
"riak_core" => {
"default_bucket_props" => [["__tuple", "allow_mult", true]]
},
"riak_kv" => {
"storage_backend" => "riak_cs_kv_multi_backend"
}
}
}
)
cs_version
は1.4.5
に変更します。
ファイル変更したらREADME.mdファイルの手順どおりやれば上手くいくはずです
$ vagrant plugin install vagrant-berkshelf
$ vagrant plugin install vagrant-omnibus
$ vagrant plugin install vagrant-cachier (Use RIAK_CS_USE_CACHE to enable)
$ RIAK_CS_USE_CACHE=1 RIAK_CS_CREATE_ADMIN_USER=1 vagrant up