動的ルートサーバーの作成

「 VPC用ダイナミックルートサーバー 」は、一部の顧客を対象に、評価およびテストの目的で利用可能なベータ機能です。 アクセスは、許可リストに登録されたアカウントに限定されています。

BGP を使用して外部ピアとルート情報を交換することで、VPC と接続されたネットワーク間のポリシー主導型の動的ルーティングを可能にする動的ルートサーバーを作成できます。 ダイナミックルートサーバーにメンバーを追加することで、アベイラビリティゾーン全体にルーティングアプライアンスを展開し、BGPルート交換に対して高可用性と耐障害性を確保することができます。

動的ルートサーバーインスタンスは、1つ以上のメンバーを含み、ピアおよびポリシーに対するルーティングスコープを定義します。 メンバーとは、仮想サーバーインスタンスとして展開され、BGPルーティングスタックを実行するルーティングアプライアンスのことです。 メンバーは、ピアとBGPセッションを確立します。 高可用性を確保するため、動的ルートサーバーのインスタンスには1~3つのメンバーを設定できます。

開始前に

動的ルートサーバーを作成する前に:

コンソールでの動的ルートサーバーの作成

コンソールで動的ルートサーバーを作成するには、以下の手順に従ってください

  1. お使いのブラウザで、 IBM Cloud コンソールを開き、 アカウントにログインしてください。
  2. 「 ナビゲーションメニュー ナビゲーションメニューのアイコン 」を選択し、「 インフラ VPCアイコン 」>「 ネットワーク 」>「 動的ルートサーバー 」の順にクリックします。
  3. 「VPC 用ダイナミックルートサーバー」ページで、「 作成 」をクリックします。
  4. 以下の情報を指定します。
    • 場所- ダイナミックルートサーバーがプロビジョニングされる場所を選択します。
    • 名前- ダイナミックルートサーバーの名前を入力します(例: my-dynamic-route-server )。
    • リソースグループ- ダイナミックルートサーバー用のリソースグループを選択します。
    • タグ- 必要に応じて、この動的ルートサーバーを識別するためのタグを追加してください。
    • アクセス管理タグ- 必要に応じて、リソースにアクセス管理タグを追加し、アクセス制御の関係を整理することができます。 サポートされるアクセス管理タグの形式は key:value のみです。 詳しくは、タグを使用したリソースに対するアクセス権限の制御を参照してください。
    • 仮想プライベートクラウド- ダイナミックルートサーバー用のVPCを選択してください。
    • ASN- ASNの値を入力してください。 ASNとは、動的ルートサーバーの数値識別子であり、BGPピアリングにおいてローカルネットワークを識別し、他のピアとのBGPセッションを確立するために使用されます。
  5. 動的ルートサーバーのメンバーを作成し、[概要] パネルで [ 動的ルートサーバーの作成 ] をクリックします。

動的なルートサーバーメンバーの作成

コンソールで動的ルートサーバーメンバーを作成するには、以下の手順に従ってください

  1. 「動的ルートサーバーのメンバー」セクションで、「 作成 」をクリックします。 ダイナミックルートサーバーのメンバーは、BGPセッションを確立するために仮想ネットワークインターフェース(VNI)を必要とします。 既存のVNIを紐付けるか、新しいVNIを作成することができます。 詳細については、「 仮想ネットワークインターフェースについて 」を参照してください。
  2. 動的ルートサーバーのメンバーの名前(例: my-drs-mem )を入力してください。
  3. メンバーを作成する場所を選択してください。
  4. すでにVNIをお持ちの場合は、リストから1つ選択してください。 お持ちでない場合は、以下の手順に従ってください:
    • [ 詳細 ] セクションで、 [作成] をクリックし、仮想ネットワークインターフェースの名前を入力します。
      • それが属するリソースグループを選択してください。
      • メンバーに使用するサブネットを選択してください。
      • ネットワークおよびIP情報を追加する
      • 次へ をクリックします。
    • 「 ネットワーク設定 」セクションで、以下の情報を入力してください:
      • IPスプーフィングを許可 :IPスプーフィングを無効にするには、このスイッチを選択してください。

      • インフラストラクチャNAT :インフラストラクチャNATを有効にするスイッチを選択してください。

        IPスプーフィングが有効になっている場合、インフラストラクチャNATも有効になります。また、動的ルートサーバーのメンバーについては、インフラストラクチャNATを有効にする必要があります。

      • プロトコルの状態フィルタリングモード :ラジオボタンを選択してモードを設定してください。 動的ルートサーバーについては、「 Auto 」または「 Enabled 」に設定する必要があります。

      • セキュリティグループ :ネットワークレベルでのトラフィックを制御するために、1つ以上5つ以下のセキュリティグループを選択してください。 リストからセキュリティグループを選択するか、「作成」をクリックして新しいセキュリティグループを作成できます。 セキュリティグループの作成に関する詳細については、「 セキュリティグループの作成 」を参照してください。

    • 「IP」セクションでは、デフォルト設定のままにしておいてください。 動的ルートサーバーのメンバーであるVNIには、1つのプライマリIPアドレスが設定されている必要があります。
    • [概要] パネルの情報を確認し、[ 作成 ] をクリックします。

