Tama
TamaはアマゾンEC2とWakame-vdcを呼び出すソフトウェアです。Tamaでは、一つのAPIからどちも呼び出すことが出来るようになります。
必要なRuby Gem
rubygems json right_aws
セットアップ
必要なgemをインストールすために、バンドルを使って下さい。
gem install bundler
そのあとで、Tamaのダイレクトリーでこのコマンドをして下さい。
bundle install
これでTamaを使えるようになります。
Tamaの使い方
Tamaを使うのだったら、Tamaのオブジェクトが作らなければなりません。
t = Tama::Tama.new(Account,Ec2_host,Ec2_port,Ec2_protocol,Wakame_host,Wakame_port,Wakame_protocol)
パラメータの説明:
*Account: Wakame-vdcで使うaccount-idです。例えば:'a-shpoolxx'
*Ec2_host:Ec2のWebAPIのIPアドレス。例えば:"192.168.2.22"
*Ec2_port:Ec2のWebAPIのポート。例えば:9005
*Ec2_protocol:Ec2が使うプロトコル。例えば:"http"や"https"
*Wakame_host:Wakame-vdcのWebAPIのIPアドレス。例えば:"192.168.2.22"
*Wakame_port:Wakame-vdcのWebAPIのポート。例えば:9001
*Wakame_protocol:Wakame-vdcが使うプロトコル。例えば:"http"や"https"
そのあとでこのメソッドが呼び出せます。
t.run_instances(Image_id,Min,Max,Security_Groups,SSH_Key, User_Data, Addressing_Type, Instance_Type) t.describe_instances([]) t.terminate_instances([]) t.describe_images([]) t.describe_host_nodes
run_instancesのパラメーターの説明
*Image_id:マシンイメージのIDです。このイメージのインスタンスを立ち上がります。例えば:'wmi-lucid5'
*Min:立ち上がるインスタンスのミニマムです。例えば3だったら、インスタンスを3台立ち上がります。
*Max:立ち上がるインスタンスのマクシマムです。例えば5だったら、出来れば5台を立ち上がります。
*Security_Groups:セキュリティーグループの名前が入っているArrayです。例えば:['group1','group2']
*SSH_Key:立ち上がるインスタンスで使いたいSSHキーペアの名前です。例えば:"demokey"
*User_Data:ユーザーが何でも入れても良いのデータです。例えば:"ワカメが大好きです"
*Addressing_Type:Wakame-vdcのアダプターで使うと、これは何もしませんが、Tamaはright_awsを使っているので、必要です。何でも入れても良いです。
*Instance_Type:どんなInstance-specでインスタンスを立ち上がるのはここで決めます。例えば:"is-demospec"
Tamaのテストの使い方
TamaはWakameやEc2を呼び出せるだけではなく、見せ物のデータでテストをすることも出来ます。そうする場合は、こうやってTamaのオブジェクトを作って下さい。
t = Tama::Tama.new(:test)
メソッドはふつうのように呼び出せますが、Wakame-vdcやEc2を呼び出さない。その代わりにデータをファイルから読みます。そのファイルはJSONで書いてあるとディフォルトではTama_directory/test/test_filesにあるます。
*本当にインスタンスを立ち上がりませんので、t.run_instancesはパラメーターが必要がありません。
欲しければ、JSONのファイルのパースも決められます。
t.api.describe_instances_file = “/path/to/file” t.api.describe_images_file = “/path/to/file” t.api.run_instances_file = “/path/to/file” t.api.terminate_instances_file = “/path/to/file” t.api.host_nodes_file = “/path/to/file”