Cloudn Load Balancing Advanced (LBA) VPCタイプ OpenNW 操作マニュアル

本マニュアルでは、 Cloudn Load Balancing Advanced (以下、LBA) VPCタイプ OpenNW のAPIご利用方法に関してご説明いたします。
右上の “索引” や、右のバーにある検索にて検索が可能です。

1. Cloudn APIについて

Cloudn では、各プロダクトごとにAPIを提供しております。
APIを使用することで、コントロールパネルを介さずにお客様のプログラムから直接リソースを操作することが可能です。

以下、 Cloudn LBAのAPIについてご説明いたします。

1.1. Cloudn APIについて

Cloudn では、各プロダクトごとにAPIを提供しております。
APIを使用することで、コントロールパネルを介さずにお客様のプログラムから直接リソースを操作することが可能です。

ご利用にあたっては下記の通りの情報/前提知識が必要となります。

API共通情報

以下、3つの情報がAPIを利用するにあたり必要となります。

  • アクセスキーID
  • 秘密鍵
  • APIエンドポイント

以下の2つを Cloudn ポータルよりログインし、入手します。

  • アクセスキーID

    • APIへのアクセスにおいて、お客様個人のIDを識別するためのキーです。
    • お客様固有のものとなります
  • 秘密鍵

    • APIへのアクセスにおいて、電子署名に利用される鍵です。
    • お客様固有のものとなります

APIエンドポイントについては、各 Cloudn サービスごとに異なります。 下記を参照してください。

アクセスキーID・秘密鍵入手方法

Cloudn ポータルへログイン

下記URLより、パスワード/IDでログインをします。

https://portal.cloudn-service.com/comgi/login

画面下部”APIアクセスキー・秘密鍵管理”をクリック

画面下部に存在する”APIアクセスキー・秘密鍵管理”をクリックします。

ポータルから秘密鍵へのリンク

Cloudn ポータル最下段、アクセスキーID・秘密鍵管理画面へのリンク

Query API->アクセスキーID・秘密鍵をコピーして利用

アクセスキーID・秘密鍵をコピーして利用します。

アクセスキーID・秘密鍵管理画面キャプチャ

アクセスキーID・秘密鍵管理画面

1.2. API情報 ( Cloudn LBA)

エンドポイントについて

本サービスにて提供しているAPI Server (End Point)のURIは下記となります。

End Point一覧
リージョン タイプ URI
東日本リージョン VPCタイプ OpenNW https://lba2-vpcopennw-api.jp-e1.cloudn-service.com/

注釈

API リクエスト・レスポンスは “HTTPS” にて行います。 HTTPはサポートされていません。

[参考]前提知識

Cloudn LBAについて

Cloudn LBAの操作・機能・仕様、および本マニュアルで利用される用語については操作マニュアルを参照してください。

クラウド・エヌ インフォメーションポータル - マニュアル

APIの利用方法について

APIを利用するには、クライアントと呼ばれるツールを利用する方法、
もしくはお客様プログラム上において仕様にしたがってAPIを利用する方法が一般的です。

以下、APIクライアントを利用した利用例・プログラム上でAPIを利用するために必要なリクエストの作成例を示します。

注釈

APIのご利用にあたっては、ご利用前に、 Cloudn ポータルより サービスを「利用中」の状態にする必要があります。

1.3. APIクライアントの利用

概要

Cloudn LBAでは、Amazon Web Services Elastic Load Balancer (以下ELB) 互換APIを提供しており、
各種AWS対応APIツールを利用することが可能です。

APIクライアントとして、下記に示すツールを用いた例をご説明します。
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
#!/usr/bin/env ruby
# coding: utf-8

require 'erb'
require 'time'
require 'openssl'
require 'base64'
require 'net/http'
require 'net/https'

class KickAPI;

  class CLI

    ENDPOINT = '<PLEASE FILL THE API ENDPOINT>'
    AWS_ACCESS_KEY_ID = '<PLEASE FILL YOUR ACCESS KEY ID>'
    AWS_SECRET_ACCESS_KEY = '<PLEASE FILL YOUR SECRET ACCESS KEY>'

    def main

      params = parse_options(ARGV)
      if params['Action'].nil?
        puts 'usage : ./kick_api.rb Action=... Parameter=... Parameter=...'
        exit 1
      end

      client = KickAPI::Client.new(ENDPOINT, AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY)
      response = client.call(params)
      puts "HTTP Status Code: #{response.header.code}"
      puts response.body

    end

    private

    def parse_options(args)

      params = {}
      args.each do |arg|
        key, value = arg.split('=',2)
        params[key] = value
      end
      params

    end

  end

  class Client

    def initialize(endpoint, access_key_id, secret_access_key)

      @endpoint_uri = URI.parse(endpoint)
      @access_key_id = access_key_id
      @secret_access_key = secret_access_key

    end

    def call(params)

      action = params['Action']

      raise "params['Action'] is not specified." if action.nil?

      params = {
          'AWSAccessKeyId' => @access_key_id,
          'SignatureMethod' => 'HmacSHA256',
          'SignatureVersion' => 2,
          'Version' => '2012-04-23',
          'Timestamp' => Time.now.iso8601
      }.merge(params)

      params['Signature'] = calculate_signature(params)
      querystring = params.collect { |key, value| escape(key, value) }.join('&')

      client = Net::HTTP.new(@endpoint_uri.host, @endpoint_uri.port)

      if @endpoint_uri.scheme == 'https'
        client.use_ssl = true
        client.verify_mode = OpenSSL::SSL::VERIFY_PEER
      end

      response = client.start do |w|
        get = Net::HTTP::Get.new("#{@endpoint_uri.path}?#{querystring}")
        w.request(get)
      end
      return response
    end

    private

    def calculate_signature(params)
      canonical_querystring = params.sort.collect { |key, value| escape(key, value) }.join('&')

      string_to_sign = "GET
#{@endpoint_uri.host}
#{@endpoint_uri.path}
#{canonical_querystring}"

      hmac = OpenSSL::HMAC.new(@secret_access_key, "sha256")
      hmac.update(string_to_sign)
      Base64.encode64(hmac.digest).chomp
    end

    def escape(key, value)
      [key, value].collect { |str| ERB::Util.url_encode(str.to_s) }.join('=')
    end

  end
end

if $0 == __FILE__
  KickAPI::CLI.new.main
end

KickAPIの利用

前提条件
  • Ruby1.9.2p0 以上での動作
  • 標準モジュールのみで動作します
KickAPIのダウンロード
上記のリンクよりKickAPIをダウンロードします。
次に、秘密鍵・APIアクセスキーを設定します。
エディタなどでダウンロードしたKickAPIを開き、編集します。

以下、APIアクセスキーを”WNZ9AV783OKRC8C5DL4Q”, 秘密鍵を”Q5j2kslNp5L7mnpJGZwS9AdkJla9V08vZ0JalhGl”、
および東日本リージョン・VPCタイプ OpenNWを利用すると仮定し設定します。
vim kick_api.rb

下記の変更を行います。

  • 上記コードでハイライトされた部分を編集します

    • <PLEASE FILL THE API ENDPOINT> へ 対象リージョン・タイプのエンドポイントホスト部
    • <PLEASE FILL YOUR ACCESS KEY ID> へ APIアクセスキーの “WNZ9AV783OKRC8C5DL4Q” を入力
    • <PLEASE FILL YOUR SECRET ACCESS KEY> へ 秘密鍵の “Q5j2kslNp5L7mnpJGZwS9AdkJla9V08vZ0JalhGl” を入力

例の場合、変更した点は以下の通りです。

@@ -15,7 +15,7 @@

-ENDPOINT = '<PLEASE FILL THE API ENDPOINT>'
-AWS_ACCESS_KEY_ID = '<PLEASE FILL YOUR ACCESS KEY ID>'
-AWS_SECRET_ACCESS_KEY = '<PLEASE FILL YOUR SECRET ACCESS KEY>'
+ENDPOINT = 'https://lba2-vpcopennw-api.jp-e1.cloudn-service.com/'
+AWS_ACCESS_KEY_ID = 'WNZ9AV783OKRC8C5DL4Q'
+AWS_SECRET_ACCESS_KEY = 'Q5j2kslNp5L7mnpJGZwS9AdkJla9V08vZ0JalhGl'

参考

API認証情報については以下を参照してください

エンドポイントについては以下を参照してください

上記ファイルを保存します。

KickAPIの利用
シェルにて下記のように実行します
下記のコマンドで、現在存在するLBA一覧を取得するAPI ( DescribeLoadBalancers - LBA情報一覧表示 )
を利用可能です。
$ruby kick_api.rb Action=DescribeLoadBalancers

コマンド引数は以下の通りです。

  • “Action=”

    • APIのアクション名を指定します。この場合、 “DescribeLoadBalancers” というActionをコールしています

上記の様に、クライアントを利用することでAPIの実行に必要な署名の作成といった作業が簡略化されます。

1.4. リクエスト作成方法

APIクライアントなどを使用せずにAPIリクエストを利用する方法を示します。

APIリクエスト形式

Cloudn LBAサービスのリクエストは、Query API形式となります。
例えば、本サービスによって管理するメトリクスの一覧を取得する、DescribeLoadBalancers API リクエストは、以下のようになります。
https://lba2-vpcopennw-api.jp-e1.cloudn-service.com/?Action=DescribeLoadBalancers&Version=2012-04-23&SignatureVersion=2&SignatureMethod=HmacSHA256&Timestamp=22014-08-14T11%3A11%3A15%2B09%3A00&AWSAccessKeyId=<APIKey>&Signature=<Signature>
上記では例として LBA でサポートされるリクエストを記載しています。
APIリクエストは、主に命令の種類とそのオプションの値を含み、下記の要素で構成されます。
https://lba2-vpcopennw-api.jp-e1.cloudn-service.com/
Action=DescribeLoadBalancers
Version=2012-04-23
SignatureVersion=2
SignatureMethod=HmacSHA256
Timestamp=2014-08-14T11%3A11%3A15%2B09%3A00
AWSAccessKeyId=<APIKey>
Signature=<Signature>

構成要素は以下の通りです。

  • 1行目: APIサーバ/エンドポイントURL
  • 2行目: LBAへのコマンド (Action)
  • 3行目: コマンドに渡すオプションとその値
  • 4-8行目: 署名情報

リクエスト本文に署名を付ける手順を説明します。

署名

APIリクエストには、リクエスト内容を保証するために、署名(Signature)を加えます。
署名は、リクエスト本文(1の要素を元に作成)を元に、ユーザのSECRETKEYとHMAC-SHA-256ハッシュアルゴリズムを組み合わせて作成します。
予めサービス利用に必要な公開鍵と秘密鍵を配布しています。
サービス上ではこれをAPIアクセスキーと秘密鍵と呼びます。
APIアクセスキーと秘密鍵については アクセスキーID・秘密鍵入手方法 を参照してください。
署名の作成手順
以下では署名とHTTPリクエストの生成方法について解説します。


リクエストのコマンドパラメータを作成します。
メトリクス一覧情報を取得するリクエスト作成を例に、コマンドパラメータを記載します。
コマンド, パラメータ
Action ListMetrics
Version 2012-04-23
SignatureVersion 2
SignatureMethod HmacSHA256
Timestamp 2014-08-14T11:11:15+09:00
AWSAccessKeyId <APIKEY>

注釈

コマンド,およびパラメータは大文字小文字を区別します

注釈

Timestamp key は、リクエスト発行時の時刻をiso8601形式で作成します。

  • (例): 2014-08-14T11:10:03+09:00
    • マイクロ秒は必要ありません。
    • 日付時刻の間のdelimiterは “T” です
    • オフセットを(+-)00:00の形式で付与する必要があります

次に署名を作成します。

作成したコマンドパラメータを、ASCIIの昇順で並べ替え、値をURLエンコードします。
本操作は署名の作成のために行うもので、リクエスト本文自体が並べ替えられるわけではありません。
(リクエスト本文はソートされている必要はありません)
コマンド, パラメータ
AWSAccessKeyId <APIKEY>
Action ListMetrics
SignatureMethod HmacSHA256
SignatureVersion 2
Timestamp 2014-08-14T11%3A11%3A15%2B09%3A00
Version 2012-04-23
上表の “コマンド, パラメータ” 行と “値” 行を、”=” にてつないだものを “&” で接続し、
HTTPリクエストの要素を添えて署名対象文字列(“data”)の作成します。

以下の文字列をここでは “data” とします:

GET
lba2-vpcopennw-api.jp-e1.cloudn-service.com
/
AWSAccessKeyId=<APIKey>&Action=ListMetrics&SignatureMethod=HmacSHA256&SignatureVersion=2&Timestamp=2014-08-14T11%3A11%3A15%2B09%3A00&Version=2012-04-23

