IP アドレス管理(IPAM)API は Kubernetes カスタム リソースを使用し、Kubernetes Resource Model(KRM)に依存します。Google Distributed Cloud(GDC)エアギャップ デプロイメント全体で IP アドレスの割り当てを管理します。
IPAM API を使用するには、gdcloud CLI を使用するか、kubectl CLI を使用して API
を直接呼び出すことをおすすめします。アプリケーションで独自のライブラリを使用してこの API
を呼び出す必要がある場合は、次の例と完全な API 定義を使用してリクエストを作成します。
サービス エンドポイントとディスカバリ ドキュメント
IPAM API は、ゾーン デプロイメントまたはグローバル デプロイメントに応じて 2 つのパッケージで提供されます。
ゾーン IPAM API とグローバル IPAM API の API エンドポイントは、それぞれ次のとおりです。
https://MANAGEMENT_API_SERVER_ENDPOINT/apis/ipam.gdc.goog/v1https://MANAGEMENT_API_SERVER_ENDPOINT/apis/ipam.global.gdc.goog/v1
MANAGEMENT_API_SERVER_ENDPOINT 変数は、Management API サーバーのエンドポイントです。
kubectl proxy コマンドを使用すると、ブラウザまたは curl などのツールでその URL にアクセスして、IPAM API
のディスカバリ ドキュメントを取得できます。kubectl proxy コマンドは、ローカルマシン上の Kubernetes API
サーバーへのプロキシを開きます。このコマンドが実行されると、次の URL でドキュメントにアクセスできます。
http://127.0.0.1:8001/apis/ipam.gdc.goog/v1http://127.0.0.1:8001/apis/ipam.global.gdc.goog/v1
カスタム リソースの例
以下は、ゾーン Subnet オブジェクトの例です。
apiVersion: ipam.gdc.goog/v1
kind: Subnet
metadata:
labels:
ipam.gdc.goog/overlay-network-type: External
ipam.gdc.goog/category-type: ExternalOverlayNetwork
name: test-subnet
namespace: root
spec:
type: Root
ipv4Request:
cidr: 10.0.0.0/16
networkSpec:
staticVLANID: 100
enableVLANID: true
enableGateway: true
以下は、デフォルトの VPC ルート CIDR のグローバル Subnet オブジェクトの例です。
apiVersion: ipam.global.gdc.goog/v1
kind: Subnet
metadata:
labels:
ipam.gdc.goog/vpc: default-vpc
ipam.gdc.goog/usage: network-root-range
name: default-vpc-root-cidr
namespace: platform
spec:
ipv4Request:
cidr: 10.200.0.0/23
type: Root