0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

IBM Cloud: VCFaaS(VCF as a Service) 及び利用ネットワーク設定

Posted at

はじめに

IBM Cloudは、VMwareソリューションの充実がひとつの特徴です。マネージドサービスを提供する範囲やサービス提供の基盤の種類により、以下の3種類のサービスが存在しております。

  • VCF for Classic
  • VCF for VPC
  • VCF as a Service

本日は、VMware環境のフルマネージドサービスであるVCF as a Serviceの環境作成のポイントと関連するネットワーク環境の設定についてご紹介します。

VCF as a Service概要

VCF as a Service(以降、VCFaaS)では、お客様はVCD(VMware Cloud Director)を通してVDC(Virtual Data Center)単位でVMware環境を管理、ご利用頂けるサービスとなります。VCFaaS Multi-tenantタイプは、vCPU/RAMを指定してVDC単位での購入、VCFaaS Single-tenantはご利用されるVDCが稼働するIBMにて管理するマネージド領域のホスト単位で購入できるサービスとなります。

image.png

本稿で利用する環境

  • VCFaaS:IBM Cloud VMwareマネージメントサービス
  • Client VPN for VPC:ご利用者のClient環境からインターネット経由でセキュアに接続するVPNサービス
  • Transit Gateway:IBM Cloud ルーティングサービス
    なお、ご利用者の環境からVCFaaSサービスを利用する場合、今回説明するClient for VPN以外にキャリア回線を利用するDirect LinkサービスやIPSec暗号化を利用するVPN for VPCサービスも存在するが、今回の説明では省略します。
    image.png

VCFaaSサービス環境作成

以下のページより、VCFaaSサービスのタイプを選択します。
今回は、上述の「VCF as a Service概要」でご紹介したMulti-tenantタイプにて作成します。
以下のページよりご注文ください。
https://cloud.ibm.com/vmware/vmware_as_a_service/provision/vdc_mt
image.png
選択の途中で、ネットワークエッジを選択する項目があります。今回は、ネットワークエッジ付きで作成します。
image.png

エッジタイプとしては、共有タイプと占有タイプが存在します。検証等の目的であれば低価格の共有タイプでのご利用をお勧めします。本番利用等の場合は他のお客様のご利用に影響を受けない、ご希望のスループットに準じた占有タイプの選択をお勧めします。

作成すると各VCD(VMware Cloud Director)サイト毎に、VCD(Virtual Data Center)が作成されます。
image.png

ここから、VMware Cloud Director Consoleに接続し、VDCの中の各ネットワーク作成、VMの作成、ネットワークエッジのNAT及びFW設定を実施していきます。以下にチュートリアルがありますので、適宜作成される構成の読み替えて作成をお願いします。(本チュートリアルは、Single-tenant前提で記載されてますが、VDC作成以降はMulti-tenantと同様な操作となりますのでご参考ください)
VMware Cloud Foundation as a ServiceでVMware Cloud Director コンソールを使用して仮想データ センターを構成

「本稿で利用する環境」に添付した構成図の如く、今回インターネットとの接続は想定しておりません。代わりにClient VPN for VPCで接続されたVPCやVPN Client Poolのアドレスを利用したクライアントとVDCの通信を実現します。これらはプライベートネットワークとなりますので、NATによるアドレス変換を実施しません。
ステップ 4: NATルールを作成し、VMがインターネットにアクセスできるようにする
上記リンク部分に記載のNATルール作成において、ドキュメント記述通りで無く、以下のVMware Cloud Directorのネットワークエッジ設定画面の如く、No-SNAT/No-DNATのNATアクションを選択します。(192.168.100.0/24は、VDC内のネットワークアドレスです)
image.png

最終的にステップ 6: ウェブ・コンソールを使ってVMに接続するにて、VMにログインしネットワークエッジのプライベート側インタフェースに対してPing等で通信できることが確認できればこのチュートリアル参照は終了です。

Client for VPC環境作成

こちらの記事を参考にClient VPN for VPC環境を構築し、お手元の端末にインストールしたOpenVPNクライアントソフトからVPN接続を実施します。
事前に作成したサーバ証明書や鍵ファイルは、Secrets Managerにて登録管理し、VPN Serverと連携します。
同じく作成したクライアント証明書と鍵ファイルは、VPNクライアント端末に保存して証明書ログイン認証に利用します。

2つのサービス間のTransit Gateway接続

VCFaaS〜Transit Gateway間接続