注釈

“AWSAccessKeyId=〜”クエリまでは各要素を改行しますが、クエリ部分は改行せず1行で作成します

作成した文字列”data”に対して、HMAC-SHA256と秘密鍵から署名を生成し、 これをHTTPリクエストに含められるようにBase64でエンコードします。

  • HMAC-SHA256:

    • 暗号化形式です
    • OpenSSL等のライブラリの機能を利用し、作成します
    • (例:Rubyであればgemライブラリの ruby-hmac(0.4.0) など)
  • SECRETKEY:

    • 弊社から配布された物をご利用ください
  • HMACによる署名サンプル:

    • 5df60c66d6715d33c5b49af3428c0cbb84918a0baa96c29f3b32670a742bdc29
  • 署名サンプル:(Base64エンコード後)

    • NWRmNjBjNjZkNjcxNWQzM2M1YjQ5YWYzNDI4YzBjYmI4NDkxOGEwYmFhOTZjMjlmM2IzMjY3MGE3NDJiZGMyOQ==

注釈

署名内に改行が入らないようにご注意ください

署名(Signature)をリクエスト本文に付け加え、リクエスト文字列を作成します。
パラメータの値は予めURLエンコードしておきます。
コマンド、パラメータの記述を コマンド、パラメータ=値(valueはURLエンコード済)とし、各パラメータを&で繋ぎます。

なお、HTTPリクエストでは項目をソートする必要はありません。
Action=DescribeLoadBalancers&SignatureMethod=HmacSHA256&SignatureVersion=2&AWSAccessKeyId=<APIKEY>&Version=2012-04-23&Timestamp=2014-08-14T11%3A11%3A15%2B09%3A00&Signature=NWRmNjBjNjZkNjcxNWQzM2M1YjQ5YWYzNDI4YzBjYmI4NDkxOGEwYmFhOTZjMjlmM2IzMjY3MGE3NDJiZGMyOQ%3D%3D%0D%0A
作成したリクエスト本文を元に、HTTPSでエンドポイントに対しGETリクエストを実行します。
エンドポイントは エンドポイントについて を参照してください。
GET /? Action=DescribeLoadBalancers&SignatureMethod=HmacSHA256&SignatureVersion=2&AWSAccessKeyId=<APIKEY>&Version=2012-04-23&Timestamp=2014-08-14T11%3A11%3A15%2B09%3A00&Signature=NWRmNjBjNjZkNjcxNWQzM2M1YjQ5YWYzNDI4YzBjYmI4NDkxOGEwYmFhOTZjMjlmM2IzMjY3MGE3NDJiZGMyOQ%3D%3D%0D%0A

1.5. API仕様

APIに関する各種仕様です。

共通パラメータ仕様

Common Parameters
パラメーター名 説明 Required
Action
実行するAction(コマンド)です。

- Default : None
- Type : String
Yes
AuthParams
未サポート
No
AWSAccessKeyId
リクエストの認証に必要なAccess Key IDを指定します。

- Default : None
- Type : String
Yes
Expires
未サポート
No
SecurityToken
未サポート
No
Signature
リクエストへの署名です。
署名を生成する方法については、 署名 を参照してください。

- Default : None
- Type : String
Yes
SignatureMethod
リクエストへの署名のハッシュアルゴリズムです。

- Default : None
- Valid Values : (HmacSHA256 | HmacSHA1)
- Type : String
Yes
SignatureVersion
リクエストへの署名のバージョンです。

- Default : None
- Valid Values : 2
- Type : String
Yes
Timestamp
リクエストを発出した日時です。
表記方法は「YYYY-MM-DDThh:mm:ssZ」で、ISO8601準拠です。

- Default : None
- Type : String
Yes
Version
使用するAPIバージョンです。

- Default : None
- Valid Values : 2012-04-23
- Type : String
Yes

各種フォーマット

BackendServerDescription
負荷分散先インスタンスの情報を示すData Typeです。
DescribeLoadBalancersのレスポンスとして使われます。
Contents
パラメーター名 説明 Required
InstancePort
負荷分散先インスタンスのポート番号
- Type : Integer
No
PolicyNames
ポリシー名
- Type : String list
No

注釈

現在は負荷分散先インスタンスに設定可能なポリシーは存在しないため、PolicyNamesは空となります。

DateTime

日時で用いるフォーマットです。

  • YYYY-MM-DDThh:mm:ssZ

で指定します。 (ISO8601準拠)

HealthCheck

ヘルスチェックの設定を表すData Typeです。

Contents
パラメーター名 説明 Required
HealthyThreshold
負荷分散先インスタンスをHealthyと判断するまでの、死活監視の連続成功回数
- Type : Integer
Yes
Interval
死活監視の監視感覚 [単位: sec]
- Type : Interger
Yes
Target
死活監視のターゲットで、プロトコルおよびポート(およびパス)を設定します。
- ${PROTOCOL} (必須)
- ヘルスチェックで利用可能な値, 以下の中で選択可能
- TCP
- HTTP
- HTTPS
- SSL
- ${PORT} (必須, 1-65535)
- ヘルスチェックを行うポート番号
- ${ABSOLUTEPATH}
- HTTP/HTTPSの時のみ必要
- Webサーバートップディレクトリからのファイルパス
- ここで指定されたファイルをGETしてそのHTTPリクエストが200であれば成功と判定
- Type : String
- (ex.): “TCP:80”, “SSL:443”, “HTTP:80/en/us/index.html”, “HTTPS:443/index.html”
Yes
Timeout
死活監視のタイムアウト [単位: sec]
- Type : Integer
Yes
UnhealthyThreshold
負荷分散先インスタンスをUnhealthyと判断するまでの、死活監視の連続失敗回数
- Type : Integer
Yes
Instance
Contents
パラメーター名 説明 Required
InstanceId
インスタンスID
登録Computeの仮想サーバーIDを表します。Computeコンソール、およびAPIより取得可能です。

- Type : String
No
InstanceState

登録Compute (インスタンス) の状態を示すData Typeです。

Contents
パラメーター名 説明 Required
Description
インスタンスの情報

- Type : String
No
InstanceId
インスタンスID (登録Computeの仮想サーバーID)
- Type : UUID
No
ReasonCode
インスタンス障害の情報
- Type : String
No
State
インスタンスの現在の状態
InService, OutOfService, HealthChecking のいずれかとなります。
- Type : String
No

注釈

Stateの説明については、 LBA操作マニュアル - 用語ページを参照して下さい。

Listener

リスナーを示すData Typeです。

Contents
パラメーター名 説明 Required
InstancePort
負荷分散先インスタンスのポート番号
- Type : Integer (1-65535)
Yes
InstanceProtocol
負荷分散先インスタンスのプロトコル名
ProtocolがTCP, SSLの場合 : TCP, SSL のいずれかを指定します。
ProtocolがHTTP, HTTPSの場合 : HTTP, HTTPS のいずれかを指定します。
- Type : String
No
LoadBalancerPort
ロードバランサのポート番号
- Type : Integer (80, 443, 1024-60000)
Yes
Protocol
ロードバランサのプロトコル名
TCP, SSL, HTTP, HTTPS のいずれかを指定します。
- Type : String
Yes
SSLCertificateId
SSL証明書ID
- Type : String
No
ListenerDescription
Contents
パラメーター名 説明 Required
Listener
リスナー
- Type : Listenerを参照
No
PolicyNames
ポリシー名
- Type : String list
No
LoadBalancerDescription

DescribeLoadBalancers の結果を示すData Typeです。

Contents
パラメーター名 説明 Required
AvailabilityZones
AvailabilityZoneの情報
- Type : String list
No
BackendServerDescriptions
負荷分散先インスタンスの情報
- Type : BackendServerDescription list (BackendServerDescriptionを参照)
No
CanonicalHostedZoneName
brandname| DNSに登録されたロードバランサの HostedZone名
- Type : String
No
CanonicalHostedZoneNameID
brandname| DNSに登録されたロードバランサの HostedZoneID
- Type : String
No
CreatedTime
ロードバランサの作成日時
- Type : Date Time
No
DNSName
ロードバランサのDNS名
- Type : String
No
HealthCheck
ヘルスチェックの情報
- Type : HealthCheckを参照
No
Instances
インスタンスの情報
- Type : Instance list (Instanceを参照)
No
ListenerDescriptions
リスナーの情報
- Type : ListenerDescription list (ListenerDescriptionを参照)
No
LoadBalancerName
ロードバランサ名
- Type : String
No
Policies
ポリシー
- Type : Policies を参照
No
Scheme
LB種別
一律で Internet-facing となります(指定不可)
- Type : String
No
SecurityGroups
ロードバランサに適用されたセキュリティグループ
(ComputeのセキュリティグループID)
- Type : String list
No
SourceSecutrityGroup
ロードバランサのIPアドレスが登録されたセキュリティグループ
- Type : SourceSecurityGroupを参照
No
Subnets
ロードバランサが接続されているSubnetのID
- Type : String list
No
VPCId
ロードバランサが接続されているVPCのID
- Type : String
No
SourceSecurityGroup
ロードバランサのIPアドレスが登録されたセキュリティグループ名を示すData Typeです。
バックエンドサーバに本セキュリティグループを適用することで、バックエンドサーバが受ける通信をロードバランサのみに制限することができます。
Compute のセキュリティグループとなります。

注釈

  • 本セキュリティグループはロードバランサ作成時に、お客様のアカウントで、自動的に作成されます
    • Computeの制約上、既存のComputeへ、新規にセキュリティグループを追加することができません
    • LBA作成後、本セキュリティグループを指定してバックエンドサーバを新たに作成する必要があります
  • 本セキュリティグループにはロードバランサのIPアドレスが自動で追加削除されます
    • ルールの変更、削除はしないでください。
  • 万が一、本セキュリティグループを削除してしまった場合、以下の方法で復旧を行って下さい
    • LBAコンソール -> 編集(詳細設定) -> セキュリティグループ適用タブ -> SourceSecurityGroupの再作成
  • 本セキュリティグループは、不要になった時点でお客様自身で削除ください
Contents
パラメーター名 説明 Required
GroupName
セキュリティグループ名
- Type : String
No
OwnerAlias
“cloudn-lba”となります
- Type : String
No
Policies

Policies を示す DataTypeです。

Contents
パラメーター名 説明 Required
AppCookieStickinessPolicies
CreateAppCookieStickinessPolicy で作成された AppCookieStickinessPolicy のリスト
No
LBCookieStickinessPolicies
CreateAppCookieStickinessPolicy で作成された LBCookieStickinessPolicy のリスト
No
OtherPolicies
セッション維持以外のポリシー名リスト
- Type: String list
No
PoliciesAttribute
PolicyAttribute を示す DataTypeです。ポリシーに応じた属性、値を含みます。
Contents
パラメーター名 説明 Required
AttributeName
ポリシーに関連した属性名
- Type: String
No
AttributeValue
ポリシーに関連した属性値
- Type: String
No
PoliciesAttributeDescription
PolicyAttributeDescription を示す Data Type です。
ポリシーの属性、属性値を出力する際に使われます。
Contents
パラメーター名 説明 Required
AttributeName
ポリシーの属性名
- Type: String
No
AttributeValue
ポリシーの属性値
- Type: String
No
PolicyDescription

PolicyDescription を示す Data Type です。

Contents
パラメーター名 説明 Required
PolicyAttributeDescriptions
ポリシー属性情報のリスト

No
PolicyName
ロードバランサに関連付けられたポリシー名

- Type: String
No
PolicyTypeName
ロードバランサに関連付けられたポリシータイプ名

- Type: String
No
PolicyTypeDescription

PolicyTypeDescription を示す Data Type です。

Contents
パラメーター名 説明 Required
Description
ポリシータイプの説明

- Type: String
No
PolicyAttributeTypeDescriptions
LBAで定義されたポリシーの属性情報

- Type: PolicyAttributeTypeDescription list
No
PolicyTypeName
ポリシータイプ名

- Type: String
No
PolicyAttributeTypeDescription
PolicyAttributeTypeDescription を示す Data Type です。
ポリシー作成時に指定できる属性値を示します。
SSLNegotiationPolicyType を指定すると、SSLで使う暗号を確認することができます。
(ただし、LBAでは、SSLNegotiationPolicyType を指定して、SSLで使う暗号を変更することはできません。)

注釈

LBCookieStickinessPolicy の CookieExpirationPeriod の単位は秒となります。

Contents
パラメーター名 説明 Required
AttributeName
ポリシータイプに関連する属性名
- Type: String
No
AttributeType
属性の型(Boolean, Integer など)
- Type: String
No
Cardinality
属性値の個数
以下が有効です。
- ONE : 単一の値を指定する必要あり
- ZERO_OR_ONE(0..1) : 0個か1個の値を指定可能
- ZERO_OR_MORE(0..*) : 任意 (0個以上で、複数個指定可能)
- ONE_OR_MORE(1..*0) : 必須 (1個以上で、複数個指定可能)

