Multi-environment化後のHANA Cloudの初期設定

## はじめに
昨年の9月に「SAP HANA Cloudが"multi-environment"化する」というアナウンスがありました。これにともない、HANA Cloudの初期設定の方法が変わっていたので記事にします。

https://blogs.sap.com/2022/09/21/sap-hana-cloud-goes-multi-environment-part-1-feature-overview/

## "Multi-environment"化するとはどういうことか？
もともとHANA CloudのインスタンスはCloud Foundryのみで作成可能でした。Kyma runtimeから利用したい場合も、事前にCloud Foundryでインスタンスを作っておく必要がありました。multi-environment化とは、Cloud Foundryだけでなく複数の環境（Kyma runtime）からも使えるようになるということを意味します。
その結果、従来はCloud Founeryのスペースの中で行っていた作業がBTPのサブアカウントで行えるようになりました。このために用意されたサービスが"SAP HANA Cloud tools"です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/276021/faf31713-762f-c596-de10-c4ae8595694a.png)
従来のスペースレベルのツールも使用することはできますが、新機能はSAP HANA Cloud toolsの方だけに追加されるため、SAP HANA Cloud toolsを使うことが推奨されています。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/276021/2d4ceafb-f804-a83b-c843-bce16be535bd.png)

## 初期設定
新しくBTPのトライアルアカウントを作成したあと、HANA Cloudを使えるようになるまでに行った作業について記載します。

1. サービスインスタンスの作成
1. SAP HANA Cloud toolsのサブスクライブ
1. IPアドレスの許可

### 1. サービスインスタンスの作成
従来はサブアカウント>スペースの以下の画面からサービスインスタンスを作成していましたが、今回、初期状態では"Create"ボタンが無効化されていたため、[コマンド](https://help.sap.com/docs/HANA_CLOUD/9ae9104a46f74a6583ce5182e7fb20cb/921f3e46247947779d69b8c85c9b9985.html)を使用してインスタンスを登録しました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/276021/af253942-8664-b808-5e9b-973d05e31942.png)

以下のコマンドでサービスインスタンスを作成します。`systempassword`にはDBADMINユーザのパスワードを指定します。
```
cf create-service hana-cloud-trial hana hanatrial -c "{ \"data\": {\"memory\": 30, \"systempassword\": \"password\"}}"
```
※BTPコックピットから作成しようとしたところ、"edition"という項目が必須といわれましたが、何を入力してもバリデーションでエラーになってしまうため断念しました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/276021/415ec4a4-33e9-7d73-20c7-f50c0e0e76d3.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/276021/674ebfbd-b12b-e367-0e31-32cdd13974f6.png)

### 2. SAP HANA Cloud toolsのサブスクライブ
BTPコックピットから、Servie: **SAP HANA Cloud**、Plan: **tools**を選択してサブスクライブします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/276021/5b2bcf6e-3fdb-ff61-9f49-1d9e338682ff.png)
"Subscriptions"のタブからサービスにアクセスできます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/276021/faf31713-762f-c596-de10-c4ae8595694a.png)
アクセスした先は従来のHANA Cloud Centralと似ていますが、別の画面です。

SAP HANA Cloud toolsの画面
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/276021/a7d7b6d3-cf7f-0083-07fd-663560fc2e75.png)

（参考）従来のHANA Cloud Centralの画面
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/276021/b742b3c8-1b4b-e6bd-d9d1-d195b343b87d.png)

### 3. Kyma runtimeから使用できるようにするには
HANA CloudのインスタンスをKyma runtimeから使用できるようにするには、Kyma runtimeのクラスター（+ネームスペース）とインスタンスマッピングを行う必要があります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/276021/9ec49b50-7686-e1d1-4033-179366559cb3.png)
設定方法は以下のブログをご参照ください。

https://blogs.sap.com/2022/12/15/consuming-sap-hana-cloud-from-the-kyma-environment/


### 4. IPアドレスの許可
上記でHANA Cloudは使えるようになります。このステップは、SAP Business Application Studio (BAS)で開発したCAPのプロジェクトをデプロイしようとしたときに以下のエラーが出たため追加しました。Multi-environment化とは無関係です。

`Error: Connection failed (RTE:[89013] Socket closed by peer {10.157.60.148:51536 -> 44.196.217.154:443} (10.157.60.148:51536 -> 279c1f1f-45d7-4533-b61e-b7ab0b96f87a.hana.trial-us10.hanacloud.ondemand.com:443)) (STDERR, APP/TASK/deploy)#`

Manage Configuration > Conections より、"Allow all IP addresses"を選択しました。もともとは"Allow only BTP IP addresses"となっていました。BASは"BTP IP address"ではないのか？と疑問に思いましたが、設定変更後はデプロイできたため良しとしました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/276021/0d4f4376-6a9f-3671-67ad-96bfe49c9193.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/276021/bc84c153-1b42-ac11-412e-58ef2d463f5a.png)