【12冠達成記念】SAP on AWS(PAS-C01) 認定試験合格レポート 

現時点で公開されている試験対策のリソースとともに、自分の体験をレポートします。

# 認定試験のポイント
- 何はともあれSAP知識が必要(SAPの用語や仕組みがわからないと戦えない)
    - SAPそのものの知識は問われない。設計、実装、移行、運用が試験の範囲。
- "on AWS"なのでAWSの知識ももちろん必要
    - AWSの知識だけで回答可能な問題も若干出題。
- SAP以外(SAPに関連する)他社ベンダーOracle/SUSE/RHELの知識も必要。
- 学習リソース乏しいのでSAPガイドやブログを理解できるまで読みまくる。
- 基本オンプレからのマイグレ構成(みんな大好きEC2)
- SAPワークロードそのものの実装(デプロイ)やAWSマイグレーションパターンをしっかりと把握。
    - 異種、同種の移行パターンで何を対象に、どうコピーするのか、エージェントが必要なのかどうかなど
    - anyDB(Oracle/DB2/SQLServer)からHANAやエンディアンが異なるOS(AIX)などの移行
- 契約がないとSAPノートが読めないので結構困る。

# 学習リソース

1. SCSKさんのブログ
https://blog.usize-tech.com/aws-sap-on-aws-speciality-study1/
受験対策その1からその7が非常に役に立つ

1. NRIさんのブログ
https://tech.nri-net.com/entry/aws_certified_sap_on_aws_specialty
圧巻のリンク集

1. AWSのブログ
https://aws.amazon.com/jp/blogs/news/category/sap/
https://aws.amazon.com/jp/blogs/awsforsap/

1. SAPのブログ
https://blogs.sap.com/2022/12/16/get-aws-certified-sap-on-aws-specialty-pas-c01/
https://blogs.sap.com/2022/04/07/preparing-for-sap-on-aws-specialty-pas-c01/

1. AWS Skill Builder
https://explore.skillbuilder.aws/
(注意)APNのアカウントでログインすること。コンテンツが異なります。

1. Qiitaも徐々に記事が増えてきたので適宜検索

1. Udemyに登場
- https://www.udemy.com/course/practice-exam98-coverage-aws-pas-c01-exam-sap-on-aws/
- https://www.udemy.com/course/aws-certified-sap-on-aws-specialty/

## (補足) Skill Builder
- APNのアカウントでログイン
    - APNとそうでないのではコンテンツ数が異なる
- 日本語コンテンツは少ないので諦める
    - PDFでダウンロード可能なコンテンツもあるので注意
- おすすめトレーニング
    - AWS Partner: SAP on AWS (Technical) (Japanese/日本語)
    - AWS Partner: SAP on AWS (Business) (Japanese/日本語)
    - AWS Certified: SAP on AWS - Specialty Official Practice Question Set (PAS-C01 - Japanese)
    - AWS PartnerCast - SAP on AWS Specialty Certification Journey - Session 1～9
★５のやつがおすすめです。
- 順次コンテンツが整備されている模様。

# 基本アーキテクチャー

アーキテクチャーパターンは以下の３通り。RPO/RTO要件によってチョイスする。
### セントラル構成・分散構成(Single-AZ)
- セントラル構成 → ひとつのEC2インスタンスにSAPを構成
- 分散構成 → 複数のEC2インスタンスでSAPを構成(ASCS/AAS/HANAをそれぞれ別EC2インスタンス)

### 高可用性構成(Multi-AZ)
- ASCS/HANAをマルチAZに分散して構成、障害発生時にFO
- HANA レプリケーション、CLUSTERPROなどのクラスタリングソフトを活用

### DR構成(Multi-Region)
- パッシブDR(RPO/RTO数時間、低コスト) → AMI起動、S3からリストア、ログ適用
- パイロットライトDR(RPO/RTO数分、中コスト) → AMI起動
- ウォームスタンバイDR(RPO/RTO数秒、高コスト) → APサーバの起動

