{"id":5047,"date":"2014-06-20T11:30:16","date_gmt":"2014-06-20T02:30:16","guid":{"rendered":"http:\/\/www.creationline.com\/?p=5047"},"modified":"2023-08-29T12:54:17","modified_gmt":"2023-08-29T03:54:17","slug":"softlayer-api-ruby-client-%e3%81%a7-iscsi-%e3%82%b9%e3%83%88%e3%83%ac%e3%83%bc%e3%82%b8%e3%82%92%e8%bf%bd%e5%8a%a0%e3%81%99%e3%82%8b-softlayer","status":"publish","type":"post","link":"https:\/\/www.creationline.com\/tech-blog\/others\/ruby\/5047","title":{"rendered":"softlayer-api-ruby-client \u3067 iSCSI \u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u8ffd\u52a0\u3059\u308b #softlayer"},"content":{"rendered":"<h2>iSCSI (Internet Small Computer System Interface) \u3068\u306f<\/h2>\n<p>SoftLayer \u306e<a href=\"http:\/\/www.softlayer.com\/cloud-storage\">\u30b9\u30c8\u30ec\u30fc\u30b8<\/a>\u306b\u306f\u3055\u307e\u3056\u307e\u306a\u7a2e\u985e\u304c\u3042\u308a\u307e\u3059\u304c\u3001\u672c\u8a18\u4e8b\u3067\u306f <a href=\"http:\/\/knowledgelayer.softlayer.com\/topic\/iscsi\">iSCSI<\/a> \u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u53d6\u308a\u6271\u3044\u307e\u3059\u3002<br \/>\n<a href=\"\/lab\/4651\">\u4ee5\u524d\u306e\u8a18\u4e8b<\/a> \u3067\u3082\u89e6\u308c\u307e\u3057\u305f\u304c\u3001iSCSI (Internet Small Computer System Interface) \u3068\u306f TCP\/IP \u306e\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u7d4c\u7531\u3067 SCSI \u30d7\u30ed\u30c8\u30b3\u30eb\u3092\u5229\u7528\u3059\u308b\u898f\u683c\u3067\u3001\u3082\u3063\u3071\u3089\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u7d4c\u7531\u3067\u5229\u7528\u53ef\u80fd\u306a\u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u69cb\u6210\u3059\u308b\u306e\u306b\u7528\u3044\u307e\u3059\u3002SoftLayer \u3067\u306f iSCSI \u30b9\u30c8\u30ec\u30fc\u30b8\u3092 SAN \u3068\u3057\u3066\u6271\u3046\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n<h2>softlayer-api-ruby-client \u3067 iSCSI \u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u6ce8\u6587\u3059\u308b<\/h2>\n<p>iSCSI \u30b9\u30c8\u30ec\u30fc\u30b8\u3082 softlayer-api-ruby-client \u3092\u7528\u3044\u3066\u6ce8\u6587\u304c\u53ef\u80fd\u3067\u3059\u3002<a href=\"http:\/\/sldn.softlayer.com\/reference\/services\/SoftLayer_Product_Order\/placeOrder\">SoftLayer_Product_Order::placeOrder<\/a> \u3092\u7528\u3044\u307e\u3059\u304c\u3001\u3084\u306f\u308a\u30de\u30b8\u30c3\u30af\u30ca\u30f3\u30d0\u30fc\u304c\u5fc5\u8981\u3067\u3059\u3002<a href=\"\/lab\/4887\">\u5148\u306e\u8a18\u4e8b<\/a>\u306e\u30d7\u30ed\u30b0\u30e9\u30e0\u3067 iSCSI \u30b9\u30c8\u30ec\u30fc\u30b8\u306e Package ID \u3092\u8abf\u3079\u3066\u307f\u307e\u3057\u305f\u3002<\/p>\n<p><code lang=\"ruby\"><br \/>\n:<br \/>\n(\u4e2d\u7565)<br \/>\n:<br \/>\n{\"firstOrderStepId\"=&gt;1,<br \/>\n\"id\"=&gt;218,<br \/>\n\"isActive\"=&gt;1,<br \/>\n\"name\"=&gt;\"iSCSI Storage\",<br \/>\n\"unitSize\"=&gt;nil}]<br \/>\n<\/code><\/p>\n<p>iSCSI \u30b9\u30c8\u30ec\u30fc\u30b8\u306e Package ID \u306f <strong>218<\/strong> \u3068\u308f\u304b\u308a\u307e\u3057\u305f\u3002<\/p>\n<p>\u6b21\u306b iSCSI \u30b9\u30c8\u30ec\u30fc\u30b8\u306e Price ID \u3092\u78ba\u8a8d\u3057\u307e\u3057\u3087\u3046\u3002\u3053\u308c\u3082 <a href=\"\/lab\/4887\">\u5148\u306e\u8a18\u4e8b<\/a>\u306e\u30d7\u30ed\u30b0\u30e9\u30e0\u306e\u3088\u3046\u306b\u78ba\u8a8d\u3057\u307e\u3059\u3002<\/p>\n<p><code lang=\"ruby\"><br \/>\nOptional Category \"iSCSI\" -- 51:<br \/>\n1175 -- 450 GB iSCSI SAN Storage<br \/>\n22491 -- 1000 GB iSCSI SAN Storage<br \/>\n22492 -- 120 GB iSCSI SAN Storage<br \/>\n22494 -- 700 GB iSCSI SAN Storage<br \/>\n22487 -- 80 GB iSCSI SAN Storage<br \/>\n1174 -- 430 GB iSCSI SAN Storage<br \/>\n2152 -- 1 GB iSCSI SAN Storage<br \/>\n22490 -- 500 GB iSCSI SAN Storage<br \/>\n22502 -- 3000 GB iSCSI SAN Storage<br \/>\n1472 -- 1500 GB iSCSI SAN Storage<br \/>\n1080 -- 120 GB iSCSI SAN Storage<br \/>\n22499 -- 2000 GB iSCSI SAN Storage<br \/>\n22495 -- 200 GB iSCSI SAN Storage<br \/>\n1173 -- 200 GB iSCSI SAN Storage<br \/>\n1178 -- 350 GB iSCSI SAN Storage<br \/>\n1039 -- 1000 GB iSCSI SAN Storage<br \/>\n22488 -- 100 GB iSCSI SAN Storage<br \/>\n22441 -- 1 GB iSCSI SAN Storage<br \/>\n1185 -- 2000 GB iSCSI SAN Storage<br \/>\n1034 -- 40 GB iSCSI SAN Storage<br \/>\n1033 -- 20 GB iSCSI SAN Storage<br \/>\n1035 -- 80 GB iSCSI SAN Storage<br \/>\n2199 -- 3000 GB iSCSI SAN Storage<br \/>\n22501 -- 1 GB iSCSI SAN Storage<br \/>\n22500 -- 1500 GB iSCSI SAN Storage<br \/>\n22493 -- 300 GB iSCSI SAN Storage<br \/>\n1036 -- 100 GB iSCSI SAN Storage<br \/>\n1037 -- 250 GB iSCSI SAN Storage<br \/>\n1038 -- 500 GB iSCSI SAN Storage<br \/>\n1172 -- 700 GB iSCSI SAN Storage<br \/>\n22489 -- 250 GB iSCSI SAN Storage<br \/>\n22498 -- 350 GB iSCSI SAN Storage<br \/>\n1154 -- 300 GB iSCSI SAN Storage<br \/>\n22496 -- 430 GB iSCSI SAN Storage<br \/>\n22485 -- 20 GB iSCSI SAN Storage<br \/>\n22486 -- 40 GB iSCSI SAN Storage<br \/>\n22497 -- 450 GB iSCSI SAN Storage<br \/>\nOptional Category \"iSCSI Replication\" -- 65:<br \/>\n1377 -- 250 GB iSCSI SAN Replication<br \/>\n1382 -- 500 GB iSCSI SAN Replication<br \/>\n1372 -- 60 GB iSCSI SAN Replication<br \/>\n1375 -- 120 GB iSCSI SAN Replication<br \/>\n1380 -- 430 GB iSCSI SAN Replication<br \/>\n1384 -- 700 GB iSCSI SAN Replication<br \/>\n36558 -- 3000 GB iSCSI SAN Replication<br \/>\n36918 -- 1 GB iSCSI SAN Replication<br \/>\n1374 -- 100 GB iSCSI SAN Replication<br \/>\n1371 -- 40 GB iSCSI SAN Replication<br \/>\n36902 -- 6500 GB iSCSI SAN Replication<br \/>\n36912 -- 10000 GB iSCSI SAN Replication<br \/>\n1370 -- 20 GB iSCSI SAN Replication<br \/>\n1385 -- 1000 GB iSCSI SAN Replication<br \/>\n1386 -- 2000 GB iSCSI SAN Replication<br \/>\n1379 -- 350 GB iSCSI SAN Replication<br \/>\n36398 -- 1500 GB iSCSI SAN Replication<br \/>\n36904 -- 20000 GB iSCSI SAN Replication<br \/>\n36906 -- 20000 GB iSCSI SAN Replication<br \/>\n36930 -- 1 GB iSCSI SAN Replication<br \/>\n36932 -- 15000 GB iSCSI SAN Replication<br \/>\n1373 -- 80 GB iSCSI SAN Replication<br \/>\n1381 -- 450 GB iSCSI SAN Replication<br \/>\n1383 -- 600 GB iSCSI SAN Replication<br \/>\n36566 -- 3000 GB iSCSI SAN Replication<br \/>\n36910 -- 10000 GB iSCSI SAN Replication<br \/>\n1376 -- 200 GB iSCSI SAN Replication<br \/>\n1378 -- 300 GB iSCSI SAN Replication<br \/>\n36900 -- 6500 GB iSCSI SAN Replication<br \/>\n36908 -- 4000 GB iSCSI SAN Replication<br \/>\n36914 -- 1 GB iSCSI SAN Replication<br \/>\nOptional Category \"iSCSI Snapshot Space\" -- 63:<br \/>\n1364 -- 450 GB iSCSI SAN Snapshot Space<br \/>\n1354 -- 40 GB iSCSI SAN Snapshot Space<br \/>\n1361 -- 300 GB iSCSI SAN Snapshot Space<br \/>\n1355 -- 60 GB iSCSI SAN Snapshot Space<br \/>\n1359 -- 200 GB iSCSI SAN Snapshot Space<br \/>\n1356 -- 80 GB iSCSI SAN Snapshot Space<br \/>\n1360 -- 250 GB iSCSI SAN Snapshot Space<br \/>\n1366 -- 600 GB iSCSI SAN Snapshot Space<br \/>\n1368 -- 1000 GB iSCSI SAN Snapshot Space<br \/>\n1369 -- 2000 GB iSCSI SAN Snapshot Space<br \/>\n1353 -- 20 GB iSCSI SAN Snapshot Space<br \/>\n1357 -- 100 GB iSCSI SAN Snapshot Space<br \/>\n1367 -- 700 GB iSCSI SAN Snapshot Space<br \/>\n1358 -- 120 GB iSCSI SAN Snapshot Space<br \/>\n1362 -- 350 GB iSCSI SAN Snapshot Space<br \/>\n1365 -- 500 GB iSCSI SAN Snapshot Space<br \/>\n1363 -- 430 GB iSCSI SAN Snapshot Space<br \/>\n<\/code><\/p>\n<p>\u901a\u5e38\u306e iSCSI \u30b9\u30c8\u30ec\u30fc\u30b8\u4ee5\u5916\u306b\u3001\u30ec\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3068\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u306b\u7528\u3044\u308b iSCSI \u9818\u57df\u3082\u8868\u793a\u3055\u308c\u3066\u3044\u307e\u3059\u304c\u3001\u672c\u8a18\u4e8b\u3067\u306f\u5229\u7528\u3057\u307e\u305b\u3093\u3002<br \/>\n\u3053\u308c\u3067 iSCSI \u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u6ce8\u6587\u3059\u308b\u305f\u3081\u306b\u5fc5\u8981\u306a ID \u304c\u63c3\u3044\u307e\u3057\u305f\u3002<\/p>\n<h2>softlayer-api-ruby-client \u3067 iSCSI \u30b9\u30c8\u30ec\u30fc\u30b8\u306e\u6ce8\u6587\u5185\u5bb9\u3092\u691c\u8a3c\u3059\u308b<\/h2>\n<p>iSCSI \u306e\u6ce8\u6587\u5185\u5bb9\u306f <a href=\"https:\/\/sldn.softlayer.com\/reference\/datatypes\/SoftLayer_Container_Product_Order\">SoftLayer_Container_Product_Order<\/a> \u30c7\u30fc\u30bf\u30bf\u30a4\u30d7\u3067\u69cb\u6210\u3055\u308c\u3066\u3044\u307e\u3059\u3002\u6b21\u306e\u3088\u3046\u306a\u5f62\u306b\u306a\u308b\u3067\u3057\u3087\u3046\u3002<\/p>\n<p><code lang=\"ruby\"><br \/>\nproduct_order = {<br \/>\n'complexType' =&gt; 'SoftLayer_Container_Product_Order',<br \/>\n'quantity' =&gt; 1,<br \/>\n'location' =&gt; 168642, # NOTE: 168642 is 'sjc01' location ID<br \/>\n'packageId' =&gt; 218,   # NOTE: 218 is 'iSCSI Storage' package ID<br \/>\n'useHourlyPricing' =&gt; false,<br \/>\n'prices' =&gt; [<br \/>\n{ 'id' =&gt; 22441 }, # \"1 GB iSCSI SAN Storage\"<br \/>\n]<br \/>\n}<br \/>\n<\/code><\/p>\n<p>\u5148\u306e\u8a18\u4e8b\u3068\u540c\u69d8\u306b\u3001<a href=\"http:\/\/sldn.softlayer.com\/reference\/services\/SoftLayer_Product_Order\/verifyOrder\">SoftLayer_Product_Order::verifyOrder<\/a> \u3067\u6ce8\u6587\u5185\u5bb9\u3092\u691c\u8a3c\u3057\u307e\u3057\u3087\u3046\u3002<\/p>\n<p><code lang=\"ruby\"><br \/>\n#!\/usr\/bin\/ruby<\/code><\/p>\n<p><code lang=\"ruby\"><code lang=\"ruby\"><\/code><\/code><\/p>\n<p>require 'softlayer_api'<br \/>\nrequire 'pp'<\/p>\n<p><code lang=\"ruby\"><code lang=\"ruby\"><\/code><\/code><\/p>\n<p>#<br \/>\n# fill your SoftLayer API username and API key<br \/>\n#<br \/>\napi_username = ENV['SOFTLAYER_API_USERNAME'] || 'YOUR_SOFTLAYER_API_USERNAME'<br \/>\napi_key = ENV['SOFTLAYER_API_KEY'] || 'YOUR_SOFTLAYER_API_KEY'<\/p>\n<p><code lang=\"ruby\"><code lang=\"ruby\"><\/code><\/code><\/p>\n<p>#<br \/>\n# https:\/\/sldn.softlayer.com\/reference\/datatypes\/SoftLayer_Container_Product_Order<br \/>\n#<br \/>\nproduct_order = {<br \/>\n'complexType' =&gt; 'SoftLayer_Container_Product_Order',<br \/>\n'quantity' =&gt; 1,<br \/>\n'location' =&gt; 168642, # NOTE: 168642 is 'sjc01' location ID<br \/>\n'packageId' =&gt; 218, # NOTE: 218 is 'iSCSI Storage' package ID<br \/>\n'useHourlyPricing' =&gt; false,<br \/>\n'prices' =&gt; [<br \/>\n{ 'id' =&gt; 22441 }, # \"1 GB iSCSI SAN Storage\"<br \/>\n]<br \/>\n}<\/p>\n<p><code lang=\"ruby\"><code lang=\"ruby\"><\/code><\/code><\/p>\n<p>#<br \/>\n# http:\/\/sldn.softlayer.com\/reference\/services\/SoftLayer_Product_Order<br \/>\n#<br \/>\nproduct_order_service = SoftLayer::Service.new( 'SoftLayer_Product_Order',<br \/>\n:username =&gt; api_username,<br \/>\n:api_key =&gt; api_key,<br \/>\n)<\/p>\n<p><code lang=\"ruby\"><code lang=\"ruby\"><\/code><\/code><\/p>\n<p>#<br \/>\n# http:\/\/sldn.softlayer.com\/reference\/services\/SoftLayer_Product_Order\/verifyOrder<br \/>\n#<br \/>\nbegin<br \/>\nresult = product_order_service.verifyOrder( product_order )<br \/>\npp result<br \/>\nputs \"The order was verified successfully\"<br \/>\nrescue =&gt; error_reason<br \/>\nputs \"The order could not be verified by the server: #{error_reason}\"<br \/>\nexit<br \/>\nend<\/p>\n<p><code lang=\"ruby\"><code lang=\"ruby\"><\/code><\/code><\/p>\n<p>exit<\/p>\n<p><code lang=\"ruby\"><br \/>\n<\/code><\/p>\n<p><code lang=\"ruby\">__END__<br \/>\n<\/code><\/p>\n<p>\u3053\u308c\u3092\u5b9f\u884c\u3059\u308b\u3068\u6b21\u306e\u7d50\u679c\u304c\u5f97\u3089\u308c\u307e\u3059\u3002<\/p>\n<p><code lang=\"ruby\"><br \/>\n{\"bigDataOrderFlag\"=&gt;false,<br \/>\n\"billingOrderItemId\"=&gt;nil,<br \/>\n\"containerSplHash\"=&gt;\"00000000417cde2d00007fab47e97d7f\",<br \/>\n\"containerSplHash\"=&gt;\"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\",<br \/>\n\"currencyShortName\"=&gt;\"USD\",<br \/>\n\"extendedHardwareTesting\"=&gt;nil,<br \/>\n\"imageTemplateId\"=&gt;nil,<br \/>\n\"isManagedOrder\"=&gt;0,<br \/>\n\"location\"=&gt;\"168642\",<br \/>\n\"locationObject\"=&gt;<br \/>\n{\"id\"=&gt;168642,<br \/>\n\"longName\"=&gt;\"San Jose 1\",<br \/>\n\"name\"=&gt;\"sjc01\",<br \/>\n\"activePresaleEvents\"=&gt;[]},<br \/>\n\"packageId\"=&gt;218,<br \/>\n\"postTaxRecurring\"=&gt;\"15\",<br \/>\n\"postTaxRecurringHourly\"=&gt;\"0\",<br \/>\n\"postTaxRecurringMonthly\"=&gt;\"15\",<br \/>\n\"postTaxSetup\"=&gt;\"0\",<br \/>\n\"preTaxRecurring\"=&gt;\"15\",<br \/>\n\"preTaxRecurringHourly\"=&gt;\"0\",<br \/>\n\"preTaxRecurringMonthly\"=&gt;\"15\",<br \/>\n\"preTaxSetup\"=&gt;\"0\",<br \/>\n\"presetId\"=&gt;nil,<br \/>\n\"prices\"=&gt;<br \/>\n[{\"currentPriceFlag\"=&gt;nil,<br \/>\n\"id\"=&gt;22441,<br \/>\n\"itemId\"=&gt;1150,<br \/>\n\"laborFee\"=&gt;\"0\",<br \/>\n\"onSaleFlag\"=&gt;nil,<br \/>\n\"oneTimeFee\"=&gt;\"0\",<br \/>\n\"oneTimeFeeTax\"=&gt;\"0\",<br \/>\n\"proratedRecurringFee\"=&gt;\"5\",<br \/>\n\"proratedRecurringFeeTax\"=&gt;\"0\",<br \/>\n\"quantity\"=&gt;nil,<br \/>\n\"recurringFee\"=&gt;\"15\",<br \/>\n\"recurringFeeTax\"=&gt;\"0\",<br \/>\n\"setupFee\"=&gt;\"0\",<br \/>\n\"sort\"=&gt;1,<br \/>\n\"categories\"=&gt;<br \/>\n[{\"categoryCode\"=&gt;\"iscsi\",<br \/>\n\"id\"=&gt;51,<br \/>\n\"name\"=&gt;\"iSCSI\",<br \/>\n\"quantityLimit\"=&gt;0}],<br \/>\n\"item\"=&gt;<br \/>\n{\"capacity\"=&gt;\"1\",<br \/>\n\"description\"=&gt;\"1 GB iSCSI SAN Storage\",<br \/>\n\"id\"=&gt;1150,<br \/>\n\"softwareDescriptionId\"=&gt;nil,<br \/>\n\"units\"=&gt;\"GB\",<br \/>\n\"upgradeItemId\"=&gt;548,<br \/>\n\"bundle\"=&gt;[],<br \/>\n\"itemCategory\"=&gt;<br \/>\n{\"categoryCode\"=&gt;\"iscsi\",<br \/>\n\"id\"=&gt;51,<br \/>\n\"name\"=&gt;\"iSCSI\",<br \/>\n\"quantityLimit\"=&gt;0}}}],<br \/>\n\"primaryDiskPartitionId\"=&gt;nil,<br \/>\n\"privateCloudOrderFlag\"=&gt;false,<br \/>\n\"proratedInitialCharge\"=&gt;\"0\",<br \/>\n\"proratedOrderTotal\"=&gt;\"5\",<br \/>\n\"quantity\"=&gt;1,<br \/>\n\"resourceGroupId\"=&gt;nil,<br \/>\n\"resourceGroupTemplateId\"=&gt;nil,<br \/>\n\"sendQuoteEmailFlag\"=&gt;nil,<br \/>\n\"serverCoreCount\"=&gt;nil,<br \/>\n\"sourceVirtualGuestId\"=&gt;nil,<br \/>\n\"sshKeys\"=&gt;[],<br \/>\n\"stepId\"=&gt;nil,<br \/>\n\"storageGroups\"=&gt;[],<br \/>\n\"totalRecurringTax\"=&gt;\"0\",<br \/>\n\"totalSetupTax\"=&gt;\"0\",<br \/>\n\"useHourlyPricing\"=&gt;false}<br \/>\nThe order was verified successfully<br \/>\n<\/code><\/p>\n<p>\u6ce8\u6587\u5185\u5bb9\u304c\u554f\u984c\u306a\u3044\u3053\u3068\u304c\u308f\u304b\u308a\u307e\u3059\u3002<\/p>\n<h2>softlayer-api-ruby-client \u3067 iSCSI \u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u6ce8\u6587\u3059\u308b<\/h2>\n<p>\u3067\u306f\u3001\u691c\u8a3c\u3057\u305f\u6ce8\u6587\u5185\u5bb9\u3092\u5b9f\u969b\u306b\u6ce8\u6587\u3057\u3066\u307f\u307e\u3057\u3087\u3046\u3002<br \/>\n\u6b21\u306e\u30d7\u30ed\u30b0\u30e9\u30e0\u306b\u306a\u308a\u307e\u3059\u3002<\/p>\n<p><code lang=\"ruby\"><br \/>\n#!\/usr\/bin\/ruby<\/code><\/p>\n<p><code lang=\"ruby\"><code lang=\"ruby\"><\/code><\/code><\/p>\n<p>require 'softlayer_api'<br \/>\nrequire 'pp'<\/p>\n<p><code lang=\"ruby\"><code lang=\"ruby\"><\/code><\/code><\/p>\n<p>#<br \/>\n# fill your SoftLayer API username and API key<br \/>\n#<br \/>\napi_username = ENV['SOFTLAYER_API_USERNAME'] || 'YOUR_SOFTLAYER_API_USERNAME'<br \/>\napi_key = ENV['SOFTLAYER_API_KEY'] || 'YOUR_SOFTLAYER_API_KEY'<\/p>\n<p><code lang=\"ruby\"><code lang=\"ruby\"><\/code><\/code><\/p>\n<p>#<br \/>\n# https:\/\/sldn.softlayer.com\/reference\/datatypes\/SoftLayer_Container_Product_Order<br \/>\n#<br \/>\nproduct_order = {<br \/>\n'complexType' =&gt; 'SoftLayer_Container_Product_Order',<br \/>\n'quantity' =&gt; 1,<br \/>\n'location' =&gt; 168642, # NOTE: 168642 is 'sjc01' location ID<br \/>\n'packageId' =&gt; 218, # NOTE: 218 is 'iSCSI Storage' package ID<br \/>\n'useHourlyPricing' =&gt; false,<br \/>\n'prices' =&gt; [<br \/>\n{ 'id' =&gt; 22441 }, # \"1 GB iSCSI SAN Storage\"<br \/>\n]<br \/>\n}<\/p>\n<p><code lang=\"ruby\"><code lang=\"ruby\"><\/code><\/code><\/p>\n<p>#<br \/>\n# http:\/\/sldn.softlayer.com\/reference\/services\/SoftLayer_Product_Order<br \/>\n#<br \/>\nproduct_order_service = SoftLayer::Service.new( 'SoftLayer_Product_Order',<br \/>\n:username =&gt; api_username,<br \/>\n:api_key =&gt; api_key,<br \/>\n)<\/p>\n<p><code lang=\"ruby\"><code lang=\"ruby\"><\/code><\/code><\/p>\n<p>#<br \/>\n# http:\/\/sldn.softlayer.com\/reference\/services\/SoftLayer_Product_Order\/verifyOrder<br \/>\n#<br \/>\nbegin<br \/>\nresult = product_order_service.verifyOrder( product_order )<br \/>\nputs \"The order was verified successfully\"<br \/>\nrescue =&gt; error_reason<br \/>\nputs \"The order could not be verified by the server: #{error_reason}\"<br \/>\nexit<br \/>\nend<\/p>\n<p><code lang=\"ruby\"><code lang=\"ruby\"><\/code><\/code><\/p>\n<p>#<br \/>\n# http:\/\/sldn.softlayer.com\/reference\/services\/SoftLayer_Product_Order\/placeOrder<br \/>\n#<br \/>\nbegin<br \/>\nresult = product_order_service.placeOrder( product_order )<br \/>\nputs \"The order was placed successfully\"<br \/>\npp result<br \/>\nrescue =&gt; error_reason<br \/>\nputs \"The order could not be placed by the server: #{error_reason}\"<br \/>\nexit<br \/>\nend<\/p>\n<p><code lang=\"ruby\"><code lang=\"ruby\"><\/code><\/code><\/p>\n<p>exit<\/p>\n<p><code lang=\"ruby\"><br \/>\n<\/code><\/p>\n<p><code lang=\"ruby\">__END__<br \/>\n<\/code><\/p>\n<p>\u3053\u308c\u3092\u5b9f\u884c\u3059\u308b\u3068\u6b21\u306e\u7d50\u679c\u304c\u5f97\u3089\u308c\u307e\u3059\u3002<\/p>\n<p><code lang=\"ruby\"><br \/>\nThe order was verified successfully<br \/>\nThe order was placed successfully<br \/>\n{\"orderDate\"=&gt;\"2014-06-18T12:55:46+09:00\",<br \/>\n\"orderDetails\"=&gt;<br \/>\n{\"bigDataOrderFlag\"=&gt;false,<br \/>\n:<br \/>\n(\u4e2d\u7565)<br \/>\n:<br \/>\n\"billingOrderItemId\"=&gt;nil,<br \/>\n\"containerSplHash\"=&gt;\"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX\",<br \/>\n\"currencyShortName\"=&gt;\"USD\",<br \/>\n\"extendedHardwareTesting\"=&gt;nil,<br \/>\n\"imageTemplateId\"=&gt;nil,<br \/>\n\"isManagedOrder\"=&gt;0,<br \/>\n\"itemCategoryQuestionAnswers\"=&gt;[],<br \/>\n\"location\"=&gt;\"168642\",<br \/>\n\"locationObject\"=&gt;<br \/>\n{\"id\"=&gt;168642,<br \/>\n\"longName\"=&gt;\"San Jose 1\",<br \/>\n\"name\"=&gt;\"sjc01\",<br \/>\n\"activePresaleEvents\"=&gt;[]},<br \/>\n\"packageId\"=&gt;218,<br \/>\n\"paymentType\"=&gt;\"ADD_TO_BALANCE\",<br \/>\n\"postTaxRecurring\"=&gt;\"15\",<br \/>\n\"postTaxRecurringHourly\"=&gt;\"0\",<br \/>\n\"postTaxRecurringMonthly\"=&gt;\"15\",<br \/>\n\"postTaxSetup\"=&gt;\"0\",<br \/>\n\"preTaxRecurring\"=&gt;\"15\",<br \/>\n\"preTaxRecurringHourly\"=&gt;\"0\",<br \/>\n\"preTaxRecurringMonthly\"=&gt;\"15\",<br \/>\n\"preTaxSetup\"=&gt;\"0\",<br \/>\n\"presetId\"=&gt;nil,<br \/>\n\"prices\"=&gt;<br \/>\n[{\"currentPriceFlag\"=&gt;nil,<br \/>\n\"id\"=&gt;22441,<br \/>\n\"itemId\"=&gt;1150,<br \/>\n\"laborFee\"=&gt;\"0\",<br \/>\n\"onSaleFlag\"=&gt;nil,<br \/>\n\"oneTimeFee\"=&gt;\"0\",<br \/>\n\"oneTimeFeeTax\"=&gt;\"0\",<br \/>\n\"proratedRecurringFee\"=&gt;\"5\",<br \/>\n\"proratedRecurringFeeTax\"=&gt;\"0\",<br \/>\n\"quantity\"=&gt;nil,<br \/>\n\"recurringFee\"=&gt;\"15\",<br \/>\n\"recurringFeeTax\"=&gt;\"0\",<br \/>\n\"setupFee\"=&gt;\"0\",<br \/>\n\"sort\"=&gt;1,<br \/>\n\"categories\"=&gt;<br \/>\n[{\"categoryCode\"=&gt;\"iscsi\",<br \/>\n\"id\"=&gt;51,<br \/>\n\"name\"=&gt;\"iSCSI\",<br \/>\n\"quantityLimit\"=&gt;0}],<br \/>\n\"item\"=&gt;<br \/>\n{\"capacity\"=&gt;\"1\",<br \/>\n\"description\"=&gt;\"1 GB iSCSI SAN Storage\",<br \/>\n\"id\"=&gt;1150,<br \/>\n\"softwareDescriptionId\"=&gt;nil,<br \/>\n\"units\"=&gt;\"GB\",<br \/>\n\"upgradeItemId\"=&gt;548,<br \/>\n\"bundle\"=&gt;[],<br \/>\n\"itemCategory\"=&gt;<br \/>\n{\"categoryCode\"=&gt;\"iscsi\",<br \/>\n\"id\"=&gt;51,<br \/>\n\"name\"=&gt;\"iSCSI\",<br \/>\n\"quantityLimit\"=&gt;0}}}],<br \/>\n\"primaryDiskPartitionId\"=&gt;nil,<br \/>\n\"privateCloudOrderFlag\"=&gt;false,<br \/>\n\"properties\"=&gt;[],<br \/>\n\"proratedInitialCharge\"=&gt;\"0\",<br \/>\n\"proratedOrderTotal\"=&gt;\"5\",<br \/>\n\"quantity\"=&gt;1,<br \/>\n\"resourceGroupId\"=&gt;nil,<br \/>\n\"resourceGroupTemplateId\"=&gt;nil,<br \/>\n\"sendQuoteEmailFlag\"=&gt;nil,<br \/>\n\"serverCoreCount\"=&gt;nil,<br \/>\n\"sourceVirtualGuestId\"=&gt;nil,<br \/>\n\"sshKeys\"=&gt;[],<br \/>\n\"stepId\"=&gt;nil,<br \/>\n\"storageGroups\"=&gt;[],<br \/>\n\"totalRecurringTax\"=&gt;\"0\",<br \/>\n\"totalSetupTax\"=&gt;\"0\",<br \/>\n\"useHourlyPricing\"=&gt;false},<br \/>\n\"orderId\"=&gt;XXXXX40,<br \/>\n\"placedOrder\"=&gt;<br \/>\n{\"accountId\"=&gt;XXXX78,<br \/>\n\"createDate\"=&gt;\"2014-06-18T12:55:46+09:00\",<br \/>\n\"id\"=&gt;XXXXX40,<br \/>\n\"impersonatingUserRecordId\"=&gt;nil,<br \/>\n\"modifyDate\"=&gt;nil,<br \/>\n\"orderQuoteId\"=&gt;nil,<br \/>\n\"orderTypeId\"=&gt;4,<br \/>\n\"presaleEventId\"=&gt;nil,<br \/>\n\"privateCloudOrderFlag\"=&gt;false,<br \/>\n\"status\"=&gt;\"PENDING_AUTO_APPROVAL\",<br \/>\n\"userRecordId\"=&gt;XXXX42,<br \/>\n\"account\"=&gt;<br \/>\n:<br \/>\n(\u4e2d\u7565)<br \/>\n:<br \/>\n\"items\"=&gt;<br \/>\n[{\"categoryCode\"=&gt;\"iscsi\",<br \/>\n\"description\"=&gt;\"1 GB iSCSI SAN Storage\",<br \/>\n\"id\"=&gt;XXXXXX42,<br \/>\n\"itemId\"=&gt;1150,<br \/>\n\"itemPriceId\"=&gt;\"22441\",<br \/>\n\"laborFee\"=&gt;\"0\",<br \/>\n\"laborFeeTaxRate\"=&gt;\"0\",<br \/>\n\"oneTimeFee\"=&gt;\"0\",<br \/>\n\"oneTimeFeeTaxRate\"=&gt;\"0\",<br \/>\n\"parentId\"=&gt;nil,<br \/>\n\"promoCodeId\"=&gt;nil,<br \/>\n\"quantity\"=&gt;nil,<br \/>\n\"recurringFee\"=&gt;\"15\",<br \/>\n\"setupFee\"=&gt;\"0\",<br \/>\n\"setupFeeDeferralMonths\"=&gt;12,<br \/>\n\"setupFeeTaxRate\"=&gt;\"0\",<br \/>\n\"bundledItems\"=&gt;[],<br \/>\n\"category\"=&gt;<br \/>\n{\"categoryCode\"=&gt;\"iscsi\",<br \/>\n\"id\"=&gt;51,<br \/>\n\"name\"=&gt;\"iSCSI\",<br \/>\n\"quantityLimit\"=&gt;0},<br \/>\n\"children\"=&gt;[],<br \/>\n\"location\"=&gt;{\"id\"=&gt;168642, \"longName\"=&gt;\"San Jose 1\", \"name\"=&gt;\"sjc01\"},<br \/>\n\"order\"=&gt;nil,<br \/>\n\"storageGroups\"=&gt;[]}],<br \/>\n\"orderTopLevelItems\"=&gt;<br \/>\n[{\"categoryCode\"=&gt;\"iscsi\",<br \/>\n\"description\"=&gt;\"1 GB iSCSI SAN Storage\",<br \/>\n\"id\"=&gt;37101642,<br \/>\n\"itemId\"=&gt;1150,<br \/>\n\"itemPriceId\"=&gt;\"22441\",<br \/>\n\"laborFee\"=&gt;\"0\",<br \/>\n\"laborFeeTaxRate\"=&gt;\"0\",<br \/>\n\"oneTimeFee\"=&gt;\"0\",<br \/>\n\"oneTimeFeeTaxRate\"=&gt;\"0\",<br \/>\n\"parentId\"=&gt;nil,<br \/>\n\"promoCodeId\"=&gt;nil,<br \/>\n\"quantity\"=&gt;nil,<br \/>\n\"recurringFee\"=&gt;\"15\",<br \/>\n\"setupFee\"=&gt;\"0\",<br \/>\n\"setupFeeDeferralMonths\"=&gt;12,<br \/>\n\"setupFeeTaxRate\"=&gt;\"0\",<br \/>\n\"bundledItems\"=&gt;[],<br \/>\n\"category\"=&gt;<br \/>\n{\"categoryCode\"=&gt;\"iscsi\",<br \/>\n\"id\"=&gt;51,<br \/>\n\"name\"=&gt;\"iSCSI\",<br \/>\n\"quantityLimit\"=&gt;0},<br \/>\n\"children\"=&gt;[],<br \/>\n\"location\"=&gt;{\"id\"=&gt;168642, \"longName\"=&gt;\"San Jose 1\", \"name\"=&gt;\"sjc01\"},<br \/>\n\"order\"=&gt;nil,<br \/>\n\"storageGroups\"=&gt;[]}],<br \/>\n:<br \/>\n(\u4e2d\u7565)<br \/>\n:<br \/>\n<\/code><\/p>\n<p>\u3053\u306e\u3088\u3046\u306b 1GB iSCSI \u30b9\u30c8\u30ec\u30fc\u30b8\u304c\u6ce8\u6587\u3067\u304d\u307e\u3057\u305f\u3002<\/p>\n<h2>softlayer-api-ruby-client \u3067 iSCSI \u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u78ba\u8a8d\u3059\u308b<\/h2>\n<p>\u30dd\u30fc\u30bf\u30eb\u306e <a href=\"https:\/\/control.softlayer.com\/storage\/iscsi\">iSCSI<\/a> \u304b\u3089\u78ba\u8a8d\u3059\u308b\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u304c\u3001softlayer-api-ruby-client \u304b\u3089\u3082\u78ba\u8a8d\u3057\u3066\u307f\u307e\u3057\u3087\u3046\u3002<br \/>\n<a href=\"http:\/\/sldn.softlayer.com\/reference\/services\/SoftLayer_Account\">SoftLayer_Account<\/a> \u30b5\u30fc\u30d3\u30b9\u306e <a href=\"http:\/\/sldn.softlayer.com\/reference\/services\/SoftLayer_Account\/getIscsiNetworkStorage\">SoftLayer_Account::getIscsiNetworkStorage<\/a> \u3067 iSCSI \u30b9\u30c8\u30ec\u30fc\u30b8\u306e\u4e00\u89a7\u304c\u78ba\u8a8d\u3067\u304d\u307e\u3059\u3002<\/p>\n<p><code lang=\"ruby\"><br \/>\n#!\/usr\/bin\/ruby<\/code><\/p>\n<p><code lang=\"ruby\"><code lang=\"ruby\"><\/code><\/code><\/p>\n<p>require 'softlayer_api'<br \/>\nrequire 'pp'<\/p>\n<p><code lang=\"ruby\"><code lang=\"ruby\"><\/code><\/code><\/p>\n<p>#<br \/>\n# fill your SoftLayer API username and API key<br \/>\n#<br \/>\napi_username = ENV['SOFTLAYER_API_USERNAME'] || 'YOUR_SOFTLAYER_API_USERNAME'<br \/>\napi_key = ENV['SOFTLAYER_API_KEY'] || 'YOUR_SOFTLAYER_API_KEY'<\/p>\n<p><code lang=\"ruby\"><code lang=\"ruby\"><\/code><\/code><\/p>\n<p>#<br \/>\n# http:\/\/sldn.softlayer.com\/reference\/services\/SoftLayer_Account<br \/>\n#<br \/>\naccount_service = SoftLayer::Service.new( 'SoftLayer_Account',<br \/>\n:username =&gt; api_username,<br \/>\n:api_key =&gt; api_key,<br \/>\n)<\/p>\n<p><code lang=\"ruby\"><code lang=\"ruby\"><\/code><\/code><\/p>\n<p>#<br \/>\n# result<br \/>\n#<br \/>\npp account_service.getIscsiNetworkStorage<\/p>\n<p><code lang=\"ruby\"><br \/>\n<\/code><\/p>\n<p><code lang=\"ruby\">__END__<br \/>\n<\/code><\/p>\n<p>\u3053\u306e\u30d7\u30ed\u30b0\u30e9\u30e0\u3092\u5b9f\u884c\u3059\u308b\u3068\u3001\u6b21\u306e\u3088\u3046\u306b\u5148\u306b\u6ce8\u6587\u3057\u305f iSCSI \u30b9\u30c8\u30ec\u30fc\u30b8\u306e\u5185\u5bb9\u304c\u53d6\u5f97\u3067\u304d\u307e\u3059\u3002<\/p>\n<p><code lang=\"ruby\"><br \/>\n[{\"accountId\"=&gt;XXXXX78,<br \/>\n\"capacityGb\"=&gt;1,<br \/>\n\"createDate\"=&gt;\"2014-06-18T12:55:49+09:00\",<br \/>\n\"guestId\"=&gt;nil,<br \/>\n\"hardwareId\"=&gt;nil,<br \/>\n\"hostId\"=&gt;nil,<br \/>\n\"id\"=&gt;XXXXX94,<br \/>\n\"nasType\"=&gt;\"ISCSI\",<br \/>\n\"password\"=&gt;\"XXXXXXXXXXXXXXXX\",<br \/>\n\"serviceProviderId\"=&gt;1,<br \/>\n\"upgradableFlag\"=&gt;true,<br \/>\n\"username\"=&gt;\"SLIXXXX78-4\",<br \/>\n\"serviceResourceBackendIpAddress\"=&gt;\"10.XXX.XXX.21\",<br \/>\n\"serviceResourceName\"=&gt;\"storage501\"}]<br \/>\n<\/code><\/p>\n<h2>iSCSI \u30b9\u30c8\u30ec\u30fc\u30b8\u3092 Virtual Server \u304b\u3089\u5229\u7528\u3059\u308b<\/h2>\n<p>\u3053\u3053\u304b\u3089\u306f\u7279\u306b softlayer-api-ruby-client \u306f\u5229\u7528\u3057\u307e\u305b\u3093\u306e\u3067\u3001\u8a73\u7d30\u306f<a href=\"\/lab\/4651\">\u4ee5\u524d\u306e\u8a18\u4e8b<\/a>\u306b\u8b72\u308a\u3001\u7c21\u5358\u306b\u624b\u9806\u3092\u898b\u3066\u3044\u304d\u307e\u3059\u3002\u307e\u305f\u3001<a href=\"http:\/\/knowledgelayer.softlayer.com\/procedure\/connect-iscsi-lun-linux-open-iscsi\">Connect to an iSCSI LUN in Linux with Open-iSCSI<\/a> \u3082\u53c2\u8003\u306b\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<p>\u672c\u8a18\u4e8b\u3067\u306f Virtual Server \u306b Ubuntu 12.04 LTS \u3092\u7528\u3044\u307e\u3059\u3002<br \/>\n\u307e\u305a iSCSI \u30a4\u30cb\u30b7\u30a8\u30fc\u30bf\u306e <strong>open-iscsi<\/strong> \u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u307e\u3059\u3002<\/p>\n<p><code><br \/>\nroot@test-20140610171516:~# apt-get install open-iscsi<br \/>\nReading package lists... Done<br \/>\nBuilding dependency tree<br \/>\nReading state information... Done<br \/>\nopen-iscsi is already the newest version.<br \/>\n0 upgraded, 0 newly installed, 0 to remove and 21 not upgraded.<br \/>\nroot@test-20140610171516:~#<br \/>\n<\/code><\/p>\n<p>\u65e2\u306b\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u6e08\u3067\u3057\u305f\u3002<\/p>\n<p>\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u3092\u4fee\u6b63\u3057\u307e\u3059\u3002<br \/>\niSCSI \u30bf\u30fc\u30b2\u30c3\u30c8\u30db\u30b9\u30c8\u306e\u30e6\u30fc\u30b6\u540d\u3068\u30d1\u30b9\u30ef\u30fc\u30c9\u306f\u30dd\u30fc\u30bf\u30eb\u3084\u5148\u7a0b\u306e\u30d7\u30ed\u30b0\u30e9\u30e0\u3067\u53d6\u5f97\u3057\u305f\u3082\u306e\u3092\u6307\u5b9a\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<p><code><br \/>\nroot@test-20140610171516:~# cp -a \/etc\/iscsi\/iscsid.conf \/etc\/iscsi\/iscsid.conf.2014-0618<br \/>\nroot@test-20140610171516:~# vi \/etc\/iscsi\/iscsid.conf<br \/>\n:<br \/>\nroot@test-20140610171516:~#<br \/>\n<\/code><\/p>\n<p><code lang=\"diff\"><br \/>\nroot@test-20140610171516:~# diff -u \/etc\/iscsi\/iscsid.conf.2014-0618 \/etc\/iscsi\/iscsid.conf<br \/>\n--- \/etc\/iscsi\/iscsid.conf.2014-0618\t2014-02-26 09:10:02.000000000 -0600<br \/>\n+++ \/etc\/iscsi\/iscsid.conf\t2014-06-18 00:40:56.827300403 -0500<br \/>\n@@ -34,10 +34,14 @@<br \/>\n#*****************<\/code><\/p>\n<p><code lang=\"diff\"><code lang=\"diff\"><\/code><\/code><\/p>\n<p># To request that the iscsi initd scripts startup a session set to \"automatic\".<br \/>\n-# node.startup = automatic<br \/>\n+# 2014\/06\/18 start<br \/>\n+node.startup = automatic<br \/>\n+#<br \/>\n#<br \/>\n# To manually startup the session set to \"manual\". The default is manual.<br \/>\n-node.startup = manual<br \/>\n+# 2014\/06\/18 stop<br \/>\n+#node.startup = manual<br \/>\n+#<\/p>\n<p><code lang=\"diff\"><code lang=\"diff\"><\/code><\/code><\/p>\n<p># For \"automatic\" startup nodes, setting this to \"Yes\" will try logins on each<br \/>\n# available iface until one succeeds, and then stop. The default \"No\" will try<br \/>\n@@ -56,6 +60,10 @@<br \/>\n# authentication by the target(s), uncomment the following lines:<br \/>\n#node.session.auth.username = username<br \/>\n#node.session.auth.password = password<br \/>\n+# 2014\/06\/18 add<br \/>\n+node.session.auth.username = SLIXXXX78-4<br \/>\n+node.session.auth.password = XXXXXXXXXXXXXXXX<br \/>\n+#<\/p>\n<p><code lang=\"diff\"><code lang=\"diff\"><\/code><\/code><\/p>\n<p># To set a CHAP username and password for target(s)<br \/>\n# authentication by the initiator, uncomment the following lines:<br \/>\n@@ -70,6 +78,10 @@<br \/>\n# authentication by the target(s), uncomment the following lines:<br \/>\n#discovery.sendtargets.auth.username = username<br \/>\n#discovery.sendtargets.auth.password = password<br \/>\n+# 2014\/06\/18 add<br \/>\n+discovery.sendtargets.auth.username = SLIXXXX78-4<br \/>\n+discovery.sendtargets.auth.password = XXXXXXXXXXXXXXXX<br \/>\n+#<\/p>\n<p><code lang=\"diff\"><br \/>\n<\/code><\/p>\n<p><code lang=\"diff\"> # To set a discovery session CHAP username and password for target(s)<br \/>\n# authentication by the initiator, uncomment the following lines:<br \/>\nroot@test-20140610171516:~#<br \/>\n<\/code><\/p>\n<p>iSCSI \u30a4\u30cb\u30b7\u30a8\u30fc\u30bf\u30b5\u30fc\u30d3\u30b9\u3092\u518d\u8d77\u52d5\u3057\u307e\u3059\u3002<\/p>\n<p><code><br \/>\nroot@test-20140610171516:~# \/etc\/init.d\/open-iscsi restart<br \/>\n* Unmounting iscsi-backed filesystems                                   [ OK ]<br \/>\n* Disconnecting iSCSI targets                                                  iscsiadm: No matching sessions found<br \/>\n[ OK ]<br \/>\n* Stopping iSCSI initiator service                                      [ OK ]<br \/>\n* Starting iSCSI initiator service iscsid                               [ OK ]<br \/>\n* Setting up iSCSI targets<br \/>\niscsiadm: No records found<br \/>\n[ OK ]<br \/>\n* Mounting network filesystems                                          [ OK ]<br \/>\nroot@test-20140610171516:~#<br \/>\n<\/code><\/p>\n<p><strong>iscsiadm<\/strong> \u30b3\u30de\u30f3\u30c9\u3092\u7528\u3044\u3066 iSCSI \u30bf\u30fc\u30b2\u30c3\u30c8\u30db\u30b9\u30c8\u3092\u63a2\u7d22\u3057\u307e\u3059\u3002<br \/>\niSCSI \u30bf\u30fc\u30b2\u30c3\u30c8\u30db\u30b9\u30c8\u306e IP \u30a2\u30c9\u30ec\u30b9\u306f\u30dd\u30fc\u30bf\u30eb\u3084\u5148\u7a0b\u306e\u30d7\u30ed\u30b0\u30e9\u30e0\u3067\u53d6\u5f97\u3057\u305f\u3082\u306e\u3092\u6307\u5b9a\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<p><code><br \/>\nroot@test-20140610171516:~# iscsiadm -m discovery -t sendtargets -p 10.XXX.XXX.21<br \/>\n10.XXX.XXX.21:3260,1 iqn.2001-05.com.equallogic:X-XXXXXX-XXXXXXXXX-XXXXXXXXXXXXXXXX-sliXXXX78-4<br \/>\nroot@test-20140610171516:~#<br \/>\n<\/code><\/p>\n<p>\u3082\u3046\u4e00\u5ea6 iSCSI \u30a4\u30cb\u30b7\u30a8\u30fc\u30bf\u30b5\u30fc\u30d3\u30b9\u3092\u518d\u8d77\u52d5\u3057\u307e\u3059\u3002<\/p>\n<p><code><br \/>\nroot@test-20140610171516:~# \/etc\/init.d\/open-iscsi restart<br \/>\n* Unmounting iscsi-backed filesystems                                   [ OK ]<br \/>\n* Disconnecting iSCSI targets                                                  iscsiadm: No matching sessions found<br \/>\n[ OK ]<br \/>\n* Stopping iSCSI initiator service                                      [ OK ]<br \/>\n* Starting iSCSI initiator service iscsid                               [ OK ]<br \/>\n* Setting up iSCSI targets<br \/>\nLogging in to [iface: default, target: iqn.2001-05.com.equallogic:X-XXXXXX-XXXXXXXXX-XXXXXXXXXXXXXXXX-sliXXXX78-4, portal: 10.XXX.XXX.21,3260] (multiple)<br \/>\nLogin to [iface: default, target: iqn.2001-05.com.equallogic:X-XXXXXX-XXXXXXXXX-XXXXXXXXXXXXXXXX-sliXXXX78-4, portal: 10.XXX.XXX.21,3260] successful.<br \/>\n[ OK ]<br \/>\n* Mounting network filesystems                                          [ OK ]<br \/>\nroot@test-20140610171516:~#<br \/>\n<\/code><\/p>\n<p>\u6b21\u306e\u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3057\u3001iSCSI \u3067\u30de\u30a6\u30f3\u30c8\u3057\u305f\u30d6\u30ed\u30c3\u30af\u30c7\u30d0\u30a4\u30b9\u3092\u63a2\u3057\u307e\u3059\u3002<\/p>\n<p><code><br \/>\nroot@test-20140610171516:~# find \/sys\/devices\/platform\/host* -name block\\* -exec ls -la '{}' \\; | sed s#^.*..\/block\/#\/dev\/#g<br \/>\ntotal 0<br \/>\ndrwxr-xr-x 3 root root 0 Jun 18 00:45 .<br \/>\ndrwxr-xr-x 8 root root 0 Jun 18 00:45 ..<br \/>\ndrwxr-xr-x 7 root root 0 Jun 18 00:45 sda<br \/>\nroot@test-20140610171516:~#<br \/>\n<\/code><\/p>\n<p><strong>sda<\/strong> \u3067\u3042\u308b\u3053\u3068\u304c\u308f\u304b\u308a\u307e\u3057\u305f\u3002<br \/>\n<strong>dmesg<\/strong> \u30b3\u30de\u30f3\u30c9\u3067\u3082\u78ba\u8a8d\u3057\u3066\u307f\u307e\u3057\u3087\u3046\u3002<\/p>\n<p><code><br \/>\nroot@test-20140610171516:~# dmesg  | tail -15<br \/>\n[ 5104.671942] waiting module removal not supported: please upgrade<br \/>\n[ 5104.675838] waiting module removal not supported: please upgradewaiting module removal not supported: please upgrade<br \/>\n[ 5104.678174] waiting module removal not supported: please upgrade&lt;6&gt;[ 5104.727365] Loading iSCSI transport class v2.0-870.<br \/>\n[ 5104.744001] iscsi: registered transport (tcp)<br \/>\n[ 5105.038333] scsi0 : iSCSI Initiator over TCP\/IP<br \/>\n[ 5106.328852]  connection1:0: detected conn error (1020)<br \/>\n[ 5107.918309] scsi 0:0:0:0: Direct-Access     EQLOGIC  100E-00          6.0  PQ: 0 ANSI: 5<br \/>\n[ 5107.923995] sd 0:0:0:0: Attached scsi generic sg0 type 0<br \/>\n[ 5107.928405] sd 0:0:0:0: [sda] 2119680 512-byte logical blocks: (1.08 GB\/1.01 GiB)<br \/>\n[ 5107.935708] sd 0:0:0:0: [sda] Write Protect is off<br \/>\n[ 5107.935713] sd 0:0:0:0: [sda] Mode Sense: 81 00 00 00<br \/>\n[ 5107.936236] sd 0:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA<br \/>\n[ 5107.970160]  sda: unknown partition table<br \/>\n[ 5107.977267] sd 0:0:0:0: [sda] Attached SCSI disk<br \/>\n[ 5123.390350]  connection1:0: detected conn error (1020)<br \/>\n<\/code><\/p>\n<p><strong>fdisk<\/strong> \u30b3\u30de\u30f3\u30c9\u3067\u30d1\u30fc\u30c6\u30a3\u30b7\u30e7\u30f3\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002<\/p>\n<p><code><br \/>\nroot@test-20140610171516:~# fdisk \/dev\/sda<br \/>\nDevice contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel<br \/>\nBuilding a new DOS disklabel with disk identifier 0x39f65526.<br \/>\nChanges will remain in memory only, until you decide to write them.<br \/>\nAfter that, of course, the previous content won't be recoverable.<\/code><\/p>\n<p><code><code><\/code><\/code><\/p>\n<p>Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)<\/p>\n<p><code><code><\/code><\/code><\/p>\n<p>Command (m for help): p<\/p>\n<p><code><code><\/code><\/code><\/p>\n<p>Disk \/dev\/sda: 1085 MB, 1085276160 bytes<br \/>\n34 heads, 61 sectors\/track, 1022 cylinders, total 2119680 sectors<br \/>\nUnits = sectors of 1 * 512 = 512 bytes<br \/>\nSector size (logical\/physical): 512 bytes \/ 512 bytes<br \/>\nI\/O size (minimum\/optimal): 512 bytes \/ 512 bytes<br \/>\nDisk identifier: 0x39f65526<\/p>\n<p><code><code><\/code><\/code><\/p>\n<p>Device Boot Start End Blocks Id System<\/p>\n<p><code><code><\/code><\/code><\/p>\n<p>Command (m for help): n<br \/>\nPartition type:<br \/>\np primary (0 primary, 0 extended, 4 free)<br \/>\ne extended<br \/>\nSelect (default p):<br \/>\nPartition number (1-4, default 1):<br \/>\nFirst sector (2048-2119679, default 2048):<br \/>\nUsing default value 2048<br \/>\nLast sector, +sectors or +size{K,M,G} (2048-2119679, default 2119679):<br \/>\nUsing default value 2119679<\/p>\n<p><code><code><\/code><\/code><\/p>\n<p>Command (m for help): p<\/p>\n<p><code><code><\/code><\/code><\/p>\n<p>Disk \/dev\/sda: 1085 MB, 1085276160 bytes<br \/>\n34 heads, 61 sectors\/track, 1022 cylinders, total 2119680 sectors<br \/>\nUnits = sectors of 1 * 512 = 512 bytes<br \/>\nSector size (logical\/physical): 512 bytes \/ 512 bytes<br \/>\nI\/O size (minimum\/optimal): 512 bytes \/ 512 bytes<br \/>\nDisk identifier: 0x39f65526<\/p>\n<p><code><code><\/code><\/code><\/p>\n<p>Device Boot Start End Blocks Id System<br \/>\n\/dev\/sda1 2048 2119679 1058816 83 Linux<\/p>\n<p><code><code><\/code><\/code><\/p>\n<p>Command (m for help): w<br \/>\nThe partition table has been altered!<\/p>\n<p><code><br \/>\n<\/code><\/p>\n<p><code>Calling ioctl() to re-read partition table.<br \/>\nSyncing disks.<br \/>\nroot@test-20140610171516:~#<br \/>\n<\/code><\/p>\n<p><strong>mkfs.ext4<\/strong> \u30b3\u30de\u30f3\u30c9\u3067\u30d5\u30a1\u30a4\u30eb\u30b7\u30b9\u30c6\u30e0\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002<\/p>\n<p><code><br \/>\nroot@test-20140610171516:~# mkfs.ext4 \/dev\/sda1<br \/>\nmke2fs 1.42.9 (4-Feb-2014)<br \/>\nDiscarding device blocks: done<br \/>\nFilesystem label=<br \/>\nOS type: Linux<br \/>\nBlock size=4096 (log=2)<br \/>\nFragment size=4096 (log=2)<br \/>\nStride=0 blocks, Stripe width=0 blocks<br \/>\n66240 inodes, 264704 blocks<br \/>\n13235 blocks (5.00%) reserved for the super user<br \/>\nFirst data block=0<br \/>\nMaximum filesystem blocks=272629760<br \/>\n9 block groups<br \/>\n32768 blocks per group, 32768 fragments per group<br \/>\n7360 inodes per group<br \/>\nSuperblock backups stored on blocks:<br \/>\n32768, 98304, 163840, 229376<\/code><\/p>\n<p><code><code><\/code><\/code><\/p>\n<p>Allocating group tables: done<br \/>\nWriting inode tables: done<br \/>\nCreating journal (8192 blocks): done<br \/>\nWriting superblocks and filesystem accounting information: done<\/p>\n<p><code><br \/>\n<\/code><\/p>\n<p><code>root@test-20140610171516:~#<br \/>\n<\/code><\/p>\n<p>\u30de\u30a6\u30f3\u30c8\u3057\u307e\u3059\u3002<\/p>\n<p><code><br \/>\nroot@test-20140610171516:~# mount \/dev\/sda1 \/mnt<br \/>\nroot@test-20140610171516:~#<br \/>\n<\/code><\/p>\n<p>\u30de\u30a6\u30f3\u30c8\u3067\u304d\u305f\u3053\u3068\u3092\u78ba\u8a8d\u3057\u307e\u3059\u3002<\/p>\n<p><code><br \/>\nroot@test-20140610171516:~# df -h \/mnt<br \/>\nFilesystem      Size  Used Avail Use% Mounted on<br \/>\n\/dev\/sda1       986M  1.3M  917M   1% \/mnt<br \/>\nroot@test-20140610171516:~#<br \/>\n<\/code><\/p>\n<p><code><br \/>\nroot@test-20140610171516:~# ls -la \/mnt<br \/>\ntotal 24<br \/>\ndrwxr-xr-x  3 root root  4096 Jun 18 00:50 .<br \/>\ndrwxr-xr-x 22 root root  4096 Jun 10 08:31 ..<br \/>\ndrwx------  2 root root 16384 Jun 18 00:50 lost+found<br \/>\nroot@test-20140610171516:~#<br \/>\n<\/code><\/p>\n<p>\u30a2\u30f3\u30de\u30a6\u30f3\u30c8\u3057\u307e\u3059\u3002<\/p>\n<p><code><br \/>\nroot@test-20140610171516:~# umount \/mnt<br \/>\nroot@test-20140610171516:~#<br \/>\n<\/code><\/p>\n<p>\u30a2\u30f3\u30de\u30a6\u30f3\u30c8\u3067\u304d\u305f\u3053\u3068\u3092\u78ba\u8a8d\u3057\u307e\u3059\u3002<\/p>\n<p><code><br \/>\nroot@test-20140610171516:~# df -h \/mnt<br \/>\nFilesystem      Size  Used Avail Use% Mounted on<br \/>\n\/dev\/xvda2       25G  887M   23G   4% \/<br \/>\nroot@test-20140610171516:~#<br \/>\n<\/code><\/p>\n<h2>\u307e\u3068\u3081<\/h2>\n<p>iSCSI \u30b9\u30c8\u30ec\u30fc\u30b8\u306f\u9ad8\u3044\u30d1\u30d5\u30a9\u30fc\u30de\u30f3\u30b9\u3092\u6301\u3061\u3001\u3055\u307e\u3056\u307e\u306a\u7528\u9014\u306b\u5bfe\u5fdc\u3067\u304d\u308b\u30d6\u30ed\u30c3\u30af\u30c7\u30d0\u30a4\u30b9\u3067\u3059\u3002iSCSI \u30b9\u30c8\u30ec\u30fc\u30b8\u306e\u30c7\u30fc\u30bf\u8ee2\u9001\u306f\u30d7\u30e9\u30a4\u30d9\u30fc\u30c8\u30cd\u30c3\u30c8\u30ef\u30fc\u30af\u304c\u7528\u3044\u3089\u308c\u308b\u305f\u3081\u3001\u8ee2\u9001\u91cf\u3082\u304b\u304b\u308a\u307e\u305b\u3093\u3002\u662f\u975e\u6d3b\u7528\u3057\u3066\u307f\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>iSCSI (Internet Small Computer System Interface) \u3068\u306f SoftLayer \u306e\u30b9\u30c8\u30ec\u30fc\u30b8\u306b\u306f\u3055\u307e\u3056\u307e\u306a\u7a2e\u985e\u304c\u3042\u308a\u307e\u3059\u304c\u3001\u672c\u8a18\u4e8b\u3067\u306f iSCSI \u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u53d6\u308a\u6271\u3044\u307e\u3059\u3002  [&#8230;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"content-type":"","footnotes":""},"categories":[31,819,38],"tags":[],"class_list":["post-5047","post","type-post","status-publish","format-standard","hentry","category-higuchi","category-ruby","category-softlayer"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>softlayer-api-ruby-client \u3067 iSCSI \u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u8ffd\u52a0\u3059\u308b #softlayer - Tech Blog\uff5c\u30af\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u30e9\u30a4\u30f3<\/title>\n<meta name=\"description\" content=\"d-higuchi, Ruby, softlayer |iSCSI (Internet Small Computer System Interface) \u3068\u306f SoftLayer\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.creationline.com\/tech-blog\/others\/ruby\/5047\" \/>\n<meta property=\"og:locale\" content=\"ja_JP\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"softlayer-api-ruby-client \u3067 iSCSI \u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u8ffd\u52a0\u3059\u308b #softlayer - Tech Blog\uff5c\u30af\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u30e9\u30a4\u30f3\" \/>\n<meta property=\"og:description\" content=\"d-higuchi, Ruby, softlayer |iSCSI (Internet Small Computer System Interface) \u3068\u306f SoftLayer\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.creationline.com\/tech-blog\/others\/ruby\/5047\" \/>\n<meta property=\"og:site_name\" content=\"Tech Blog\uff5c\u30af\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u30e9\u30a4\u30f3\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/creationline\" \/>\n<meta property=\"article:published_time\" content=\"2014-06-20T02:30:16+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-08-29T03:54:17+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.creationline.com\/tech-blog\/cms_x3GWkuX\/wp-content\/uploads\/2026\/01\/screenshot.png\" \/>\n\t<meta property=\"og:image:width\" content=\"470\" \/>\n\t<meta property=\"og:image:height\" content=\"394\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Daisuke Higuchi\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@creationline\" \/>\n<meta name=\"twitter:site\" content=\"@creationline\" \/>\n<meta name=\"twitter:label1\" content=\"\u57f7\u7b46\u8005\" \/>\n\t<meta name=\"twitter:data1\" content=\"Daisuke Higuchi\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u63a8\u5b9a\u8aad\u307f\u53d6\u308a\u6642\u9593\" \/>\n\t<meta name=\"twitter:data2\" content=\"13\u5206\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/others\\\/ruby\\\/5047#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/others\\\/ruby\\\/5047\"},\"author\":{\"name\":\"Daisuke Higuchi\",\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/#\\\/schema\\\/person\\\/16f1373831fb6fd17387f16ae1195206\"},\"headline\":\"softlayer-api-ruby-client \u3067 iSCSI \u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u8ffd\u52a0\u3059\u308b #softlayer\",\"datePublished\":\"2014-06-20T02:30:16+00:00\",\"dateModified\":\"2023-08-29T03:54:17+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/others\\\/ruby\\\/5047\"},\"wordCount\":833,\"articleSection\":[\"d-higuchi\",\"Ruby\",\"softlayer\"],\"inLanguage\":\"ja\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/others\\\/ruby\\\/5047\",\"url\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/others\\\/ruby\\\/5047\",\"name\":\"softlayer-api-ruby-client \u3067 iSCSI \u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u8ffd\u52a0\u3059\u308b #softlayer - Tech Blog\uff5c\u30af\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u30e9\u30a4\u30f3\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/#website\"},\"datePublished\":\"2014-06-20T02:30:16+00:00\",\"dateModified\":\"2023-08-29T03:54:17+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/#\\\/schema\\\/person\\\/16f1373831fb6fd17387f16ae1195206\"},\"description\":\"d-higuchi, Ruby, softlayer |iSCSI (Internet Small Computer System Interface) \u3068\u306f SoftLayer\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/others\\\/ruby\\\/5047#breadcrumb\"},\"inLanguage\":\"ja\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/others\\\/ruby\\\/5047\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/others\\\/ruby\\\/5047#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"HOME\",\"item\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"\u305d\u306e\u4ed6\",\"item\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/others\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Ruby\",\"item\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/others\\\/ruby\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"softlayer-api-ruby-client \u3067 iSCSI \u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u8ffd\u52a0\u3059\u308b #softlayer\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/#website\",\"url\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/\",\"name\":\"Tech Blog\uff5c\u30af\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u30e9\u30a4\u30f3\",\"description\":\"\u30a2\u30b8\u30e3\u30a4\u30eb\uff06DevOps\u3001\u30af\u30e9\u30a6\u30c9\u30cd\u30a4\u30c6\u30a3\u30d6\u3001AI\uff06LLM\u306e\u5148\u7aef\u6280\u8853\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ja\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/#\\\/schema\\\/person\\\/16f1373831fb6fd17387f16ae1195206\",\"name\":\"Daisuke Higuchi\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ja\",\"@id\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/cms_x3GWkuX\\\/wp-content\\\/uploads\\\/2023\\\/08\\\/d-higuchi-wp-icon-230x230.png\",\"url\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/cms_x3GWkuX\\\/wp-content\\\/uploads\\\/2023\\\/08\\\/d-higuchi-wp-icon-230x230.png\",\"contentUrl\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/cms_x3GWkuX\\\/wp-content\\\/uploads\\\/2023\\\/08\\\/d-higuchi-wp-icon-230x230.png\",\"caption\":\"Daisuke Higuchi\"},\"description\":\"Chef\u30fbDocker\u30fbMirantis\u88fd\u54c1\u306a\u3069\u306e\u6280\u8853\u8981\u7d20\u306b\u52a0\u3048\u3066\u3001\u4f1a\u8b70\u306e\u9032\u3081\u65b9\u30fb\u6587\u7ae0\u306e\u66f8\u304d\u65b9\u306a\u3069\u306e\u696d\u52d9\u6539\u5584\u306b\u3082\u53d6\u308a\u7d44\u3093\u3067\u3044\u307e\u3059\u3002\u300cChef\u6d3b\u7528\u30ac\u30a4\u30c9\u300d\u5171\u8457\u306e\u307b\u304b\u3001Debian Official Developer\u3082\u3084\u3063\u3066\u3044\u307e\u3059\u3002\",\"url\":\"https:\\\/\\\/www.creationline.com\\\/tech-blog\\\/author\\\/higuchi\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"softlayer-api-ruby-client \u3067 iSCSI \u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u8ffd\u52a0\u3059\u308b #softlayer - Tech Blog\uff5c\u30af\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u30e9\u30a4\u30f3","description":"d-higuchi, Ruby, softlayer |iSCSI (Internet Small Computer System Interface) \u3068\u306f SoftLayer","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.creationline.com\/tech-blog\/others\/ruby\/5047","og_locale":"ja_JP","og_type":"article","og_title":"softlayer-api-ruby-client \u3067 iSCSI \u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u8ffd\u52a0\u3059\u308b #softlayer - Tech Blog\uff5c\u30af\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u30e9\u30a4\u30f3","og_description":"d-higuchi, Ruby, softlayer |iSCSI (Internet Small Computer System Interface) \u3068\u306f SoftLayer","og_url":"https:\/\/www.creationline.com\/tech-blog\/others\/ruby\/5047","og_site_name":"Tech Blog\uff5c\u30af\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u30e9\u30a4\u30f3","article_publisher":"https:\/\/www.facebook.com\/creationline","article_published_time":"2014-06-20T02:30:16+00:00","article_modified_time":"2023-08-29T03:54:17+00:00","og_image":[{"width":470,"height":394,"url":"https:\/\/www.creationline.com\/tech-blog\/cms_x3GWkuX\/wp-content\/uploads\/2026\/01\/screenshot.png","type":"image\/png"}],"author":"Daisuke Higuchi","twitter_card":"summary_large_image","twitter_creator":"@creationline","twitter_site":"@creationline","twitter_misc":{"\u57f7\u7b46\u8005":"Daisuke Higuchi","\u63a8\u5b9a\u8aad\u307f\u53d6\u308a\u6642\u9593":"13\u5206"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.creationline.com\/tech-blog\/others\/ruby\/5047#article","isPartOf":{"@id":"https:\/\/www.creationline.com\/tech-blog\/others\/ruby\/5047"},"author":{"name":"Daisuke Higuchi","@id":"https:\/\/www.creationline.com\/tech-blog\/#\/schema\/person\/16f1373831fb6fd17387f16ae1195206"},"headline":"softlayer-api-ruby-client \u3067 iSCSI \u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u8ffd\u52a0\u3059\u308b #softlayer","datePublished":"2014-06-20T02:30:16+00:00","dateModified":"2023-08-29T03:54:17+00:00","mainEntityOfPage":{"@id":"https:\/\/www.creationline.com\/tech-blog\/others\/ruby\/5047"},"wordCount":833,"articleSection":["d-higuchi","Ruby","softlayer"],"inLanguage":"ja"},{"@type":"WebPage","@id":"https:\/\/www.creationline.com\/tech-blog\/others\/ruby\/5047","url":"https:\/\/www.creationline.com\/tech-blog\/others\/ruby\/5047","name":"softlayer-api-ruby-client \u3067 iSCSI \u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u8ffd\u52a0\u3059\u308b #softlayer - Tech Blog\uff5c\u30af\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u30e9\u30a4\u30f3","isPartOf":{"@id":"https:\/\/www.creationline.com\/tech-blog\/#website"},"datePublished":"2014-06-20T02:30:16+00:00","dateModified":"2023-08-29T03:54:17+00:00","author":{"@id":"https:\/\/www.creationline.com\/tech-blog\/#\/schema\/person\/16f1373831fb6fd17387f16ae1195206"},"description":"d-higuchi, Ruby, softlayer |iSCSI (Internet Small Computer System Interface) \u3068\u306f SoftLayer","breadcrumb":{"@id":"https:\/\/www.creationline.com\/tech-blog\/others\/ruby\/5047#breadcrumb"},"inLanguage":"ja","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.creationline.com\/tech-blog\/others\/ruby\/5047"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.creationline.com\/tech-blog\/others\/ruby\/5047#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"HOME","item":"https:\/\/www.creationline.com\/tech-blog"},{"@type":"ListItem","position":2,"name":"\u305d\u306e\u4ed6","item":"https:\/\/www.creationline.com\/tech-blog\/others"},{"@type":"ListItem","position":3,"name":"Ruby","item":"https:\/\/www.creationline.com\/tech-blog\/others\/ruby"},{"@type":"ListItem","position":4,"name":"softlayer-api-ruby-client \u3067 iSCSI \u30b9\u30c8\u30ec\u30fc\u30b8\u3092\u8ffd\u52a0\u3059\u308b #softlayer"}]},{"@type":"WebSite","@id":"https:\/\/www.creationline.com\/tech-blog\/#website","url":"https:\/\/www.creationline.com\/tech-blog\/","name":"Tech Blog\uff5c\u30af\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u30e9\u30a4\u30f3","description":"\u30a2\u30b8\u30e3\u30a4\u30eb\uff06DevOps\u3001\u30af\u30e9\u30a6\u30c9\u30cd\u30a4\u30c6\u30a3\u30d6\u3001AI\uff06LLM\u306e\u5148\u7aef\u6280\u8853","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.creationline.com\/tech-blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ja"},{"@type":"Person","@id":"https:\/\/www.creationline.com\/tech-blog\/#\/schema\/person\/16f1373831fb6fd17387f16ae1195206","name":"Daisuke Higuchi","image":{"@type":"ImageObject","inLanguage":"ja","@id":"https:\/\/www.creationline.com\/tech-blog\/cms_x3GWkuX\/wp-content\/uploads\/2023\/08\/d-higuchi-wp-icon-230x230.png","url":"https:\/\/www.creationline.com\/tech-blog\/cms_x3GWkuX\/wp-content\/uploads\/2023\/08\/d-higuchi-wp-icon-230x230.png","contentUrl":"https:\/\/www.creationline.com\/tech-blog\/cms_x3GWkuX\/wp-content\/uploads\/2023\/08\/d-higuchi-wp-icon-230x230.png","caption":"Daisuke Higuchi"},"description":"Chef\u30fbDocker\u30fbMirantis\u88fd\u54c1\u306a\u3069\u306e\u6280\u8853\u8981\u7d20\u306b\u52a0\u3048\u3066\u3001\u4f1a\u8b70\u306e\u9032\u3081\u65b9\u30fb\u6587\u7ae0\u306e\u66f8\u304d\u65b9\u306a\u3069\u306e\u696d\u52d9\u6539\u5584\u306b\u3082\u53d6\u308a\u7d44\u3093\u3067\u3044\u307e\u3059\u3002\u300cChef\u6d3b\u7528\u30ac\u30a4\u30c9\u300d\u5171\u8457\u306e\u307b\u304b\u3001Debian Official Developer\u3082\u3084\u3063\u3066\u3044\u307e\u3059\u3002","url":"https:\/\/www.creationline.com\/tech-blog\/author\/higuchi"}]}},"_links":{"self":[{"href":"https:\/\/www.creationline.com\/tech-blog\/wp-json\/wp\/v2\/posts\/5047","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.creationline.com\/tech-blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.creationline.com\/tech-blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.creationline.com\/tech-blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.creationline.com\/tech-blog\/wp-json\/wp\/v2\/comments?post=5047"}],"version-history":[{"count":1,"href":"https:\/\/www.creationline.com\/tech-blog\/wp-json\/wp\/v2\/posts\/5047\/revisions"}],"predecessor-version":[{"id":65748,"href":"https:\/\/www.creationline.com\/tech-blog\/wp-json\/wp\/v2\/posts\/5047\/revisions\/65748"}],"wp:attachment":[{"href":"https:\/\/www.creationline.com\/tech-blog\/wp-json\/wp\/v2\/media?parent=5047"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.creationline.com\/tech-blog\/wp-json\/wp\/v2\/categories?post=5047"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.creationline.com\/tech-blog\/wp-json\/wp\/v2\/tags?post=5047"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}