CLI から動的ルートサーバーを作成する

CLI から動的ルートサーバーを作成するには、以下の手順に従ってください

  1. CLI 環境をセットアップします。

  2. CLI 環境にログインしてください。 パスワードを入力すると、使用するアカウントとリージョンの入力を求めるプロンプトが表示されます。

    ibmcloud login --sso
    
  3. 次の機能フラグを有効にしてください:

    export IBMCLOUD_IS_FEATURE_DYNAMIC_ROUTE_SERVER=true
    
  4. 以下のコマンドを実行します。

    ibmcloud is dynamic-route-server-create --local-asn LOCAL_ASN (--members MEMBERS_JSON | @MEMBERS_JSON_FILE) [--name NAME] [--resource-group-id RESOURCE_GROUP_ID | --resource-group-name RESOURCE_GROUP_NAME] [--output JSON] [-q, --quiet]
    

ここで、

--local-asn
ローカル自律システム番号(ASN)。
--members
動的ルートサーバーのメンバーを定義するJSONペイロード。 メンバーは、最低1名、最大3名まで指定できます。 データスキーマについては、 APIドキュメント の members プロパティを参照してください。
@MEMBERS_JSON_FILE
メンバーのJSONペイロードを含むファイル。
--name
動的ルートサーバーの名前。
--resource-group-id
リソースグループのID。 このオプションは --resource-group-name と同時に指定することはできません。
--resource-group-name
リソースグループの名前。 このオプションは --resource-group-id と同時に指定することはできません。
--output
JSON形式で出力します。
-q, --quiet
詳細な出力を抑制します。

CLI から動的ルートサーバーメンバーを作成するには、次のコマンドを実行します

ibmcloud is dynamic-route-server-member-create DYNAMIC_ROUTE_SERVER (--vni VNI | (--vni-auto-delete true | false [--vni-psfm auto | enabled | disabled] --vni-name VNI_NAME [--vni-rip VNI_RIP | (--vni-rip-address VNI_RIP_ADDRESS --vni-rip-auto-delete true | false --vni-rip-name VNI_RIP_NAME)] --vni-subnet VNI_SUBNET [--vpc VPC] --vni-sgs VNI_SGS --vni-ais false | true --vni-ein true | false --vni-ips VNI_RESERVED_IPS_JSON | @VNI_RESERVED_IPS_JSON_FILE --resource-group-id RESOURCE_GROUP_ID | --resource-group-name RESOURCE_GROUP_NAME)) [--name NAME] [--output JSON] [-q, --quiet]

ここで、