- Type: String
No
DefaultValue
属性のデフォルト値
- Type: String
No
Description
属性の説明
- Type: String
No
AppCookieStickinessPolicy

AppCookieStickinessPolicy を示す DataTypeです。

Contents
パラメーター名 説明 Required
CookieName
セッション維持に使うアプリケーション cookie 名
- Type: String
No
PolicyName
ポリシー名
本ロードバランサ内でユニークである必要がある
- Type: String
No
LBCookieStickinessPolicy

LBCookieStickinessPolicy を示す DataTypeです。

Contents
パラメーター名 説明 Required
CookieExpirationPeriod
cookie の有効期間 [Sec]
本 cookie のライフタイムは、ブラウザ (ユーザーエージェント) のライフタイムか、ユーザが指定した期間の短い方となります。
- Type: Long
No
PolicyName
作成したポリシー名
本ロードバランサ内でユニークである必要がある
- Type: String
No
ServerCertificateMetadata

サーバ証明書を示すData Typeです。

Contents
パラメーター名 説明 Required
Arn
サーバ証明書を示すリソース名
- Type: String
Yes
Path
未サポート
- Type: String
No
ServerCertificateId
サーバ証明書を示すリソース名 (Arnと同じ値)
- Type: String
Yes
ServerCertificateName
ユーザが指定した証明書名
- Type: String
Yes
UploadDate
サーバ証明書がアップロードされた時刻
表記方法は “YYYY-MM-DDThh:mm:ssZ” で、ISO8601準拠。
- Type: DateTime
No

2. AmazonWebService Elastic Load Balancer互換API

AmazonWebService Elastic Load Balancer互換のAPIについて説明します。

2.1. ConfigureHealthCheck - 登録Computeヘルスチェック設定

概要

登録Computeへのヘルスチェックの設定を行います。

Cloudn LBA サービスは、負荷分散先 (登録Compute) に対してヘルスチェックを行い、万一正常に反応しなかった場合は、負荷分散先から除外します。
除外された登録Computeについても継続的にヘルスチェックを行い、再度正常に反応した時点で負荷分散先に追加します。

デフォルトでは、仮想サーバーの80番ポートに対して、TCPプロトコルにてヘルスチェックを行います。
HTTP/HTTPSプロトコルでヘルスチェックを行う場合、特定のURLパスにアクセスし、HTTPレスポンスとして成功応答 (200番台) が戻ってくるかで判断します。

注釈

デフォルトでは、 “http://${IP_of_Instance}/index.html” がターゲットになります。

リクエスト

リクエストメソッド
  • GET
リクエストパラメータ
パラメーター名 説明 Required
HealthCheck
適用するヘルスチェック設定
- Type :
- HealthCheck を参照
Yes
LoadBalancerName
操作対象ロードバランサ名
- Type : String
Yes

参考

以下のAPIでLoadBalancerNameを取得可能です。

Body
  • 無し

レスポンス

レスポンス (Body)
  • 形式:XML
  • 詳細については、 HealthCheck を参照
Response(Body)
Node名 説明 子Node
ConfigureHealthCheckResponse レスポンスコンテナ ConfigureHealthCheckResult, ResponseMetadata
ConfigureHealthCheckResult HealthCheck
HealthCheck ヘルスチェック設定内容を示す Interval, Target, HealthyThreshold, Timeout, UnhealthyThreshold
Interval  
Target  
HealthyThreshold  
Timeout  
UnhealthyThreshold  
ResponseMetadata RequestId
RequestId APIリクエストを一意に識別するID  

サンプルAPIコール&レスポンス

下記設定値に対しての例を示します。

  • LBA名: example

  • 以下の条件でヘルスチェックを設定する

    • HealthyThreshold=10
    • UnhealthyThreshold=2
    • Target=HTTP:80/index.html
    • Interval=20
    • Timeout=30
サンプルAPIコール
  • APIクライアント (KickAPI) 実行例
$ruby kick_api.rb Action=ConfigureHealthCheck LoadBalancerName=example HealthCheck.HealthyThreshold=10 HealthCheck.UnhealthyThreshold=2 HealthCheck.Target=HTTP:80/ping HealthCheck.Interval=20 HealthCheck.Timeout=30
  • 発行されるHTTPリクエスト例
https://lba2-api.jp-e1.cloudn-service.com/?
AWSAccessKeyId=SAMPLEAPIKEY
&Action=ConfigureHealthCheck&HealthCheck.HealthyThreshold=10
&HealthCheck.Interval=20
&HealthCheck.Target=HTTP%3A80%2Findex.html
&HealthCheck.Timeout=30
&HealthCheck.UnhealthyThreshold=2
&LoadBalancerName=example
&SignatureMethod=HmacSHA256
&SignatureVersion=2
&Timestamp=2014-10-09T18%3A45%3A13%2B09%3A00
&Version=2012-04-23
サンプルAPIレスポンス
<ConfigureHealthCheckResponse xmlns="http://elasticloadbalancing.amazonaws.com/doc/2012-06-01/">
  <ConfigureHealthCheckResult>
    <HealthCheck>
      <Interval>20</Interval>
      <Target>HTTP:80/index.html</Target>
      <HealthyThreshold>10</HealthyThreshold>
      <Timeout>30</Timeout>
      <UnhealthyThreshold>2</UnhealthyThreshold>
    </HealthCheck>
  </ConfigureHealthCheckResult>
  <ResponseMetadata>
    <RequestId>4a862121-6134-a654-a92f-25ba02074bb4</RequestId>
  </ResponseMetadata>
</ConfigureHealthCheckResponse>

2.2. CreateAppCookieStickinessPolicy - アプリケーションクッキー発行ポリシー設定

概要

LBAは、バックエンドサーバへのセッション維持のために、cookie を発行します。
CreateAppCookieStickinessPolicy で作成したポリシーをリスナに適用することで、
LBAが発行する cookie のライフタイムを、アプリケーションが作成するクッキー (アプリケーションクッキー) のライフタイムに合わせることができます。

新しいアプリケーションクッキーが挿入されたら、LBAも新規 stickiness cookie を挿入します。
アプリケーションクッキーが削除されたら、LBAもstickiness cookie を削除します。

このポリシーは、HTTP/HTTPSリスナにのみ関連付けることができます。

注釈

アプリケーションは、アプリケーションが作成した cookie と、 LBAが作成したcookie (名称: CLOUDNLBA ) の 2 つを送信しなければなりません。

また、 CreateLBCookieStickinessPolicy - ロードバランサークッキー保持ポリシー作成 と併用することはできません。

参考

アプリケーションクッキーの詳細については、LBA操作マニュアル - 用語ページを 参照して下さい。

リクエスト

リクエストメソッド
  • GET
リクエストパラメータ
パラメーター名 説明 Required
CookieName
アプリケーションが作成するcookie名
Type : String
Yes
LoadBalancerName
LBA名
Type : String
Yes
PolicyName
作成するポリシー名
作成対象のLBA内でユニークである必要があります。
Type: String
Yes

参考

以下のAPIでLoadBalancerNameを取得可能です。

Body
  • 無し

レスポンス

レスポンス (Body)
  • 形式:XML
Response(Body)
Node名 説明 子Node
CreateAppCookieStickinessPolicyResponse レスポンスコンテナ CreateAppCookieStickinessPolicyResult, ResponseMetadata
CreateAppCookieStickinessPolicyResult  
ResponseMetadata RequestId
RequestId APIリクエストを一意に識別するID

サンプルAPIコール&レスポンス

下記設定値に対しての例を示します。

  • LoadBalancerName: example
  • PolicyName: ExampleCookiePolicy
  • CookieName: NewCookie
サンプルAPIコール
  • APIクライアント (KickAPI) 実行例
ruby kick_api.rb Action=CreateAppCookieStickinessPolicy PolicyName=ExampleCookiePolicy LoadBalancerName=example CookieName=NewCookie
  • 発行されるHTTPリクエスト例
https://lba2-api.jp-e1.cloudn-service.com/?
AWSAccessKeyId=SAMPLEAPIKEY
&Action=CreateAppCookieStickinessPolicy
&CookieName=NewCookie
&LoadBalancerName=example
&PolicyName=ExampleCookiePolicy
&SignatureMethod=HmacSHA256
&SignatureVersion=2
&Timestamp=2014-10-09T18%3A47%3A24%2B09%3A00
&Version=2012-04-23
サンプルAPIレスポンス
<CreateAppCookieStickinessPolicyResponse xmlns="http://elasticloadbalancing.amazonaws.com/doc/2012-06-01/">
  <CreateAppCookieStickinessPolicyResult/>
  <ResponseMetadata>
    <RequestId>7377e15c-704c-6aa5-333b-cfd9c85c96b5</RequestId>
  </ResponseMetadata>
</CreateAppCookieStickinessPolicyResponse>

2.3. CreateLBCookieStickinessPolicy - ロードバランサークッキー保持ポリシー作成

概要

LBAは、バックエンドサーバへのセッション維持のために、cookie を発行します。
本 cookie のライフタイムは、ブラウザ (ユーザーエージェント) のライフタイムか、ユーザが指定した期間の短い方となります。
CreateLBCookieStickinessPolicy で作成したポリシーをリスナに適用すると、LBAはリクエストごとにどの仮想サーバーに転送したかの管理に、この cookie (以下、ロードバランサークッキー)を利用します。

LBAがリクエストを受信したとき、まずリクエストにロードバランサークッキーがあるかをチェックします。
もしロードバランサークッキーがあれば、cookie に示されたアプリケーションサーバにリクエストを転送します。
もしロードバランサークッキーがなければ、LBAのバランシングアルゴリズムに基づきサーバにリクエストを転送します。
この際、LBAはロードバランサークッキーをレスポンスに挿入して返却します。

このポリシーは、HTTP/HTTPS リスナにのみ関連付けることができます。

注釈

LBAでは、ロードバランサークッキーの有効期限は、ブラウザ(ユーザエージェント)のライフタイムより長くすることはできません。 また、 CreateAppCookieStickinessPolicy - アプリケーションクッキー発行ポリシー設定 と併用することはできません。

参考

ロードバランサークッキーの詳細については、LBA操作マニュアル - 用語ページを 参照して下さい。

リクエスト

リクエストメソッド
  • GET
リクエストパラメータ
パラメーター名 説明 Required
CookieExpirationPeriod
ロードバランサークッキーの有効期間 [単位: Sec]

- Type: Long
- Valid Value: 1 - 86400
No
LoadBalancerName
LBA名

- Type: String
Yes
PolicyName
作成するポリシー名
作成対象のLBA内でユニークである必要があります。

- Type: String
Yes

参考

以下のAPIでLoadBalancerNameを取得可能です。

Body
  • 無し

レスポンス

レスポンス (Body)
  • 形式:XML
Response(Body)
Node名 説明 子Node
CreateLBCookieStickinessPolicyResponse レスポンスコンテナ CreateLBCookieStickinessPolicyResult, ResponseMetadata
CreateLBCookieStickinessPolicyResult  
ResponseMetadata RequestId
RequestId リクエストを識別するID

サンプルAPIコール&レスポンス

下記設定値に対しての例を示します。

  • LBAインスタンス “example” に対しCookieStickinessPolicyを作成
サンプルAPIコール
  • APIクライアント (KickAPI) 実行例
$ruby kick_api.rb Action=CreateLBCookieStickinessPolicy CookieExpirationPeriod=60 LoadBalancerName=example PolicyName=NewPolicy
  • 発行されるHTTPリクエスト例
https://lba2-api.jp-e1.cloudn-service.com/?
AWSAccessKeyId=SAMPLEAPIKEY
&Action=CreateLBCookieStickinessPolicy
&CookieExpirationPeriod=60
&LoadBalancerName=example
&PolicyName=NewPolicy
&SignatureMethod=HmacSHA256
&SignatureVersion=2
&Timestamp=2014-10-10T00%3A17%3A16%2B09%3A00
&Version=2012-04-23
サンプルAPIレスポンス
<CreateLBCookieStickinessPolicyResponse xmlns="http://elasticloadbalancing.amazonaws.com/doc/2012-06-01/">
  <CreateLBCookieStickinessPolicyResult/>
  <ResponseMetadata>
    <RequestId>747fbacc-6f7c-e0ac-7c94-51f6dd864787</RequestId>
  </ResponseMetadata>
</CreateLBCookieStickinessPolicyResponse>

2.4. CreateLoadBalancer - LBAの作成

概要

新しいLBAを作成します。

リクエスト

リクエストメソッド
  • GET
リクエストパラメータ

参考

