はじめに
こんにちは、すぎもんです
今回は、当社の新たなサービス「HULFT Square」のファイル転送サービス(Transfer)を使って、HULFT Squareからのファイル配信をやってみます。
HULFT Squareとは?
HULFT Squareとは、データを「安全・安心・柔軟に」連携するプラットフォームサービス、いわゆるiPaaSです。「ファイル転送のHULFT」×「データ連携のDataSpider」×「フルマネージドサービス」。これらの側面から、オンプレやクラウドなど分散されたデータを一元化し、データ活用することを可能とするサービスです。
記事構成
今回の記事構成は、HULFT Squareで集配信してみた全4回シリーズ になります。環境構成をまず①②で理解して、③④と進んで読んでいただくのがおすすめです。
①HULFT Squareと外部通信する仕組みについて、AWS PrivateLinkなど含めて整理してみた
②HULFT Squareでのファイル集配信におけるAWS環境構築をしてみた
★本記事★ ③HULFT Square配信 ⇔ HULFT集信(EC2上)やってみた
④HULFT Square集信 ⇔ HULFT配信(EC2上)やってみた
今回やること
今回は、HULFT Squareのファイル転送サービスである「Transferサービス
」を使います。HULFT Squareからファイル配信をして、AWS EC2インスタンス上のHULFTで集信してみます。
「集配信」といえど、HULFT SquareはHULFTとは違い、ファイル転送(Transfer)サービスを使ってのファイルを転送します。HULFTとは一味違う、クラウドサービスならではの概念や構成になっていますので、HULFTを知らない方はもちろん、知っている方はその違いを見付けながら、読んでいただけたらと思います。
今回実施する検証環境の相関図は、下記の通りです。
お客様VPC環境のプライベートサブネット上のインスタンスにあるHULFTとファイルのやりとりをします。HULFT Squareでの通信には、AWS PrivateLinkを利用します。
また、環境面での事前準備として、下記3点を確認してください。
①AWS上のお客様環境(VPC)にPrivateLink接続するためのAWS側の設定
・ターゲットグループ ・ネットワークバランサー ・エンドポイントサービス
②HULFT Transferサービス使用のためのライセンスの取得
「Transfer Receiver&Sender」ライセンスが必要。
③HULFT Transferサービス使用のための権限付与
必要な権限が付与されているか確認。
HULFT Squareと接続するための環境設定の詳細は下記①②をご一読ください。
①HULFT Squareと外部通信する仕組みについて整理してみた
②HULFT Squareでのファイル集配信における環境構築をしてみた
設定作業の流れ
HULFT Squareのファイル転送サービス(Transfer
)で、ファイル配信をするために必要な設定は下記の通りです。(※設定順番に気を付けてください。)
<HULFT Squareの設定>
①配信ファイル用のストレージ設定
②HULFT Transferサービス(アウトバウンド)の作成
④VPCエンドポイントの作成
⑥転送設定(詳細ホスト情報の登録)
⑦転送設定(配信管理情報の設定)
⑧HULFT Integrateプロジェクトの作成
<お客様VPC環境の設定>
③エンドポイントサービスの作成
⑤HULFT Squareのエンドポイントの認証
<EC2上HULFTでの設定>
⑨EC2HULFT(集信管理情報)の設定(HULFT設定)
⑩EC2HULFT(詳細ホスト)の設定
①~⑩の設定作業は、それぞれの環境別で必要な作業です。順を追って進めてください。最後に、HULFT Squareからファイル配信を実行し、実行結果の確認をしたら今回のやってみた、は完了とします。
設定値の相関関係
各設定内容の関連図は、下記の通りです。配信側ホスト(HULFT Square)と集信側ホスト(EC2上のHULFT)の転送設定の対応関係になります。詳細ホスト情報やファイルIDなどの一致などの相関関係には注意してください。
上図の通り、ファイル配信する上での値の一致などに注意が必要です。
■HULFT Square内の各設定値の相関図
【スクリプト】作成時に、自身が利用対象とする【配信管理情報】と、
【Transferサービス】を指定します。
また、指定した【配信管理情報】では、【転送ホスト情報】を指定します。
【転送ホスト情報】では、HULFT Squareの外部通信の出口となる【VPCエンドポイント】を指定し、AWS PrivateLinkによる外部通信のための設定をします。
HULFT Squareで作成したVPCエンドポイントには、配信先環境のVPCエンドポイントサービス名を設定し、PrivateLinkによる接続を確立しましょう。
以上の事前準備や作業手順などの確認後、早速HULFT Squareを触ってみましょう!
HULFT Squareにログインしてみる
いよいよ本題で、HULFT Squareの設定になります。まずはログインしてみます。
ログインするとこのような画面が表示されます。左側が各メニューです。
ここから設定箇所を選択して設定を進めていきます。
(注意)検証環境のため、HULFTSquare管理画面のUIが異なる可能性があります。
今回やっている検証は、HULFT Squareでのファイル配信です。
HULFT Squareにて、ホスト情報や配信管理情報の設定をやっていきましょう!
①配信ファイル用のストレージ設定(HULFT Square設定)
配信用のファイルを準備します。
HULFT Square管理画面の左側メニューから「サービス」-「ストレージ」を選択し、新しいディレクトリ「Transfer_TEST/Send
」を作成します。ファイルをHULFT Squareのストレージ上に任意の配信ファイルSEND_FILE.txt
をストレージにアップロードします。
HULFT SquareからEC2上のHULFTに配信するファイルが準備できました。
②HULFT Transferサービス(アウトバウンド)の作成(HULFT Square設定)
次に、HULFT Squareのファイル転送サービスであるTransferサービスを作成します。
HULFT Square管理画面の左側メニューから「サービス」-「HULFT Transfer」より、HULFT Transferサービスを作成します。
名前 : New_HULFT_Transfer_send
転送の方向 : アウトバウンド
ホスト名 : HULFT01
Transferサービス内の「ホスト名」は、集信側HULFTの「詳細ホスト情報」の名前に設定する値と同じにします。
「サービス」-「HULFT Transfer」の中に作成した「New_HULFT_Transfer_send
」が作成されていることを確認します。
これで、ファイル配信するためのサービスが作成できました。
③エンドポイントサービスの作成(AWS設定)
HULFT Squareと転送先となるAWS環境との接続には「AWS PrivateLink」を利用します。
そのため、HULFT Squareからの配信の場合には、転送先AWS環境でのVPCエンドポイントサービスの作成が必要です。対象のVPC環境にエンドポイントサービスを作成しましょう。
AWSマネジメントコンソール画面の [VPC] > [エンドポイントサービス] から、「エンドポイントサービスを作成」を押下します。
エンドポイントサービス名(HULFT SquareTESTEndPoint
)の名前タグをつけて、ロードバランサーのタイプは「ネットワーク」とし、対象のロードバランサーを選択し、エンドポイントの「承諾が必要」にチェックをして、「作成」を押下します。
正常に作成されたことを確認します。
HULFT Squareからの接続を許可するために、作成したエンドポイントサービスを選択し、「プリンシパルを許可」タブより「プリンシパルを許可」をする必要があります。
「プリンシパルを許可」を押下し、「追加するプリンシパル」には、接続元となるHULFT SquareのAWSアカウントID
を設定します。
プリンシパルの追加の表記方法は、
「arn:aws:iam::HULFT SquareのAWSアカウントID:root」です。
以上で、エンドポイントサービスへの接続許可設定ができました。
HULFT SquareからEC2HULFT(AWS)環境のエンドポイントサービスに接続するために、「プリンシパル許可」は必須です。必ず接続元となるHULFT SquareのアカウントIDのプリンシパル許可設定をした後で、HULFT Square側のエンドポイント作成をしてください。
④VPCエンドポイントの作成(HULFT Square設定)
AWS PrivateLink接続をするために、転送先AWS環境にエンドポイントサービスを作成したので、次に、HULFT Square側のエンドポイントを作成します。
HULFT Square管理画面の左側メニューの「設定 > VPCエンドポイント > エンドポイント」より、エンドポイントを作成します。「VPCエンドポイントサービス名」には、「AWS上で作成したVPCエンドポイントサービス名
」を指定します。
これで、HULFT Squareと通信先となるVPC環境をPrivateLinkでつなぐためのエンドポイントの作成が完了しました。
⑤HULFT Squareのエンドポイントの認証(AWS設定)
HULFT Square側でエンドポイントを作成するときに、転送先AWS環境の「エンドポイントサービス名」を設定しました。正しく設定されていると、転送先AWS環境のエンドポイントサービス内にHULFT Squareの接続情報が追加されます。確認してみましょう。
AWSマネジメントコンソールメニューの[VPC] > [エンドポイントサービス] の下部にある「エンドポイント接続」タブに、接続情報が追加されていることが確認できます。
エンドポイント接続に情報が1つ追加されます。「所有者」という項目に記載されたIDが、HULFT Square側のAWSアカウントIDかどうか確認してください。
HULFT SquareのAWSアカウントIDであることを確認して、「アクション▲」-「エンドポイント接続リクエストの承諾」を押下します。
フィールドに「承諾」を入れて「承諾」を押下します。
「状態」が「Available」になることを確認して設定は完了です。
以上で、HULFT Squareの疎通対象となるAWS環境とのAWS PrivateLink接続のための設定が完了です。
⑥転送設定(詳細ホスト情報の登録)(HULFT Square設定)
EC2上のHULFTにファイル配信するための詳細ホスト情報(転送設定)をします。
HULFT Square管理画面の左側メニュー「リソース」-「転送ホスト」から、配信先となるオンプレHULFTのホスト情報を登録します。
名前 : HOST_Transfer_001
ワークスペース : 任意
転送の方向 : アウトバウンド
ホストの種類 : Windows NT系OS
VPCエンドポイント : EndPointTEST
文字コード : ShiftJIS
V7互換 : チェックなし
「次へ」を押下し、転送ホスト(アウトバウンド)が正しく作成されていることを確認します。
HULFT Square側の転送設定は完了です。
⑦転送設定(配信管理情報の設定)(HULFT Square設定)
HULFT Square管理画面の左側メニュー「DATA ENTRY」-「HULFT Transfer」-「配信」から配信管理情報を登録します。
名前 : Send_conf
ワークスペース : 任意
ファイルID : TEST_SEND
転送タイプ : テキスト
配信ファイル : /Transfer_TEST/Send/SEND_FILE.txt
集信ホスト名 : HOST_Transfer_SE001
DEFLATE圧縮 : チェックなし
コード変換 : 配信側
転送間隔 : 0
シフトコードの選択 : チェックあり
暗号キー : 任意
ファイルIDは、「大文字英数字」である必要があります。
検証の通り、半角アンダーバーを使っても可でしたが、大文字英数字推奨な点、ご留意ください。
「次へ」を押下し、配信管理情報が正しく作成されていることを確認します。
⑧HULFT Integrateプロジェクトの作成(HULFT Square設定)
HULFT Squareでは、Transferサービス(集配信)を実行するためにプロジェクトやジョブの作成が必要です。Transferサービスと転送設定や実行ジョブなどの設定を紐づけます。また、プロジェクトの中で「スクリプトの作成」をしていきます。GUIはDataSpiderと似ていまして、必要なアイコンをドラッグ&ドロップで配置して設定します。
まずは、「DATA INTEGRATION」-「HULFT Integrate」-「プロジェクト」から「プロジェクトを作成」します。
名前 : TEST_Transfer_Send_01
スクリプトを作成 : チェックあり
HULFT Integrateのプロジェクトを作成すると、デザイナー起動の画面が表示されます。
「デザイナーを起動」を押下すると、作成したプロジェクト名「TEST_Transfer_Send_01
」というプロジェクトが、左端の「プロジェクトエクスプローラー」に表示されています。スクリプト名は、「Test_Send_01
」に変更します。
次に、画面右側にある「ツールパレット」に「HULFT」-「要求発行」-「配信要求」のアイコンがあります。アイコンをデザイナ上にドラッグ&ドロップして設定画面を開きます。
「必須設定」タブは、下記の通り設定しました。
転送サービス : New_HULFT_Transfer_send
(※HULFT Transferサービス)
配信設定 : Send_Conf
(※HULFT Squareの配信管理情報)
同期転送 : 同期
待ち時間 : 3600(秒)
実行スクリプト設定内で、どのHULFT Transferサービスを使うか、どの配信管理情報を使って配信するか、を指定します。
その他の設定はデフォルトのままで設定を完了します。
最後に、デザイナ上の「start」アイコン、「配信要求」アイコン(hulft_send
)、「end」アイコンをそれぞれドラッグして線でつなぎいで、配信スクリプトの作成が完了です。
「DATA INTEGRATION」> 「HULFT Integrate」にプロジェクトが作成できました。
以上で、プロジェクトと配信要求のためのスクリプトの作成は完了です。
⑨EC2HULFT(集信管理情報)の設定(HULFT設定)
HULFT Squareからの配信ファイルを集信するために、EC2上のHULFTの集信管理情報の設定をします。メニューバー「システム管理」-「集信管理情報」を選択、もしくはスタートページの「集信管理情報」を選択します。
集信管理情報の一覧が表示されます。
「新規作成」を押下し、下記の通り設定します。
ファイルID : TEST_SEND
ファイル名 : C:\HULFT Family\hulft8\data\rcv\rcvdata.txt
登録モード : 置き換え
異常時の処理 : 削除
集信形態 : 単一集信
世代管理 : しない
EBCIDICセット : 自動
※以降も今回は設定しません。
集信管理情報の登録が完了しました。
⑩EC2HULFT(詳細ホスト)の設定(HULFT設定)
集信管理情報の登録と同様に、メニューバー「システム管理」-「詳細ホスト情報」を選択、もしくはスタートページの「詳細ホスト情報」を選択し、「新規作成」を押下して下記の通り設定します。
ホスト名 : HULFT01
ホスト種 : UNIX
(※HULFT SquareはUNIXです。)
転送コードセット : UTF-8
詳細ホスト情報のホスト名はHULFT Square Transferサービスのホスト名を指定
以上で、EC2HULFT側の詳細ホスト情報の登録も完了です。
ファイル配信の実行
HULFT Squareのプロジェクトから、HULFT Square Designerを開き、スクリプトを実行します。
エラーも表示されず、実行に成功しました。
実行結果の確認(HULFT Squareのイベント監視)
HULFT Square側の実行結果の確認をします。
①イベント監視 > アプリケーション
⇒アプリケーション(Transferサービスなど)の実行結果の確認ができます。
ファイルの配信設定で指定した「ファイルID」単位での実行結果が見れます。
アウトバウンド(配信)の「TEST_SEND
」が「✓(正常終了)」しています。
右端の「:」-「詳細」より実行結果の詳細が参照できます。
完了コード「0」で集信できています。もしここがエラーの場合は完了コードから、エラー内容の確認などに役立ててください。(参考:HULFT完了コード)
集信側HULFTの実行結果の確認をします。
②実ファイルの確認
⇒HULFT Squareから配信して、EC2上のHULFTで集信した実ファイルを確認します。
EC2HULFT側の「C:\HULFT Family\hulft8\data\rcv
」に、HULFT集信管理情報で指定した名前のファイル「rcvdata.txt
」が作成されています。
③HULFTの集信履歴の確認
⇒EC2上のHULFTで集信したHULFTの履歴を確認します。
「集信履歴」>「集信状況一覧」から確認すると、①実ファイル確認で確認した時間での正常終了が確認できます。
HULFTの実行履歴は、「検索」で日時やファイルID、ホスト名などを指定できます。複数実行の場合や、複数ホストへの履歴がある場合等でご活用ください。
以上の確認により、HULFT SquareからEC2上のHULFTにファイルが、正しく転送されていることが確認できました。
最後に
皆さん、いかがでしたでしょうか。
今回は、HULFT Squareから配信して、AWS EC2上のHULFTで集信してみました。
HULFT Square集信⇔EC2HULFT配信と比べての違いなども是非みてみてください!
AWS PrivateLinkを使った接続のためAWS側の環境構築等もあり、本記事以外の部分での考慮点もいくつかありましたが、集配信を実践してみると更に理解が深まるかと思います。
HULFTをご存じの方は、ファイルIDやホスト情報登録などの設定も普段慣れているものに近いですし、DataSpiderをご存じの方は、デザイナ画面のアイコンを使ったドラッグ&ドロップの操作自体は同じです。もちろん、設定値やそれぞれの概念等の細かな違いはいくつかありますので、是非色々な操作を試してみていただけたらと思います!
今回の記事構成は、HULFT Squareで集配信してみた全4回シリーズ になります。環境構成をまず①②で理解して、③④と進んで読んでいただくのがおすすめです。
①HULFT Squareと外部通信する仕組みについて、AWS PrivateLinkなど含めて整理してみた
②HULFT Squareでのファイル集配信におけるAWS環境構築をしてみた
★本記事★ ③HULFT Square配信 ⇔ HULFT集信(EC2上)やってみた
④HULFT Square集信 ⇔ HULFT配信(EC2上)やってみた
長くなってしまいましたが、最後までお読みいただき、ありがとうございました!
それでは、また!