ロード・バランサ
ロード・バランシングは、ワークロードをサーバー間で均等に共有するメソッドです。 これにより、クライアントが特定のサーバーを圧倒するのを防ぎ、サービスの拡張に役立ちます。
ロード・バランサには次の2つのタイプがあります:
- Load Balancer as a Service(LBaaS): このタイプのロード・バランサは、アプリケーションを含むすべてのプロトコル・レイヤーで動作します。 ロード・バランサ(LB)という用語が修飾なしで表示される場合、文はLBaaSを参照します。
- ネットワーク・ロード・バランサ(NLB): このタイプのロード・バランサは、ネットワーク・レイヤーで、アプリケーション自体の下にあるプロトコル・レイヤー上で動作します。 「ネットワーク・ロード・バランサ」(NLB)という用語は、LBaaSではなく、常にネットワーク・ロード・バランサを指すために使用されます。
- 動詞「ロード・バランシング」は、LBとNLBの両方のアクションを参照するために使用されます。 文の適用性を区別するために、詳細情報が提供されます。
- LBaaSおよびNLBについては、このガイドの様々な章で説明します。 LBまたはNLBの情報を検索する場合は、必ず正しい章を参照してください。
Oracle Private Cloud ApplianceのLBaaSは、1つのエントリ・ポイントから仮想クラウド・ネットワーク(VCN)からアクセス可能な複数のサーバーへの自動トラフィック分散を提供します。 このサービスでは、パブリックIPアドレスまたはプライベートIPアドレス、および様々なロード・バランシング・ポリシーを使用する選択肢を備えたロード・バランサが提供されます。
OCI CLIを使用してLBを作成する場合は、すべてのリソースを同時に構成するか、最小限のLBを作成して、後で他の構成の詳細を指定できます。 つまり、作成後に完全なLBを組み立てるには、基本的なLB以上のものが必要です。 これらのその他のコンポーネントは、LBリソースを編集することによって追加されます。
ロード・バランサの2つのタイプは次のとおりです:
- プライベート: プライベート・ロード・バランサは、Oracle Private Cloud Appliance外のネットワークから分離されるため、セキュリティは簡単です。 プライベート・ロード・バランサは、受信トラフィックのエントリ・ポイントとして機能するアドレス・ブロックから割り当てられたプライベートIPアドレスを取得します。
- 公開: パブリック・ロード・バランサは、アプライアンスの外部のネットワークのロケーションからのトラフィックを受け入れます。 この外部トラフィックにより、パブリック・ロード・バランサは、インターネット・ゲートウェイ(IGW)が構成されているVCNのパブリック・サブネットにデプロイされます。 サービスは、受信トラフィックに対するエントリ・ポイントとして機能するパブリックIPアドレスをロード・バランサに割り当てます。 パブリックIPアドレスは、任意のDNSプロバイダを介してわかりやすいDNS名に関連付けることができますが、パブリック・ロード・バランサのプロビジョニングを成功させるには、パブリックIPアドレスが使用可能である必要があります。
- 暗号スイートとSSL証明書
- バックエンド・セットおよびバックエンド・サーバー
- 仮想ホスト名
- パス・ルート・セット
- リスナー
- バックエンド・セットのヘルス・チェック
- バックエンド(サーバー)のヘルス・チェック
- LBヘルス・ポリシー
これは完全なリストではありません。
また、多くの構成ステップが作業リクエストとして処理されます。 作業リクエストは、完了に時間がかかる可能性があるタスクであるため、個別の明細項目またはOCI CLI出力として処理および表示されると追跡されます。 たとえば、LBまたは暗号スイートを作成する処理は、開始時間と終了時間、状態(成功、失敗など)およびその他の関連詳細を記録して表示する作業リクエストです。 作業リクエストは、「コンピュートWeb UI」 LBリソース・リストの一部です。
「成功」などの作業リクエストのステータスは、リソースのプロビジョニングの完了と同じではありません。 つまり、ロード・バランサの作成は、プロビジョニングの進行中に「成功」する可能性があります。
LBaaSに関する一般的な情報は、「Oracle Private Cloud Appliance概要ガイド」を参照してください。
プライベート・ロード・バランサの作成
ロード・バランサ(LB)を作成する場合、2つの主なオプションがあります:
- LBの作成時に最小限の情報を指定してから、バックエンド・セットやその他のパラメータなど、LBの作成後にLBのコンポーネントを組み立てることができます。
-
LBの作成時にすべての情報を指定できます。
このトピックでは、最小限の情報でプライベート・ロード・バランサを作成します。 作成後にLBを完了するには、他のコンポーネントを組み立てる必要があります。 これらは、LBリソースを編集することで追加されます。
アクセス制御の理由から、LBを配置するコンパートメントを選択する必要があります。 ロード・バランサは、VCNまたはバックエンド・セットと同じコンパートメントにある必要はありません。 使用するコンパートメントがわからない場合、ロード・バランサをVCNと同じコンパートメントに配置します。
ロード・バランサの表示名を指定する必要があります。 これは一意である必要はありませんが、変更できます。
「コンピュートWeb UI」の使用
-
ナビゲーション・メニューを開きます。 「ネットワーキング」で、「ロード・バランサ」をクリックします。
-
「ロード・バランサの作成」ボタンをクリックして、「ロード・バランサの作成」ダイアログを開きます。
-
次の情報を入力します。
-
名前: LBのわかりやすい名前を入力します。
-
コンパートメントに作成: LBを作成するコンパートメントを選択します。
- 表示タイプ: 「Private Load Balancer」をクリックします。 LBは、ホスティング・サブネットからプライベートIPアドレスを受信します。 LBは、VCN内でのみ表示される内部受信トラフィックのフロント・エンドとして機能します。
-
サブネット: プルダウン・メニューから、LBのVNCおよびサブネットの名前を選択します。
-
ネットワーク・セキュリティ・グループ: 「デフォルト」(「ネットワーク・セキュリティ・グループの有効化」ボックスがクリアされている)を使用するか、使用可能なNSGをロード・バランサに割り当てることができます。 選択肢に「None Available」と表示されている場合は、+「ネットワーク・セキュリティ・グループの追加」オプションを使用してNSGを追加できます。
-
-
ダイアログで「ロード・バランサの作成」ボタンをクリックします。 新しいLBの詳細を表示するには、LBを表示します。
OCI CLIの使用
-
コマンドを実行するために必要な情報を収集します:
-
コンパートメントOCID (
oci iam compartment list --compartment-id-in-subtree true
)
-
-
最小限のプライベートLBオプションを使用して、
lb load-balancer create
コマンドを入力します。 新しいLBの詳細をすべてリストするには、lb load-balancer get
コマンドを使用します。ノート:
オプションのパラメータについては、
--help
オプションを指定してコマンドを実行します。構文(1行に入力):
oci lb load-balancer create --compartment-id compartment_OCID \ --display-name name-of-load-balancer --is-private true \ --shape-name 400Mbps --subnet-ids [subnets_complex_ type]
例:
$ oci lb load-balancer create --compartment-id compartment_OCID --display-name Private_LB1 \ --is-private true --shape-name 400Mbps --subnet-ids '["ocid1.subnet.unique_ID", \ "ocid1.subnet.unique_ID"]' { "data": { "backend-sets": {}, "certificates": {}, "compartment-id": "ocid1.tenancy....â¦.â¦.â¦.uniqueID"", "defined-tags": null, "display-name": "Private_LB1", "freeform-tags": null, "hostnames": {}, "id": "ocid1.loadbalancer....â¦.â¦.â¦.uniqueID"", "ip-addresses": null, "is-private": true, "lifecycle-state": "ACTIVE", "listeners": {}, "network-security-group-ids": null, "path-route-sets": {}, "routing-policies": null, "rule-sets": {}, "shape-details": null, "shape-name": "400Mbps", "ssl-cipher-suites": {}, "subnet-ids": [ "ocid1.subnet....â¦.â¦.â¦.uniqueID-1"", "ocid1.subnet....â¦.â¦.â¦.uniqueID-2"" ], "system-tags": null, "time-created": "2022-08-10T19:10:31+00:00" }, "etag": "00c648d7-b654-4583-b7bf-k5oed55" }
パブリック・ロード・バランサの作成
ロード・バランサ(LB)を作成する場合、2つの主なオプションがあります:
- LBの作成時に最小限の情報を指定してから、バックエンド・セットやその他のパラメータなど、作成後にLBのコンポーネントを組み立てることができます。
-
LBの作成時にすべての情報を指定できます。
このトピックでは、最小限の情報でパブリック・ロード・バランサを作成します。 他のコンポーネントは、作成後に完全なLBを組み立てる必要があります。 これらは、LBリソースを編集することで追加されます。
アクセス制御の理由から、LBを配置するコンパートメントを選択する必要があります。 ロード・バランサは、VCNまたはバックエンド・セットと同じコンパートメントにある必要はありません。 使用するコンパートメントがわからない場合、ロード・バランサをVCNと同じコンパートメントに配置します。
ロード・バランサの表示名を指定する必要があります。 一意である必要はなく、変更することもできます。
「コンピュートWeb UI」の使用
-
ナビゲーション・メニューを開きます。 「ネットワーキング」で、「ロード・バランサ」をクリックします。
-
「ロード・バランサの作成」ボタンをクリックして、「ロード・バランサの作成」ダイアログを開きます。
-
次の情報を入力します。
-
名前: LBのわかりやすい名前を入力します。
-
コンパートメントに作成: LBを作成するコンパートメントを選択します。
- 表示タイプ: 「Public Load Balancer」をクリックします。 LBは、インターネットからアクセス可能なパブリックIPアドレスを受信し、すべての受信トラフィックのフロント・エンドとして機能します。
-
パブリックIPの選択: 使用するパブリックIPアドレスをプルダウン・メニューから選択できます。 プルダウン・メニューに「使用不可」と表示されている場合、またはリストからパブリックIPを選択しない場合、パブリック・ロード・バランサは、構成されたパブリックIP範囲から使用可能なパブリックIPを自動的に割り当てます。
- サブネット: プルダウン・メニューから、LBのVNCおよびサブネットの名前を選択します。
-
ネットワーク・セキュリティ・グループ: 「デフォルト」(「ネットワーク・セキュリティ・グループの有効化」ボックスがクリアされている)を使用するか、使用可能なNSGをロード・バランサに割り当てることができます。 「None Available」の場合は、+「ネットワーク・セキュリティ・グループの追加」オプションを使用してNSGを追加できます。
-
-
ダイアログで「ロード・バランサの作成」ボタンをクリックします。 新しいLBの詳細を表示するには、LBを表示します。
OCI CLIの使用
-
コマンドを実行するために必要な情報を収集します:
-
コンパートメントOCID (
oci iam compartment list --compartment-id-in-subtree true
)
-
-
最小限のプライベートLBオプションを使用して、
lb load-balancer create
コマンドを入力します。 新しいLBの詳細をすべてリストするには、lb load-balancer get
コマンドを使用します。ノート:
オプションのパラメータについては、
--help
オプションを指定してコマンドを実行します。構文(1行に入力):
oci lb load-balancer create ---compartment-id compartment_OCID --display-name name-of-load-balancer --shape-name 400Mbps --is-private false --subnet-ids [subnets_complex_ type]
例:
$ oci lb load-balancer create --compartment-id compartment_OCID --display-name Private_LB1 \ --shape-name 400Mbps --is-private true --subnet-ids '["ocid1.subnet.unique_ID", \ "ocid1.subnet.unique_ID"]' { "data": { "backend-sets": {}, "certificates": {}, "compartment-id": "ocid1.tenancy....â¦.â¦.â¦.uniqueID"", "defined-tags": null, "display-name": "Public_LB1", "freeform-tags": null, "hostnames": {}, "id": "ocid1.loadbalancer....â¦.â¦.â¦.uniqueID"", "ip-addresses": <public_ip_address>, "is-private": false, "lifecycle-state": "ACTIVE", "listeners": {}, "network-security-group-ids": null, "path-route-sets": {}, "routing-policies": null, "rule-sets": {}, "shape-details": null, "shape-name": "400Mbps", "ssl-cipher-suites": {}, "subnet-ids": [ "ocid1.subnet....â¦.â¦.â¦.uniqueID-1"", "ocid1.subnet....â¦.â¦.â¦.uniqueID-2"" ], "system-tags": null, "time-created": "2022-08-10T19:10:31+00:00" }, "etag": "00c648d7-b654-4583-b7bf-k5oed55" }
ロード・バランサの編集
ロード・バランサ(LB)のプロパティ(LBの名前など)を変更できます。
「コンピュートWeb UI」の使用
-
ナビゲーション・メニューを開きます。 「ネットワーキング」で、「ロード・バランサ」をクリックします。
-
編集するLBの名前を選択します。
-
「編集」をクリックするか、「アクション」の下の3ドットのプルダウン・メニューが表示されたボックスをクリックし、「編集」を選択して「ロード・バランサの編集」ウィンドウを開きます。
-
ポップアップ・ウィンドウでLBに許容できる変更を行います。 次のプロパティを編集できます:
-
名前: LBの名前を変更します。
-
-
「ロード・バランサの更新」をクリックして、LBプロパティを更新します。
OCI CLIの使用
-
コマンドを実行するために必要な情報を収集します:
-
コンパートメントOCID (
oci iam compartment list --compartment-id-in-subtree true
) -
LB OCID (
oci lb load-balancer list --compartment-id compartment_OCID
)
-
-
updateコマンドを実行します。
ノート:
オプションのパラメータについては、
--help
オプションを指定してコマンドを実行します。構文(1行に入力):
oci lb load-balancer update --load-balancer-id loadbalancer_OCID \ --display-name name-of-load-balancer
例:
$ oci lb load-balancer update \ --load-balancer-id ocid1.loadbalancer.unique_ID \ --display-name Private_load_balancer_3 { "data": { "backend-sets": {}, "certificates": {}, "compartment-id": "ocid1.compartment....â¦.â¦.â¦.uniqueID"", "defined-tags": null, "display-name": "Private_load_balancer_3", "freeform-tags": null, "hostnames": {}, "id": "ocid1.loadbalancer....â¦.â¦.â¦.uniqueID"", "ip-addresses": null, "is-private": true, "lifecycle-state": "ACTIVE", "listeners": {}, "network-security-group-ids": null, "path-route-sets": {}, "routing-policies": null, "rule-sets": {}, "shape-details": null, "shape-name": "IGNORE", "ssl-cipher-suites": {}, "subnet-ids": [ "ocid1.subnet....â¦.â¦.â¦.uniqueID-1"", "ocid1.subnet....â¦.â¦.â¦.uniqueID-2"" ], "system-tags": null, "time-created": "2022-08-10T19:10:31+00:00" }, "etag": "00c648d7-b654-4583-b7bf-k5oed55" }
ロード・バランサの詳細の表示
既存のロード・バランサのリストを表示し、その詳細を表示できます。
「コンピュートWeb UI」の使用
-
ナビゲーション・メニューを開きます。 「ネットワーキング」で、「ロード・バランサ」をクリックします。
-
既存のロード・バランサをリストするコンパートメントの名前をクリックします。
-
ロード・バランサが存在する場合は、次の2つの方法のいずれかでその詳細を表示できます:
- ロード・バランサのハイパーリンク名をクリックします。
- ロード・バランサの名前を選択または強調表示し、「アクション」プルダウン・メニューの3つのドット・アイコンをクリックして、「詳細の表示」を選択します。
OCI CLIの使用
-
コマンドを実行するために必要な情報を収集します:
-
コンパートメントOCID (
oci iam compartment list --compartment-id-in-subtree true
) -
LB OCID (
oci lb load-balancer list --compartment-id compartment_OCID
)
-
-
getコマンドを実行します。
LB OCIDを使用して、指定したコンパートメント内のLBの詳細をリストします。
ノート:
オプションのパラメータについては、
--help
オプションを指定してコマンドを実行します。構文(1行に入力):
oci lb load-balancer get --load-balancer-id loadbalancer_OCID
例:
$ oci lb load-balancer get –-load-balancer-id ocid1.loadbalancer.unique_ID { "data": { "backend-sets": { "http_backend_set": { "backends": [ { "backup": false, "drain": false, "ip-address": "10.120.0.17", "name": "10.120.0.17:2000", "offline": false, "port": 2000, "weight": 1 }, { "backup": false, "drain": false, "ip-address": "10.120.0.5", "name": "10.120.0.5:2000", "offline": false, "port": 2000, "weight": 1 } ], "health-checker": { "interval-in-millis": 10000, "port": 80, "protocol": "HTTP", "response-body-regex": "^Health*", "retries": 3, "return-code": 200, "timeout-in-millis": 3000, "url-path": "/health/" }, "lb-cookie-session-persistence-configuration": null, "name": "http_backend_set", "policy": "ROUND_ROBIN", "session-persistence-configuration": null, "ssl-configuration": null }, "lb_backend_set": { "backends": [ { "backup": false, "drain": false, "ip-address": "10.0.0.14", "name": "10.0.0.14:8080", "offline": false, "port": 8080, "weight": 1 }, { "backup": false, "drain": false, "ip-address": "10.0.0.15", "name": "10.0.0.15:8080", "offline": false, "port": 8080, "weight": 1 }, { "backup": false, "drain": false, "ip-address": "10.0.0.18", "name": "10.0.0.18:8080", "offline": false, "port": 8080, "weight": 1 }, { "backup": false, "drain": false, "ip-address": "10.0.0.5", "name": "10.0.0.5:8080", "offline": false, "port": 8080, "weight": 1 } ], "health-checker": { "interval-in-millis": 10000, "port": 8080, "protocol": "HTTP", "response-body-regex": "HEALTHY", "retries": 3, "return-code": 200, "timeout-in-millis": 3000, "url-path": "/healthcheck" }, "lb-cookie-session-persistence-configuration": null, "name": "lb_backend_set", "policy": "LEAST_CONNECTIONS", "session-persistence-configuration": null, "ssl-configuration": null } }, "certificates": {}, "compartment-id": "ocid1.tenancy...â¦.â¦.â¦.uniqueID", "defined-tags": null, "display-name": "example_load_balancer", "freeform-tags": null, "hostnames": {}, "id": "ocid1.loadbalancer.oc1.pca..â¦.â¦.â¦.uniqueID", "ip-addresses": null, "is-private": true, "lifecycle-state": "ACTIVE", "listeners": { "http_listener": { "connection-configuration": { "backend-tcp-proxy-protocol-version": null, "idle-timeout": 1200 }, "default-backend-set-name": "http_backendset", "hostname-names": null, "name": "http_listener", "path-route-set-name": "http_pathrouteset", "port": 80, "protocol": "HTTP", "routing-policy-name": null, "rule-set-names": null, "ssl-configuration": null } }, "network-security-group-ids": null, "path-route-sets": { "http_pathrouteset": { "name": "http_pathrouteset", "path-routes": [ { "backend-set-name": "ph_backendset", "path": "/test/", "path-match-type": { "match-type": "EXACT_MATCH" } } ] } }, "routing-policies": null, "rule-sets": {}, "shape-details": null, "shape-name": "400Mbps", "ssl-cipher-suites": {}, "subnet-ids": [ "ocid1.subnet..â¦.â¦.â¦.uniqueID" ], "system-tags": null, "time-created": "2022-08-11T07:20:20+00:00" } }
ロード・バランサの削除
ロード・バランサ(LB)を削除して、サービスから削除できます。
「コンピュートWeb UI」の使用
-
ナビゲーション・メニューを開きます。 「ネットワーキング」で、「ロード・バランサ」をクリックします。
-
削除するLBの名前を選択します。
-
「終了済」をクリックします。
-
プロンプトが表示されたら、操作を確認します。
OCI CLIの使用
-
コマンドを実行するために必要な情報を収集します:
-
コンパートメントOCID (
oci iam compartment list --compartment-id-in-subtree true
) -
LB OCID (
oci lb load-balancer list --compartment-id compartment_OCID
)
-
-
deleteコマンドを実行します。
構文(1行に入力):
$ oci lb load-balancer delete --load-balancer-id loadbalancer_OCID Are you sure you want to delete this resource? [y/N]: y
ノート:
検証なしでLBを削除するには、
--force
オプションを指定してコマンドを実行します。