まず、VCFaaSとTransit Gatewayを接続します。以下のステップで接続します。
image.png
こちらから接続する対向のTransit Gatewayを作成します。

1. 仮想データセンター側から接続グループを作成

作成したTransit Gateway(以降、TGW)向けの接続グループを作成します。
こちらのDocページの手順を参考に「相互接続」タブの「新規グループの追加」を行い、TGWの指定を行い追加します。サービスとしての VCF に接続する手順
完了すると以下の画面のような状態が表示されます。
image.png

2. アンバインドされたGREトンネルをTransit Gatewayに接続

6つの保留中の各GREトンネルをTGWに接続します。

CLI または Cloudコンソールを使用して、トンネルを TGWに接続を行うことができます。しかし、コンソール上からの操作は、煩雑になりますので、IBM Cloud Shell を使用して、 TGWへの接続を作成することをお勧めします。

TGWのIBM Cloud CLIプラグインをインストールされていない場合、以下を参考にインストールを実施します。
Transit Gateway CLI

TGW用CLIプラグインインストール
ibmcloud plugin install tg

TGW接続に利用するIBM Cloud Shellコマンドは、非常にわかりづらいですが、以下のアイコン押下で表示されますので、コピー&ペーストして実行してください。
image.png

image.png

コマンド実行結果
Creating GRE tunnel connection for gateway 3ec2abb0-b5ec-4576-be7a-5316d5f2b5ac under account cs-japan-001 as user Masaharu.Esaki@ibm.com...
OK
                       
Name                   mmc-3ec-vdc-9f-jp-tok-3-3b
Connection ID          219ec75d-0e7a-4f76-9196-6083dfd97fb5
Status                 pending
Request Status         pending
Network Account ID     f7ae49cc04f348edb34ac01af90ee00e
Network Type           unbound_gre_tunnel
Zone                   jp-tok-3
MTU                    9000
Local Gateway IP       198.19.92.14
Local Tunnel IP        198.18.120.117
Local Bgp Asn          4201065556
Remote Gateway IP      10.192.6.25
Remote Tunnel IP       198.18.120.118
Remote Bgp Asn         4261086201
Base Connection Type   classicibmcloud plugin install tg

暫く時間がかかりますが、「状況」として、「アタッチ済み」になれば完了です。
image.png

3. 接続が完了(経路作成完了)

TGW経路ページで、各GREトンネル向けのルートがテーブルに載っていれば完了です。

VPN Client for VPC〜Transit Gateway間接続

VPN Client for VPC上のVPNサーバの「VPNサーバ経路」で、VPN Clientと通信させる対象のネットワークルート情報をクライアント側へ提供します。なお、この際、「アクション」として、「配信」「変換」が選択可能です。今回はアドレスプールから割り当てられてクライアントアドレスでそのまま通信させたいので、「配信」を選択します。(「変換」を選択すると、VPNサーバのアドレスにSNATされた通信となります)
image.png
次に、こちらからVPN Client for VPCで利用されているVPCをTGWに接続追加します。
UIで接続を追加する
VPCのルーティングテーブル情報を確認します。
image.png
VPNサーバから学習したVPN Client Poolのアドレスを学習しております。
image.png
現状のままでは、TGW及びVCFaaSにVPN Client Poolのネットワークアドレスが広告されていないので、Ingress ルートを作成してルート情報を伝搬させます。
作成に際しては、「トラフィック・ソース」として「Transit Gateway」を選択し、「アドバタイズ」を「オン』でルート情報を追加します。
image.png
image.png
最終的にTGWのルート情報として、GREトンネル経由のVCFaaSのネットワーク、VPCネットワーク、VPN Clientのプールアドレスがルーティングテーブル上に載っていればIPのリーチャビリティが可能となります。
image.png

なお、本状態でも、VPN ClientとVCFaaS間の通信が不可能な場合は、VCFaaSのネットワークエッジのFW設定等のルールが適切に設定できているかご確認をお願いします。

まとめ

マネージドサービスであるVCFaaSサービスは、簡単にVMware環境を構築する事が可能です。また、VCFaaS環境を利用する際は、開発者/運用者がインターネット経由でVPN接続する機会も多いと思います。VCFaaSとネットワークを含めたモデル構成を作成する手順をご紹介させて頂きました。
この環境において、VCFaaSのネットワークエンジにおけるNAT(No-SNAT/No-DNAT)設定やVCFaaS環境とTGW間の接続方法は少し癖がありますので、ご注意頂ければと思います。

参考サイト

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?