以下のAPIでLoadBalancerNameを取得可能です。

Subnets.member.Nの値として利用するSubnetのIDはVPCタイプ OpenNWのコンソール、もしくはAPIより取得してください。

注釈

Listenerにおいて、InstanceProtocol を省略した場合、以下の Protocol が適用されます

  • Protocol が HTTP, HTTPS のとき HTTP となる
  • Protocol が TCP, SSL のとき TCP となる

また、ヘルスチェックのデフォルト値は以下の通りです。

<HealthCheck>
    <Interval>30</Interval>
    <Target>TCP:80</Target>
     <HealthyThreshold>10</HealthyThreshold>
    <Timeout>5</Timeout>
    <UnhealthyThreshold>2</UnhealthyThreshold>
</HealthCheck>
Body
  • 無し

レスポンス

レスポンス (Body)
  • 形式:XML
Response(Body)
Node名 説明 子Node
CreateLoadBalancerResponse レスポンスコンテナ CreateLoadBalancerResult, ResponseMetadata
CreateLoadBalancerResult DNSName
DNSName 作成されたLBAのDNS名  
ResponseMetadata RequestId
RequestId APIリクエストを一意に識別するID  

サンプルAPIコール&レスポンス

下記設定値に対しての例を示します。

  • LBA名: example

  • 作成ゾーン: jp-e1a

  • 作成リスナー

    • LoadBalancerPort=80
    • InstancePort=80
    • Protocol=http
サンプルAPIコール
  • APIクライアント (KickAPI) 実行例
$ruby kick_api.rb Action=CreateLoadBalancer LoadBalancerName=example Listeners.member.1.LoadBalancerPort=80 Listeners.member.1.InstancePort=80 Listeners.member.1.Protocol=http Listeners.member.1.InstanceProtocol=http Subnets.member.1=9110ee99-9552-4617-8446-528858f1e475
  • 発行されるHTTPリクエスト例
https://lba2-vpcopennw-api.jp-e1.cloudn-service.com/?
AWSAccessKeyId=SAMPLEAPIKEY
&Action=CreateLoadBalancer
&Listeners.member.1.InstancePort=80
&Listeners.member.1.InstanceProtocol=http
&Listeners.member.1.LoadBalancerPort=80
&Listeners.member.1.Protocol=http
&LoadBalancerName=example
&SignatureMethod=HmacSHA256
&SignatureVersion=2
&Subnets.member.1=9110ee99-9552-4617-8446-528858f1e475
&Timestamp=2014-12-02T20%3A59%3A55%2B09%3A00&Version=2012-04-23
サンプルAPIレスポンス
<CreateLoadBalancerResponse xmlns="http://elasticloadbalancing.amazonaws.com/doc/2012-06-01/">
  <CreateLoadBalancerResult>
    <DNSName>example-1410218777.lba2.jp-e1.cloudn-service.com</DNSName>
  </CreateLoadBalancerResult>
  <ResponseMetadata>
    <RequestId>a32f29c7-bcb4-fd4a-4205-7895bc127a75</RequestId>
  </ResponseMetadata>
</CreateLoadBalancerResponse>

2.5. CreateLoadBalancerListeners - リスナーの作成

概要

指定したLBAに新しいリスナーを作成します。
指定したリスナーのLBAのポート (LoadBalancerPort) が存在しない場合、新たにリスナーが作成されます。

参考

リスナーの詳細については、LBA操作マニュアル - 用語ページを参照して下さい。

リクエスト

リクエストメソッド
  • GET
リクエストパラメータ
Parameters
パラメーター名 説明 Required
Listeners.member.N
リスナー
Type :
Listener list ( Listener を参照)
Yes
LoadBalancerName
操作対象のロードバランサ名
Type : String
Yes

参考

以下のAPIでLoadBalancerNameを取得可能です。

Body
  • 無し

レスポンス

レスポンス (Body)
  • 形式:XML
Response(Body)
Node名 説明 子Node
CreateLoadBalancerListenerResponse レスポンスコンテナ CreateLoadBalancerListenerResult, ResponseMetadata
CreateLoadBalancerListenerResult 成功すれば空  
ResponseMetadata RequestId
RequestId APIリクエストを一意に識別するID  

サンプルAPIコール&レスポンス

下記設定値に対しての例を示します。

  • LBA名:example

  • 下記新規リスナーを追加

    • Protocol=http
    • LoadBalancerPort=8080
    • InstancePort=8080
サンプルAPIコール
  • APIクライアント (KickAPI) 実行例
$ruby kick_api.rb Action=CreateLoadBalancerListeners LoadBalancerName=example Listeners.member.1.Protocol=http Listeners.member.1.LoadBalancerPort=8080 Listeners.member.1.InstancePort=8080
  • 発行されるHTTPリクエスト例
https://lba2-api.jp-e1.cloudn-service.com/?
AWSAccessKeyId=SAMPLEAPIKEY
&Action=CreateLoadBalancerListeners
&Listeners.member.1.InstancePort=8080
&Listeners.member.1.LoadBalancerPort=8080
&Listeners.member.1.Protocol=http
&LoadBalancerName=example
&SignatureMethod=HmacSHA256
&SignatureVersion=2
&Timestamp=2014-10-10T00%3A19%3A44%2B09%3A00
&Version=2012-04-23
サンプルAPIレスポンス
<CreateLoadBalancerListenerResponse xmlns="http://elasticloadbalancing.amazonaws.com/doc/2012-06-01/">
  <CreateLoadBalancerListenerResult/>
  <ResponseMetadata>
    <RequestId>0f14bb1d-e7c7-9125-4a04-784308709c69</RequestId>
  </ResponseMetadata>
</CreateLoadBalancerListenerResponse>
#<Net::HTTPOK 200 OK readbody=true>

2.6. CreateLoadBalancerPolicy - LBAポリシー作成

概要

ポリシータイプに基づき、必要な属性を定義した新しいポリシー (リスナーに適用するセッション維持のルール) を作成します。

本ポリシーは、LBA毎に保持されます。
ポリシータイプによってフロントエンドのリスナ、もしくは登録Computeに適用することができます。

注釈

ポリシーは、ロードバランサークッキーによるセッション維持を行うポリシーと、アプリケーションクッキーによるセッション維持を行うポリシーの2種類があります。
前者の場合、セッション維持のルールとしてロードバランサークッキーの有効期間を指定し、後者の場合はアプリケーションクッキー名を指定します。

あるLBAに設定済みのリスナーにAPIでセッション維持を設定する場合、まずはポリシー作成APIにてポリシーを作成する必要があります。
ポリシーはLBA毎に複数作成することが可能で、作成時はポリシーを作成するLBA、ロードバランサークッキーの有効期間 (もしくはアプリケーションクッキー名)、ポリシー名を指定する必要があります。

次に、LBAに設定済みのリスナーで使用しているLBAポート番号に対してポリシーを適用することで、当該リスナーにおいてポリシーに設定したセッション維持が有効になります。

GUI (LBAコンソール) による操作では、「リスナー設定」タブからリスナー毎にセッション維持の設定を実施するため、特にポリシーとリスナーの対応を意識することなくセッション維持機能をご利用いただけます。

リクエスト

リクエストメソッド
  • GET
リクエストパラメータ
パラメーター名 説明 Required
LoadBalancerName
作成するポリシーを割り当てるLBA名

- Type : String
Yes
PolicyAttributes.member.N
作成するポリシーの属性

- Type : String list
No
PolicyName
作成するポリシー名。
ポリシー名はロードバランサ毎にユニークである必要がある。

- Type: String
Yes
PolicyTypeName
作成するポリシーのベースとなるポリシータイプ
ポリシータイプは DescribeLoadBalancerPolicyTypes - LBAポリシータイプ一覧表示 によって確認することができます。
ただし、LBAでは SSLNegotiationPolicyType による暗号設定はできません。

- Type: String
Yes

参考

以下のAPIでLoadBalancerNameを取得可能です。

以下のAPIでPolicyTypeNameを取得可能です。

Body
  • 無し

レスポンス

レスポンス (Body)
  • 形式:XML
Response(Body)
Node名 説明 子Node
CreateLoadBalancerPolicyResponse レスポンスコンテナ CreateLoadBalancerPolicyResult, ResponseMetadata
CreateLoadBalancerPolicyResult 成功すれば空  
ResponseMetadata RequestId
RequestId APIリクエストを一意に識別するID  

サンプルAPIコール&レスポンス

下記設定値に対しての例を示します。

  • LBA名: example

  • 下記の設定でポリシーを設定します

    • LoadBalancerName=example
    • AttributeName=DHE-RSA-AES128-SHA
    • AttributeValue=false
    • PolicyName=ExamplePolicy
    • PolicyTypeName=LBCookieStickinessPolicyType
サンプルAPIコール
  • APIクライアント (KickAPI) 実行例
$ruby kick_api.rb Action=CreateLoadBalancerPolicy LoadBalancerName=example PolicyName=ExamplePolicy PolicyTypeName=LBCookieStickinessPolicyType PolicyAttributes.member.1.AttributeName=DHE-RSA-AES128-SHA PolicyAttributes.member.1.AttributeValue=false
  • 発行されるHTTPリクエスト例
https://lba2-api.jp-e1.cloudn-service.com/?AWSAccessKeyId=SAMPLEAPIKEY
&Action=CreateLoadBalancerPolicy
&LoadBalancerName=example
&PolicyAttributes.member.1.AttributeName=DHE-RSA-AES128-SHA
&PolicyAttributes.member.1.AttributeValue=false
&PolicyName=ExamplePolicy
&PolicyTypeName=LBCookieStickinessPolicyType
&SignatureMethod=HmacSHA256
&SignatureVersion=2
&Timestamp=2014-10-10T00%3A56%3A08%2B09%3A00
&Version=2012-04-23
サンプルAPIレスポンス
<CreateLoadBalancerPolicyResponse xmlns="http://elasticloadbalancing.amazonaws.com/doc/2012-06-01/">
  <CreateLoadBalancerPolicyResult />
  <ResponseMetadata>
    <RequestId>0a846cda-abde-ad07-2d42-0842646a371e</RequestId>
  </ResponseMetadata>
</CreateLoadBalancerPolicyResponse>

2.7. DeleteLoadBalancer - LBA削除

概要

指定したLBAを削除します。
再度LBAを作成する場合、すべての設定をやり直す必要があります。

削除されたLBAに関連付けられたDNS名は利用できなくなります。
一度削除されると、名前および関連付けられた”DNS名”からレコードは消され、そのIPアドレスあてに送られたトラフィックは仮想サーバに届けられません。

LBAを作成した時と同じアカウント権限を利用する必要があります。
もしLBAが存在しないか、すでに消去されていた場合、DeleteLoadBalancerは成功したとみなされます。

警告

削除後にたとえ同じLBA名のLBAを作成したとしても、同じDNS名にはなりません。 削除されたLBAのIPアドレスおよびDNS名は、他のLBAに再利用されます。

参考

“DNS名”の詳細については、LBA操作マニュアル - 用語ページを参照して下さい。

リクエスト

リクエストメソッド
  • GET
リクエストパラメータ
Parameters
パラメーター名 説明 Required
LoadBalancerName
ロードバランサ名
- Type : String
Yes

参考

以下のAPIでLoadBalancerNameを取得可能です。

Body
  • 無し

レスポンス

レスポンス (Body)
  • 形式:XML
Response(Body)
Node名 説明 子Node
DeleteLoadBalancerResponse レスポンスコンテナ DeleteLoadBalancerResult, ResponseMetadata
DeleteLoadBalancerResult 削除に成功すれば空  
ResponseMetadata RequestId
RequestId APIリクエストを一意に識別するID  

サンプルAPIコール&レスポンス

下記設定値に対しての例を示します。

  • LBA名: example を削除
サンプルAPIコール
  • APIクライアント (KickAPI) 実行例
$ruby kick_api.rb Action=DeleteLoadBalancer LoadBalancerName=example
  • 発行されるHTTPリクエスト例
https://lba2-api.jp-e1.cloudn-service.com/?
AWSAccessKeyId=SAMPLEKEY
&Action=DeleteLoadBalancer
&LoadBalancerName=example
&SignatureMethod=HmacSHA256
&SignatureVersion=2
&Timestamp=2014-10-10T07%3A54%3A43%2B09%3A00
&Version=2012-04-23
サンプルAPIレスポンス
<DeleteLoadBalancerResponse xmlns="http://elasticloadbalancing.amazonaws.com/doc/2012-06-01/">
  <DeleteLoadBalancerResult/>
  <ResponseMetadata>
    <RequestId>28bdcc27-3f76-f90f-8059-612e09906ea6</RequestId>
  </ResponseMetadata>
</DeleteLoadBalancerResponse>

2.8. DeleteLoadBalancerListeners - リスナーの削除

