すべてのプロダクト
Search
ドキュメントセンター

Resource Orchestration Service:DATASOURCE::SLB::Rules

最終更新日:Jan 16, 2025

DATASOURCE::SLB::Rules は、リスナーに設定されている転送ルールをクエリするために使用されます。

構文

{
  "Type": "DATASOURCE::SLB::Rules",
  "Properties": {
    "ListenerPort": String,
    "LoadBalancerId": String,
    "ListenerProtocol": String,
    "RefreshOptions": String
  }
}

プロパティ

プロパティ

タイプ

必須

編集可能

説明

制約

ListenerPort

String

はい

はい

サーバーロードバランサー(SLB)インスタンスで使用されるフロントエンドリスニングポート。

有効な値:1 ~ 65535。

LoadBalancerId

String

はい

はい

SLBインスタンスのID。

なし。

ListenerProtocol

String

いいえ

はい

SLBインスタンスで使用されるフロントエンドプロトコル。

異なるプロトコルを使用するリスナーが同じポートでリッスンする場合は、このプロパティを指定する必要があります。

RefreshOptions

String

いいえ

はい

スタックが更新されたときのデータソースリソースの更新ポリシー。

有効な値:

  • Never(デフォルト):スタックが更新されたときにデータソースリソースを更新しません。

  • Always:スタックが更新されたときにデータソースリソースを更新します。

戻り値

Fn::GetAtt

  • RuleIds:転送ルールのID。

  • Rules:転送ルールの詳細。

プロパティ

タイプ

説明

制約

RuleIds

List

転送ルールのID。

なし。

Rules

List

転送ルールの詳細。

なし。

HealthCheckHttpCode

String

正常なヘルスチェックの HTTP ステータスコード。

複数の HTTP ステータスコードをコンマ(,)で区切ります。

有効な値:

  • http_2xx (デフォルト)

  • http_3xx

  • http_4xx

  • http_5xx

説明

このプロパティは、HealthCheck が on に設定されている場合にのみ有効になります。

HealthCheckUri

String

ヘルスチェックに使用される URI(Uniform Resource Identifier)。

説明

このプロパティは、HealthCheck が on に設定されている場合にのみ有効になります。

CookieTimeout

String

Cookie のタイムアウト期間。

有効な値:1 ~ 86400。

単位:秒。

説明

このプロパティは、StickySession が on に設定され、StickySessionType が insert に設定されている場合にのみ有効になります。

RuleId

String

転送ルールの ID。

なし。

Url

String

転送ルールで指定されたリクエストパス。

なし。

ListenerProtocol

String

SLB インスタンスで使用されるフロントエンドプロトコル。

なし。

HealthCheckTimeout

Integer

ヘルスチェックレスポンスのタイムアウト期間。

バックエンドの Elastic Compute Service(ECS)インスタンスが指定されたタイムアウト期間内にヘルスチェックレスポンスを返さない場合、インスタンスはヘルスチェックに失敗します。

有効な値:1 ~ 300。

単位:秒。

説明

HealthCheckTimeout の値が HealthCheckInterval の値より小さい場合、HealthCheckTimeout で指定されたタイムアウト期間は無効になり、HealthCheckInterval の値がタイムアウト期間として使用されます。

このプロパティは、HealthCheck が on に設定されている場合にのみ有効になります。

HealthCheck

String

ヘルスチェック機能が有効になっているかどうかを示します。

有効な値:

  • on

  • off

説明

このプロパティは、ListenerSync が off に設定されている場合にのみ有効になります。 ListenerSync を on に設定すると、リスナーのヘルスチェック設定が使用されます。

ListenerSync

String

転送ルールがリスナーのスケジューリングアルゴリズム、セッション永続性、およびヘルスチェック設定を使用するかどうかを示します。

有効な値:

  • on:転送ルールはリスナーの設定を使用します。

  • off:転送ルールはリスナーの設定を使用しません。転送ルールにヘルスチェックとセッション永続性の設定を指定できます。

UnhealthyThreshold

Integer

正常なバックエンドサーバーがヘルスチェックに連続して失敗する必要がある回数。この回数に達すると、ヘルスチェックステータスは成功から失敗に変更されます。

有効な値:2 ~ 10。

説明

このプロパティは、HealthCheck が on に設定されている場合にのみ有効になります。

HealthyThreshold

Integer

異常なバックエンドサーバーがヘルスチェックに連続して合格する必要がある回数。この回数に達すると、ヘルスチェックステータスは失敗から成功に変更されます。

有効な値:2 ~ 10。

説明

このプロパティは、HealthCheck が on に設定されている場合に有効になります。

HealthCheckInterval

Integer

2 つの連続したヘルスチェックの間隔。

有効な値:1 ~ 50。

単位:秒。

説明

このプロパティは、HealthCheck が on に設定されている場合にのみ有効になります。

HealthCheckConnectPort

Integer

バックエンドサーバーのヘルスチェックに使用されるポート。

有効な値:1 ~ 65535。

説明

