Help us understand the problem. What is going on with this article?

HULFTクラウドストレージオプションでAzure BLOB Storageにファイル転送してみた

 はじめに

こんにちは。よろず相談担当 すぎもん:yum:です。
今回は、HULFTのクラウドストレージオプションを使って、AzureのBlob Storageへファイル転送をしてみます。

 今回やること

Azure側の設定や、HULFTのインストールを1からやってみて、Blob Storageにファイルを転送。

折角なのでHULFT機能を少し使って、ファイル名の動的指定もしてみようと思っていますが、長くなりそうなので、記事は「Azureへファイル転送編」と「動的指定でファイル転送編」の2部制で更新します!
AzureのBLOBストレージへのファイル転送で、HULFTの動的指定を使ってみた。

 システム構成

下記のような構成イメージでクラウドへのファイル転送をしてみます。
image.png

 環境準備(Azure側の設定)

Blob Storageにファイル転送するには、Azure側での設定が必要です。

<必要なもの>
・ストレージアカウント
Azure内データ用の一意な名前空間
・アクセスキーまたはストレージSASトークン
Blob Storageにアクセスするためのキー
・コンテナー
ファイルシステムのフォルダ/ディレクトリと同様なBlobのセットを整理する箱のようなもの

①ストレージアカウントの作成

1. Azure Portalにサインイン。
2. カテゴリのストレージから「すべてのサービス」を選択。
3. カテゴリのストレージから「ストレージアカウント」を選択。
4. 「+追加」を選択します。
image.png
ストレージアカウントは簡単に作成できました。ストレージアカウント名はお好きなものを設定してください。
※私は会社の共通アカウントを使ったのでモザイク加工させていただいてます。image.png

②アクセスキーまたはSASトークンの取得

HULFTのクラウドストレージオプションでは、ストレージへアクセスするために、アクセスキーか、ストレージSASトークンのどちらかが必要です。
アクセスキーの取得
1. 作成したストレージアカウントを選択し、設定の[アクセスキー]を選択します。
2. 表示されたキーの情報を取得します。
※アクセスキーか、SASトークンの情報が必要です。
※私は、アクセスキーを使うので、後で必要となるシステム環境変数設定のために📝っておきます。
※SASトークンを使う場合は、[SASと接続文字列を生成する]を選択し、出力された[SASトークン]の情報を📝っておいてください。
image.png

ストレージSASトークンの取得
※ストレージSASトークンとは?
コンテナーへのアクセス許可、特定ファイルへのアクセス許可などの制御が可能。
1. 作成したストレージアカウントを選択し、設定の[Shared Access Signature]を選択します。
2. 詳細情報に以下内容を設定します。
  ・使用できるサービス    :BLOB
  ・使用できるリソースの種類 :コンテナー、オブジェクト
  ・与えられているアクセス許可:読み取り、書き込み
image.png

③コンテナーの作成

作成したストレージアカウントを選択し、Blob serviceの[コンテナー]を選択します。
[+コンテナー]で新規作成します。
※「sugimondemo」というコンテナー名にしました。
image.png

以上で、Azure側の設定は完了です!

 環境準備(HULFTのインストール)

ここからはHULFTのインストールと設定をしてみます。

■HULFT8 for Windows のインストール
配信側HULFT(ホスト名:HULFT-SEND)と集信側HULFT(ホスト名:HULFT-RECV)それぞれにHULFTをインストールします。
インストーラ(setup.exe)を実行し、セットアップウィザードに従ってインストールを行います。
image.png
シリアル番号とプロダクトキーの設定をして、
image.png
標準インストールをすれば完了です。
image.png

以上で、HULFTのインストールは完了です。

 環境準備(クラウドストレージオプションのインストール)

続いて、集信側HULFT(ホスト名:HULFT-RECV)にクラウドストレージオプションをインストールします。
インストーラ(setup.exe)を実行し、セットアップウィザードに従ってインストールします。
※オプションを付けたいHULFTがデフォルトの値と違う場合は、対象のパスを指定して実行しください。
image.png
「Installation completed successfully.」というメッセージが出れば、インストールOKです。
image.png

■システム環境変数の編集
Blob Storageへのアップロード機能を利用するには、システム環境変数の設定が必要です。
※環境変数は、[スタート]-[設定]で検索してシステム環境変数設定画面を開いてます。
image.png
以下のシステム環境変数を事前に設定します。
  ・AZURE_STORAGE_ACCOUNT<ストレージアカウント名>
  ・AZURE_STORAGE_KEY<ストレージキー> ※
  ・AZURE_STORAGE_SAS_TOKEN<ストレージSASトークン> ※
  ※どちらか片方を必ず設定しておく必要があります。
   両方設定されている場合は、AZURE_STORAGE_SAS_TOKENが使用されます。 
