BeeX Technical BlogAWS Launch Wizard for SAPを実行してみた

こんにちは、清野です。

今回は今年4月にリリースされたAWS Launch Wizard for SAPを検証した結果について書きます。
なお、本記事の内容は2020年7月現在の仕様に基づきます。

AWS Launch Wizard for SAPとは?

はじめにAWS Launch Wizardですが、AWS環境にサードパーティアプリケーションをデプロイするサービスです。
ウィザード形式の入力画面に従って、諸々のパラメータ(VPC環境、EC2等のタイプ、ノード数、可用性構成有無、アプリケーションパラメータ等)を入力し実行すると、アプリケーションをAWS環境にデプロイします。

このサービス自体は2019年にリリースされていましたが、その時点では対象アプリケーションはMicrosoft SQL Server のみでした。今年4月にSAPが加わり対象アプリケーションは2つとなりました。
・ Microsoft SQL Server Always On
・ SAP

これまでSAPをAWS環境にデプロイする方法の一つとしてAWS QuickStart(CloudFormationテンプレート)が提供されていましたが、AWS Launch Wizard for SAPはウィザード形式の入力画面で操作がし易くなっています。
実際のデプロイはAWS Launch Wizardに入力した値に従って、AWSレイヤーのリソースはCloudFormation、OSより上のレイヤーはSystems Manager(一部、ユーザーデータ)を使用しデプロイします。

AWS Launch Wizard for SAPがサポートするデプロイ構成

本記事作成時点、AWS Launch Wizard for SAPは下記のSAPアプリケーションとデプロイ構成をサポートしています。
・ SAP HANA
- シングルノード構成(スケールアップ、最大メモリ24TBまで)
- マルチノード構成(スケールアウト)
- マルチAZの高可用性構成

・ SAP Netweaver on HANA
- 単一インスタンス構成
- 分散インスタンス構成
- マルチAZの高可用性構成構成

本記事で記載する “SAP Netweaver on HANA” のデプロイ構成を下記に図示します。
・ 単一インスタンス構成

・ 分散インスタンス構成

・ マルチAZの高可用性構成

構成に応じて設定内容は異なりますが、下記リソースをデプロイおよび設定します。
・ EC2、インスタンスプロファイル(IAMロール)、EBS
・ (共有ファイルシステムとして利用する)EFS
・ セキュリティグループ
・ SAPが推奨するOS設定、ファイルシステム
・ SAP管理OSユーザー
・ SAP data providerのインストール
・ HANAソフトウェアのインストール(インストールを選択した場合。高可用性構成の場合は、Pacemaker、HSRの設定も含む)

1つ注意は、”SAP Netweaver on HANA” と銘打ってますがNetWeaverの自動インストールはできません。デプロイされた環境に別途マニュアルでNetWeaverをインストールする必要があります。

やってみた

それでは実際にAWS Launch Wizardを利用してSAP NetWeaver on HANA環境をデプロイする手順を見てみましょう。詳細手順は下記ユーザーガイドを参照ください。
https://docs.aws.amazon.com/launchwizard/latest/userguide/launch-wizard-sap-deploying.html

事前準備

AWS Launch Wizard実行前に下記を準備をします。
・ VPCおよび2つのAZに最低1つのサブネットを用意
・ サブネットはNAT等を経由してインターネットにアクセスが可能なようルーティングされていること
・ 作業するIAMユーザーにIAMポリシー”AmazonLaunchWizardFullaccess”以上の権限が付与されていること
・ HANAデータベースをインストールする場合は、あらかじめS3バケットにHANAソフトウェアを配置(S3バケット名には 「launchwizard」を含む必要があります。 ex) s3://launchwizard-example/SAPHANA)
・ AWSマーケットプレイスから利用するOSサブスクリプションを登録しておく(AWS Launch Wizard for SAPがサポートするOSバージョンは下記を参照ください。)
https://docs.aws.amazon.com/launchwizard/latest/userguide/launch-wizard-sap-ascs-support-os.html

ステップ1

AWS管理コンソールからLaunch Wizardを選択し起動します。

Launch Wizardコンソールから「Create deploymnet」ボタンをクリックします。

オプションから「SAP」を選択し「Next」ボタンをクリックします。

ステップ2

このステップでは、SAPをデプロイするVPC、サブネット等のインフラパラメータを指定します。このステップで入力したパラメータは、再利用可能なように後ほど設定を保存することが可能です。
デプロイの名前、説明を入力します。

新しく設定パラメータを入力するか、保存済みの設定パラメータを適用するか選択します。また、今回デプロイする環境が本番、非本番どちらか選択します。これは後で選択するEC2インスタンスタイプに影響します。

EC2のキーペア、EC2をデプロイするVPC、アベイラビリティゾーン(AZ)、サブネットを選択します。AZを2つ選択し、各AZに最低1つのプライベートサブネットを選択します。オプションで各AZに追加のプライベートサブネットを選択できます。これはAPサーバー用とDBサーバー用にサブネットを分けている場合に意味があります。サブネット1はAPサーバー用、サブネット2はDBサーバー用に利用することができます。

