Microsoft Bingを試して、Google Cloud Platform上にNetApp Cloud SyncのData brokerを作ってみた

以前、下記の記事でAmazon Cloud向けにCloud Syncを使用して、NetApp Cloud Volumes ONTAP（CVO）とAmazon FSx for NetApp ONTAP（FSxN）間でデータを同期する方法と、Data Brokerの作成方法を紹介しました。

* [「Amazon Cloud上でWindowsファイルサーバーのデータをNetApp Cloud Volumes ONTAPに同期してみた」](https://qiita.com/heyanxia/items/bbad38b3d41c195d3df2)
* [「Amazon Cloud上でWindowsファイルサーバーのデータをAmazon FSx for NetApp ONTAPに同期してみた」](https://qiita.com/heyanxia/items/9c62781fdc045a93b3b5)
* [「Amazon Cloud上にNetApp Cloud SyncのData Brokerを作成する二つの方法」](https://qiita.com/heyanxia/items/c19d476bf4df60802e8f)
* 
今回は、Google Cloud Platform上でData Brokerを作成する方法について紹介します。そもそも、Cloud Syncとは何でしょうか？以前の記事[「Microsoft Bing と ChatGPT を試して、NetApp Cloud Volumes ONTAPの Terraform テンプレートサンプルを作成」](https://qiita.com/heyanxia/items/f27f1a3fdec8f5d66541)でも紹介しましたが、最近話題になっているBingに聞いてみましょう。

まずは、「NetApp Cloud Syncとは何ですか？」から始めます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2991583/15bcb8df-4946-da3a-732a-ca55b0cb5cfc.png)
続きに、表示された質問「NetApp Cloud Syncの利点は何ですか？」をクリックしてみます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2991583/f94d5823-af4b-16ad-462d-96545e43f672.png)
また、「他のクラウドサービスと比較してどうですか？」を押します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2991583/c79173ee-2b80-90df-f2c1-771f05bcec17.png)
そもそもCloud SyncのData brokerはなぜ必要かも教えてくれます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2991583/c95f13b3-e622-7230-861d-53ad9f4e5fd8.png)
「NetApp Cloud Sync Data BrokerをGoogle Cloud Platformに作成する」をクリックすると、表情を添えて回答を表示してくれましたね。とても面白かったです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2991583/a9e6600c-62c1-1adb-e8de-f54b261d5d47.png)
では、Bingの回答と共に、こちらのガイド[「Creating a new data broker in Google Cloud」](https://docs.netapp.com/us-en/cloud-manager-sync/task-installing-gcp.html#supported-google-cloud-regions)を参照して作成します。
# 手順
1.Google Consoleにより、Cloud SyncのData brokerに必要なIAM roleなどを準備
2.BlueXPのGUIにより、Data brokerを作成・動作確認

# 1.Google Consoleにより、必要な`IAM role`と`Service Account`を準備
* 必要なIAM role
Data brokerを作成するのに必要なIAM roleをCloud SHELLからCLIで作成します。
こちらの[ガイド](https://docs.netapp.com/us-en/cloud-manager-sync/task-installing-gcp.html#permissions-required-to-deploy-the-data-broker-in-google-cloud)を参照して、`YAML`をコピーします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2807172/80808ba6-0ff4-5b6b-b85a-6949e5745c0a.png)
YAMLはそのままではなく、下記の図のように「title」や「includedPermissions」などの情報を先頭に追加し、コマンドを確認してから実行します。
`$ gcloud iam roles create NetAppCloudSyncDatabrokerUserRole --project=mybluexpconnector1 --file=NetAppCloudSyncDatabrokerUserRoler.yaml`
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2807172/39976dd5-3b93-3e60-587b-af0c7f59bc03.png)
Google Consoleから`IAM & Admin ->Roles`にいって、上記の作成を確認します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2807172/87cca7c9-bd09-c9c7-aa69-94379b6ee73b.png)
* Cloud Syncを利用するService account
同じガイドの`Permissions required for the service account`のYAMLをコピーします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2807172/66950fa3-a80a-4582-adac-07f0d0db58fe.png)
同じように`title`、`includedPermissions`などを追加します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2807172/daac2fdd-6969-d3cd-42d6-37b26fca5e19.png)
`service account role`をコマンド `$ gcloud iam roles create NetAppCloudSyncDatabrokerServiceRole --project=mybluexpconnector1 --file=NetAppCloudSyncDatabrokerServiceAccountPermission.yaml`で、`service account`をコマンド`$ gcloud iam service-accounts create cloud-sync-service-account --description="NetApp Cloud Sync Service Account" --display-name="NetApp Cloud Sync Service Account"`で作成します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2807172/5b1a8810-ad65-8e6d-67ef-5c16813d8672.png)
作成した`servcie role`と`service account`を`binding`します。
`# gcloud projects add-iam-policy-binding mybluexpconnector1 --member="serviceAccount:cloud-sync-service-account@mybluexpconnector1.iam.gserviceaccount.com" --role="projects/mybluexpconnector1/roles/NetAppCloudSyncDatabrokerServiceRole"`
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2807172/8e4d26ec-4893-bf53-6d04-f63722954427.png)
上記の`service role`とその`permissions`を確認します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2807172/9ae1a040-96f1-9e77-8f85-85b8b8b34823.png)
上記の作成した`service account`を確認します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2807172/7d85957e-7ff3-3f5e-468b-d045b949137e.png)
ここまでは準備が完了です。

