Skip to content

非公式本サイトは非公式の日本語ドキュメントであり、Cloudflare 公式サイトではありません。最新情報はdevelopers.cloudflare.comをご確認ください。

プールを管理する

最終更新 Markdown で表示Agent セットアップ

Cloudflare では、プールはエンドポイントとその整理方法を表します。そのため、プールは複数のエンドポイントのグループにも、プールあたり 1 つのエンドポイント(オリジンサーバーなど)にもできます。

DNS の用語に詳しい場合は、プールを「レコードセット」と考えると分かりやすいです。ただし Cloudflare は、正常とみなしたアドレスだけを返します。個別のプールにヘルスモニターを付けて、監視をカスタマイズできます。プールに付けられるのは、単一のモニターかモニターグループのどちらか一方だけです。両方は付けられません。

プールの背景情報は、プール を参照してください。


エンドポイントアドレスの一意性

1 つのプール内では、各エンドポイントのアドレスは一意である必要があります。ポートや仮想ネットワークが違っても、エンドポイントは同じ IP アドレスを共有できません。重複する IP アドレスを使う場合は、エンドポイントを別のプールに割り当てます。


プールを作成する

プールは、ロードバランサーの作成ワークフロー 内、または Pools タブで作成できます。

  1. Load Balancing を開きます。

  2. Pools タブを選び、Create pool を選びます。

  3. プールについて、次の情報を入力します。

    • 名前(一意である必要があります)
    • 名前の詳細を説明する説明
    • Endpoint Steering の選択。プールが各エンドポイントへトラフィックをルーティングする方法に影響します
  4. 各エンドポイントについて、次の情報を入力します。

    • 名前(一意である必要があります)
    • エンドポイントのアドレス、または関連するホスト名
    • (任意)Virtual Network。エンドポイントがプライベート IP アドレスの場合は必須です。
    • Weight
    • (任意)Add host header を選んで ホスト名 を指定します
    • (任意)トラフィックの送信先ポート
  1. プール内の追加エンドポイントについても、この手順を繰り返します。

  2. (任意)プールに Proximity Steering 用の座標を設定します。

  3. プールで、次の情報を更新します。

    • Health Threshold:

      Health Threshold は、プール全体を Healthy とみなし、ロードバランサーのプール順に従ってトラフィックを受け取るために必要な、健全なエンドポイント数です。この数を大きくするとプールの信頼性は上がりますが、unhealthy にもなりやすくなります。

    • Monitor: モニター を関連付けます
    • Health Monitor Regions: プールのヘルスを 複数のロケーション から確認するかどうかを選びます。精度は上がりますが、エンドポイントへのプローブトラフィックが発生することがあります
    • Pool Notifications: プールの有効化・無効化、またはプールやエンドポイントの ヘルスステータス の変化を通知するアラートを、新規作成または既存の確認ができます。
  4. 完了したら、Save を選びます。

プロパティの一覧は Create Pool を参照してください。API 認証のヘルプは Cloudflare API ドキュメント を参照してください。

Required API token permissions

At least one of the following token permissions is required:
  • Load Balancing: Monitors and Pools Write
Create Poolbash
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/load_balancers/pools" \
	--request POST \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
	--json '{
		"description": "Primary data center - Provider XYZ",
		"name": "primary-dc-1",
		"enabled": false,
		"load_shedding": {
				"default_percent": 0,
				"default_policy": "random",
				"session_percent": 0,
				"session_policy": "hash"
		},
		"minimum_origins": 2,
		"monitor": "f1aba936b94213e5b8dca0c0dbf1f9cc",
		"check_regions": [
				"WEU",
				"ENAM"
		],
		"origins": [
				{
						"name": "app-server-1",
						"address": "0.0.0.0",
						"enabled": true,
						"weight": 0.56,
						"header": {
								"Host": [
										"example.com"
								]
						}
				}
		],
		"origin_steering": {
				"policy": "random"
		},
		"notification_filter": {
				"origin": {
						"disable": false,
						"healthy": null
				},
				"pool": {
						"disable": false,
						"healthy": null
				}
		}
	}'