概要

LBAから指定したポート宛のリスナーを削除します。

リクエスト

リクエストメソッド
  • GET
リクエストパラメータ
Parameters
パラメーター名 説明 Required
LoadBalancerPorts.member.N
削除するリスナのポート番号 (LoadBalancerPort)
- Type : Interger list
Yes
LoadBalancerName
操作対象のLBA名
- Type : String
Yes

参考

以下のAPIでLoadBalancerNameを取得可能です。

Body
  • 無し

レスポンス

レスポンス (Body)
  • 形式:XML
Response(Body)
Node名 説明 子Node
DeleteLoadBalancerListenerResponse レスポンスコンテナ
DeleteLoadBalancerListenerResult,

ResponseMetadata

DeleteLoadBalancerListenerResult 成功すれば空  
ResponseMetadata RequestId
RequestId APIリクエストを一意に識別するID  

サンプルAPIコール&レスポンス

下記設定値に対しての例を示します。

  • LBA名: example
  • 削除対象リスナ: 8080ポート
サンプルAPIコール
  • APIクライアント (KickAPI) 実行例
$ruby kick_api.rb Action=DeleteLoadBalancerListeners LoadBalancerName=example LoadBalancerPorts.member.1=8080
  • 発行されるHTTPリクエスト例
https://lba2-api.jp-e1.cloudn-service.com/?AWSAccessKeyId=SAMPLEAPIKEY
&Action=DeleteLoadBalancerListeners
&LoadBalancerName=example
&LoadBalancerPorts.member.1=8080
&SignatureMethod=HmacSHA256
&SignatureVersion=2
&Timestamp=2014-10-10T00%3A59%3A45%2B09%3A00
&Version=2012-04-23
サンプルAPIレスポンス
<DeleteLoadBalancerListenerResponse xmlns="http://elasticloadbalancing.amazonaws.com/doc/2012-06-01/">
  <DeleteLoadBalancerListenerResult/>
  <ResponseMetadata>
    <RequestId>86c0f69e-f2e2-06ad-d673-ae18a54a619a</RequestId>
  </ResponseMetadata>
</DeleteLoadBalancerListenerResponse>

2.9. DeleteLoadBalancerPolicy - LBAポリシー削除

概要

LBAからポリシーを削除します。

注釈

指定するポリシーは、どのリスナでも有効になっていない必要があります。

リクエスト

リクエストメソッド
  • GET
リクエストパラメータ
パラメーター名 説明 Required
LoadBalancerName
操作対象のLBA名

- Type : String
Yes
PolicyNames.member.N
LBAに対して作成したポリシー名 もしくは LBAサンプルポリシ名

- Type: String list
No
PolicyName
削除するポリシ名

- Type: String
Yes

参考

以下のAPIでLoadBalancerNameを取得可能です。

Body
  • 無し

レスポンス

レスポンス (Body)
  • 形式:XML
Response(Body)
Node名 説明 子Node
DeleteLoadBalancerPolicyResponse レスポンスコンテナ ResponseMetadata
DeleteLoadBalancerPolicyResult 成功すれば空
ResponseMetadata RequestId
RequestId APIリクエストを一意に識別するID  

サンプルAPIコール&レスポンス

下記設定値に対しての例を示します。

  • LoadBalancerName: example
  • PolicyName: ExamplePolicy

上記の削除を行う。

サンプルAPIコール
  • APIクライアント (KickAPI) 実行例
$ruby kick_api.rb Action=DeleteLoadBalancerPolicy LoadBalancerName=example PolicyName=ExamplePolicy
  • 発行されるHTTPリクエスト例
https://lba2-api.jp-e1.cloudn-service.com/?
AWSAccessKeyId=SAMPLEAPIKEY
&Action=DeleteLoadBalancerPolicy
&LoadBalancerName=example
&PolicyName=ExamplePolicy
&SignatureMethod=HmacSHA256
&SignatureVersion=2
&Timestamp=2014-10-10T00%3A22%3A27%2B09%3A00
&Version=2012-04-23
サンプルAPIレスポンス
<DeleteLoadBalancerPolicyResponse xmlns="http://elasticloadbalancing.amazonaws.com/doc/2012-06-01/">
  <DeleteLoadBalancerPolicyResult/>
  <ResponseMetadata>
    <RequestId>884ad17b-1fd4-b515-5bc6-94e5caaa085b</RequestId>
  </ResponseMetadata>
</DeleteLoadBalancerPolicyResponse>

2.10. DeregisterInstancesFromLoadBalancer - 負荷分散先仮想サーバーの登録解除

概要

LBAから登録Compute (負荷分散先仮想サーバー) を切り離します。
一度切り離されると、LBAからのトラフィックはなくなります。

リクエスト

リクエストメソッド
  • GET
リクエストパラメータ
パラメーター名 説明 Required
Instances.member.N
削除するの負荷分散先インスタンス

- Type: Instance list ( Instance を参照)
Yes
LoadBalancerName
操作対象のLBA名

- Type: String
Yes

参考

以下のAPIでLoadBalancerNameを取得可能です。

Body
  • 無し

レスポンス

レスポンス (Body)
  • 形式:XML
Response(Body)
Node名 説明 子Node
DeregisterInstancesFromLoadBalancerResponse レスポンスコンテナ ResponseMetadata
DeregisterInstancesFromLoadBalancerResult Instances
Instances 登録解除後に残った負荷分散先の情報  
ResponseMetadata RequestId
RequestId APIリクエストを一意に識別するID  

サンプルAPIコール&レスポンス

下記設定値に対しての例を示します。

  • 登録解除する登録Compute (仮想サーバー) のInstanceId: exampleuuid-dd2f-4b78-98c9-3c2f3d7166a5
  • 解除するLBA名 (LoadBalancerName) : example
サンプルAPIコール
  • APIクライアント (KickAPI) 実行例
$ruby kick_api.rb Action=DeregisterInstancesFromLoadBalancer LoadBalancerName=example Instances.member.1.InstanceId=c7f967b2-dd2f-4b78-98c9-3c2f3d7166a5&
  • 発行されるHTTPリクエスト例
https://ba2-api.jp-e1.cloudn-service.com/?
AWSAccessKeyId=SAMPLEAPIKEY
&Action=DeregisterInstancesFromLoadBalancer
&Instances.member.1.InstanceId=exampleuuid-dd2f-4b78-98c9-3c2f3d7166a5
&LoadBalancerName=example
&SignatureMethod=HmacSHA256
&SignatureVersion=2
&Timestamp=2014-10-10T00%3A23%3A32%2B09%3A00
&Version=2012-04-23
サンプルAPIレスポンス
<DeregisterInstancesFromLoadBalancerResponse xmlns="http://elasticloadbalancing.amazonaws.com/doc/2012-06-01/">
  <DeregisterInstancesFromLoadBalancerResult>
    <Instances>
    </Instances>
  </DeregisterInstancesFromLoadBalancerResult>
  <ResponseMetadata>
    <RequestId>556e3f50-da63-decd-d417-c0328180d298</RequestId>
  </ResponseMetadata>
</DeregisterInstancesFromLoadBalancerResponse>

2.11. DescribeInstanceHealth - 登録Computeのヘルスチェック状態表示

概要

指定した登録Compute (Instance) の状態を確認できます。

リクエスト

リクエストメソッド
  • GET
リクエストパラメータ
Parameters
パラメーター名 説明 Required
Instances.member.N
登録ComputeのId
Type :
Instance list ( Instance を参照)
Yes
LoadBalancerName
操作対象のロードバランサ名
Type : String
Yes

参考

以下のAPIでLoadBalancerNameを取得可能です。

Body
  • 無し

レスポンス

レスポンス (Body)
Response(Body)
Node名 説明 子Node
DescribeInstanceHealthResponse レスポンスコンテナ DescribeInstanceHealthResult, ResponseMetadata
DescribeInstanceHealthResult 結果を格納するコンテナ  
InstanceStates 登録Computeを表す member
member 登録Compute 1台を表す。 InstanceState を参照。 Description, InstanceId, State, ReasonCode
ResponseMetadata RequestIdを格納するメタデータコンテナ RequestId
RequestId    

サンプルAPIコール&レスポンス

下記設定値に対しての例を示します。

  • LBA名: example の登録Computeの状態を取得する
サンプルAPIコール
  • APIクライアント (KickAPI) 実行例
$ruby kick_api.rb Action=DescribeInstanceHealth LoadBalancerName=example
  • 発行されるHTTPリクエスト例
https://lba2-api.jp-e1.cloudn-service.com/?
AWSAccessKeyId=SAMPLEAPIKEY
&Action=DescribeInstanceHealth
&LoadBalancerName=example
&SignatureMethod=HmacSHA256
&SignatureVersion=2
&Timestamp=2014-10-10T00%3A07%3A43%2B09%3A00
&Version=2012-04-23
サンプルAPIレスポンス
<DescribeInstanceHealthResponse xmlns="http://elasticloadbalancing.amazonaws.com/doc/2012-06-01/">
  <DescribeInstanceHealthResult>
    <InstanceStates>
      <member>
        <Description>Load Balancer is stopped state</Description>
        <InstanceId>c7f967b2-dd2f-4b78-98c9-3c2f3d7166a5</InstanceId>
        <State>OutOfService</State>
        <ReasonCode>Load Balancer</ReasonCode>
      </member>
    </InstanceStates>
  </DescribeInstanceHealthResult>
  <ResponseMetadata>
    <RequestId>cbba38da-7daa-5548-3804-ff818a2e0433</RequestId>
  </ResponseMetadata>
</DescribeInstanceHealthResponse>

2.12. AttachLoadBalancerToSubnets - 負荷分散先Subnet登録追加

概要

負荷分散先のSubnetを登録追加します。

注釈

VPCタイプ OpenNWではEnableAvailabilityZonesForLoadBalancerを実行することは出来ません。 本APIにて自動的にゾーンが有効化されます。

リクエスト

リクエストメソッド
  • GET
リクエストパラメータ
パラメーター名 説明 Required
LoadBalancerName
操作対象ロードバランサ名
- Type : String
Yes
Subnets.member.N
登録追加するSubnetのID
(N=1, 2, 3 ..... 100)
- Type : String list
Yes

注釈

以下のAPIでLoadBalancerNameを取得可能です。

Subnets.member.Nの値として利用するSubnetのIDはVPCタイプ OpenNWのコンソール、もしくはAPIより取得してください。

注釈

異なるVPCにある複数のSubnetを指定可能です。 Subnetが異なるAvailabilityZoneのVPCに存在する場合、追加されるSubnetのAvailabilityZoneが有効化されます。

また、既に登録済みのSubnetのVPCとCIDRが重複する別のVPC内のSubnetを指定することはできません。

Body
  • 無し

レスポンス

レスポンス (Body)
  • 形式:XML
Response(Body)
Node名 説明 子Node
AttachLoadBalancerToSubnetsResponse レスポンスコンテナ AttachLoadBalancerToSubnetsResult, ResponseMetadata
AttachLoadBalancerToSubnetsResult Subnets
Subnets 現在登録されているSubnet情報の一覧 member
member SubnetのID  
ResponseMetadata RequestId
RequestId APIリクエストを一意に識別するID  

サンプルAPIコール&レスポンス

下記設定値に対しての例を示します。

  • LBA名: example

  • 以下の条件でSubnetの登録を追加する

    • すでに登録されているSubnet : 5120ee99-9552-4617-8446-528858f1e475
    • 追加するSubnet : aeef6e6b-3072-4101-bb03-5c8b280b3d16
サンプルAPIコール
  • APIクライアント (KickAPI) 実行例
$ ruby kick_api.rb Action=AttachLoadBalancerToSubnets LoadBalancerName=lba Subnets.member.1=aeef6e6b-3072-4101-bb03-5c8b280b3d16
  • 発行されるHTTPリクエスト例
https://lba2-api.jp-e1.cloudn-service.com/?
AWSAccessKeyId=SAMPLEAPIKEY
&Action=AttachLoadBalancerToSubnets
&LoadBalancerName=lba
&Subnets.member.1=aeef6e6b-3072-4101-bb03-5c8b280b3d16
&SignatureMethod=HmacSHA256
&SignatureVersion=2
&Timestamp=2014-10-09T18%3A45%3A13%2B09%3A00
&Version=2012-04-23
サンプルAPIレスポンス
<AttachLoadBalancerToSubnetsResponse xmlns="http://elasticloadbalancing.amazonaws.com/doc/2012-06-01/">
  <AttachLoadBalancerToSubnetsResult>
    <Subnets>
      <member>5120ee99-9552-4617-8446-528858f1e475</member>
      <member>aeef6e6b-3072-4101-bb03-5c8b280b3d16</member>
    </Subnets>
  </AttachLoadBalancerToSubnetsResult>
  <ResponseMetadata>
    <RequestId>7841a45d-d63c-4607-ee97-4aebe7ef43cf</RequestId>
  </ResponseMetadata>