このプロパティは、HealthCheck が on に設定されている場合にのみ有効になります。 HealthCheckConnectPort を空のままにして HealthCheck を on に設定すると、デフォルトでリスナーのバックエンドポート設定が使用されます。

Cookie

String

バックエンドサーバーで設定されている Cookie。

Cookie は 1 ~ 200 文字の長さで、ASCII 文字と数字のみを含めることができます。 Cookie にはコンマ(,)、セミコロン(;)、またはスペースを含めることはできません。 Cookie はドル記号($)で始めることはできません。

説明

このプロパティは、StickySession が on に設定され、StickySessionType が server に設定されている場合にのみ有効になります。

VServerGroupId

String

転送ルールに関連付けられている vServer グループの ID。

なし。

Scheduler

String

スケジューリングアルゴリズム。

有効な値:

  • wrr (デフォルト):ウェイトの高いバックエンドサーバーは、ウェイトの低いバックエンドサーバーよりも多くのリクエストを受信します。

  • rr:リクエストはバックエンドサーバーに順番に配信されます。

説明

このプロパティは、ListenerSync が off に設定されている場合にのみ有効になります。 ListenerSync を on に設定すると、リスナーのスケジューリングアルゴリズム設定が使用されます。

RuleName

String

転送ルールの名前。

名前は 1 ~ 80 文字の長さで、文字、数字、ハイフン(-)、スラッシュ(/)、ピリオド(.)、アンダースコア(_)を含めることができます。

説明

転送ルール名は、リスナー内で一意である必要があります。

Domain

String

転送ルールで指定されたドメイン名。

なし。

StickySession

String

セッション永続性が有効になっているかどうかを示します。

有効な値:

  • on

  • off

説明
  • このプロパティは、ListenerSync が off に設定されている場合にのみ有効になります。

  • ListenerSync を on に設定すると、リスナーのセッション永続性設定が使用されます。

StickySessionType

String

Cookie の処理方法。

有効な値:

  • insert:Cookie を挿入します。 SLB は、クライアントに送信される最初の HTTP または HTTPS レスポンスパケットに SERVERID Cookie を挿入します。 クライアントからの次のリクエストには Cookie が含まれており、SLB はこのリクエストを記録されたバックエンドサーバーに転送します。

  • server:Cookie を書き換えます。 SLB がユーザー定義の Cookie を検出すると、SLB は元の Cookie をユーザー定義の Cookie で上書きします。 クライアントからの次のリクエストにはユーザー定義の Cookie が含まれており、SLB はこのリクエストを記録されたバックエンドサーバーに転送します。

説明

このプロパティは、StickySession が on に設定されている場合にのみ有効になります。

HealthCheckDomain

String

ヘルスチェックに使用されるドメイン名。

有効な値:

  • $_ip:バックエンドサーバーのプライベート IP アドレス。 このプロパティを $_ip に設定するか、このプロパティを空のままにすると、SLB は各バックエンドサーバーのプライベート IP アドレスをヘルスチェックのドメイン名として使用します。

  • domain:ドメイン名。 ドメイン名は 1 ~ 80 文字の長さで、文字、数字、ピリオド(.)、ハイフン(-)を含めることができます。

説明

このプロパティは、HealthCheck が on に設定されている場合にのみ有効になります。

ROSTemplateFormatVersion: '2015-09-01'
Parameters:
  LoadBalancerId:
    Type: String
    AssociationProperty: ALIYUN::SLB::Instance::InstanceId
    Description: CLB インスタンスの ID。
Resources:
  ExtensionDataSource:
    Type: DATASOURCE::SLB::Rules
    Properties:
      ListenerPort: 3443
      LoadBalancerId:
        Ref: LoadBalancerId
Outputs:
  RuleIds:
    Description: ルール ID のリスト。
    Value:
      Fn::GetAtt:
        - ExtensionDataSource
        - RuleIds
  Rules:
    Description: ルールのリスト。
    Value:
      Fn::GetAtt:
        - ExtensionDataSource
        - Rules
{
  "ROSTemplateFormatVersion": "2015-09-01",
  "Parameters": {
    "LoadBalancerId": {
      "Type": "String",
      "AssociationProperty":"ALIYUN::SLB::Instance::InstanceId",
      "Description": "CLB インスタンスの ID。" // CLB instance ID
    }
  },
  "Resources": {
    "ExtensionDataSource": {
      "Type": "DATASOURCE::SLB::Rules",
      "Properties": {
        "ListenerPort": 3443,
        "LoadBalancerId": {
          "Ref": "LoadBalancerId"
        }
      }
    }
  },
  "Outputs": {
    "RuleIds": {
      "Description": "ルール ID のリスト。", // List of rule IDs
      "Value": {
        "Fn::GetAtt": [
          "ExtensionDataSource",
          "RuleIds"
        ]
      }
    },
    "Rules": {
      "Description": "ルールのリスト。", // List of rules
      "Value": {
        "Fn::GetAtt": [
          "ExtensionDataSource",
          "Rules"
        ]
      }
    }
  }
}