この記事では、Google Cloud Platform (GCP)にホストされたサイト用のCato仮想ソケット(vSocket)をデプロイするためにTerraformを使用する方法を説明します。
概要
GCPにホストされているサイトの場合、GCP仮想マシン(VM)でvSocketをデプロイし、Catoの安全で最適化されたネットワークの利点をGCP環境に拡張することができます。 これにより、GCPの高性能なグローバルネットワークインフラストラクチャ、高速なデータ転送、および低遅延接続の利点を享受しながら、Cato Cloudに接続できます。 この記事では、n2-standard-4インスタンスにGCP vSocketをデプロイするためのTerraformの使用方法を説明します。
GCP vSocketsでBGPがサポートされています。
GCP vSocketをデプロイする際には、各vSocketインターフェース(MGMT、WAN、LAN)に個別のVirtual Private Cloud (VPC)を割り当てる必要があります。 次の図は、GCP vSocketをデプロイするための例のトポロジを示しています。

事前準備
以下のIAMロールと権限を持つGCPアカウントが必要です。これにより、GCPリソースの作成および管理が可能になります:
Compute 管理者
Compute ネットワークユーザー
Compute ストレージ管理者
ログ管理者
ログ閲覧者
ネットワーク管理管理者
サービスアカウントユーザー
サービス使用状況管理者
ストレージ管理者
環境がCato Socket Connection Prerequisitesにリストされている要件を満たしていることを確認してください
vSocketインターフェースに割り当てるために、GCP環境に3つのVPCを設定します
Terraformがシステムにインストールされ、設定されています
利便性のために、vSocketを設定するためのGCP vSocket Terraformモジュールを作成しました。 Cato Terraform Registryからモジュールをダウンロードする
サポートされるインスタンスタイプ
n2-standard-4、最大2Gbpsのスループットを含む
既知の制限事項
サイトごとにサポートされるのは単一のGCP vSocketのみです
Terraformを使用したGCP vSocketのデプロイ
Terraformフォルダーで必要なパラメーターを定義し、Terraformコマンドを実行してサイトを作成し、GCPにvSocketをデプロイします。
各vSocketインターフェース(MGMT、WAN、LAN)には、別々のVirtual Private Cloud (VPC)を割り当てる必要があります。
GCP vSocketをデプロイするには:
Terraformフォルダーで、モジュールと次のパラメーターを使用して設定を定義します:
token: Cato APIキー、Cato管理アプリケーションで取得できます。 詳細については、Generating API Keys for the Cato APIを参照してください。 ベストプラクティスとして、これを環境変数として設定することをお勧めします。
account_id: お客様のCatoアカウント番号。 詳細については、Viewing the Account Infoを参照してください。
project: vSocketがデプロイされるGCPプロジェクトID
region: vSocketがデプロイされるGCPリージョン(例:us-central1)
zone: 冗長性のためのリージョン内のGCPゾーン(例:us-central1-a)
mgmt_compute_network_id: 管理インターフェースのVPCのID
wan_compute_network_id: WANインターフェースのVPCのID
lan_compute_network_id: LANインターフェースのVPCのID
mgmt_static_ip_address: 管理インタフェースの公開IPアドレスの名前(オプション)
wan_static_ip_address: WANインタフェースの公開IPアドレスの名前(オプション)
vm_name: vSocketの仮想マシンインスタンスの名前
mgmt_network_ip: 管理インタフェースのローカルIPアドレス
wan_network_ip: WANインタフェースのローカルIPアドレス
lan_network_ip: LANインタフェースのローカルIPアドレス
public_ip_mgmt: 管理インターフェースに公開IPアドレスを割り当てないようにfalseに設定します(オプション)。
create_firewall_rule: ファイアウォールルールの作成をスキップするにはfalseに設定
firewall_rule_name: ファイアウォールルールの名前 (create_firewall_ruleがtrueに設定されている場合のみ使用されます)
allowed_ports: ファイアウォールルールでvSocketへのアクセスを許可するポートのカンマ区切りリスト (create_firewall_ruleがtrueに設定されている場合のみ使用されます)
management_source_ranges: ファイアウォールルールでvSocketへのアクセスを許可するIPソース範囲(create_firewall_ruleがtrueに設定されている場合のみ使用されます)
native_network_range: CMAで定義されたLANインタフェースのネイティブ範囲(IP範囲)
lan_subnet_id: ソケットのLANインタフェースがあるサブネットのID
mgmt_subnet_id: ソケットのMGMTインタフェースがあるサブネットのID
wan_subnet_id: ソケットのWANインタフェースがあるサブネットのID
site_name: CMAに表示されるサイトの名前
site_description: CMAのサイトの説明
site_location: (都市、国コード、州コード、タイムゾーン) CMAに表示されているサイトの場所。 このフィールドは重要です
tags: GCPのvSocketインスタンスに追加するタグ
labels: GCPのvSocketインスタンスに追加するラベル
Terraformで次のコマンドを実行します:
terraform initを実行してTerraform構成を初期化します。
terraform planを実行して、作成されるリソースを確認するための実行プランを生成します。
terraform applyを実行して設定を適用し、vSocketをデプロイします。
サイトが作成され、vSocketがデプロイされます。 CMAでサイトとSocketの詳細を表示できます。

vSocketがアカウントに接続されていることを確認してください。 接続プロセスが完了するまでに数分かかる場合があります。