Google Cloud では、VPC はグローバル リソースですが、サブネットはリージョン内にあり、リージョン内のすべてのアベイラビリティ ゾーンにまたがっていますが、同じ VPC またはピア VPC 内の他のサブネットと重複することはできません。
各サブネットには、プライマリ CIDR ブロック(IP 範囲)が 1 つだけ必要で、最大 30 個のセカンダリ CIDR ブロックを含めることができます。VPC には最大 300 のプライマリおよびセカンダリ CIDR を設定できます。各 VM
の NIC はプライマリ CIDR ブロックからプライマリ内部 IP アドレスを取得しますが、セカンダリ IP 範囲はエイリアス IP 範囲にのみ使用できます。これは、VM 内で実行されているコンテナまたはアプリケーションにアドレス プールを割り当てるための Google Cloud 組織的なツールです。
次に、Cisco Cloud Network Controller オブジェクトと Google Cloud オブジェクト間の関連付けについて詳しく説明します。
-
Google Cloud から VPC から Cisco Cloud Network Controller VRF への 1 対 1 のマッピング:Google Cloud VPC は、Cisco Cloud Network Controller VRF ( fvCtx
オブジェクト) ごとに展開されます。クラウド コンテキスト プロファイル(cloudCtxProfile
オブジェクト)は、展開するリージョン サブネットのセットを定義します。同じ VRF 内のすべてのクラウド コンテキスト プロファイルは、同じ VPC にマッピングされます。
-
Google Cloudサブネットとそのセカンダリ IP 範囲:Cisco Cloud Network Controller は Cisco Cloud Network Controller CIDR とサブネット オブジェクトを使用して、プライマリおよびセカンダリ IP 範囲でサブネットを展開します。Cisco
Cloud Network Controller サブネット オブジェクトは IP 範囲を表すために使用され、Cisco Cloud Network Controller CIDR のプライマリ プロパティはプライマリまたはセカンダリかどうかを示します。セカンダリ
Cisco Cloud Network Controller サブネット オブジェクトは、対応するプライマリ サブネット オブジェクトに関連付けられます。これは、Google Cloud だけが実際のサブネットを展開するためです。
VPC グループについて
クラウド コンテキスト プロファイルは Cisco Cloud Network Controller 内で VPC のマッピング ツールとして使用され、1 つのクラウド コンテキスト プロファイルが 1 つの VPC に関連付けられます。クラウド
コンテキスト プロファイルには、リージョンの関連付けに関する情報も含まれます。クラウド コンテキスト プロファイルは、VPC が展開されるリージョンを決定するために使用されます。
Google Cloud では、VPC を作成するときに、複数のリージョンにサブネットを展開する場合は、複数のクラウド コンテキスト プロファイルを Cisco Cloud Network Controller を通じて作成する必要があります。ただし、VPC は Google Cloud で本質的にグローバルであり、VPC はすべてのリージョンにまたがっています。
したがって、VPC グループ(vpcGroup
)と呼ばれるプロパティは、Cisco Cloud Network Controller が複数のクラウド コンテキスト プロファイルをグループ化して 1 つの VPC を形成できるクラウド コンテキスト プロファイル内で使用できます。Google Cloud 内VPC グループ機能を使用して相互に関連付けられた複数のクラウド コンテキスト プロファイルは、Google Cloud でVPC グループ名が表示されているVPC構造を形成します。
1 つの Cisco Cloud Network Controller VRF 内で 1 つの Google Cloud VPC のみが許可されるため、VRF にリストされている各クラウド コンテキスト プロファイルの VPC グループ プロパティに同じ名前を使用する必要があります。同じ VPC グループ名を持つプロファイルは、同じ VPC に存在します。
この照合メカニズムの範囲はテナント レベルです。同じ値をテナント間で再利用できますが、異なる Google Cloud プロジェクトの一部であるため、異なるグループを暗黙的に定義します。
Cisco Cloud Network Controller は少なくとも 1 つの cloudSubnet
が定義されている限り、fvCtx
、cloudRsToCtx
、および vpcGroup
の各タプルに対して VPC を展開します。クラウド コンテキスト プロファイルは、VRF に関連付けられたサブネットなどのリージョン リソースのコンテナになり、VPC にマッピングされなくなります。
次の例では、1 つの VPC グループ(vpc-1)を持つ同じ VRF(v1)内の 2 つのコンテキストプロファイル(c1 と c2)を定義します。この設定では、プロファイル c1 と c2 で定義されたサブネットが同じ VPC グループの一部であるため、1
つの VPC を展開します。
<fvTenant name="t1">
<fvCtx name="v1"/>
<cloudCtxProfile name="c1" vpcGroup="vpc-1">
<cloudRsCtxProfileToRegion tDn="uni/clouddomp/provp-gcp/region-us-west1" />
<cloudRsToCtx tnFvCtxName="v1"/>
<cloudCidr addr="10.0.0.0/16" primary="yes" >
<cloudSubnet ip="10.0.1.0/24">
<cloudRsZoneAttach tDn="uni/clouddomp/provp-gcp/region-us-west1/zone-default"/>
</cloudSubnet>
</cloudCidr>
</cloudCtxProfile>
<cloudCtxProfile name="c2" vpcGroup="vpc-1">
<cloudRsCtxProfileToRegion tDn="uni/clouddomp/provp-gcp/region-us-east1" />
<cloudRsToCtx tnFvCtxName="v1"/>
<cloudCidr addr="20.0.0.0/16" primary="yes" >
<cloudSubnet ip="20.0.1.0/24">
<cloudRsZoneAttach tDn="uni/clouddomp/provp-gcp/region-us-east1/zone-default"/>
</cloudSubnet>
</cloudCidr>
</cloudCtxProfile>
</fvTenant>
プライマリおよびセカンダリ サブネットとサブネット グループについて
Cisco Cloud Network Controller は cloudRsCtxProfileToRegion
関係が指すリージョンの VPC(タプル fvCtx
、cloudRsToCtx
、および vpcGroup
によって識別される)内のすべてのサブネット(cloudSubnet
)を展開します。
Google Cloudでは、VPC のプライマリ CIDR の概念はありませんが、クラウド コンテキスト プロファイルの CIDR(cloudCidr
)フィールドのプライマリ フラグは、セカンダリ IP 範囲をサポートするために Cisco Cloud Network Controller を使用できます。プライマリ CIDR で設定されたすべてのサブネットは、指定されたプライマリ IP 範囲(プライマリ サブネット)の実際の Google Cloud サブネットとして展開されます。特定のクラウド コンテキスト プロファイル(cloudCtxProfile
)で複数の CIDR をプライマリとして設定できます。したがって、複数のプライマリ サブネットを持つ特定のクラウド コンテキスト プロファイルの下に、複数のプライマリ CIDR を設定できます。
次の POST は、1 つの VPC と 3 つのサブネットが Google Cloud で展開されている例を示しています。
<polUni>
<fvTenant name="t1">
<fvCtx name="v1"/>
<cloudCtxProfile name="c1" vpcGroup="vpc-1">
<cloudRsCtxProfileToRegion tDn="uni/clouddomp/provp-gcp/region-us-west1" />
<cloudRsToCtx tnFvCtxName="v1"/>
<cloudCidr addr="10.0.0.0/16" primary="yes" >
<cloudSubnet ip="10.0.1.0/24">
<cloudRsZoneAttach tDn="uni/clouddomp/provp-gcp/region-us-west1/zone-default"/>
</cloudSubnet>
<cloudSubnet ip="10.0.2.0/24">
<cloudRsZoneAttach tDn="uni/clouddomp/provp-gcp/region-us-west/zone-default"/>
</cloudSubnet>
</cloudCidr>
<cloudCidr addr="20.0.0.0/16" primary="yes" >
<cloudSubnet ip="20.0.1.0/24">
<cloudRsZoneAttach tDn="uni/clouddomp/provp-gcp/region-us-west/zone-default"/>
</cloudSubnet>
</cloudCidr>
</cloudCtxProfile>
</polUni>
上記の例では、1 つの VPC v1
が、us-west リージョンに展開された 3 つのプライマリサブネット(10.0.1.0/24、10.0.2.0/24、および 20.0.1.0/24)で設定されています。
セカンダリ CIDR には、既存のプライマリ サブネットで設定されているセカンダリ IP 範囲(セカンダリ サブネットと呼ばれる)が含まれます。CIDR をプライマリまたはセカンダリとして指定する場合は、次の 2 つの違いを考慮すると役立ちます。
プライマリ サブネットとセカンダリ サブネットを 1 つのサブネット グループにグループ化できます。このグループ化メカニズムは、実際の Google Cloud サブネットにマッピングされたプライマリ サブネットにセカンダリ サブネット(IP 範囲など)を割り当てます。サブネット グループの範囲は、クラウド コンテキスト プロファイル レベルです。同じテナント内に複数のクラウド コンテキスト プロファイルを持つことができますが、サブネットは同じクラウド
コンテキスト プロファイル内のサブネット グループにのみ属します。
サブネット グループ ラベルを使用して、特定のサブネット グループに一意のラベルを割り当てます。同じサブネット グループ ラベルを持つ複数のサブネットがある場合、それらがすべて同じクラウド コンテキスト プロファイル内にある限り、それらのサブネットはすべて同じサブネット
グループに属します。サブネット グループ ラベルは Cisco Cloud Network Controller 内でプライマリ サブネットとセカンダリサブネットをグループ化するために使用されますが、Google Cloud では使用されません。
プライマリおよびセカンダリ CIDR に関する次のガイドラインに注意してください。
次の POST は、それぞれが異なるリージョンにあり、セカンダリCIDRを持つ 2 つのサブネットを持つ 2 つの VPC が Google Cloud で展開されている例を示しています。
<polUni>
<fvTenant name="t1">
<fvCtx name="v1"/>
<fvCtx name="v2"/>
<cloudCtxProfile name="c1" vpcGroup="vpc-1">
<cloudRsCtxProfileToRegion tDn="uni/clouddomp/provp-gcp/region-us-west1" />
<cloudRsToCtx tnFvCtxName="v1"/>
<cloudCidr addr="10.0.0.0/16" primary="yes" >
<cloudSubnet ip="10.0.1.0/24" subnetGroup="subnet-1">
<cloudRsZoneAttach tDn="uni/clouddomp/provp-gcp/region-us-west1/zone-default"/>
</cloudSubnet>
<cloudSubnet ip="10.0.2.0/24" subnetGroup="subnet-2">
<cloudRsZoneAttach tDn="uni/clouddomp/provp-gcp/region-us-west1/zone-default"/>
</cloudSubnet>
</cloudCidr>
<cloudCidr addr="40.0.0.0/16" primary="no">
<cloudSubnet ip="40.0.1.0/24" subnetGroup="subnet-1">
<cloudRsZoneAttach tDn="uni/clouddomp/provp-gcp/region-us-west1/zone-default"/>
</cloudSubnet>
</cloudCidr>
</cloudCtxProfile>
<cloudCtxProfile name="c2" vpcGroup="vpc-2">
<cloudRsCtxProfileToRegion tDn="uni/clouddomp/provp-gcp/region-us-east1" />
<cloudRsToCtx tnFvCtxName="v2"/>
<cloudCidr addr="20.0.0.0/16" primary="yes">
<cloudSubnet ip="20.0.1.0/24" subnetGroup="subnet-1">
<cloudRsZoneAttach tDn="uni/clouddomp/provp-gcp/region-us-east1/zone-default"/>
</cloudSubnet>
</cloudCidr>
<cloudCidr addr="30.0.0.0/16" primary="no">
<cloudSubnet ip="30.0.1.0/24" subnetGroup="subnet-1">
<cloudRsZoneAttach tDn="uni/clouddomp/provp-gcp/region-us-east1/zone-default"/>
</cloudSubnet>
</cloudCidr>
</cloudCtxProfile>
</fvTenant>
</polUni>
クラウド コンテキスト プロファイル c2
のサブネット グループ subnet-1
は、クラウド コンテキスト プロファイル c1
のサブネット グループとは異なります。これは、サブネット グループの範囲がクラウド コンテキスト プロファイル レベルにあるためです。
上記の例の目的は次のとおりです。
-
テナント t1
は VRF v1
および v2
を定義します。
-
クラウド コンテキスト プロファイルc1
は、VRF v1
および VPC グループ vpc-1
のリージョンus-west1のサブネットを定義します。これにより、VPC vpc-1
が展開されます。
-
クラウド コンテキストプロファイル c2
は、VRF v2
および VPC グループ vpc-2
のリージョン us-east1 のサブネットを定義します。これにより、VPC vpc-2
が展開されます。
-
次のサブネットは、リージョン us-west1 の VPC vpc-1
に展開されます。
-
サブネット-1
サブネット グループ:
-
プライマリ IP 範囲:10.0.1.0/24
-
セカンダリ IP 範囲:40.0.1.0/24
-
サブネット 2
サブネット グループ:
-
次のサブネットは、リージョン us-east1 の VPC vpc-2
に展開されます。
-
サブネット1:
-
プライマリ IP 範囲:20.0.1.0/24
-
セカンダリ IP 範囲:30.0.1.0/24