# 2.BlueXPのGUIにより、Data brokerを作成・動作確認
* Data brokerを作成
BlueXPのGUIから`Mobility ->Copy & sync ->Manage Data Brokers`にアクセスして、`Manage Data Brokers`のタブをクリックし、`Add New Data Broker`を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2807172/5711e13b-1c19-1e97-6722-a9bcf67bb605.png)
Google Cloud Platformのアカウントを選択します。もしアカウントが表示されない場合は、右上の四角をクリックして`allow`を許可すると選択できるようになります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2807172/4eba3b5c-06e7-da7e-cec2-4208c7156001.png)
ガイドに従って先程作成した`servcie accouont`が表示されるようになるので、それを選択します。また、`Public IP`を`Enable`にします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2807172/dee47504-2628-d0b1-2cd3-ad125287e698.png)
`Proxy`は今回使わないので、そのままで`Continue`を押します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2807172/09fb22f5-ea2f-c5bf-cbe5-51551ba86c0a.png)

* 動作確認 
しばらく待つと、Google Cloud ConsoleとBlueXPのGUIに`Active`になっていることを確認できます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2807172/d99400fc-7123-d30c-541f-ee48b532cff4.png)
BlueXPのGUIから、上記のData brokerを選び、Azure Blob StroageとGoogle Cloud Stroageの間に`Sync Relationship`を作成します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2807172/9ee7d8db-c845-2d0f-fb92-89b9503a06b1.png)
Azure blob storageにあるデータをGoogle Cloud Storageに転送できました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2807172/6e60caf1-b9ef-d6fe-d8a2-15a9bc2dc263.png)

# 最後に
Microsoft Bingを試しながら、Google Cloud Platform上にNetApp Cloud SyncのData brokerを作成してみました。次回は、このData brokerを使用してデータを転送するための詳細な手順を紹介したいと思います。

# 参考リンク
1.[Amazon Cloud上でWindowsファイルサーバーのデータをNetApp Cloud Volumes ONTAPに同期してみた](https://qiita.com/heyanxia/items/bbad38b3d41c195d3df2)
2.[Amazon Cloud上でWindowsファイルサーバーのデータをAmazon FSx for NetApp ONTAPに同期してみた](https://qiita.com/heyanxia/items/9c62781fdc045a93b3b5)
3.[Amazon Cloud上にNetApp Cloud SyncのData Brokerを作成する二つの方法](https://qiita.com/heyanxia/items/c19d476bf4df60802e8f)
4.[Creating a new data broker in Google Cloud](https://docs.netapp.com/us-en/cloud-manager-sync/task-installing-gcp.html)
5.[Google Cloud Platform上にNetApp BlueXP Connectorを作成](https://qiita.com/heyanxia/items/2d98f4e58507ae223b65)
6.[Terraformを使って、NetApp BlueXP ConnectorをGoogle Cloud Platformに作成](https://qiita.com/heyanxia/items/6f5420beaf28b72ef108)
7.[BlueXPを使って、Google Cloud上にNetApp Cloud Volumes ONTAPを作成](https://qiita.com/heyanxia/items/c7870b3bee82ca41283f)
8.[Terraformを使って、一括でGoogle Cloud上にNetApp BlueXP ConnectorとCloud Volumes ONTAPを作成](https://qiita.com/heyanxia/items/374a9c86a8df6dc89ddb)