</AttachLoadBalancerToSubnetsResponse>

2.13. DetachLoadBalancerFromSubnets - 負荷分散先Subnet登録解除

概要

負荷分散先のSubnetを登録削除します。

注釈

負荷分散先Subnetが一つも登録されていない状態にすることは出来ません。

注釈

VPCタイプ OpenNWではDisableAvailabilityZonesForLoadBalancerを実行することは出来ません。 本APIにて自動的にゾーンが無効化されます。

リクエスト

リクエストメソッド
  • GET
リクエストパラメータ
パラメーター名 説明 Required
LoadBalancerName
操作対象ロードバランサ名
- Type : String
Yes
Subnets.member.N
登録削除するSubnetのID
(N=1, 2, 3 ..... 100)
- Type : String list
Yes

注釈

以下のAPIでLoadBalancerNameを取得可能です。

Subnets.member.Nの値として利用するSubnetのIDはVPCタイプ OpenNWのコンソール、もしくはAPIより取得してください。

Body
  • 無し

レスポンス

レスポンス (Body)
  • 形式:XML
Response(Body)
Node名 説明 子Node
DetachLoadBalancerFromSubnetsResponse レスポンスコンテナ DetachLoadBalancerFromSubnetsResult, ResponseMetadata
DetachLoadBalancerFromSubnetsResult Subnets
Subnets Subnet情報の入るコンテナ member
member 登録削除対象SubnetのID  
ResponseMetadata RequestId
RequestId APIリクエストを一意に識別するID  

サンプルAPIコール&レスポンス

下記設定値に対しての例を示します。

  • LBA名: example

  • 以下の条件でSubnetの登録を削除する

    • 登録削除対象Subnet: aeef6e6b-3072-4101-bb03-5c8b280b3d16
    • 登録されているSubnetが上記以外に1つ以上ある
サンプルAPIコール
  • APIクライアント (KickAPI) 実行例
$ ruby kick_api.rb Action=DetachLoadBalancerFromSubnets LoadBalancerName=lba Subnets.member.1=aeef6e6b-3072-4101-bb03-5c8b280b3d16
  • 発行されるHTTPリクエスト例
https://lba2-api.jp-e1.cloudn-service.com/?
AWSAccessKeyId=SAMPLEAPIKEY
&Action=DetachLoadBalancerFromSubnets
&LoadBalancerName=lba
&Subnets.member.1=aeef6e6b-3072-4101-bb03-5c8b280b3d16
&SignatureMethod=HmacSHA256
&SignatureVersion=2
&Timestamp=2014-10-09T18%3A45%3A13%2B09%3A00
&Version=2012-04-23
サンプルAPIレスポンス
<DetachLoadBalancerFromSubnetsResponse xmlns="http://elasticloadbalancing.amazonaws.com/doc/2012-06-01/">
  <DetachLoadBalancerFromSubnetsResult>
    <Subnets>
      <member>5120ee99-9552-4617-8446-528858f1e475</member>
    </Subnets>
  </DetachLoadBalancerFromSubnetsResult>
  <ResponseMetadata>
    <RequestId>0038334a-248c-2fc9-4894-9dceb6e85a6b</RequestId>
  </ResponseMetadata>
</DetachLoadBalancerFromSubnetsResponse>

2.14. DescribeLoadBalancerPolicies - LBAポリシー一覧表示

概要

ポリシーの詳細情報を返却します。

LBA名を指定した場合、そのLBAに対して作成されたポリシー情報の一覧 (ポリシー名が指定された場合は、そのポリシーの情報) が返却されます。
LBA名を指定しない場合、サンプルのポリシー情報の一覧 (ポリシー名が指定された場合は、そのポリシーの情報) が返却されます。
サンプルポリシー名は、先頭に LBASample- がつきます

リクエスト

リクエストメソッド
  • GET
リクエストパラメータ
パラメーター名 説明 Required
LoadBalancerName
ロードバランサ名

- Type: String
No
PolicyNames.member.N
ロードバランサに対して作成したポリシー名 もしくは LBAサンプルポリシー名

- Type: String list
No

参考

以下のAPIでLoadBalancerNameを取得可能です。

Body
  • 無し

レスポンス

レスポンス (Body)
  • 形式:XML

  • 詳細は下記を参照

Response(Body)
Node名 説明 子Node
DescribeLoadBalancerPoliciesResponse レスポンスコンテナ DescribeLoadBalancerPoliciesResult, ResponseMetadata
DescribeLoadBalancerPoliciesResult レスポンスコンテナ PolicyDescriptions
PolicyDescriptions   member
member メンバーの内容を表すコンテナ PolicyAttributeDescriptions, PolicyName, PolicyTypeName
PolicyName ポリシーの名前  
PolicyTypeName ポリシータイプ名  
PolicyAttributeDescriptions   member
member メンバーの内容を表すコンテナ AttributeName, AttributeValue
AttributeName ポリシー属性の名前  
AttributeValue ポリシー属性の値  
ResponseMetadata レスポンスコンテナ RequestId
RequestId リクエストを識別するID  

サンプルAPIコール&レスポンス

下記設定値に対しての例を示します。

  • すべてのポリシーを表示する
サンプルAPIコール
  • APIクライアント (KickAPI) 実行例
$ruby kick_api.rb Action=DescribeLoadBalancerPolicies
  • 発行されるHTTPリクエスト例
https://lba2-api.jp-e1.cloudn-service.com/?AWSAccessKeyId=SAMPLEAPIKEY
&Action=DescribeLoadBalancerPolicies
&SignatureMethod=HmacSHA256
&SignatureVersion=2
&Timestamp=2014-10-10T00%3A08%3A52%2B09%3A00
&Version=2012-04-23
サンプルAPIレスポンス
<DescribeLoadBalancerPoliciesResponse xmlns="http://elasticloadbalancing.amazonaws.com/doc/2012-06-01/">
  <DescribeLoadBalancerPoliciesResult>
    <PolicyDescriptions>
      <member>
        <PolicyAttributeDescriptions>
          <member>
            <AttributeName>CipherSuite</AttributeName>
            <AttributeValue>CAMELLIA256-SHA:CAMELLIA128-SHA:ALL:!aNULL:!eNULL:!RC2:!MD5:!DES:!IDEA:!ADH:!EXPORT:+HIGH:+MEDIUM</AttributeValue>
          </member>
        </PolicyAttributeDescriptions>
        <PolicyName>LBASample-OpenSSLDefaultNegotiationPolicy</PolicyName>
        <PolicyTypeName>SSLNegotiationPolicyType</PolicyTypeName>
      </member>
    </PolicyDescriptions>
  </DescribeLoadBalancerPoliciesResult>
  <ResponseMetadata>
    <RequestId>b5336472-e8e1-0254-b224-0dc6af12bf5a</RequestId>
  </ResponseMetadata>
</DescribeLoadBalancerPoliciesResponse>

2.15. DescribeLoadBalancerPolicyTypes - LBAポリシータイプ一覧表示

概要

LBAで定義されたLBAポリシーのメタ情報を返します。
本アクションで返されるポリシータイプは、 CreateLoadBalancerPolicy - LBAポリシー作成 アクションで、LBAに適用するポリシー作成に使用します。

リクエスト

リクエストメソッド
  • GET
リクエストパラメータ
Parameters
パラメーター名 説明 Required
PolicyTypeNames.member.N
ポリシータイプ名
省略した場合LBAで定義されているポリシータイプが返却されます。
- Type: String list
No

参考

以下のAPIでLoadBalancerNameを取得可能です。

Body
  • 無し

レスポンス

レスポンス (Body)
Response(Body)
Node名 説明 子Node
DescribeLoadBalancerPolicyTypesResponse レスポンスコンテナ DescribeLoadBalancerPolicyTypesResult, ResponseMetadata
DescribeLoadBalancerPolicyTypesResult レスポンスコンテナ PolicyTypeDescriptions
PolicyTypeDescriptions member
member PolicyTypeName, Description, PolicyAttributeTypeDescriptions
PolicyTypeName ポリシータイプ名  
Description ポリシーの説明  
PolicyAttributeTypeDescriptions member
member AttributeName, AttributeType, Cardinality, DefaultValue
AttributeName ポリシー属性の名前  
AttributeType ポリシー属性の種類  
Cardinality  
DefaultValue  
ResponseMetadata レスポンスコンテナ RequestId
RequestId リクエストを識別するID  

サンプルAPIコール&レスポンス

下記設定値に対しての例を示します。

  • すべてのポリシータイプを表示する
サンプルAPIコール
  • APIクライアント (KickAPI) 実行例
$ruby kick_api.rb Action=DescribeLoadBalancerPolicyTypes
  • 発行されるHTTPリクエスト例
https://lba2-api.jp-e1.cloudn-service.com/?
AWSAccessKeyId=SAMPLEAPIKEY
&Action=DescribeLoadBalancerPolicyTypes
&SignatureMethod=HmacSHA256
&SignatureVersion=2
&Timestamp=2014-10-10T00%3A09%3A59%2B09%3A00
&Version=2012-04-23
サンプルAPIレスポンス
<DescribeLoadBalancerPolicyTypesResponse xmlns="http://elasticloadbalancing.amazonaws.com/doc/2012-06-01/">
  <DescribeLoadBalancerPolicyTypesResult>
    <PolicyTypeDescriptions>
      <member>
        <PolicyTypeName>AppCookieStickinessPolicyType</PolicyTypeName>
        <Description>Stickiness policy with session lifetimes controlled by the lifetime of the application-generated cookie. This policy can be associated only with HTTP/HTTPS listeners.</Description>
        <PolicyAttributeTypeDescriptions>
          <member>
            <AttributeName>CookieName</AttributeName>
            <AttributeType>String</AttributeType>
            <Cardinality>ONE</Cardinality>
            <DefaultValue></DefaultValue>
          </member>
        </PolicyAttributeTypeDescriptions>
      </member>
      <member>
        <PolicyTypeName>LBCookieStickinessPolicyType</PolicyTypeName>
        <Description>Stickiness policy with session lifetimes controlled by the browser (user-agent) or a specified expiration period. This policy can be associated only with HTTP/HTTPS listeners.</Description>
        <PolicyAttributeTypeDescriptions>
          <member>
            <AttributeName>CookieExpirationPeriod</AttributeName>
            <AttributeType>Long</AttributeType>
            <Cardinality>ZERO_OR_ONE</Cardinality>
            <DefaultValue></DefaultValue>
          </member>
        </PolicyAttributeTypeDescriptions>
      </member>
      <member>
        <PolicyTypeName>SSLNegotiationPolicyType</PolicyTypeName>
        <Description>Listener policy that defines the ciphers and protocols that will be accepted by the load balancer. This policy can be associated only with HTTPS/SSL listeners.</Description>
        <PolicyAttributeTypeDescriptions>
          <member>
            <AttributeName>CipherSuite</AttributeName>
            <AttributeType>String</AttributeType>
            <Cardinality>ONE</Cardinality>
            <DefaultValue>CAMELLIA256-SHA:CAMELLIA128-SHA:ALL:!aNULL:!eNULL:!RC2:!MD5:!DES:!IDEA:!ADH:!EXPORT:+HIGH:+MEDIUM</DefaultValue>
          </member>
        </PolicyAttributeTypeDescriptions>
      </member>
    </PolicyTypeDescriptions>
  </DescribeLoadBalancerPolicyTypesResult>
  <ResponseMetadata>
    <RequestId>74b7a266-1046-2147-449a-63113ab97f7d</RequestId>
  </ResponseMetadata>
</DescribeLoadBalancerPolicyTypesResponse>

2.16. DescribeLoadBalancers - LBA情報一覧表示

概要

指定したLBAの詳細な設定情報を確認できます。
LBA名を指定しない場合は、すべてのLBAの情報を得ることができます。

リクエスト

リクエストメソッド
  • GET
リクエストパラメータ
パラメーター名 説明 Required
LoadBalancerNames.member.N
操作対象のLBA名
Type : String list
No
Marker
未サポート
指定する必要はありません。
Type : String
No

参考

以下のAPIでLoadBalancerNameを取得可能です。

Body
  • 無し

レスポンス

レスポンス (Body)
  • 形式:XML
Response(Body)
Node名 説明 子Node
DescribeLoadBalancersResponse レスポンスコンテナ DescribeLoadBalancersResult, ResponseMetadata
DescribeLoadBalancersResult LoadBalancerDescriptions
LoadBalancerDescriptions LoadBalancerDescription 参照  
ResponseMetadata レスポンスコンテナ RequestId
RequestId リクエストを識別するID  

サンプルAPIコール&レスポンス

