Scalaris/JSON APIの利用
の編集
http://eucalyptus.linux4u.jp/wiki/index.php?Scalaris%2FJSON%20API%E3%81%AE%E5%88%A9%E7%94%A8
[
トップ
] [
編集
|
差分
|
バックアップ
|
添付
|
リロード
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
] [
リンク元
]
-- 雛形とするページ --
BracketName
Ceph/install
Ceph/memo
Ceph/mount
Ceph/概要
ChangeLog_v1.5.2
CloudStack
CloudStack/インストール方法
CloudStack/ネットワーク解説
CloudStack/ネットワーク設定
CloudStack/メモ
CloudStack/仮想マシン
CloudStack/初期設定
CloudStack/概要
Doc/EucalyptusImageManagement_v1.5.2
Documents
DynamicDNSGuide
Elasticfox
Euca2ools と EC2 Tools との違い
Euca2oolsCentosInstall
Euca2oolsGuide
Euca2oolsImageManagement
Euca2oolsInstallJaunty
Euca2oolsLennyInstall
Euca2oolsNetworking
Euca2oolsOpensuseInstall
Euca2oolsSourceInstall
Euca2oolsSqueezeInstall
Euca2oolsStorage
Euca2oolsUsing
Euca2oolsVmControl
Eucalyptus (OSS Elastic Computing) 日本語情報
Eucalyptus + Euca2ools + Elasticfox で作るプライベートクラウド環境
Eucalyptus - OSS Elastic Computing
Eucalyptus - Ubuntu 9.04 で作るプライベートクラウド環境
Eucalyptus 1.5.2
Eucalyptus 日本語情報 wiki - OSS Elastic Computing
Eucalyptus-Upgrade-1.6.1
Eucalyptus-Upgrade-1.6.2
EucalyptusAdministratorGuide_v1.5.2
EucalyptusAdministratorGuide_v1.6
EucalyptusAdvanced_v1.6
EucalyptusBlockStoreInteracting_v1.5.2
EucalyptusConfiguration_v1.5.2
EucalyptusFeatures_v1.5.2
EucalyptusGettingStarted_v1.5.2
EucalyptusImageManagement_v1.5.2
EucalyptusImageManagement_v1.6
EucalyptusInstall_v1.5.2
EucalyptusInstall_v1.6
EucalyptusInstallationCentos_v1.5.2
EucalyptusInstallationCentos_v1.6
EucalyptusInstallationDebianLenny_v1.5.2
EucalyptusInstallationDebianSqueeze_v1.5.2
EucalyptusInstallationDebianSqueeze_v1.6
EucalyptusInstallationOpensuse_v1.5.2
EucalyptusInstallationOpensuse_v1.6
EucalyptusInstallationUbuntuJaunty_v1.5.2
EucalyptusInstallationUbuntuJaunty_v1.6
EucalyptusKnownBugs_v1.5.2
EucalyptusKnownBugs_v1.5.2)
EucalyptusManagement_v1.5.2
EucalyptusManagement_v1.6
EucalyptusMonitoring_v1.6
EucalyptusNetworking_v1.5.2
EucalyptusNetworking_v1.6
EucalyptusOverview
EucalyptusPrerequisites_v1.5.2
EucalyptusRocksInstallation_v1.5.2
EucalyptusSourceCodeInstallation_v1.5.2
EucalyptusTroubleshooting_v1.5.2
EucalyptusTroubleshooting_v1.6
EucalyptusUpgrade_v1.5.2
EucalyptusUserGuide_v1.5.2
EucalyptusUserImageCreatorGuide_v1.5.2
EucalyptusWalrusInteracting_v1.5.2
FAQ
FormattingRules
FrontPage
Help
Hibari
Hibari/インストール
Hibari/データモデル
Hibari/データ操作
Hibari/特徴
InterWiki
InterWikiName
InterWikiSandBox
Links
MenuBar
OpenNebula/その他
OpenNebula/クラスタノードの構築
OpenNebula/ゲストOSのネットワークの設定
OpenNebula/ゲストOSの構築
OpenNebula/フロントエンドノードの構築
OpenNebula/仮想ネットワークの構築
OpenNebula/概要
OpenStack
PHP
Presentations
PressRelease/2010_Feb_9
PukiWiki
PukiWiki/1.4
PukiWiki/1.4/Manual
PukiWiki/1.4/Manual/Plugin
PukiWiki/1.4/Manual/Plugin/A-D
PukiWiki/1.4/Manual/Plugin/E-G
PukiWiki/1.4/Manual/Plugin/H-K
PukiWiki/1.4/Manual/Plugin/L-N
PukiWiki/1.4/Manual/Plugin/O-R
PukiWiki/1.4/Manual/Plugin/S-U
PukiWiki/1.4/Manual/Plugin/V-Z
RHEL5 にセットアップ(RPM)
RecentDeleted
RightScale
S3_Compatibility_1.5.2
SandBox
Scalaris/JSON APIの利用
Scalaris/Java-API用CLIツール
Scalaris/インストール方法
Scalaris/分散環境の設定
Scalaris/利用方法
Scalaris/概要
Sheepdog/インストール方法
Sheepdog/インストール方法(SL6)
Sheepdog/デザイン
Sheepdog/ユーザ会
Sheepdog/利用方法
Sheepdog/問題点
Sheepdog/概要
Swift/Rings
Swift/memo
Swift/インストール方法
Swift/サーバの起動とテスト
Swift/メッセージの流れ
Swift/使い方
Swift/概要
Swift/設定ファイルの作成
Swift/起動用スクリプトの作成
ToolsEcosystem
ToolsEcosystem_EC2Dream
ToolsEcosystem_Elasticfox
ToolsEcosystem_boto
ToolsEcosystem_cloud42
ToolsEcosystem_right_aws
ToolsEcosystem_s3cmd
ToolsEcosystem_s3fs
ToolsEcosystem_tAWS
ToolsEcosystem_typica
UEC/CDInstall
UEC/CreateYourImage
Ubuntu 9.04 Server Edition のダウンロード方法
Ubuntu Enterprise Cloud 入門
Ubuntu Enterprise Cloudで作るプライベートクラウド環境
Ubuntu/Eucalyptus
Ubuntu/Eucalyptus+bridge
Ubuntu/Eucalyptus+environment
Ubuntu/KVM
Ubuntu/libvirt
Ubuntu/ubuntu-vm-builder
UbuntuEnterpriseCloud
WikiEngines
WikiName
WikiWikiWeb
YukiWiki
backup-eucalyptus-16
configuration
first-time-setup-16
hypervisor-configuration
installation-distribution-specific-binary-packages
installing-eucalyptus-source-16
s3curl
sample-s3cmd-config
sample-s3cmd-config-s3
トラブル事例
*Rubyからの利用 [#l5e5c47b] Scalarisは、JSON-RPCから利用することができます。 付属のスクリプトを参考に、使用方法について触れます。 ここでは値の書き込み用のスクリプトと、読み込み用のスクリプトを サンプルとして紹介します。 *参考スクリプト [#v9cc3184] contrib/jsonrpc.rbを元に作成しています。 また、単なるread/writeでは使用しない処理は省いています。 #!/usr/bin/ruby require 'json' require 'net/http' $url = 'http://localhost:8000/jsonrpc.yaws' def json_call(function, params) uri = URI.parse $url req = Net::HTTP::Post.new(uri.path) req.add_field 'Content-Type', 'application/json' req.body = { :version => '1.1', :method => function, :params => params, :id => 0}.to_json res = Net::HTTP.start(uri.host, uri.port){|http|http.request(req)} JSON.parse(res.body)['result'] end def read(key) json_call('read', [key]) end def write(key, value) json_call('write', [key, value]) end key/valueの読み込み、書き出しを行う関数を定義しています。 *書き込み用スクリプト [#b5561467] 例えばコマンドラインからkey/valueを指定して 書き込むスクリプトであれば、以下の処理を追加することで作成できます。~ また、書き出しに成功した場合はresultにokという値が入ります。 result = write(ARGV[0],ARGV[1]) puts result *読み込み用スクリプト [#hd51b619] コマンドラインからkeyを指定して、 対応するvalueを表示するスクリプトであれば、 以下の処理を追加することで作成できます。 resultにはvalueの値が入ります。 result = read(ARGV[0]) puts result *サンプルスクリプト [#l073973b] それぞれreader.rb、writer.rbとして作成してあります。 #ref(reader.rb) #ref(writer.rb)
タイムスタンプを変更しない
*Rubyからの利用 [#l5e5c47b] Scalarisは、JSON-RPCから利用することができます。 付属のスクリプトを参考に、使用方法について触れます。 ここでは値の書き込み用のスクリプトと、読み込み用のスクリプトを サンプルとして紹介します。 *参考スクリプト [#v9cc3184] contrib/jsonrpc.rbを元に作成しています。 また、単なるread/writeでは使用しない処理は省いています。 #!/usr/bin/ruby require 'json' require 'net/http' $url = 'http://localhost:8000/jsonrpc.yaws' def json_call(function, params) uri = URI.parse $url req = Net::HTTP::Post.new(uri.path) req.add_field 'Content-Type', 'application/json' req.body = { :version => '1.1', :method => function, :params => params, :id => 0}.to_json res = Net::HTTP.start(uri.host, uri.port){|http|http.request(req)} JSON.parse(res.body)['result'] end def read(key) json_call('read', [key]) end def write(key, value) json_call('write', [key, value]) end key/valueの読み込み、書き出しを行う関数を定義しています。 *書き込み用スクリプト [#b5561467] 例えばコマンドラインからkey/valueを指定して 書き込むスクリプトであれば、以下の処理を追加することで作成できます。~ また、書き出しに成功した場合はresultにokという値が入ります。 result = write(ARGV[0],ARGV[1]) puts result *読み込み用スクリプト [#hd51b619] コマンドラインからkeyを指定して、 対応するvalueを表示するスクリプトであれば、 以下の処理を追加することで作成できます。 resultにはvalueの値が入ります。 result = read(ARGV[0]) puts result *サンプルスクリプト [#l073973b] それぞれreader.rb、writer.rbとして作成してあります。 #ref(reader.rb) #ref(writer.rb)
テキスト整形のルールを表示する