Cloud Intelligence™Cloud Intelligence™

Cloud Intelligence™

Google Cloud Partner InterconnectとEquinix Network Edgeを自動化する

By Marius PalimariuJun 23, 20224 min read

このページはEnglishDeutschEspañolFrançaisItalianoPortuguêsでもご覧いただけます。

Partner InterconnectとEquinix Network Edgeを使って、Google CloudのVirtual Private Cloud(VPC)ネットワークとEquinix Metalサーバー間にプライベート接続を敷設し、PoC環境を構築する手順を解説します。

google-cloud-interconnect

Google Cloud Interconnectのテスト環境を手早く構築する

本チュートリアルでは、Partner InterconnectEquinix Network Edgeを使い、Google CloudのVirtual Private Cloud(VPC)ネットワークとEquinix Metalサーバー間にプライベート接続を敷設して、PoCまたはテスト環境を構築する方法を解説します。

ここではEquinix Network Edgeを使ってGoogle CloudとEquinix Bare Metalサーバー間にプライベートなハイブリッド接続を構築しますが、同じ手順でAWSとGCP間(さらにはEquinix Fabric上のあらゆるクラウドプロバイダー間)の専用接続も確立できます。

アーキテクチャ

本チュートリアルで構築するアーキテクチャは下図のとおりです。

gcp-cloud-interconnect

前提条件

  • Equinix Fabricアカウント
    • 45日間のトライアルアカウントは、こちらのガイドに沿って作成できます。
    • ConnectionおよびNetwork Edgeデバイスを作成する権限
    • https://developer.equinix.com/でClient IDとClient Secret keyを発行
  • Equinix Metalアカウント
    • Equinix Metal API用のユーザーレベルAPIキー
  • GCPアカウント
    • プロジェクトを新規作成する権限、または既存プロジェクトを選択できる権限
    • 請求の有効化
    • API(Compute Engine API、Cloud Deployment Manager API)の有効化

TL;DR

このチュートリアルを終えると、GCP上の仮想マシン(GCEインスタンス)からEquinixのベアメタルサーバー(BMaaSプラットフォーム)に対し、プライベートアドレスで通信できるようになります。

  1. Terraformを実行し、Equinix Network Edge仮想デバイスの作成とGCP Interconnectのセットアップを行います。
  2. Terraformを実行し、Equinix Bare MetalサーバーとVLANを作成します。
  3. Equinix MetalとEquinix Fabric NE間のL2接続用に、Shared Port Connectionをリクエストして設定します。
  4. Cisco CSR NEに接続し、レイヤ2およびBGPを設定します。
  5. 最後に、接続が確立されているか、双方向でpingが通るかを確認します。

ステップごとの手順

ステップ1: Equinix Network Edge仮想デバイスとGCP Interconnectをセットアップする

I. チュートリアル用プロジェクトをクローンします。

mkdir -p $HOME/Workspace/demo-gcp-interconnect; cd $HOME/Workspace/demo-gcp-interconnect
git clone https://github.com/palimarium/terraform-equinix-gcp-interconnect.git

II. テキストエディタで必要なパラメータを設定します。デフォルト値が設定されていない項目だけ指定すれば十分で、それ以外はそのままで構いません。

cd terraform-equinix-gcp-interconnect
vim terraform.tfvars

III. terraform-runner用のGCPサービスアカウントを作成します。

./tf-service-acccount-chain-setup.sh

IV. Terraformを適用します。

google-interconnect

ステップ2: Equinix Metalをセットアップする

I. Terraformを適用します。

gcp-partner-interconnect

ステップ3: Equinix MetalとEquinix Fabric NE間にShared Port Connectionをセットアップする

共有ポートのセットアップは、次の2つの作業に分かれます。

I. Equinix Metalコンソールでリクエストを完了する

Equinix Metalポータルで接続をリクエストするには、IPs & NetworksタブからConnectionsページを開きます。

cloud-interconnect

II. Equinix Fabric側で接続をセットアップする

Equinix Metalの共有ポートへの接続はEquinix Fabric経由となるため、Equinix Fabricポータルにログインし、ドキュメントの手順に沿って進めてください。

Metal VLANを共有ポートに接続する

Equinix MetalとEquinix Fabric間のL2接続が整ったら、こちらの手順に沿って、ステップ2)でTerraformが作成したMetal VLANにPrimary Portを接続します。

ステップ4: Equinix MetalとEquinix Fabric間のレイヤ2およびBGPを設定する

I. Terraformで生成したSSHユーザー名とパスワードを使い、PuttyからCisco CSR NEに接続します。

gcp-dedicated-interconnect

II. このステップでは、Network EdgeとEquinix Metal間で基本的なレイヤ2接続を設定します。MetalサーバーのIPアドレス172.16.0.100が割り当てられたサブインターフェースは、すでにTerraformで作成済みです。あとはこちらの手順に沿って_Network Edge Configuration_を進めるだけです。

III. このステップでは、Cisco CSR NEデバイス上でBGPを設定し、172.16.0.0/24ネットワークをアドバタイズします。

gcp-dedicated-interconnect

ステップ5: 接続を確認し、双方向でpingが通るかを検証する

dedicated-interconnect

チュートリアルのコード

本チュートリアルのTerraformコードと詳しい手順は、以下のリポジトリで公開しています。

https://github.com/palimarium/terraform-equinix-gcp-interconnect

おわりに

チュートリアルお疲れさまでした。Terraformによる自動化と、いくつかの手動ステップを組み合わせることで、GCPプロジェクトとEquinix Bare Metalサーバー間のプライベート接続が動作する状態になりました。