Amazon Web Services ブログ

SAPファイル転送ワークロードのためのAWS Transfer for SFTP – 第1回

この記事は、AWSでパートナーソリューションアーキテクトを務めるKenney Antoney Rajanによるものです。
SAPのようなエンタープライズリソースプランニング (ERP)ソフトウェアを使用する多くの組織は、セキュアファイル転送プロトコル (SFTP)サーバーを稼働および保守して、ビジネス上の重要なデータをSAPから外部のパートナーシステムに安全に転送しています。この一連のブログ記事では、SAP Process Integration (SAP PI)とSAP Process Orchestration (SAP PO)、およびSAP Cloud Platform Integrationと AWS Transfer for SFTP (AWS SFTP)を統合するための手順を紹介します。また、AWS SFTPが Amazon Simple Storage Service (Amazon S3)に格納するデータを後処理分析に使用する方法も紹介します。

ユースケース

SFTPサーバーがSAPファイル転送ワークロードに役立つSAPシナリオは数多くあります。例えば、

  • 運輸業: 企業は、受注データを含むファイルを格納するための中間層としてSFTPサーバーを使用できます。外部の運送会社はSFTPサーバー経由の注文情報を処理して運送をスケジュールします。
  • 小売業: 企業は、データを処理するためのデータレイクソリューションのために、SAPからSFTPの送信先に在庫データを送信することができます。データレイクソリューションは、SAPや社内の販売アプリケーションから送信された生データファイルをポーリングして処理し、品目タイプ別の売れ行きが好調な商品などの洞察を得ます。

AWS SFTPを使用する利点

業界を問わず、多くの国の法律や法令では、すべての企業が個人情報を安全に保つことが義務付けられています。SAPとの統合にSFTPサーバーを必要とする組織は、AWS SFTPを使用することで、データをAmazon S3に保存しながら、SAP ERPと外部のパートナーシステム間でデータを共有できるようになります。

AWS SFTPは、SFTPエンドポイントの背後にあるインフラストラクチャを管理します。これには、SAPと外部のパートナーシステムとの間でビジネスに不可欠な情報を処理するための、SFTPニーズに対する自動的なスケーリングおよび高可用性が含まれます。AWS SFTPサーバーを作成する方法については、AW​​Sのドキュメント「SFTPサーバーの作成」を参照してください。

アーキテクチャ概要

SAP PI / POを使用してSAP環境をAWS SFTPと統合できます。SAP PI / POは、システム間の接続を容易にする統合ブローカーとして機能します。次の図は、SAP PI / POシステムがAWS SFTPと統合し、後処理機能を実行する方法のハイレベルアーキテクチャを示しています。

認証の選択肢

AWS SFTPとの接続を確立するには、SAP PI / POの認証オプションを使用します。

  • SAPの鍵ベース認証: AWS SFTPサーバーの作成プロセスの一環で生成されたSecure Shell (SSH) 秘密鍵をPublic Key Cryptography Standards (PKCS) 12タイプのキーストアに変換します。これを行うのは、SAP PI / POの通信チャネルをAWS SFTPと統合するためです。
  • SAP PI / POのパスワードベース認証: AWS Secrets Managerを使用して、ユーザー名とパスワードに基づく認証を有効にします。これを行うのは、SAP PI / POの通信チャネルをAWS SFTPと統合するためです。

SAPの鍵ベース認証

次の図に示すように、Open SSLを使用してローカルのSSH鍵ペア用ディレクトリにX.509およびP12証明書を作成できます。パスワードを入力し、SAPのキーストアの設定用に書き留めます。生成された鍵はバイナリ形式になります。

