はじめに
昨年の9月に「SAP HANA Cloudが"multi-environment"化する」というアナウンスがありました。これにともない、HANA Cloudの初期設定の方法が変わっていたので記事にします。
"Multi-environment"化するとはどういうことか?
もともとHANA CloudのインスタンスはCloud Foundryのみで作成可能でした。Kyma runtimeから利用したい場合も、事前にCloud Foundryでインスタンスを作っておく必要がありました。multi-environment化とは、Cloud Foundryだけでなく複数の環境(Kyma runtime)からも使えるようになるということを意味します。
その結果、従来はCloud Founeryのスペースの中で行っていた作業がBTPのサブアカウントで行えるようになりました。このために用意されたサービスが"SAP HANA Cloud tools"です。
従来のスペースレベルのツールも使用することはできますが、新機能はSAP HANA Cloud toolsの方だけに追加されるため、SAP HANA Cloud toolsを使うことが推奨されています。
初期設定
新しくBTPのトライアルアカウントを作成したあと、HANA Cloudを使えるようになるまでに行った作業について記載します。
- サービスインスタンスの作成
- SAP HANA Cloud toolsのサブスクライブ
- IPアドレスの許可
1. サービスインスタンスの作成
従来はサブアカウント>スペースの以下の画面からサービスインスタンスを作成していましたが、今回、初期状態では"Create"ボタンが無効化されていたため、コマンドを使用してインスタンスを登録しました。
以下のコマンドでサービスインスタンスを作成します。systempassword
にはDBADMINユーザのパスワードを指定します。
cf create-service hana-cloud-trial hana hanatrial -c "{ \"data\": {\"memory\": 30, \"systempassword\": \"password\"}}"
※BTPコックピットから作成しようとしたところ、"edition"という項目が必須といわれましたが、何を入力してもバリデーションでエラーになってしまうため断念しました。
2. SAP HANA Cloud toolsのサブスクライブ
BTPコックピットから、Servie: SAP HANA Cloud、Plan: toolsを選択してサブスクライブします。
"Subscriptions"のタブからサービスにアクセスできます。
アクセスした先は従来のHANA Cloud Centralと似ていますが、別の画面です。
3. Kyma runtimeから使用できるようにするには
HANA CloudのインスタンスをKyma runtimeから使用できるようにするには、Kyma runtimeのクラスター(+ネームスペース)とインスタンスマッピングを行う必要があります。
設定方法は以下のブログをご参照ください。
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"ではないのか?と疑問に思いましたが、設定変更後はデプロイできたため良しとしました。