# 監視
- CloudWatch詳細モニタリングをオン
- AWS Data Provider for SAPをインストール
→ OSのパフォーマンス情報を収集するエージェント(SAPのサポートを受ける前提条件)
    - AWS固有情報(インスタンタイプ、インスタンスID)
    - 主要なシステム構成(プロセッサ、メインメモリ、ディスクの数など)
    - CPU、メモリ、ディスク、NWリソースなど
    
:::note info
チェックポイント
- Data ProviderがCloudWatchやEC2にアクセスできないときは？
→ IAMロールが関連付けられているか？ もしくは、ロールのポリシーを確認
   - EC2:DescribeInstances
   - Cloudwatch:GetMetricStatictics
- すべての診断に失敗するときは？
→ IGWやVPNを確認する。
:::

# バックアップ
### AWS Backint Agent for SAP HANA
HANAワークロード用のバックアップ・復元ツール、S3にHANAデータベースをバックアップ
- インストール
    - SSMコンソールからデプロイ、もしくはBackint Agentのインストーラを実行する。
    - SSMでインストールするには、IAM:AmazonSSMManagedInstanceCore

- S3アクセスのためのポリシー
~~~
s3:GetBucketPolicyStatus
s3:GetBucketLocation
s3:ListBucket
s3:GetBucketAcl
s3:GetBucketPolicy
s3:PutObjectTaging
s3:PutObject
s3:GetObject
s3:DeleteObject
~~~

- バックアップ/リストアが遅いときの確認ポイント
~~~
aws-backing-agent-config.yaml
- UploadChannelSize
- MaximumConcurrentFileForRestore
- Upload Concurrency
ディスクIOPS
Global.ini(HANA)
- Parallel_data_backup_backing_channels
~~~

- HANA以外のバックアップ
    - Oracle
        - Oracle Secure Backup、EBSスナップショット
    - ASE
        - S3、EBSスナップショット

    - SQLServer
        - VSS(VSSコンポーネントのインストール要)

# フロントエンド
### SAP Fiori
SAPアプリケーションのユーザーインターフェースコンポーネント
- CloudFront(HTTP)
    - エンドユーザにより近いところから配信するための仕組み、バックエンドの作業負荷軽減
    - CloudFrontのキャッシュを活用
- Global Accelerator(TCP)
    - 常にGlobal Networkを経由してリージョンにあるオリジンにアクセスする、エンドユーザのパフォーマンス向上
    - キャッシュは行わない

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/117386/f831a818-c713-173e-e40c-72f09a31c688.png)

# ネットワーク
### オーバレイIP
SAPアプリケーションのクラスタソリューション実現のためのネットワーク構成で利用
SPOFとなるASCS とデータベースをそれぞれクラスタリングするユースケースでクライアントからのアクセスポイントとしてOIPを利用する。
- OIPはVPCの範囲外のCIDR
- オンプレからのアクセスにはTransitGWor NLB経由の2パターン

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/117386/2f4b2d17-c8c3-f822-c87f-bfbf44f5b564.png)

:::note info
チェックポイント
SLES HA構成などでRouteTableを変更するケースでは、以下のポリシーをアタッチ
- ec2:ReplaceRoute
- ec2:DescribeRouteTables
:::


# 移行

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/117386/23cdf291-2860-5c89-9f73-17855d9c1013.png)

:::note info
チェックポイント
- OSやDBが同じであればAWSのツールを利用できるが、異なる場合はSAPツールを利用。
- データ転送は、DX、VPN、EBS/EFS/FSx、S3 Transfer Acceleration、DataSync、Snowballなどを利用する。
- Oracle on AIX → OLE on Oracle：Oracle XTTSを使う(従来方式よりダウンタイムが短縮)。
:::