レスポンスには、新しいプールの完全な定義が含まれます。

レスポンスjson
{
  "success": true,
  "errors": [],
  "messages": [],
  "result": {
    "id": "17b5962d775c646f3f9725cbc7a53df4",
    "created_on": "2021-01-01T05:20:00.12345Z",
    "modified_on": "2021-01-01T05:20:00.12345Z",
    "description": "Primary data center - Provider XYZ",
    "name": "primary-dc-1",
    "enabled": false,
    "load_shedding": {
      "default_percent": 0,
      "default_policy": "random",
      "session_percent": 0,
      "session_policy": "hash"
    },
    "minimum_origins": 2,
    "monitor": "f1aba936b94213e5b8dca0c0dbf1f9cc",
    "check_regions": [
      "WEU",
      "ENAM"
    ],
    "origins": [
      {
        "name": "app-server-1",
        "address": "0.0.0.0",
        "enabled": true,
        "weight": 0.56,
        "header": {
          "Host": [
            "example.com"
          ]
        }
      }
    ],
    "origin_steering": {
      "policy": "random"
    },
    "notification_filter": {
      "origin": {
        "disable": false,
        "healthy": null
      },
      "pool": {
        "disable": false,
        "healthy": null
      }
    }
  }
}

プールを作成したあと、次のパラメーターを指定して 新しい通知を作成 することも必要です。

"alert_type": "load_balancing_health_alert",
"filters": {
  "pool_id": <<ARRAY_OF_INCLUDED_POOL_IDS>>,
  "new_health": <<ARRAY_OF_STATUS_TRIGGERS>> ["Unhealthy", "Healthy"],
  "event_source": <<ARRAY_OF_OBJECTS_WATCHED>> ["pool", "origin"]
}

プールを編集する

ダッシュボードでプールを編集するには:

  1. Load Balancing を開きます。
  2. Pools タブを選択します。
  3. 対象のプールで Edit を選択します。
  4. 必要に応じて設定を更新します。
  5. Save を選択します。

API でプールを編集するとき、リクエストの種類は変更の範囲によって決まります。

設定の一部だけを更新し、構成全体を再送信したくない場合は、PATCH リクエストを使います。広い変更には PUT リクエストを使います。


プールを削除する

ロードバランサーが使っているプールは削除できません。対象には geo steering リージョン のプール、pool set から参照されているプール、フォールバックプール も含まれます。

プールの削除でエラーが出た場合は、エラーに表示されたホスト名を確認し、該当するロードバランサーを編集 して、そのプールへの参照をすべて削除します。

ダッシュボードでプールを削除するには:

  1. Load Balancing を開きます。
  2. Pools タブを選択します。
  3. 対象のプールで Delete を選択します。

API でプールを削除するには、DELETE リクエストを送ります。


アラートを設定する

プールのステータス変更の通知を受け取るアラートを設定できます。

Pool Enablement

対象

プールのステータス変更(有効 / 無効)を知りたいお客様向けです。

その他のオプション / フィルタ

使えるフィルタ:

  • プールの一覧から検索して追加できます。プールを選ばない場合、アカウント内のすべてのプールが対象です。
  • Load Balancing プールが enableddisabled、または enabled か disabled のいずれか になったときに通知するトリガーも選べます。

含まれるプラン

Load Balancing の購入。

受け取ったときの対応

対応は不要です。

Load Balancing Health Alert

対象

プールまたはオリジンの 健全性ステータスの変化 を知りたいお客様向けです。

その他のオプション / フィルタ

使えるフィルタ:

  • プールの一覧から検索して追加できます。すべてのプールを選んだ場合は Include future pools も選べます。
  • 健全性ステータスが unhealthyhealthy、または unhealthy か healthy のいずれか になったときに通知するトリガーを選べます。
  • イベントソースの健全性ステータス変化が poolorigin、または pool か origin のいずれか のときに通知するトリガーを選べます。

含まれるプラン

Load Balancing の購入。

受け取ったときの対応

ロードバランシングのアナリティクス で、健全性ステータスの時間変化を確認します。

アラートの設定方法は、Cloudflare Notifications を参照してください。

役に立ちましたか?