リング・ポリシーを使用したトラフィックの管理
DNSは、そのゾーンのDNSネームスペースに文字列を指定した場合、IPアドレス(既知の場合)を返す以上を実行できます。 DNSは、トラフィック管理のシステムの一部でもあり、ロケーションなどの条件に応じて複数のサーバーにトラフィックが分散されます。 リング・ポリシーは、単一の完全修飾名へのアクセスを複数のサーバーに分散する方法です。
たとえば、ストリーミング・ビデオか製品データベースからのレコードかに関係なく、複数のソース・サーバーから同じコンテンツを使用できます。 1台のサーバーが米国に、もう1台のサーバーがヨーロッパに設置されている可能性があります。 トラフィック・リング・ポリシーは、IPアドレスまたはCIDRに基づいてトラフィックを分散できます。 ロード・バランシングなどのこのトラフィック分散には、複数のサーバーの負荷をほぼ等しい状態に保つために、他の基準を使用できます。
Oracle Private Cloud Applianceは、ロード・バランシングおよびIPアドレス・プレフィクスの一部の値(IPアドレスのネットワーク部分(192.168.100.0/24
など)に基づく2つの主要なタイプのトラフィック・リング・ポリシーを提供します。
ロード・バランサ・リング・ポリシーの作成
複数のDNSサーバーがある場合は、各サーバーに割り当てた重みに基づいて、ロード・バランシング方式でトラフィックを分散できます。
「コンピュートWeb UI」の使用
-
ナビゲーション・メニューを開きます。 DNSゾーンで、リング・ポリシーをクリックします。
-
リング・ポリシーの作成をクリックします。
-
ロード・バランサ・ボタンをクリックして、ロード・バランサ・リング・ポリシーを作成します。
-
必須情報を入力します:
-
名前: ロード・バランサ・リング・ポリシーに表示する名前を入力します。 機密情報は使用しないでください。
-
ポリシーTTL: リング・ポリシー・リクエストに対するレスポンスのTTLを秒単位で入力します。 最大は604800秒(168時間または7日間)です。
-
解答: FILTER、WEIGHEDおよびLIMITルールのDNSリクエストに対する回答を指定します。 回答を使用する条件を指定する必要はありません: ロード・バランサ・テンプレートによって実行されます。
-
名前: 返されるRDataの名前(Server1など)を入力します。
-
タイプ: リクエストに対して返すリソース・レコードのタイプをドロップダウン・リストから選択します。 選択肢は、A (IPv4アドレス)やCNAME (正規名)などのアイテムです。
-
RData: 選択したタイプに対応するリソース・レコードRDataを入力します。 たとえば、Type = Aの場合、RDataはIPv4アドレスになります。
-
重量: ロード・バランシングに使用するこのポリシーの重みを入力します。 最大256の値がサポートされています。 デフォルトは10です。 重みが高いほど、ポリシーの回答がより頻繁に使用されることを意味します。 たとえば、
dns-server1
とdns-server2
の重みが等しい場合、DNSリクエストはそれらの間で均等に分割されます。dns-server1
の重みがdns-server2
の2倍である場合、dns-server1
はdns-server2
と同じ頻度で2回使用されます。
-
-
-
無効: リング・ポリシーの回答は、デフォルトで作成時に有効になります。 このリング・ポリシーの回答を無効にするには、このトグルをクリックして無効値をTRUEに変更します。
-
オプションで、このサブネット・リソースのタグを追加または削除します。
タグ付けの詳細は、「リソース・タグの操作」を参照してください。 タグを適用するかどうかが不明な場合は、このオプションをスキップするか(後でタグを適用できます)、管理者に問い合せてください。
-
「変更の保存」をクリックします。 ロード・バランシング・リング・ポリシーが作成されます。
OCI CLIの使用
-
必要な情報を収集します。
-
コンパートメントOCID (
oci iam compartment list --compartment-id-in-subtree true
)
-
-
LOAD_BALANCEパラメータを指定して
oci dns steering-policy create
コマンドを実行します。ノート:
この手順では、このコマンドに必要な最小パラメータを示します。 オプションのパラメータについては、
--help
オプションを指定してコマンドを実行します。 複合型は、長いjson文字列です。構文(単一行に入力):<dns_steering_policy_name>
oci dns steering-policy create --compartment-id <compartment_OCID> --display-name <dns_steering_policy_name> --template <LOAD_BALANCE> --answers <complex type> --rules <complex type>
例:
oci dns steering-policy create --compartment-id ocid1.compartment.â¦.â¦.â¦.uniqueID --display-name test-lb-policy-1 --template LOAD_BALANCE --answers '[{"name": "server","pool": "server","rdata": "10.25.11.10","rtype": "A"}, {"name": "trial","pool": "trial","rdata": "10.25.11.10","rtype": "A"}]' --rules '[{"ruleType": "FILTER","defaultAnswerData": [{"answerCondition": "answer.isDisabled != true","shouldKeep": true}]},{"ruleType": "WEIGHTED","defaultAnswerData": [{"answerCondition": "answer.name == 'server'","value": 90},{"answerCondition": "answer.name == 'trial'","value": 10}]},{"defaultCount": 1,"ruleType": "LIMIT"}]' { "data": { "-self": "https://20180115/steeringPolicies/ocid1.dnspolicy..â¦.â¦.â¦.uniqueID", "answers": [ { "is-disabled": true, "name": "server", "pool": "server", "rdata": "10.25.11.10", "rtype": "A" }, { "is-disabled": true, "name": "trial", "pool": "trial", "rdata": "10.25.11.10", "rtype": "A" } ], "compartment-id": "ocid1.compartment.â¦.â¦.â¦.uniqueID", "defined-tags": {}, "display-name": "lr-policy", "freeform-tags": {}, "health-check-monitor-id": null, "id": "ocid1.dnspolicy..â¦.â¦.â¦.uniqueID", "lifecycle-state": "ACTIVE", "rules": [ { "cases": null, "default-answer-data": [ { "answer-condition": "answer.isDisabled != true", "should-keep": true } ], "description": null, "rule-type": "FILTER" }, { "cases": null, "default-answer-data": [ { "answer-condition": "answer.name == 'server'", "value": 90 }, { "answer-condition": "answer.name == 'trial'", "value": 10 } ], "description": null, "rule-type": "WEIGHTED" }, { "cases": null, "default-count": 1, "description": null, "rule-type": "LIMIT" } ], "template": "LOAD_BALANCE", "time-created": "2021-11-03T23:36:25.392833+00:00", "ttl": 30 }, "etag": "2c63fca5-f747-487e-b2f3-0ae5d6fe939c" }
ロード・バランサ・リング・ポリシーが作成され、DNSドメインにアタッチできます。
IPプレフィクス・ステアリング・ポリシーの作成
IPプレフィクス・ステアリング・ポリシーは、発信元のIPプレフィクス(172.16.1.0/24
など)に基づいて、DNSリクエスト・トラフィックを異なるサーバーに動的にルーティングします。
「コンピュートWeb UI」の使用
-
ナビゲーション・メニューを開きます。 DNS Zonesで、Manage DNSをクリックします。
-
DNSリソースのリストから、リング・ポリシーをクリックします。 そのコンパートメントのリング・ポリシーが表示されます。
-
リング・ポリシーの作成をクリックします。
-
IPプレフィクス・ステアリングを選択し、次のプロパティを指定します:
-
名前: 新しいリング・ポリシーの名前。
-
ポリシーTTL: リング・ポリシーからのレスポンスのTime To Live (TTL) (秒単位)。 最大許容値は604800 (168時間または7日)です。
-
-
回答ボックスで、次のプロパティを指定します:
-
名前: 新しいリング・ポリシーに送信されたリクエストへのレスポンスの名前。
-
タイプ: リクエストおよびレスポンスのタイプ。 選択肢はA、AAAまたはCNAMEです。
-
RData: 問合せに対して返されるゾーン・レコード・データ。 選択したタイプによって予期されるタイプと一致する必要があります。
-
プール: ポリシーに使用するIPアドレス・プールをドロップダウン・リストから選択します。
-
+Add解答: このボックスをクリックして、リング・ポリシーで受信したリクエストにさらに回答を追加します。
-
無効: このトグルは、作成時にIPプレフィクスの回答を有効にするかどうかを決定します。 デフォルトは有効です。
-
-
IPプレフィクス・ステアリング・ルール・ボックスで、次のプロパティを指定します:
-
+Addルール: このボックスをクリックして、IPプレフィクス・ステアリング・ポリシーにルールを追加します。
-
オーダー: 方向矢印を使用して、構成されたルールの順序でルールを並べ替えます。
-
サブネット・アドレス: このリング・ポリシーに適用するIPサブネット・プレフィクスを入力します。
-
「+ルールの追加」をクリックすると、このリング・ポリシーにさらにルールを追加できます。
-
-
タグ付け: オプションで、リング・ポリシーにタグを追加できます。
タグ付けの詳細は、「リソース・タグの操作」を参照してください。 タグを適用するかどうかが不明な場合は、このオプションをスキップするか(後でタグを適用できます)、管理者に問い合せてください。
-
「変更の保存」をクリックします。 IPプレフィクス・ステアリング・ポリシーが作成されます。
OCI CLIの使用
-
必要な情報を収集します。
-
コンパートメントOCID (
oci iam compartment list --compartment-id-in-subtree true
)
-
-
ROUTE_BY_IPパラメータを指定して
oci dns steering-policy create
コマンドを実行します。ノート:
この手順では、このコマンドに必要な最小パラメータを示します。 オプションのパラメータについては、
--help
オプションを指定してコマンドを実行します。 複合型は、長いjson文字列です。構文(1行に入力):
oci dns steering-policy create--compartment-id <compartment_OCID> --display-name <dns_steering_policy_name> --template <LOAD_BALANCE> --answers <complex type> --rules <complex type>
例:
oci dns steering-policy create --compartment-id ocid1.compartment..â¦.â¦.â¦.uniqueID --display-name test-ip-steering-1 --template ROUTE_BY_IP --answers file:///root/users-stuff/ip-steering-answers.json --rules file:///root/users-stuff/ip-steering-rules-2.json { "data": { "-self": "https://20180115/steeringPolicies/ocid1.dnspolicy..â¦.â¦.â¦.uniqueID", "answers": [ { "is-disabled": null, "name": "server", "pool": "server", "rdata": "10.20.10.10", "rtype": "A" }, { "is-disabled": null, "name": "trial", "pool": "trial", "rdata": "10.20.10.10", "rtype": "A" } ], "compartment-id": "ocid1.compartment..â¦.â¦.â¦.uniqueID", "defined-tags": {}, "display-name": "test-ip-steering-1", "freeform-tags": {}, "health-check-monitor-id": null, "id": "ocid1.dnspolicy..â¦.â¦.â¦.uniqueID", "lifecycle-state": "ACTIVE", "rules": [ { "cases": null, "default-answer-data": [ { "answer-condition": "answer.isDisabled != true", "should-keep": true } ], "description": null, "rule-type": "FILTER" }, { "cases": [ { "answer-data": [ { "answer-condition": "answer.pool == 'internal'", "value": 1 } ], "case-condition": "query.client.address in (subnet '10.0.3.0/24')" }, { "answer-data": [ { "answer-condition": "answer.pool == 'external'", "value": 1 } ], "case-condition": null } ], "default-answer-data": null, "description": null, "rule-type": "PRIORITY" }, { "cases": null, "default-count": 1, "description": null, "rule-type": "LIMIT" } ], "template": "ROUTE_BY_IP", "time-created": "2021-11-09T16:53:34.963177+00:00", "ttl": 30 }, "etag": "aad5bbcc-9d89-40cd-ab10-03dcc2e4ee0a" }
IPリング・ポリシーが作成され、DNSドメインにアタッチできるようになります。
リング・ポリシーの編集
「コンピュートWeb UI」の使用
-
ナビゲーション・メニューを開きます。 DNSをクリックし、リング・ポリシーをクリックします。
-
更新するポリシーについて、アクション・メニューをクリックし、編集オプションをクリックします。
-
「リング・ポリシーの編集」ダイアログで必要な変更を行います。
-
変更が終了したら、ダイアログのSave Changesボタンをクリックします。
このリング・ポリシーの詳細ページが更新された情報とともに表示されます。
OCI CLIの使用
-
リング・ポリシーOCIDを取得します。
次のコマンドを使用して、指定したコンパートメント内のすべてのリング・ポリシーをリストし、更新するリング・ポリシーのOCIDを取得します:
# oci dns steering-policy list --compartment-id <compartment_OCID>
-
リング・ポリシー更新コマンドを実行します。
構文:
oci dns steering-policy update --steering-policy-id <steering_policy_OCID> \ <options_with_values_to_update>
例:
この例は、リング・ポリシーの
answers
ブロックの置換を示しています。 表示名、ヘルス・チェック・モニター、ルールまたはルール・テンプレート、TTLおよびスコープを変更することもできます。# oci dns steering-policy update --steering-policy-id ocid1.dnspolicy.unique_ID \ --answers file://answers.json
このコマンドは、
steering-policy get
コマンドと同じ出力を返します。
別のコンパートメントへのリング・ポリシーの移動
OCI CLIの使用
-
次の情報を取得します:
-
リング・ポリシーが現在配置されているコンパートメントのOCIDと、リング・ポリシーを移動するコンパートメントのOCID。
# oci iam compartment list --compartment-id-in-subtree true
-
リング・ポリシーOCID。
# oci dns steering-policy list --compartment-id <current_compartment_OCID>
-
-
リング・ポリシー更新コマンドを実行します。
構文:
oci dns steering-policy change-compartment -c <destination_compartment_OCID> \ --steering-policy-id <steering_policy_OCID>
このコマンドは、
steering-policy get
コマンドと同じ出力を返します。 新しいcompartment-id
を確認します。
リング・ポリシーへのドメインのアタッチ
そのドメインのDNS問合せに応答するには、ポリシーにリング・ポリシーをアタッチする必要があります。 アタッチメントは、ドメイン・ゾーンと同じコンパートメントに自動的に配置されます。
「コンピュートWeb UI」の使用
-
ナビゲーション・メニューを開きます。 DNSをクリックし、リング・ポリシーをクリックします。
-
ドメインをアタッチするポリシーの名前をクリックします。
-
リソース・セクションまでスクロールし、アタッチ済ドメインをクリックします。
-
アタッチされたドメインのリストで、Add Attached Domainボタンをクリックします。
-
「アタッチ済ドメインの追加」ダイアログで、ドメイン名を入力し、ゾーンを選択します。
-
「送信」ボタンをクリックします。
このリング・ポリシーのアタッチ済ドメイン・リストに新しいドメインが追加されます。
OCI CLIの使用
-
次の情報を取得します:
-
リング・ポリシーOCID。 次のコマンドを使用して、指定したコンパートメント内のすべてのリング・ポリシーをリストし、ドメインのアタッチ先のリング・ポリシーのOCIDを取得します:
# oci dns steering-policy list --compartment-id <current_compartment_OCID>
-
リング・ポリシーにアタッチするドメインの名前。
-
アタッチされたゾーンのOCID。 次のコマンドを使用して、指定したコンパートメント内のすべてのゾーンをリストし、アタッチするドメインがあるゾーンのOCIDを取得します:
# oci dns zone list <compartment_OCID>
-
-
リング・ポリシー・アタッチメントのcreateコマンドを実行します。
構文:
oci dns steering-policy-attachment create --steering-policy-id <steering_policy_OCID> \ --domain-name <domain-name> --zone-id <zone_OCID>
--domain-name
引数の値は、--zone-id
引数で指定されたアタッチされたゾーン内のアタッチされたドメインです。このコマンドは、
steering-policy-attachment get
コマンドと同じ出力を返します。
アタッチされたドメインの編集
「コンピュートWeb UI」の使用
-
ナビゲーション・メニューを開きます。 DNSをクリックし、リング・ポリシーをクリックします。
-
アタッチされたドメインを編集するポリシーの名前をクリックします。
-
リソース・セクションまでスクロールし、アタッチ済ドメインをクリックします。
-
編集するアタッチされたドメインの名前をクリックします。
-
アタッチされたドメインの詳細ページの上部にある編集ボタンをクリックします。
-
「リング・ポリシー・アタッチメントの編集」ダイアログで必要な変更を行います。
-
変更が終了したら、ダイアログのSave Changesボタンをクリックします。
このリング・ポリシー・アタッチメントの詳細ページが更新された情報とともに表示されます。
OCI CLIの使用
-
リング・ポリシー・アタッチメントOCIDを取得します。
次のコマンドを使用して、指定したコンパートメント内のすべてのリング・ポリシー・アタッチメントをリストし、更新するリング・ポリシー・アタッチメントのOCIDを取得します:
# oci dns steering-policy-attachment list --compartment-id <compartment_OCID>
-
リング・ポリシー・アタッチメントの更新コマンドを実行します。
構文:
oci dns steering-policy-attachment update \ --steering-policy-attachment-id <steering_policy_attachment_OCID>
このコマンドは、
steering-policy-attachment get
コマンドと同じ出力を返します。
リング・ポリシー・アタッチメントの削除
「コンピュートWeb UI」の使用
-
ナビゲーション・メニューを開きます。 DNSをクリックし、リング・ポリシーをクリックします。
-
アタッチメントを削除するポリシーの名前をクリックします。
-
リソース・セクションまでスクロールし、アタッチ済ドメインをクリックします。
-
削除するアタッチされたドメインについて、アクション・メニューをクリックし、削除オプションをクリックして削除を確認します。
リング・ポリシー・アタッチメントがアタッチ済ドメイン・リストから削除されます。
OCI CLIの使用
-
リング・ポリシー・アタッチメントOCIDを取得します。
次のコマンドを使用して、指定したコンパートメント内のすべてのリング・ポリシー・アタッチメントをリストし、削除するリング・ポリシー・アタッチメントのOCIDを取得します:
# oci dns steering-policy-attachment list --compartment-id <compartment_OCID>
-
リング・ポリシー・アタッチメント削除コマンドを実行します。
構文:
oci dns steering-policy-attachment delete \ --steering-policy-attachment-id <steering_policy_attachment_OCID>
リング・ポリシーの削除
どのゾーンにもアタッチされているポリシーは削除できません。 ゾーンからポリシーをデタッチするには、「リング・ポリシー・アタッチメントの削除」を参照してください。
「コンピュートWeb UI」の使用
-
ナビゲーション・メニューを開きます。 DNSをクリックし、リング・ポリシーをクリックします。
-
削除するポリシーの名前をクリックします。
-
リソース・セクションまでスクロールし、アタッチ済ドメインをクリックして、このポリシーに添付されたドメインがないことを確認します。
-
リング・ポリシーの詳細ページの上部にある削除ボタンをクリックし、このリング・ポリシーを削除することを確認します。
リング・ポリシー・リスト・ページが表示されます。
OCI CLIの使用
-
リング・ポリシーOCIDを取得します。
次のコマンドを使用して、指定したコンパートメント内のすべてのリング・ポリシーをリストし、削除するリング・ポリシーのOCIDを取得します:
# oci dns steering-policy list --compartment-id compartment_OCID
-
リング・ポリシー削除コマンドを実行します。
構文:
oci dns steering-policy delete --steering-policy-id steering_policy_OCID