予約IPを仮想ネットワークインターフェースにアタッチする
VNI は、1 次 IP アドレスを使用して作成されます。このアドレスは、既存の予約 IP にすることも、仮想ネットワーク・インターフェースを使用して作成することもできます。 仮想ネットワーク・インターフェースの 1 次 IP アドレスは、予約済みの IP アドレスです。
予約IPをVNIに追加するには、コンソール、CLI、API、またはTerraformを使用します。
コンソールの仮想ネットワークインターフェースのプライマリ予約IPの決定
コンソールでは、仮想ネットワークインターフェイスのプライマリIPアドレスは予約IPです。 予約 IP は、3 つの方法で仮想ネットワーク・インターフェースに追加できます。
- 仮想ネットワーク・インターフェースを作成するときは、サブネットを指定する必要があります。 サブネット のみ を指定した場合、予約済み IP アドレスがそのサブネットから自動的に割り振られ、仮想ネットワーク・インターフェースの 1 次 IP アドレスとして割り当てられます。
- 仮想ネットワーク・インターフェースの作成中に、別のリソースにまだ接続されていない既存の予約済み IP アドレスを選択できます。 この予約済み IP アドレスは、仮想ネットワーク・インターフェースの 1 次 IP アドレスとして使用されます。
- サブネットを指定し、サブネット内の有効なアドレスであるが、現在は予約 IP に割り振られていない IP アドレスをそのサブネットに指定すると、そのアドレスを使用して予約 IP が作成されます。 この予約済み IP アドレスは、仮想ネットワーク・インターフェースの 1 次 IP アドレスとして使用されます。
仮想ネットワーク・インターフェースに 1 次 (予約済み) IP を追加する方法について詳しくは、 仮想ネットワーク・インターフェースの作成 のステップ 10 を参照してください。
CLI からの仮想ネットワーク・インターフェースの 1 次予約 IP の判別
開始する前に、 CLI 環境をセットアップします。
CLI から予約 IP を仮想ネットワーク・インターフェースに追加するには、次のコマンドを入力します。
ibmcloud is subnet-reserved-ip-create SUBNET [--vpc VPC] [--name NAME] [--address ADDRESS] [--auto-delete true | false] [--target TARGET] [--trt endpoint_gateway | virtual_network_interface] [--output JSON] [-q, --quiet]
ここで、
SUBNET
- サブネットの ID または名前。
--vpc
- VPC の ID。
--name
- 予約IPの名前。
--address
- IP 予約 IP アドレス。
--auto-delete
- ターゲットの削除時に、この仮想ネットワーク・インターフェースが自動的に削除されるかどうかを示します。 仮想ネットワーク・インターフェイスがバインドされていない場合は、
false
。 の一つ:false
true
. --target value
- ターゲット・リソースの ID または名前。 以下のタイプがサポートされている:
endpoint_gateway
virtual_network_interface
。 --trt value
- バインドされたターゲット・リソース・タイプ、このオプションは、ID の代わりにターゲット名を使用する場合にのみ必要です。
endpoint_gateway
、virtual_network_interface
のいずれかです。 --output
- 出力フォーマットを指定します。JSON のみがサポートされています。 以下のいずれかです:
JSON
。 -q, --quiet
- 詳細出力を抑制します。
コマンドの例
ibmcloud is subnet-reserved-ip-create my-subnet --name my-reserved-ip --address 10.240.64.10 --target my-vpe --trt endpoint_gateway
ibmcloud is subnet-reserved-ip-create my-subnet --name my-reserved-ip --address 10.240.64.10 --target my-vni --trt virtual_network_interface
API からの仮想ネットワーク・インターフェースの 1 次予約 IP の判別
-
適切な変数を設定して API 環境をセットアップします。
-
API コマンドで使用する追加の変数を格納します。次に例を示します。
version
(string):YYYY-MM-DD
の形式の API バージョン。virtual_network_interface_id
(string): 仮想ネットワーク・インターフェース ID。reserved_ip_id
(string): 予約済み IP ID。
-
すべての変数が開始されたら、予約済み IP を追加します。
curl -X PUT \ "$vpc_api_endpoint/v1/virtual_network_interfaces/$virtual_network_interface_id/ips/$reserved_ip_id?version=$version&generation=2" \ -H "Authorization: Bearer $iam_token"
Terraform を使用した仮想ネットワーク・インターフェースの 1 次予約 IP の判別
以下の例では、Terraform を使用して、予約済み IP アドレスを仮想ネットワーク・インターフェースに追加します。
resource "ibm_is_virtual_network_interface_ip" "vni_reservedip" {
virtual_network_interface = ibm_is_virtual_network_interface.my_vni.id
reserved_ip = ibm_is_subnet_reserved_ip.my_reservedip.reserved_ip
}