下記設定値に対しての例を示します。

  • すべてのLBAを表示する
サンプルAPIコール
$ruby kick_api.rb Action=DescribeLoadBalancers
https://lba2-vpcopennw-api.jp-e1.cloudn-service.com/?
AWSAccessKeyId=SAMPLEAPIKEY
&Action=DescribeLoadBalancers
&SignatureMethod=HmacSHA256
&SignatureVersion=2
&Timestamp=2014-10-10T00%3A11%3A06%2B09%3A00
&Version=2012-04-23
サンプルAPIレスポンス
<DescribeLoadBalancersResponse xmlns="http://elasticloadbalancing.amazonaws.com/doc/2012-06-01/">
  <DescribeLoadBalancersResult>
    <LoadBalancerDescriptions>
      <member>
        <SecurityGroups/>
        <LoadBalancerName>example</LoadBalancerName>
        <CreatedTime>2014-09-08T13:11:11Z</CreatedTime>
        <HealthCheck>
          <Interval>30</Interval>
          <Target>TCP:80</Target>
          <HealthyThreshold>10</HealthyThreshold>
          <Timeout>5</Timeout>
          <UnhealthyThreshold>2</UnhealthyThreshold>
        </HealthCheck>
        <ListenerDescriptions>
          <member>
            <PolicyNames/>
            <Listener>
              <Protocol>http</Protocol>
              <LoadBalancerPort>80</LoadBalancerPort>
              <InstanceProtocol>http</InstanceProtocol>
              <SSLCertificateId></SSLCertificateId>
              <InstancePort>80</InstancePort>
            </Listener>
          </member>
        </ListenerDescriptions>
        <Instances/>
        <Policies>
          <AppCookieStickinessPolicies/>
          <OtherPolicies>
            <member>CAMELLIA256-SHA:CAMELLIA128-SHA:ALL:!aNULL:!eNULL:!RC2:!MD5:!DES:!IDEA:!ADH:!EXPORT:+HIGH:+MEDIUM</member>
          </OtherPolicies>
          <LBCookieStickinessPolicies/>
        </Policies>
        <AvailabilityZones>
          <member>jp-e1a</member>
        </AvailabilityZones>
        <CanonicalHostedZoneName>example-1410181871.lba2.jp-e1.cloudn-service.com</CanonicalHostedZoneName>
        <CanonicalHostedZoneNameID>91873C90C12749</CanonicalHostedZoneNameID>
        <Scheme>internet-facing</Scheme>
        <SourceSecurityGroup>
          <OwnerAlias>cloudn-lba</OwnerAlias>
          <GroupName>cloudn-lba-sg-example</GroupName>
        </SourceSecurityGroup>
        <DNSName>example-1410181871.lba2.jp-e1.cloudn-service.com</DNSName>
        <BackendServerDescriptions>
          <member>
            <PolicyNames/>
            <InstancePort>80</InstancePort>
          </member>
        </BackendServerDescriptions>
        <Subnets/>
      </member>
    </LoadBalancerDescriptions>
  </DescribeLoadBalancersResult>
  <ResponseMetadata>
    <RequestId>875b3ff3-6821-f0a8-06c0-bfee276b18a0</RequestId>
  </ResponseMetadata>
</DescribeLoadBalancersResponse>

2.17. RegisterInstancesWithLoadBalancer - 負荷分散先仮想サーバーの登録

概要

負荷分散先仮想サーバーをLBAに追加します。

一度仮想サーバーが追加されると、LBAからのトラフィックを受け取り始めます。
仮想サーバーに登録されていないゾーンに含まれるインスタンスはOutOfServiceの状態に移ります。
その場合、ゾーンがロードバランサに加えられた際に、仮想サーバーはInServiceの状態に移ります。

リクエスト

リクエストメソッド
  • GET
リクエストパラメータ
パラメーター名 説明 Required
Instances.member.N
負荷分散先インスタンス
- Type: Instance list ( Instance を参照)
Yes
LoadBalancerName
操作対象のロードバランサ名
- Type: String
Yes

参考

以下のAPIでLoadBalancerNameを取得可能です。

Body
  • 無し

レスポンス

レスポンス (Body)
  • 形式:XML
Response(Body)
Node名 説明 子Node
RegisterInstancesWithLoadBalancerResponse レスポンスコンテナ ResponseMetadata
RegisterInstancesWithLoadBalancerResult Instances
Instances 登録Computeの情報 member
member 各登録Computeの情報 InstanceId
InstanceId 登録ComputeのID (UUID)  
ResponseMetadata RequestId
RequestId APIリクエストを一意に識別するID  

サンプルAPIコール&レスポンス

下記設定値に対しての例を示します。

  • LBA名: example
  • 対象登録ComputeのId: SampleInstanceID-dd2f-4b78-98c9-3c2f3d7166a5
サンプルAPIコール
  • APIクライアント (KickAPI) 実行例
$ruby kick_api.rb Action=RegisterInstancesWithLoadBalancer LoadBalancerName=example Instances.member.1.InstanceId=SampleInstanceID-dd2f-4b78-98c9-3c2f3d7166a5
  • 発行されるHTTPリクエスト例
https://lba2-api.jp-e1.cloudn-service.com/?
AWSAccessKeyId=SAMPLEAPIKEY
&Action=RegisterInstancesWithLoadBalancer
&Instances.member.1.InstanceId=SampleInstanceID-dd2f-4b78-98c9-3c2f3d7166a5
&LoadBalancerName=example
&SignatureMethod=HmacSHA256
&SignatureVersion=2
&Timestamp=2014-10-10T00%3A14%3A39%2B09%3A00
&Version=2012-04-23
サンプルAPIレスポンス
<RegisterInstancesWithLoadBalancerResponse xmlns="http://elasticloadbalancing.amazonaws.com/doc/2012-06-01/">
  <RegisterInstancesWithLoadBalancerResult>
    <Instances>
      <member>
        <InstanceId>SampleInstanceID-dd2f-4b78-98c9-3c2f3d7166a5</InstanceId>
      </member>
    </Instances>
  </RegisterInstancesWithLoadBalancerResult>
  <ResponseMetadata>
    <RequestId>501f942d-5224-175c-d5f6-e3ac29bb8807</RequestId>
  </ResponseMetadata>
</RegisterInstancesWithLoadBalancerResponse>

2.18. SetLoadBalancerPoliciesOfListener - ポリシーの関連付け

概要

LBAのリスナーに対して、ポリシーの関連付け、更新、無効化を行います。

注釈

アプリケーションは、アプリケーションが作成した cookie と、 ロードバランサが作成したcookie (名称: CLOUDNLBA ) の 2 つを送信しなければなりません。

また、 CreateLBCookieStickinessPolicy - ロードバランサークッキー保持ポリシー作成 と併用することはできません。

リクエスト

リクエストメソッド
  • GET
リクエストパラメータ
パラメーター名 説明 Required
LoadBalancerName
操作対象のLBA名

- Type : String
Yes
LoadBalancerPort
ポリシーを適用するLBAの外部向けポート番号

- Type: Integer
Yes
PolicyNames.member.N
リスナーに関連付けるポリシーの名前
空のリストを指定した場合、リスナーから現在設定されているポリシーが削除されます

- Type: String list
Yes

参考

以下のAPIでLoadBalancerNameを取得可能です。

Body
  • 無し

レスポンス

レスポンス (Body)
  • 形式:XML
Response(Body)
Node名 説明 子Node
SetLoadBalancerPoliciesOfListenerResponse レスポンスコンテナ SetLoadBalancerPoliciesOfListenerResult, ResponseMetadata
SetLoadBalancerPoliciesOfListenerResult 成功すれば空  
ResponseMetadata RequestId
RequestId APIリクエストを一意に識別するID  

サンプルAPIコール&レスポンス

下記設定値に対しての例を示します。

  • AlarmName: example
サンプルAPIコール
  • APIクライアント (KickAPI) 実行例
$ruby kick_api.rb Action=SetLoadBalancerPoliciesOfListener LoadBalancerName=example LoadBalancerPort=80 PolicyNames.member.1=ExamplePolicy
  • 発行されるHTTPリクエスト例
https://lba2-api.jp-e1.cloudn-service.com/?
AWSAccessKeyId=SAMPLEAPIKEY
&Action=SetLoadBalancerPoliciesOfListener
&LoadBalancerName=example
&LoadBalancerPort=80
&PolicyNames.member.1=ExamplePolicy
&SignatureMethod=HmacSHA256
&SignatureVersion=2
&Timestamp=2014-10-10T00%3A15%3A34%2B09%3A00
&Version=2012-04-23
サンプルAPIレスポンス
<SetLoadBalancerPoliciesOfListenerResponse xmlns="http://elasticloadbalancing.amazonaws.com/doc/2012-06-01/">
  <SetLoadBalancerPoliciesOfListenerResult/>
  <ResponseMetadata>
    <RequestId>2c77a28b-25c3-3739-7d91-844a4580ceef</RequestId>
  </ResponseMetadata>
</SetLoadBalancerPoliciesOfListenerResponse>

2.19. SetLoadBalancerListenerSSLCertificate - SSL終端リスナーに証明書を設定する

概要

SSL接続を行うリスナーを指定し、SSLの終端を行う証明書を設定します。
設定先のロードバランサ、ポートに既に証明書が設定されている場合、ここで指定した証明書に置き換わります。

リクエスト

リクエストメソッド
  • GET
リクエストパラメータ
パラメーター名 説明 Required
LoadBalancerName
証明書を設定するロードバランサ名
Type: String
Yes
LoadBalancerPort
証明書を設定するロードバランサの外部向けポート番号
Type: Integer
Yes
SSLCertificateId
設定する証明書リソースID
Type: String
Yes

注釈

以下のAPI、もしくはLBAコンソールより事前にSSL証明書の登録が必要です。

参考

以下のAPIでLoadBalancerNameを取得可能です。

以下のAPIで登録済みSSL証明書を確認可能です。

Body
  • 無し

レスポンス

レスポンス (Body)
  • 形式:XML
Response(Body)
Node名 説明 子Node
SetLoadBalancerListenerSSLCertificateResponse レスポンスコンテナ SetLoadBalancerListenerSSLCertificateResult
SetLoadBalancerListenerSSLCertificateResult ResponseMetadata
ResponseMetadata RequestId
RequestId APIリクエストを一意に識別するID  

サンプルAPIコール&レスポンス

下記設定値に対しての例を示します。

  • LoadBalancerName: example-lba
  • LoadBalancerPort: 443
  • SSLCertificateId: arn:cloudn:lba:jp-e1:cln1000XXXXX:server-certificate/example-cert
サンプルAPIコール
  • APIクライアント (KickAPI) 実行例
ruby kick_api.rb Action=SetLoadBalancerListenerSSLCertificate LoadBalancerName=example-lba LoadBalancerPort=443 SSLCertificateId='arn:cloudn:lba:jp-e1:cln1000XXXXX:server-certificate/example-cert'
  • 発行されるHTTPリクエスト例
https://lba2-vpcopennw-api.jp-e1.cloudn-service.com/?
AWSAccessKeyId=SAMPLEAPIKEY
&Action=CreateLoadBalancer
&SetLoadBalancerListenerSSLCertificate
&LoadBalancerName=example-lba
&LoadBalancerPort=443
&SSLCertificateId=arn:cloudn:lba:jp-e1:cln1000XXXXX:server-certificate/example-cert
&SignatureMethod=HmacSHA256
&SignatureVersion=2
&Timestamp=2014-10-10T00%3A18%3A46%2B09%3A00
&Version=2012-04-23
サンプルAPIレスポンス
<SetLoadBalancerListenerSSLCertificateResponse xmlns="http://elasticloadbalancing.amazonaws.com/doc/2012-06-01/">
  <SetLoadBalancerListenerSSLCertificateResult>
    <ResponseMetadata>
      <RequestId>9fd264d7-c59b-4223-5942-279002b62bd3</RequestId>
    </ResponseMetadata>
  </SetLoadBalancerListenerSSLCertificateResult>
</SetLoadBalancerListenerSSLCertificateResponse>

2.20. UploadServerCertificateForLBA - LBAへのSSLサーバ証明書アップロード

概要

サーバ証明書、秘密鍵、中間証明書のアップロードを行います。
ロードバランサでSSLを終端させる場合、事前に本APIで証明書などをアップロードする必要があります。

Cloudn LBAの独自APIになります。

リクエスト

リクエストメソッド
  • GET
  • POST

警告

リクエストURIが長すぎる場合はGETメソッドではエラーとなる可能性があります。 その場合、POSTメソッドを利用する必要があります。 (例:中間証明書を含めて登録する場合など)