APサーバー/DBサーバー用セキュリティグループ、プロキシ設定(プロキシサーバー、プロキシ除外リスト)、タイムゾーン、EBS暗号化有無、ドメイン名設定、OSのSAP管理グループIDを指定し、「Next」ボタンをクリックします。

上記で入力したインフラパラメータを保存する場合は、「Yes」を選択し「OK」ボタンをクリックします。

ステップ3

このステップでは「Netweaver stack on HANA database」または「HANA database」のいずれか、デプロイするSAPアプリケーションタイプを選択します。今回は「Netweaver stack on HANA database」を選択します。

SAPアプリケーションのSAPSID、OSのSAP管理ユーザーID、EBSボリュームタイプを指定します。移送ディレクトリ(/usr/sap/trans)は、「新規EFSに作成するか」、「既存EFSを利用し共有するか」、「スタンドアローンで共有しない」の3つから選択します。

HANAデータベースのHANASID、インスタンス番号、Data用/Log用のEBSボリュームタイプ(gp2 or io1)を指定します。
HANAデータベースのインストールを選択した場合、HANAメディアを配置したS3バケット、HANA管理パスワードを指定します。(S3バケット名に「launchwizard」を含む必要がある点、ご注意ください。)「Next」ボタンをクリックします。

ステップ4

このステップではEC2のデプロイモデルを「単一インスタンス構成」、「分散インスタンス構成」、「高可用性構成」から選択します。今回は「高可用性構成」を選択します。

(マルチAZの)高可用性構成では、ASCS、ERS、PAS、HANA Primary、HANA Secondaryを別々のEC2にインストールする構成になります。AASはオプションで追加可能です。

APサーバーの設定例としてASCSの入力項目をご紹介します。その他APサーバー(ERS、PAS、AAS)も入力項目はほぼ同じです。(PAS、AASはインスタンス番号を入力する欄がない。)

EC2を起動するAMIのOSを指定します。またはユーザーがカスタマイズを加えたAMIを指定することも可能です。ホスト名、SAPインスタンス番号を入力します。

要件より選択したvCPU/Memoryとステップ2で選択したデプロイ環境(本番 or 非本番)に応じて、推奨インスタンスタイプが選択されます。従来通りSAPがサポートするインスタンスタイプのリストから選択することも可能です。

SAPS値を指定して推奨インスタンスタイプを選択することも可能です。

次にDBサーバー(HANA)の入力項目です。
AMI、インスタンスタイプの選択はAPサーバーと同様ですが、ステップ2でDBサーバー用サブネットを選択していた場合はAPサーバー用サブネットと異なるサブネットにデプロイするよう指定するため「Deploy database in different subnet」をチェックします。

高可用性構成の場合、HANA Primary/Secondaryのホスト名、HSRサイト名、障害時にルーティングを切り替えるオーバーレイIPアドレス、HAソフトウェアPacemakerが利用するタグ名を指定します。

EC2インスタンスのパラメータ指定が終わったら「Next」ボタンをクリックします。

Review画面で設定を確認したら、「Deploy」ボタンをクリックするとデプロイが開始されます。

デプロイの進捗はLaunch Wizardコンソールから確認可能です。

AWS QuickStartとの比較

従来のAWS QuickStartとの違いを比較してみます。比較対象は既存VPCにS/4HANA をデプロイする下記AWS QuickStartです。
https://aws.amazon.com/jp/quickstart/architecture/sap-s4-hana/

AWS Launch Wizard for SAPは上でご紹介したようにパラメータ入力がウィザード形式で表示されるので、CloudFormationよりもユーザーにとって分かりやすように思います。
半面、極力デプロイの仕組みを意識させないといった配慮からか、実際にデプロイを実行しているCloudFormationのテンプレートを指定することができず、テンプレートのカスタマイズができないため、AWS Launch Wizard for SAPがサポートするデプロイ構成に要件がマッチしないと利用が難しいとも思いました。

また、AWS Launch Wizard for SAPはSAPアプリケーションの自動インストールに対応していませんが、それについてはまとめで考察します。

まとめ

AWS環境でのSAPのデプロイ自動化サービスとして、AWS Launch Wizard for SAPを検証しました。
当初、AWS Launch Wizard for SAPを検証してみてNetWeaverを自動インストールできない仕様に、あれ?これはどういうことかと感じましたが、NetWeaverの各バージョン、S/4HANAへの対応等を考えると、デプロイ範囲に関して十分検討された結果ではと考えました。

クラウド最適化において自動化は重要なポイントですが、全ての作業を自動化するのは費用対効果等を考慮するとなかなか難しい面があります。ベースラインのデプロイは自動化しプラスアルファは別途といったアプローチも必要、と感じた検証でした。

本記事がご参考になれば幸いです。

カテゴリ

タグ

BeeX Technical Blogについてのお問い合わせ

BeeX Technical Blogのエントリにご質問が御座いましたらお気軽にお問合せください。

お電話でのお問い合わせ

☎ 03-6260-6240

受付時間 平日9:30〜18:00

フォームでのお問い合わせ

お問い合わせフォーム