今回は、AZURE_STORAGE_KEYを使用します。
image.png

■OSの再起動
システム環境変数を新規で作成したので、OSを再起動します。

 配信側HULFTの事前準備(ファイル転送するために)

事前準備
  ・通信時に名前解決できるように、OSのHOSTSファイルに集信側ホストのホスト名を追記。
  (例) IPアドレス  HULFT-RECV

  ・配信するファイルを準備。(今回は、C:\hulft\snd\test.txt)
image.png

■HULFT(HULFT-SEND)の設定
HULFT管理画面の[システム管理]-[詳細ホスト情報]から設定します。
image.png
image.png
HULFT管理画面の[システム管理]-[転送グループ情報]から設定します。
image.png
image.png
HULFT管理画面の[システム管理]-[配信管理情報]から設定します。
image.png
image.png

以上で、配信側HULFTの設定は完了です!

■集信側HULFTの設定
引き続き、集信側HULFTの設定をします。
※配信側HULFTと同様に、事前に通信時に名前解決できるようOSのHOSTSファイルに配信側HULFTのホスト名を追記しておいてください。

HULFT管理画面の[システム管理] - [詳細ホスト情報]から設定します。
image.png
image.png
HULFT管理画面の[システム管理] - [集信管理情報]から設定します。
image.png
集信ファイル名を「bs://オブジェクト名」の形式にしているのが注意点です!
また、現仕様では、異常時の処置は「復元」、集信形態は「単一集信」、世代管理は「しない」のみ選択可能です。登録モードは、「新規作成」「置き換え」のみ選択可能です。
image.png
image.png
これでやっと準備が整いました。
クラウドにデータ転送ってことでしたけど、HULFTの通常の設定をしているだけで、特に意識せずここまで設定できましたね。
image.png

AzureのBlob Storageにファイル転送してみる

いよいよ、ファイル転送してみます!配信側HULFTの管理画面から[配信要求]を行います。
HULFT管理画面の[システム管理]-[配信管理情報]から、登録したファイルID(BLOB01)を右クリックして、[配信要求]を選択します。
image.png
配信要求ダイアログが表示されるので、[配信要求]ボタンを押下します。
image.png
設定に問題がなければ、配信要求が正常に終了した旨のダイアログが表示され、終了します。
image.png

■配信側HULFT(HULFT-SEND)の配信状況の確認
「完了コード」が「000000(00000)」になっていればHULFTの配信は正常終了です。
image.png

■集信側HULFT(HULFT-RECV)の集信状況の確認
「完了コード」は「000000(00000)」になっていればHULFTの集信は正常終了です。
image.png

■Azure Blob Storage側の状況確認
最後に、Azure Portalから対象コンテナ(sugimondemo)の中を確認してみます。
test.txtがアップロードされていることが確認できました。
無題.png

 更にチャレンジ!!

実は、HULFTにはメッセージを送る機能がありまして、
ファイル名と日付を動的に指定した転送をやってみたいと思います!

※長くなったので次の記事へ続きます・・・
AzureのBLOBストレージへのファイル転送で、HULFTの動的指定を使ってみた。

 最後に

今回は、HULFTのクラウドストレージオプションを使って、AzureのBLOBストレージ転送をしてみましたが、いかがでしたでしょうか。設定自体は特別なことはなく、HULFTの通常設定をしていれば簡単に転送できました!

今回は単純なファイル転送で、正常終了していましたが、エラーが起きた時の挙動も別記事でやってみたいなと思っております!HULFT側でエラー発生時にどういった確認ができるなど、見てみたいですね。
⇒⇒⇒⇒気になってすぐにやってみました。
HULFTのクラウドストレージオプションでGoogle Cloud Storageにファイル転送してみた

このブログでは、今後も技術の「よろず相談窓口」で相談を受けた内容や、誕生したワザをご紹介していけたらな、と思っています。

これからも是非チェックいただき、宜しければフォローをお願いします。

それでは、また!

sugimon
はじめまして。 皆様に役立ちそうな技術情報をフランクに投稿させていただきます。 ※掲載内容は個人の見解であり、所属する企業を代表するものではありません。 ※各製品のサポート窓口等にお問い合わせいただいても、お答えすることができませんので、あらかじめご了承ください。
saison_information_systems
モード1(守りのIT)・モード2(攻めのIT)を兼ね備えたバイモーダル・インテグレーターとしてデータ連携プラットフォームのHULFTシリーズ, リンケージサービス, 流通ITサービス, フィナンシャルITサービスを提供します。
https://home.saison.co.jp/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away