リクエストパラメータ
パラメーター名 説明 Required
CertificateBody
PEMエンコードフォーマットの公開鍵証明書
Type: String
Yes
CertificateChain
中間証明書
PEMエンコードフォーマットの公開鍵証明書を連結すること
Type: String
No
Path
未サポート
No
PrivateKey
PEMエンコードフォーマットの秘密鍵
Type: String
Yes
ServerCertificateName
サーバ証明書名
Type: String
Yes

参考

以下のAPIでLoadBalancerNameを取得可能です。

Body
  • 無し

レスポンス

レスポンス (Body)
  • 形式:XML
Response(Body)
Node名 説明 子Node
UploadServerCertificateForLBAResponse レスポンスコンテナ UploadServerCertificateForLBAResult
UploadServerCertificateForLBAResult ServerCertificateMetadata, ResponseMetadata
ServerCertificateMetadata   Arn, Path, ServerCertificateId, ServerCertificateName, UploadDate
Arn サーバ証明書を示すリソース名  
Path 未サポート  
ServerCertificateId サーバ証明書を示すリソースID (Arnと同一)  
ServerCertificateName サーバ証明書名  
UploadDate サーバ証明書がアップロードされた日時  
ResponseMetadata レスポンスコンテナ RequestId
RequestId リクエストを識別するID  

サンプルAPIコール&レスポンス

下記設定値に対しての例を示します。

  • CertificateBody: 事前に用意したサーバ証明書 server.crt をカレントディレクトリに配置
  • PrivateKey: 事前に用意した秘密鍵 server.key をカレントディレクトリに配置
  • ServerCertificateName: certificate
サンプルAPIコール
  • APIクライアント (KickAPI) 実行例
ruby kick_api.rb Action=UploadServerCertificateForLBA CertificateBody="`cat server.crt`"  PrivateKey="`cat server.key`" ServerCertificateName="certificate"
  • 発行されるHTTPリクエスト例
https://lba2-vpcopennw-api.jp-e1.cloudn-service.com/?
AWSAccessKeyId=SAMPLEAPIKEY
&Action=UploadServerCertificateForLBA
&CertificateBody=-----BEGIN%20CERTIFICATE-----%0A<サーバ証明書>%0A-----END%20CERTIFICATE-----
&PrivateKey=-----BEGIN%20RSA%20PRIVATE%20KEY-----%0A<秘密鍵>%0A-----END%20RSA%20PRIVATE%20KEY-----
&ServerCertificateName=certificate
&SignatureMethod=HmacSHA256
&SignatureVersion=2
&Timestamp=2018-08-10T13%3A27%3A23%2B09%3A00
&Version=2012-04-23
サンプルAPIレスポンス
HTTP Status Code: 200
<UploadServerCertificateForLBAResponse xmlns="http://elasticloadbalancing.amazonaws.com/doc/2012-06-01/">
  <UploadServerCertificateForLBAResult>
      <ServerCertificateMetadata>
        <Arn>arn:cloudn:lba:jp-e1:cln1000XXXXX:server-certificate/certificate</Arn>
        <Path>/</Path>
        <ServerCertificateId>arn:cloudn:lba:jp-e1:cln1000XXXXX:server-certificate/certificate</ServerCertificateId>
        <ServerCertificateName>certificate</ServerCertificateName>
        <UploadDate>2018-08-10T04:27:23Z</UploadDate>
      </ServerCertificateMetadata>
    <ResponseMetadata>
      <RequestId>4016be02-a7ac-8509-25e5-7c24906fa90c</RequestId>
    </ResponseMetadata>
  </UploadServerCertificateForLBAResult>
</UploadServerCertificateForLBAResponse>

2.21. DeleteServerCertificateForLBA - LBA終端SSL証明書の削除

概要

アップロードされたSSL証明書、秘密鍵、中間証明書を削除します。

Cloudn LBA独自APIになります。

リクエスト

リクエストメソッド
  • GET
リクエストパラメータ
パラメーター名 説明 Required
ServerCertificateName
削除する証明書名
Type: String
Yes

参考

以下のAPIでLoadBalancerNameを取得可能です。

Body
  • 無し

レスポンス

レスポンス (Body)
  • 形式:XML
Response(Body)
Node名 説明 子Node
ConfigureHealthCheckResponse レスポンスコンテナ ResponseMetadata

サンプルAPIコール&レスポンス

下記設定値に対しての例を示します。

  • AlarmName: example
サンプルAPIコール
サンプルAPIレスポンス

2.22. ListServerCertificatesForLBA - SSLサーバー証明書/秘密鍵一覧取得

概要

アップロードされたサーバ証明書、秘密鍵、中間証明書の一覧を取得します。
Cloudn LBA独自APIになります。

リクエスト

リクエストメソッド
  • GET
リクエストパラメータ
Body
  • 無し

レスポンス

レスポンス (Body)
Response(Body)
Node名 説明 子Node  
ListServerCertificatesForLBAResponse レスポンスコンテナ ResponseMetadata

サンプルAPIコール&レスポンス

下記設定値に対しての例を示します。

  • すべてのSSLサーバー証明書を表示する
サンプルAPIコール
  • APIクライアント (KickAPI) 実行例
$ruby kick_api.rb Action=ListServerCertificatesForLBA
  • 発行されるHTTPリクエスト例
https://lba2-vpcopennw-api.jp-e1.cloudn-service.com/?
AWSAccessKeyId=SAMPLEAPIKEY
&Action=ListServerCertificatesForLBA
&SignatureMethod=HmacSHA256
&SignatureVersion=2
&Timestamp=2014-12-02T20%3A59%3A55%2B09%3A00
&Version=2012-04-23
サンプルAPIレスポンス
<ListServerCertificatesForLBAResponse xmlns="http://elasticloadbalancing.amazonaws.com/doc/2012-06-01/">
  <ListServerCertificatesForLBAResult>
    <Istruncated>false</Istruncated>
    <ServerCertificateMetadataList>
        <member>
          <ServerCertificateMetadata>
            <Arn>arn:cloudn:lba:jp-e1:cln1000XXXXX:server-certificate/test-01</Arn>
            <Path>/</Path>
            <ServerCertificateId>arn:cloudn:lba:jp-e1:cln1000XXXXX:server-certificate/test-01</ServerCertificateId>
            <ServerCertificateName>test-01</ServerCertificateName>
            <UploadDate>2014-04-15T02:19:47Z</UploadDate>
          </ServerCertificateMetadata>
        </member>
        <member>
          <ServerCertificateMetadata>
            <Arn>arn:cloudn:lba:jp-e1:cln1000XXXXX:server-certificate/test-02-rapid</Arn>
            <Path>/</Path>
            <ServerCertificateId>arn:cloudn:lba:jp-e1:cln1000XXXXX:server-certificate/test-02-rapid</ServerCertificateId>
            <ServerCertificateName>test-02-rapid</ServerCertificateName>
            <UploadDate>2014-04-15T02:20:12Z</UploadDate>
          </ServerCertificateMetadata>
        </member>
        <member>
          <ServerCertificateMetadata>
            <Arn>arn:cloudn:lba:jp-e1:cln1000XXXXX:server-certificate/test-03-wild</Arn>
            <Path>/</Path>
            <ServerCertificateId>arn:cloudn:lba:jp-e1:cln1000XXXXX:server-certificate/test-03-wild</ServerCertificateId>
            <ServerCertificateName>test-03-wild</ServerCertificateName>
            <UploadDate>2014-04-15T02:28:30Z</UploadDate>
          </ServerCertificateMetadata>
        </member>
    </ServerCertificateMetadataList>
    <ResponseMetadata>
      <RequestId>146e6014-1525-a98c-a799-59a644bcaaf5</RequestId>
    </ResponseMetadata>
  </ListServerCertificatesForLBAResult>
</ListServerCertificatesForLBAResponse>

2.23. GetReplicatedLoadBalancerNumForLBA - 複製LBA個数取得

概要

複製したLBAの個数を取得します。

※独自API

リクエスト

リクエストメソッド
  • GET
リクエストパラメータ
Parameters
パラメーター名 説明 Required
LoadBalancerName
参照するロードバランサ名
Type: String
- 1〜32文字であること
- 先頭文字: a-zA-Z であること
- 文字種: [a-zA-Z¥d¥-] であること
- 存在するLBAであること
Yes

参考

以下のAPIでLoadBalancerNameを取得可能です。

Body
  • 無し

レスポンス

レスポンス (Body)
  • 形式:XML
Response(Body)
Node名 説明 子Node
GetReplicatedLoadBalancerNumForLBAResponse レスポンスコンテナ GetReplicatedLoadBalancerNumForLBAResult
GetReplicatedLoadBalancerNumForLBAResult ReplicatedLoadBalancerNum
ReplicatedLoadBalancerNum
現在追加されているロードバランサの合計セット数
- Type: Integer
 

サンプルAPIコール&レスポンス

下記設定値に対しての例を示します。

  • LBA名: example
サンプルAPIコール
  • APIクライアント (KickAPI) 実行例
$ruby kick_api.rb Action=GetReplicatedLoadBalancerNumForLBA LoadBalancerName=example
  • 発行されるHTTPリクエスト例
https://lba2-api.jp-e1.cloudn-service.com/?
AWSAccessKeyId=SAMPLEAPIKEY
&Action=GetReplicatedLoadBalancerNumForLBA
&LoadBalancerName=example
&SignatureMethod=HmacSHA256
&SignatureVersion=2
&Timestamp=2014-10-09T18%3A43%3A12%2B09%3A00
&Version=2012-04-23
サンプルAPIレスポンス
<GetReplicatedLoadBalancerNumForLBAResponse xmlns="http://elasticloadbalancing.amazonaws.com/doc/2012-06-01/">
  <GetReplicatedLoadBalancerNumForLBAResult>
    <ReplicatedLoadBalancerNum>0</ReplicatedLoadBalancerNum>
    <ResponseMetadata>
      <RequestId>8ae34b96-dcdd-bba9-1487-343d4b54175e</RequestId>
    </ResponseMetadata>
  </GetReplicatedLoadBalancerNumForLBAResult>
</GetReplicatedLoadBalancerNumForLBAResponse>

2.24. ReplicateManagedLoadBalancerForLBA - LBAの複製

概要

LBAを複製します。

※独自API

リクエスト

リクエストメソッド
  • GET
リクエストパラメータ
Parameters
パラメーター名 説明 Required
LoadBalancerName
複製するロードバランサ名
- Type: String
Yes
Adjustment
複製するセット数(Adjustmentセット数分複製を行う)。
マイナスを指定した場合は複製したロードバランサをAdjustmentセット削除する
(ただし、ReplicatedManagedLoadBalancerForLBAで追加した数より多くを削除することはできない)。
0を指定した場合は、何もしない。
- Type: Integer
- -10〜10までの数値であること。
Yes

参考

以下のAPIでLoadBalancerNameを取得可能です。

ComputeのセキュリティグループIDはComputeのコンソール、もしくはAPIより取得可能です。

Body
  • 無し

レスポンス

レスポンス (Body)
  • 形式:XML
Response(Body)
Node名 説明 子Node
ReplicateManagedLoadBalancerForLBAResponse レスポンスコンテナ ReplicateManagedLoadBalancerForLBAResult
ReplicateManagedLoadBalancerForLBAResult ReplicatedLoadBalancerNum
ReplicatedLoadBalancerNum
操作後の追加されているロードバランサの合計セット数
- Type: Integer
 

サンプルAPIコール&レスポンス

下記設定値に対しての例を示します。

  • LBA名: example
  • 現在の複製の数: 0
  • 操作後の複製の数: 2
サンプルAPIコール
  • APIクライアント (KickAPI) 実行例
$ruby kick_api.rb Action=ReplicateManagedLoadBalancerForLBA LoadBalancerName=example Adjustment=2
  • 発行されるHTTPリクエスト例
https://lba2-api.jp-e1.cloudn-service.com/?
AWSAccessKeyId=SAMPLEAPIKEY
&Action=ReplicateManagedLoadBalancerForLBA
&LoadBalancerName=example
&Adjustment=2
&SignatureMethod=HmacSHA256
&SignatureVersion=2
&Timestamp=2014-10-09T18%3A43%3A12%2B09%3A00
&Version=2012-04-23
サンプルAPIレスポンス
<ReplicateManagedLoadBalancerForLBAResponse xmlns="http://elasticloadbalancing.amazonaws.com/doc/2012-06-01/">
  <ReplicateManagedLoadBalancerForLBAResult>
    <ReplicatedLoadBalancerNum>2</ReplicatedLoadBalancerNum>
    <ResponseMetadata>
      <RequestId>ab78d99f-c2c7-4153-8179-6a33fcfbd28b</RequestId>
    </ResponseMetadata>
  </ReplicateManagedLoadBalancerForLBAResult>
</ReplicateManagedLoadBalancerForLBAResponse>