# その他の頻出ワード
- SAP HANA
    - 高速起動(HANA Fast Restart)オプション
        - basepath_persistent_memory_volumes：tmpfs ファイルシステムの場所
        - persistent_memory_global_allocation_limitホスト上の持続的メモリーの最大サイズを制限
        - Table_default:OFF(永続メモリの使用量を手動で制御)
    - プリロードオプション
    - ログオペレーションモード
        - logreplay：ログのみ転送、FO短時間、データ転送量が少ない、要求メモリ量が多い
        - delta_datashipping：差分データとログ転送、FO時間長い、データ転送量が多い、少ないメモリ量

- SAPハードウェアキー
    - カーネルやハードウェアが更新されると、ハードウェアキーが更新されてSAPのインストールライセンスが無効

- SAP HANA Data Tiering(データ階層化)データのアクセス頻度、更新・パフォーマンス要件などの特性により分離するデータ管理戦略どのティアでどこでどんな(サイズの)データを扱うのかを理解しておく
    - ホット：頻繁に更新し、時間内に利用可能となる必要があるデータ
    - ウォーム：あまり読み取られないデータであるが、更新可能であるデータ→ダイナミックティアリング
    - コールド：アクセス頻度が低く、更新を必要としないデータ
	
- SAPシステムのピークメモリ測定
    - SAP EarlyWatch Alert：ピークメモリや CPU 使用率など、SAP アプリケーションの使用率情報
    - HANA Studio
    - SQLステートメント

- プレイスメントグループ
    - クラスタプレイスメントグループ：AZ内で論理グルーピング、インスタンス間の通信パフォーマンス向上
    - パーティションプレイスメントグループ：ラックを共有しない、ハードウェア障害に影響を受けない
    - スプレッドプレイスメントグループ：異なるHWにデプロイ、シングルAZのときに有効

- EC2 ハイメモリインスタンスタイプ
    - Dedicated Host上で動作するベアメタルインスタンス
    - 自動復旧はサポートされていない

- Storage Gateway
    - S3ファイルゲートウェイ：NFSやSMBでS3に直接ファイル共有が可能
    - FSxファイルゲートウェイ、テープゲートウェイ、ボリュームゲートウェイ

- Amazon Data Lifecycle Manager
    - EBSのスナップショット生成、保存、削除の自動化

- AWS Launch Wizard for SAP 
    - AWS QuickStartに次ぐウィザード形式のデプロイツール、新規構築や移行を迅速に実行可能
    - 単一インスタンス、HA構成など様々な構成をサポート

- AWS Control Tower
    - マルチアカウント環境のセットアップとコントロール
    - コンプライアンスポリシーに準拠するために活用

- IMDS(Instance Meta Data Service)
    - セキュリティ強化のためにIMDSv2を利用する

# おまけ(SAPノート)
おすすめSAPノートです。SIDがないと見れませんので、みたい人は社内のBASISな人に相談してみてください。
- Note.1656099 - SAP Applications on AWS: Supported DB/OS and AWS EC2 products
- Note.1656250 - SAP on AWS: Support prerequisites
- Note.1697114 - Determination of hardware ID In Amazon clouds
- Note.2591601 - SAP on AWS: Adaption of your SAP License
- Note.2358420 - Oracle Database Support for Amazon Web Services EC2
- Note.2139358 - Effect of changes in licensing terms of SQL Server
- Note.2871484 - SAP supported variants of Red Hat Enterprise Linux
- Note.2058870 - SAP Business One, version for SAP HANA on public Infrastructure-as-a-Service (IaaS) platforms
- Note.3015613 - Oracle Database support for BI Platform on AWS
- Note.2886659 - Amazon Database Migration Service is not supported by SAP and Oracle
- Note.2198693 - Key Monitoring Metrics for SAP on Amazon Web Services (AWS)

# まとめ
- 他の認定と比較すると情報量が圧倒的に少ないのと、実機での検証がしづらいので認定資格としての難易度は高め。それゆえ英語の技術情報をいかに読み込むのがポイント。
- 試験の狙いとしては、いかにオンプレのSAPシステムをAWSへリフト&シフトするかにフォーカスをしていると感じたので、問題に寄り添っていってみてください。

12冠目指す方、SAP BasisでこれからバリバリAWSを活用される方の資格取得に役立てれば幸いです。