はじめに
「BlueXPのGUIにより、TokyoとOsakaにCVOを作成」の記事ではAmazon Cloud上にNetApp Cloud Volulmes ONTAP(CVO)の作成手順をご紹介しました。この記事ではGoogle Cloud上にNetApp Cloud Volumes Service(CVS)を作って見たいと思います。
そもそも、BlueXP、NetApp Cloud Volulmes ONTAP(CVO)とNetApp Cloud Volumes Service(CVS)とは?疑問をお持ちの方は、こちらのKeyword、またこちらのドキュメント Cloud Volumes ONTAP documentation、Cloud Volumes Service for Google Cloud documentation、NetApp Cloud Volumes Service for AWS documentationから詳細を確認できます。せっかくなら、最近話題になっているOpenAIのChatGPTに聞いて見ましょう。(OpenAIのアカウントを持っていない方はこちらのOpenAIのアカウント作成を参考して簡単に作れます。)
- BlueXP
SaaSモデルとして、ハイブリッド・マルチクラウドのストレージやデータサービスを統合コントロールできるサービスです。
- NetApp Cloud Volulmes ONTAP(CVO)
ONTAPストレージオペレーティングシステムを使用したクラウド上のストレージサービスです。これにより、クラウド上にあるデータを管理し、保護し、最適化することができます。
- NetApp Cloud Volumes Service(CVS)とNetApp Cloud Volumes Service for Google Cloud
高いパフォーマンス、スケーラビリティ、可用性を提供し、オンプレミスとクラウド間でのデータの移行や、ハイブリッドクラウド環境の構築も可能です。
他にもテストとして、BlueXP ConnectorをGoogle Cloud Tokyoリージョンに作成するTerraform templateサンプルやCVSの作成方法など聞くと、色々教えてくれて面白いです。Templateはある程度のサンプルなので、細かい設定は要確認です。
では、今回はBlueXPのGUIからNetApp Cloud Volumes Service(CVS)をGoogle Cloud上にデプロイして見たいと思います。
手順
1.BlueXP Connectorを作成
2.Cloud Volumes Service(CVS)を作成
3.CVSにVolumeを追加・確認
Google Cloud Architectureを利用して作成した構成イメージ:
1.BlueXP Connectorを作成
こちらの記事「Google Cloud Platform上にNetApp BlueXP Connectorを作成」を参照して、簡単にBlueXP Connectorを作成することができます。BlueXPのGUIにActive
と表示されることを確認します。
2.Cloud Volumes Service(CVS)を作成
こちらのWorkflow for managing cloud volumesの流れを参照して、Google ConsoleからEnable billing and APIs-> Subscribe CVS-> BlueXPのGUIからCVSを追加
の順番で行きます。
- Enable billing and APIs
Enabling billing and APIsの手順に従い、projectを確認してコマンドを実行します。
gcloud --project=Your_project service list |grep service
で必要なAPI Serivceがenabled
になってるかを確認できます。
- Subscribe CVS
こちらのNetApp TV:Cloud Volumes Service Demoも参照して、Google Cloud上のCVSサービスをSubscribe
します。
Tips:pin
を押すと、次回PINDED
の所から見つけやすいです。
- BlueXP GUIからCVSを追加
次は、Cloud Volumes Service Credentials
を作ります。
上記のrequired permission
をクリックして、「Set up a service account」を参照して、Google ConsoleからCVSのService Accountを作ります。
Service Account Credentials
のKey(JSON)を保存して、同じprojectであることを確認します。
Credentialsをそのまま全てコピーして、BlueXPの方にApply
します。問題がなければ、作成したprojectが選べるようになります。
Continue
を押して、BlueXPにWorking Environmentとして追加されました。
ここまでは、Cloud Volumes Service(CVS)を作成できました。次はVolumesを追加して確認します。
3.CVSにVolumeを追加・確認
上記の作成したCVSにVolulmeを追加する方法は幾つかがあります。事前にRegion
とVPC Network
などの情報を確認してBlueXPのGUIから簡単に追加できます。
Region
に関しては、Tokyo
とOsaka
に作成できるService Type
が異なっています。こちらのGlobal Regions Mapsにより、現在TokyoはCVS-Performance
、OsakaはCVS
となっています。それぞれの違いはこちらのService Typeから詳細を確認できます。
今回はGoogle Consoleから先程PIN
したCloud Volumes
をクリックして、CREATE
します。
-
Create Volume
CVS-performance
in Tokyo
Projectを間違いない様に、CVS-Performance
とasia-northest1
(Tokyo)を選びます。この場合はRegion
の所にasia-northest2
(Osaka)が出てこないです。
デモのため、Service Level
はStandard
にします。Volume Path
は自動生成のままでも手動入力でも大丈夫です。
Networkに関しては、default
また自作のVPCどちらでも初めての場合は、network peering
を設定する必要があります。
提示のメッセージをクリックして、Commands to set up VPC peering
のコマンドを同じprojectであることを確認し、そのままコピーして実行します。
問題なくVPC peering
が出来上がると、エラーメッセージがなくなり、SAVE
してcreating
になります。
暫く待つと、BlueXPのGUIとGoogle Consoleから作成したVolumeがAvailableになります。
-
Volumeをmount
BlueXPのGUIからMount the volume
をクリックして、手順を参照できます。
こちらのドキュメントにより、Google Consoleから、VolumeのMount Instructions
をクリックして手順を参照できます。
BlueXPのConnectorにSSHで入って、ガイドのコマンドをコピーしてmountします。mountができたら、テストデータを書き込んで、BlueXPのGUIからデータが増えたのを確認できました。
注意事項&ChatGPTを使ってDebug
先頭にも書かれているように、ChatGPTにNetApp Volumes ONTAPやNetApp Cloud Volumes Serviceなどを尋ねると答えてくれました。せっかくなので、mountの時エラーになった場合は再びChatGPTに投げてみたら、色々考えられる原因を教えてくれて、Debugとして助かりました。
1.Connection timed out
ChatGPTが答えてくれた通りに、Connection timed out
の場合は、まずNetworkの設定を確認します。Client(今回はBlueXP connection)側とServer(CVS)両方のVPC firewallをちゃんとチェックします。
VPC nectworks ->FIREWALLS
の方を行って、port
、Ingress
とEgress
などを確認して、ADD FIREWALL RULE
で追加・編集できます。今回はテストの為、Apply to all
に設定します。
2. Server denied
またChatGPTに聞いて見たら、考えられる原因を箇条書きでいくつかリストしてくれました。その中でヒントを考えて、今回確かに自分はVolumeのExport policy
に引っ掛かりました。
VolumeのExport policy
を確認して、SSHで入るclient(この記事はBlueXPのConnector)のIPやaccess権限があるかをチェックします。ない場合はEdit
ですぐに追加できます。
3. allow-ingress-from-iap
BlueXPのConnectorからSSHでログインする時、下記のようなメッセージが出る場合は、こちらのガイドを参照して解決できます。
ConnectorのVPC ->Firewall ->Create a firewall rule
をガイドに従って追加します。
最後に
BlueXPのGUIからGoogle Cloud上にNetApp Cloud Volumes Service(CVS)を作ってみました。途中で問題になった時、ChatGPTを使って簡単にDebugができました。今回はTokyo(asia-northest1)
にCVS-Performance
typeのVolumeを作成したが、Osaka(asia-northeast2)
にCVS
typeのVolumeを作成する手順がちょっと異なるので、次回また検証してご紹介したいと思います。
参考リンク
1.NetApp Cloud Volumes Service for Google Cloud documentation
2.Google Cloud Platform:Creating a custom role
3.Google Cloud Platform:Creating a service account
4.BlueXP: Learn about Connectors
5.Google Cloud region
6.Global Regions Maps: Cloud Volumes Service for Google Cloud
7.Size your system in GCP
8.NetApp TV:Cloud Volumes Service Demo
9.Google Cloud Platform上にNetApp BlueXP Connectorを作成
10.NetApp Cloud Volumes Service for Google Cloud doc: private services access
11.NetApp Cloud Volumes Service for Google Cloud: Workflow for managing cloud volumes
12Creating and managing NFS volumes
13.Mounting NFS exports to Compute Engine instances
14.Using IAP for TCP forwarding
15.Cloud Volumes Service for Google Cloud: Mount cloud volumes