DYNAMIC_ROUTE_SERVER
動的なルートサーバー識別子。
--vni
VNIのIDまたは名前。
--vni-auto-delete
対象が削除された際に、VNIも自動的に削除されるかどうかを示します。 true または false のいずれか。
--vni-psfm
VNIのプロトコル状態フィルタリングモード。 auto の場合、VNIの target リソースタイプに基づいて、プロトコル状態パケットフィルタリングが有効または無効になります。 auto、 enabled、 disabled のいずれか。 デフォルトは auto です。
--vni-name
VNIの名称。
--vni-rip
VNI にバインドする予約済み IP の ID または名前。 サブネットを指定しない場合は、これが必要です。
--vni-rip-address
VNIにバインドする予約済みIPアドレスのIPアドレス。 サブネットが必要です。
--vni-rip-auto-delete
対象が削除されたとき、または予約済みIPのバインドが解除されたときに、その予約済みIPが自動的に削除されるかどうかを示します。 true または false のいずれか。
--vni-rip-name
VNI にバインドする予約済み IP の名前。
--vni-subnet
サブネットのIDまたは名前。 名前を指定する場合は、 --vpc を使用して、名前解決に使用する VPC を指定してください。
--vpc
VPCのIDまたは名前。 サブネット名の解決に必要です。
--vni-sgs
VNI に関連するセキュリティグループの ID または名称を、コンマ区切りで列挙したもの。
--vni-ais
IPスプーフィングを許可する。 VNI上で送信元IPアドレスの偽装が許可されているかどうかを示します。 false または true のいずれか。 デフォルトはfalseです。
--vni-ein
インフラストラクチャNATを有効にします。 必要なNAT処理をVPCインフラストラクチャーが実行するかどうかを示します。 true または false のいずれか。 デフォルトはtrueです。
--vni-ips
VNI にバインドするセカンダリ予約 IP アドレスを定義する JSON ペイロード。
@VNI_RESERVED_IPS_JSON_FILE
セカンダリ予約済みIPアドレスのJSONペイロードを含むファイル。
--resource-group-id
リソースグループのID。 このオプションは --resource-group-name と同時に指定することはできません。
--resource-group-name
リソースグループの名前。 このオプションは --resource-group-id と同時に指定することはできません。
--name
動的ルートサーバーのメンバー名。
--output
JSON形式で出力します。
-q, --quiet
詳細な出力を抑制します。

コマンドの例

  • ローカルASNを持ち、メンバーが1つの動的ルートサーバーを作成するには、次のコマンドを実行します

    ibmcloud is dynamic-route-server-create --local-asn 64514 --members '[{"name":"drs-member-1","virtual_network_interfaces":[{"id":"0717-3c8a9f81-b1a0-4c92-9a38-1d9c2f9d1234"}]}]' --name my-dynamic-route-server --resource-group-name default --output JSON
    
  • 動的ルートサーバーメンバーを作成するには、次のコマンドを実行します

    ibmcloud is dynamic-route-server-member-create 0717-drs-12345678 --vni-auto-delete false --vni-psfm auto --vni-name drs-member-vni-1 --vni-rip-address 10.0.1.5 --vni-rip-auto-delete false --vni-rip-name drs-member-rip-1 --vni-subnet 0717-subnet-abc12345 --vpc 0717-vpc-9f8e7d6c --vni-sgs 0717-sg-111aaa22,0717-sg-333bbb44 --vni-ais false --vni-ein true --resource-group-name default --name drs-member-2 --output JSON
    

API を使用した動的ルートサーバーの作成

API を使用して動的ルートサーバーを作成するには、以下の手順に従ってください

  1. 必要な変数を設定して、 API環境を 構築してください。

  2. API コマンドで使用するその他の変数を保存してください。 以下に例を示します。

    • ResourceGroupId - get resource groups コマンドを使用してリソース・グループ ID を確認してから、変数に設定します。
    export ResourceGroupId=<your_resourcegroup_id>
    
  3. すべての変数の設定が完了したら、動的ルートサーバーを作成します:

    curl -X POST \
      "$vpc_api_endpoint/v1/dynamic_route_servers?version=$api_version&generation=2" \
      -H "Authorization: Bearer $iam_token" \
      -H "Content-Type: application/json" \
      -d '{
        "name": "my-drs",
        "local_asn": 64514,
        "members": [
          {
            "name": "my-drs-member",
            "virtual_network_interfaces": [
              {
                "id": "VNI_ID"
              }
            ]
          }
        ],
        "resource_group": {
          "id": "abcd1234-5678"
        }
      }'
    

次のステップ

動的ルートサーバーのプロビジョニングが完了したところで、次の手順について検討してください: