1
2

HULFT SquareでEC2インスタンス上のHULFTとファイル連携してみた(HULFT Square配信⇒HULFT集信)

Last updated at Posted at 2023-01-17

はじめに

こんにちは、すぎもんです:grinning:
今回は、当社の新たなサービス「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で集信してみます。
image.png
「集配信」といえど、HULFT SquareはHULFTとは違い、ファイル転送(Transfer)サービスを使ってのファイルを転送します。HULFTとは一味違う、クラウドサービスならではの概念や構成になっていますので、HULFTを知らない方はもちろん、知っている方はその違いを見付けながら、読んでいただけたらと思います。

今回実施する検証環境の相関図は、下記の通りです。
image.png
お客様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と通信先環境の各設定値の相関図
image.png

上図の通り、ファイル配信する上での値の一致などに注意が必要です。

■HULFT Square内の各設定値の相関図
【スクリプト】作成時に、自身が利用対象とする【配信管理情報】と、
【Transferサービス】を指定します。

また、指定した【配信管理情報】では、【転送ホスト情報】を指定します。
【転送ホスト情報】では、HULFT Squareの外部通信の出口となる【VPCエンドポイント】を指定し、AWS PrivateLinkによる外部通信のための設定をします。
image.png

HULFT Squareで作成したVPCエンドポイントには、配信先環境のVPCエンドポイントサービス名を設定し、PrivateLinkによる接続を確立しましょう。

以上の事前準備や作業手順などの確認後、早速HULFT Squareを触ってみましょう!

HULFT Squareにログインしてみる

いよいよ本題で、HULFT Squareの設定になります。まずはログインしてみます。
image.png
ログインするとこのような画面が表示されます。左側が各メニューです。
ここから設定箇所を選択して設定を進めていきます。
(注意)検証環境のため、HULFTSquare管理画面のUIが異なる可能性があります。
image.png
今回やっている検証は、HULFT Squareでのファイル配信です。
HULFT Squareにて、ホスト情報や配信管理情報の設定をやっていきましょう!

①配信ファイル用のストレージ設定(HULFT Square設定)

配信用のファイルを準備します。
HULFT Square管理画面の左側メニューから「サービス」-「ストレージ」を選択し、新しいディレクトリ「Transfer_TEST/Send」を作成します。ファイルをHULFT Squareのストレージ上に任意の配信ファイルSEND_FILE.txt をストレージにアップロードします。
image.png
HULFT SquareからEC2上のHULFTに配信するファイルが準備できました。

②HULFT Transferサービス(アウトバウンド)の作成(HULFT Square設定)

次に、HULFT Squareのファイル転送サービスであるTransferサービスを作成します。

HULFT Square管理画面の左側メニューから「サービス」-「HULFT Transfer」より、HULFT Transferサービスを作成します。
  名前    : New_HULFT_Transfer_send
  転送の方向 : アウトバウンド
  ホスト名  : HULFT01

Transferサービス内の「ホスト名」は、集信側HULFTの「詳細ホスト情報」の名前に設定する値と同じにします。

image.png
「サービス」-「HULFT Transfer」の中に作成した「New_HULFT_Transfer_send」が作成されていることを確認します。
image.png
これで、ファイル配信するためのサービスが作成できました。

③エンドポイントサービスの作成(AWS設定)

HULFT Squareと転送先となるAWS環境との接続には「AWS PrivateLink」を利用します。
そのため、HULFT Squareからの配信の場合には、転送先AWS環境でのVPCエンドポイントサービスの作成が必要です。対象のVPC環境にエンドポイントサービスを作成しましょう。

AWSマネジメントコンソール画面の [VPC] > [エンドポイントサービス] から、「エンドポイントサービスを作成」を押下します。
image.png
エンドポイントサービス名(HULFT SquareTESTEndPoint)の名前タグをつけて、ロードバランサーのタイプは「ネットワーク」とし、対象のロードバランサーを選択し、エンドポイントの「承諾が必要」にチェックをして、「作成」を押下します。
image.png
正常に作成されたことを確認します。
image.png
HULFT Squareからの接続を許可するために、作成したエンドポイントサービスを選択し、「プリンシパルを許可」タブより「プリンシパルを許可」をする必要があります。
image.png
「プリンシパルを許可」を押下し、「追加するプリンシパル」には、接続元となるHULFT SquareのAWSアカウントIDを設定します。
image.png

プリンシパルの追加の表記方法は、
「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エンドポイントサービス名」を指定します。
image.png
image.png
これで、HULFT Squareと通信先となるVPC環境をPrivateLinkでつなぐためのエンドポイントの作成が完了しました。

⑤HULFT Squareのエンドポイントの認証(AWS設定)

HULFT Square側でエンドポイントを作成するときに、転送先AWS環境の「エンドポイントサービス名」を設定しました。正しく設定されていると、転送先AWS環境のエンドポイントサービス内にHULFT Squareの接続情報が追加されます。確認してみましょう。

AWSマネジメントコンソールメニューの[VPC] > [エンドポイントサービス] の下部にある「エンドポイント接続」タブに、接続情報が追加されていることが確認できます。

エンドポイント接続に情報が1つ追加されます。「所有者」という項目に記載されたIDが、HULFT Square側のAWSアカウントIDかどうか確認してください。

image.png
HULFT SquareのAWSアカウントIDであることを確認して、「アクション▲」-「エンドポイント接続リクエストの承諾」を押下します。

フィールドに「承諾」を入れて「承諾」を押下します。
image.png
「状態」が「Available」になることを確認して設定は完了です。

以上で、HULFT Squareの疎通対象となるAWS環境とのAWS PrivateLink接続のための設定が完了です。

⑥転送設定(詳細ホスト情報の登録)(HULFT Square設定)

EC2上のHULFTにファイル配信するための詳細ホスト情報(転送設定)をします。
HULFT Square管理画面の左側メニュー「リソース」-「転送ホスト」から、配信先となるオンプレHULFTのホスト情報を登録します。
   名前        : HOST_Transfer_001
   ワークスペース   : 任意
   転送の方向     : アウトバウンド
   ホストの種類    : Windows NT系OS
   VPCエンドポイント  :  EndPointTEST
   文字コード     : ShiftJIS
   V7互換       : チェックなし
image.png
「次へ」を押下し、転送ホスト(アウトバウンド)が正しく作成されていることを確認します。
image.png
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は、「大文字英数字」である必要があります。

検証の通り、半角アンダーバーを使っても可でしたが、大文字英数字推奨な点、ご留意ください。
image.png
「次へ」を押下し、配信管理情報が正しく作成されていることを確認します。
image.png

⑧HULFT Integrateプロジェクトの作成(HULFT Square設定)

HULFT Squareでは、Transferサービス(集配信)を実行するためにプロジェクトやジョブの作成が必要です。Transferサービスと転送設定や実行ジョブなどの設定を紐づけます。また、プロジェクトの中で「スクリプトの作成」をしていきます。GUIはDataSpiderと似ていまして、必要なアイコンをドラッグ&ドロップで配置して設定します。

まずは、「DATA INTEGRATION」-「HULFT Integrate」-「プロジェクト」から「プロジェクトを作成」します。
  名前       : TEST_Transfer_Send_01
  スクリプトを作成 : チェックあり
image.png

HULFT Integrateのプロジェクトを作成すると、デザイナー起動の画面が表示されます。
image.png
「デザイナーを起動」を押下すると、作成したプロジェクト名「TEST_Transfer_Send_01」というプロジェクトが、左端の「プロジェクトエクスプローラー」に表示されています。スクリプト名は、「Test_Send_01」に変更します。
image.png
次に、画面右側にある「ツールパレット」に「HULFT」-「要求発行」-「配信要求」のアイコンがあります。アイコンをデザイナ上にドラッグ&ドロップして設定画面を開きます。
image.png
「必須設定」タブは、下記の通り設定しました。
   転送サービス  : New_HULFT_Transfer_send(※HULFT Transferサービス)
   配信設定    : Send_Conf (※HULFT Squareの配信管理情報)
   同期転送    : 同期
   待ち時間    : 3600(秒)
image.png

実行スクリプト設定内で、どのHULFT Transferサービスを使うか、どの配信管理情報を使って配信するか、を指定します。

その他の設定はデフォルトのままで設定を完了します。
最後に、デザイナ上の「start」アイコン、「配信要求」アイコン(hulft_send)、「end」アイコンをそれぞれドラッグして線でつなぎいで、配信スクリプトの作成が完了です。
image.png
「DATA INTEGRATION」> 「HULFT Integrate」にプロジェクトが作成できました。
image.png
以上で、プロジェクトと配信要求のためのスクリプトの作成は完了です。

⑨EC2HULFT(集信管理情報)の設定(HULFT設定)

HULFT Squareからの配信ファイルを集信するために、EC2上のHULFTの集信管理情報の設定をします。メニューバー「システム管理」-「集信管理情報」を選択、もしくはスタートページの「集信管理情報」を選択します。image.png
集信管理情報の一覧が表示されます。
image.png
「新規作成」を押下し、下記の通り設定します。
   ファイルID  : TEST_SEND
   ファイル名  : C:\HULFT Family\hulft8\data\rcv\rcvdata.txt
   登録モード  : 置き換え
   異常時の処理 : 削除
   集信形態   : 単一集信
   世代管理   : しない 
   EBCIDICセット : 自動  ※以降も今回は設定しません。
image.png
image.png
集信管理情報の登録が完了しました。

⑩EC2HULFT(詳細ホスト)の設定(HULFT設定)

集信管理情報の登録と同様に、メニューバー「システム管理」-「詳細ホスト情報」を選択、もしくはスタートページの「詳細ホスト情報」を選択し、「新規作成」を押下して下記の通り設定します。
  ホスト名     : HULFT01
  ホスト種     : UNIX (※HULFT SquareはUNIXです。)
  転送コードセット : UTF-8

詳細ホスト情報のホスト名はHULFT Square Transferサービスのホスト名を指定

image.png
image.png
以上で、EC2HULFT側の詳細ホスト情報の登録も完了です。

ファイル配信の実行

HULFT Squareのプロジェクトから、HULFT Square Designerを開き、スクリプトを実行します。
image.png
エラーも表示されず、実行に成功しました。
image.png

実行結果の確認(HULFT Squareのイベント監視)

HULFT Square側の実行結果の確認をします。

①イベント監視 > アプリケーション
 ⇒アプリケーション(Transferサービスなど)の実行結果の確認ができます。
  ファイルの配信設定で指定した「ファイルID」単位での実行結果が見れます。
  アウトバウンド(配信)の「TEST_SEND」が「✓(正常終了)」しています。
image.png
右端の「:」-「詳細」より実行結果の詳細が参照できます。
完了コード「0」で集信できています。もしここがエラーの場合は完了コードから、エラー内容の確認などに役立ててください。(参考:HULFT完了コード
image.png

集信側HULFTの実行結果の確認をします。

②実ファイルの確認
 ⇒HULFT Squareから配信して、EC2上のHULFTで集信した実ファイルを確認します。
image.png
EC2HULFT側の「C:\HULFT Family\hulft8\data\rcv」に、HULFT集信管理情報で指定した名前のファイル「rcvdata.txt」が作成されています。
image.png

③HULFTの集信履歴の確認
 ⇒EC2上のHULFTで集信したHULFTの履歴を確認します。
  「集信履歴」>「集信状況一覧」から確認すると、①実ファイル確認で確認した時間での正常終了が確認できます。
image.png

HULFTの実行履歴は、「検索」で日時やファイルID、ホスト名などを指定できます。複数実行の場合や、複数ホストへの履歴がある場合等でご活用ください。

以上の確認により、HULFT SquareからEC2上のHULFTにファイルが、正しく転送されていることが確認できました。

最後に

皆さん、いかがでしたでしょうか。
今回は、HULFT Squareから配信して、AWS EC2上のHULFTで集信してみました。
image.png
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上)やってみた

長くなってしまいましたが、最後までお読みいただき、ありがとうございました!
それでは、また!

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2