SAP NetWeaver Administratorのキーストア設定

  1. SAP NetWeaver Administratorにログインし、キーストレージメニューから名前と説明を入力して、新しいキーストレージビューを作成します。

  1. [ インポートエントリー ]を選択し、続いてOpen SSLのステップの前半で作成した.p12ファイルをインポートするためにドロップダウンメニューから[ PKCS#12 鍵ペア ]を選択します。

  1. ファイルを復号化してインポートを完了するには、以前に入力したのと同じパスワードを使用して、[ インポート ]を選択します。

  1. SAP PI / POシステムとAWS SFTPサーバーを統合するためのフィンガープリントをメモして、SAP PI / POの統合ディレクトリの設定を完了します。

SAP PI / POのSFTP通信チャネルとAWS SFTPエンドポイントの統合

次に、SAP PI / POで鍵ベースの認証方法を設定して、SAP ERP Central Component (SAP ECC)からAWS SFTP宛先に対してファイルワークロードを転送します。

SAP PI / POとの統合をテストするために、MATMAS 品目マスターのIntermediate Document (IDoc)をSAPシステムからAWS SFTP宛先に転送してみましょう。

このブログ記事では、SAP PI / POのシステムランドスケープディレクトリでソフトウェアとビジネスコンポーネントを設定し、SAP PI / POのエンタープライズサービスリポジトリ機能のメッセージ、サービス、操作マッピングを使用してMATMAS IDoc構造をインポートし、生​​のIDoc構造 (XML)をカンマ区切り値 (CSV)形式にマッピングすることを前提としています。

さらに、SAP PI / POの統合ディレクトリ機能で送信側と受信側の通信チャネルおよび統合設定を構成する必要があります。

SAP PI / POの統合ディレクトリの設定で、SFTPアダプタータイプを選択し、SAP NetWeaver Administratorのキーストア設定中に作成されたAWS SFTPエンドポイントとフィンガープリントを更新します。以下のように、SAP PI / POの通信チャネルの画面で認証方法とファイルパラメータキーの値を更新します。

  • 認証方式: プライベート鍵
  • ユーザー名: AWS SFTPのセットアッププロセスの一部として作成したSFTPサーバーのユーザー名です。
  • プライベート鍵ビュー: 前にSAP NetWeaver Administratorのキーストア設定で作成したキービューです。
  • プライベート鍵エントリー: 前にSAP NetWeaver Administratorのキーストア設定で作成した鍵のエントリータイプです。
  • ファイル名: SAPからAWS SFTPサーバーに転送されるファイル名または命名規則です。
  • ファイルパス: AWS SFTPのセットアッププロセスの一部として作成したAmazon S3バケットのパスです。このファイルパスは、転送されたファイルが保存されるAWS SFTP S3の宛先になります。

SAP PI / POのパスワードベース認証

  1. AWS Secrets Managerを使用してAWS SFTPサーバーのパスワード認証を有効にするためには、ブログ記事「Enable password authentication for AWS Transfer for SFTP using AWS Secrets Manager」を参照してください。AWS Secrets Managerでのユーザー名とパスワードを書き留めて、SAP PI / POの統合ディレクトリの認証設定に入力します。

  1. パスワード認証の一部として作成した新しいAWS SFTPエンドポイントとフィンガープリントを使用して、SAP PI / POの統合ディレクトリ設定を更新します。次のように、認証方法とファイルパラメータキーの値を更新します。
  • 認証方式: パスワード
  • ユーザー名: 前のステップのパスワード認証の箇所で作成したユーザー名です。
  • パスワード: 前のステップのパスワード認証の箇所で作成したパスワードです。
  • ファイル名: SAPからAWS SFTPサーバーに転送されるファイル名または命名規則です。
  • ファイルパス: パスワード認証の箇所で作成したAmazon S3バケットのパスです。このファイルパスは、転送されたファイルが保存されるSFTP宛先になります。

  1. 統合をテストするには、SAP ECCのトランザクションコードBD10を使用してMATMAS IDocをトリガーし、SAP PO / PIの統合を通じて品目マスターのXMLファイルをAWS SFTP S3ディレクトリに送信します。

これで、ファイルはSAP PI / POの通信チャネルで設定されたAWS SFTP S3ディレクトリのファイルパスに正常に格納されました。

AWSサーバーレスの選択肢を使用した後処理分析

AWSサーバレスオプションには以下が含まれます。

  • Amazon S3のデータを使用したサーバーレス分析の構築
  • テーブルの作成やデータの検索

Amazon S3のデータを使用したサーバーレス分析の構築

データをAmazon S3に保存することで、分析、機械学習、アーカイブなどの後処理ニーズにAWSのサーバーレスサービスを使用できます。また、ファイルコンテンツをAmazon S3に保存することで、クラウドまたはオンプレミスでサーバーや実行環境を管理および運用する必要なしに後処理分析を実行するようにAWSのサーバーレスアーキテクチャを構成できます。

SAPの品目データに関するレポートを作成するために、AWS GlueAmazon AthenaAmazon QuickSightが使用できます。AWS Glueは、フルマネージド型のデータカタログおよび抽出、変換、ロード (ETL)のためのサービスです。最適なパフォーマンスを得るためにAWS Glue データカタログのデータを分割して圧縮した後は、AWS Glueによって処理されたデータに対してAmazon Athenaのアドホッククエリ分析を使用できます。その後、フルマネージド型のビジュアライゼーションツールであるAmazon QuickSightを使用してデータを可視化し、円グラフを使用して品目データを表示することができます。

以下の手順については、ブログ記事「AWS GlueとAmazon S3を使用してデータレイクの基礎を構築する」を参照してください。

  • AWS Glueを使用してデータカタログを作成する。
  • Amazon Athenaを使用してAWS Glue データカタログにアドホッククエリ分析を実行する。
  • Amazon QuickSightを使用してビジュアライゼーションを作成する。

テーブルの作成やデータの検索

AWS Glue クローラを使用して、Amazon S3に保存されている品目ファイルでテーブルを作成します。AWS Glue クローラは、S3バケットで利用可能な生データをスキャンして、データカタログを含むデータテーブルを作成します。AWS Glue ETLジョブを使用して、SAP MATMAS CSVファイルをAmazon Athenaでデータを照会するのに最適なParquet形式に変換できます。

次の図は、Amazon S3に格納されているSAP MATMASファイルからparquetsappparquetという名前の品目テーブルがどのように作成されたかを示しています。Parquet形式でジョブを作成する詳細な手順については、ブログ記事「AWS GlueとAmazon S3を使用してデータレイクの基礎を構築する」を参照してください。

AWS Glueを使用してデータ変換を完了したら、AWSマネジメントコンソールからAmazon Athenaサービスを選択し、Athenaのクエリエディタを使用して前の手順で作成したSAP品目テーブルに対してSQLクエリを実行します。

Amazon QuickSightは、データを分析するために使用できるデータビジュアライゼーションサービスです。Amazon QuickSightを使用して新しくAmazon Athenaをデータソースとして作成し、品目データの可視化を構成します。次の例では、Amazon QuickSightのビジュアライゼーションを使用して品目タイプ別の品目数を確認できます。詳細な手順については、Amazon QuickSightのユーザーガイドを参照してください。

終わりに

この連載の第1回では、SAP PI / POシステムとAWS SFTPを統合する方法、後処理分析にAWSの分析ソリューションを使用する方法について紹介しました。AWS SFTP、AWS Secrets Manager、AWS Glue、Amazon Athena、Amazon QuickSightなどのAWSサービスを主に使用しています。第2回では、ファイルベースのワークロードにおけるSAP Cloud PlatformとAWS SFTPの統合について紹介する予定です。

翻訳はPartner SA 河原が担当しました。原文はこちらです。