Linux メインフレーム上でブロックチェーン・テクノロジーを稼働させる  

Hyperledger Composer を使用して LinuxONE 上で Hyperledger Fabric チェーンコードを作成する

Last updated | By Barry Silliman, Jennifer Foley

Description

Linux Foundation の Hyperledger Project は、開発者がトランザクション型ビジネス・プロセスを改革できるようにするために設計された、ビジネス専用のオープンソース・ブロックチェーン・イニシアチブです。このプロジェクトのコンポーネントの 1 つである Hyperledger Composer は、ビジネス中心的な抽象化によってビジネス要件を技術的専門知識と合致させます。このコード・パターンでは、Hyperledger Composer とそのネットワーク・モデル、ツール、エディターを使用して、チェーンコードを作成し、LinuxONE にデプロイしてテストする方法を紹介します。

Overview

ブロックチェーン・テクノロジーは急成長を続けています。ある記事によると、2016 年の一年間だけをとっても、ブロックチェーン・テクノロジーに 14 億ドルの資金が投入されました。推定によると、2024 年までに世界のブロックチェーンの市場価値は 200 億ドルに上ると見込まれており、2017 年のブロックチェーン・プロジェクトへの平均投資額は 100 万ドルを記録しています。

ブロックチェーン・テクノロジーを推進して新しいオファリングを生み出すためにこれほど多くのリソースが投入されていても、どこから手を付ければよいのか、既存のビジネス・プロセスにブロックチェーンを統合するにはどうすればよいのか把握するのは易しいことではありません。そこで、このコード・パターンでは、開発/ビジネス統合の実装に取り掛かる方法を手ほどきします。具体的には、まず、Hyperledger Composer の開発ツールとして Node.js、npm、CLI、そしてよく使われているエディターなどを使用して、Hyperledger Fabric ブロックチェーン・フレームワークを実装するための開発環境を作成します。この開発環境内で、Hyperledger Fabric 1.0 で稼働する小規模なブロックチェーン・ネットワークを作成します。

開発環境は LinuxONE テクノロジーをベースに稼働します。この開発環境はさまざまなプラットフォーム上で稼働することができますが、その分離性、可用性、スケーラビリティー、そして使用できる暗号化を踏まえて、LinuxONE を選びました。LinuxONE 上でブロックチェーン・ネットワークを実行すると、パフォーマンスに関して有利なだけでなく、既存の基幹システム (例えば、SCM や ERP など) やトランザクション・ミドルウェア (CICS®、IMS™、DB2®、あるいはバッチ・システムなど) との仮想記憶間通信によってセキュリティー・リスクを軽減することができます。

作成したブロックチェーン・ネットワークを運用に移すための手順として、LinuxONE Community Cloud に対するゲスト・アクセスを登録し、環境を作成するためのスクリプトを実行し、Hyperledger Composer を統合してブロックチェーン・アプリケーションをデプロイします。このコード・パターンを完了すると、メインフレーム上でのブロックチェーンの開発を開始できるようになります。つまり、あらゆる開発者にとって貴重な組み合わせを実現できるのです。

Flow

  1. ユーザーが SLES Linux ゲストを作成するために、LinuxONE Community Cloud へのアクセスをリクエストします。ユーザーの環境は、この LinuxONE Community Cloud 内で稼働することになります。
  2. LinuxONE Community Cloud には、さまざまな構成が用意されています。ユーザーは、環境をサポートするために必要な構成を選択して、環境を起動します。このステップが完了したら、ユーザーは SSH を使用してシステムにログインします。
  3. セットアップ・スクリプトと Hyperledger Composer ビジネス・ネットワーク成果物は、このコード・パターンに必要なアイテムとして GitHub リポジトリー内に保管されています。これらのアイテムを使用するために、ユーザーが GitHub リポジトリーを Linux ゲストのローカル・ファイル・システムに複製します。
  4. セットアップ・スクリプトが DockerHub を呼び出して、特定の Hyperledger Fabric イメージをプルします。イメージがプルされると、Hyperledger Composer が npm のインストールを開始します。これによって、ゲストに Hyperledger Composer および関連するツールがインストールされます。インストールが完了すると、スクリプトは Composer Playground というブラウザー・ベースの Hyperledger Composer 用ユーザー・インターフェースをインストールして起動します。ユーザーは検証ステップを行って、ツールを理解し、コンポーネントのすべてが揃っていることを確認します。
  5. ビジネス・ネットワーク・アーカイブ・ファイルを Composer Playground にインポートした後、ユーザーはチェーンコードの開発を開始します。チェーンコードがテストされて有効であることが確認されると、Connection Profile を使用して Composer Playground が実行中の Hyperleder Fabric プロジェクトに接続されます。その後、ユーザーがチェーンコードをブロックチェーンにデプロイします。

Related Blogs

IBM Developer へようこそ

新しい IBM Developer へようこそ! 私たちはこの新しいプロジェクトに大いに張り切っていますが、まずは皆さんについて、つまり開発者についてお話ししたいと思います。

続けて読む IBM Developer へようこそ

Call for Code Challenge 2018(9/28応募締切!)- まずは参加登録して、自然災害に役立つ IBM Cloud のサービスに触れてみよう

みなさまこんにちは! 年々、テレビのニュースや新聞を見て、異常気象による集中豪雨や猛暑が各地で発生していると感じている方は多いのではないでしょうか。自然災害による甚大な被害をもたらしているのは日本だけではありません。「自然災害」は、今、世界が立ち向かうべき最も大きな試練となっています。 IBMは、2018年5月24日、パートナー団体と共に「Call for Code」をいう取り組みを発表し、世界中のデベロッパーが最新の技術を駆使して、コードで世界にポジティブな変化を与える支援をはじめました。 2018年の Call for Code チャレンジでは、「自然災害」をテーマに自然災害を打ち破り、地域社会や自然災害対策を強化を目指し、IBM Cloud サービスを活用したソリューションを構築するコンペティッションを開催します。18歳以上の個人または最大5名までのチームで参加することができます。優勝チームには USD200,000 (2,200万円相当) が贈られます。 これを機に皆さんにも「Call for Code」にご参加いただき、クラウド、データ、AI、ブロックチェーンを活用するためのIBMのテクノロジーにも触れていただければと思います。詳しくはサイトをご覧ください。 Call for Code(日本語サイト) Call for Code への参加するまでの手引き(日本語解説資料) IBM Code Patterns : Watson を活用した AI やクラウドなどのアプリ開発に役立つサンプルコードを提供

続けて読む Call for Code Challenge 2018(9/28応募締切!)- まずは参加登録して、自然災害に役立つ IBM Cloud のサービスに触れてみよう

Related Links

Hyperledger Composer tutorials

Hands-on instruction for using this open development toolset and framework for making development of blockchain applications easier.

Chaincode tutorials

Learn how to initialize and manage ledger states through transactions submitted by applications.

IBM Blockchain

Explore blockchain at IBM.com, including basics, solutions, news, and events.

Blockchain essentials course

Learn about blockchain for business and explore key use cases that demonstrate how the technology adds value.