SlideShare a Scribd company logo
Hyperledger Fabric 簡単構築ツール minifabricのご紹介
~productionへの移行をminifabric で加速~
2021.10.7
富士通(株) データ&セキュリティ研究所
中川 格
Copyright 2021 FUJITSU LIMITED
1
@ Hyperledger Meetup Tokyo
自己紹介 (中川 格 / Itaru NAKAGAWA)
現所属に
Copyright 2021 FUJITSU LIMITED
2019.4
2020.12
Hyperledger Fabric の世界と関わりをもつ
minifabric と出会い、使い始める
2021.1
2021.4
minifabricへの貢献開始(利用者の立場からカイゼン)
(株)富士通研究所 入社。 ネットワーキングやIoT関連の研究開発を担当
今日
趣味:
コロナ前
コロナ後
minifabric commiter に就任 (現: コミット件数2位)
2021.8
担当部分
Fabric アプリケーション
Hyperledger Fabric
Fabric API
担当部分を動かすには
Fabric環境が必要
※以降、Hyperledger Fabric を 単に “Fabric”とよぶことがあります
@itaru2622
2
Hyperledger Fabricとは
エンタープライズ向けのブロックチェーンプラットフォーム
ユースケース:金融系からサプライチェーンまで様々
クラウド各社がマネージドサービスとして提供
Copyright 2021 FUJITSU LIMITED
“2nd Global Enterprise Blockchain Benchmarking Study”
ケンブリッジ大学, 2019年調査
Hyperledger Fabric
48%
Hyperledger Fabric ネットワークの概要
◆コンポーネント: 3種
 Peer 台帳(ブロック)を保持
 Orderer トランザクション管理とブロック生成を担当
 CA 証明書管理や認証を担当
◆ 台帳の読み書きにはchaincode(スマートコントラクト)を用いる
◆ 抽象概念:2つ
 チャンネル 台帳の共有範囲の制御に用いられる。
同一チャンネル内のPeerの台帳は同期される
 Organization 企業や組織に対応。
全コンポーネントは何かのOrganizationに所属
Peer
Peer
CA
台帳
CA
Peer
Peer
台帳
チャンネル
chaincode chaincode
アプリケーション
org1 org2
Orderer Orderer
3
before minifabric: Fabric構築はハードワーク
Copyright 2021 FUJITSU LIMITED
configtx
crypto-config
certs params
docker run:
cert path
endpoint
policy:
cn:
運試し
<=Start FIN=>
STOP
1
1
4
通信開始.
最初の難関
設定:相互に関連し、変更は多か所に影響
TODO
1.
:
100 ….
:
endpoint
cert path
数行~
最初の構築成功には… 1週間かかった
Fabricのネットワーク図
変更漏れとの戦い
タイプミスとの戦い x 100本ノック
オペレーション:大量の長いコマンド
4
before minifabric: Fabric構築はハードワーク
Copyright 2021 FUJITSU LIMITED
configtx
crypto-config
certs params
docker run:
cert path
endpoint
policy:
cn:
運試し
<=Start FIN=>
STOP
1
1
4
Organizations:
- &org0
ID: org0
AnchorPeers: #アクセス先エンドポイント
- Host: peer1.org0.example.com Port: 7051
Policies:
Readers:
Type: Signature
Rule: "OR('org0.admin', 'org0.peer', 'org0.client’)”
Admins:
Type: Signature
Rule: "OR('org0.admin')"
:
Channel: &ChannelDefaults
Policies:
Writers:
Type: ImplicitMeta
Rule: "ANY Writers"
Admins:
Type: ImplicitMeta
Rule: "MAJORITY Admins"
configtxの具体例(一部)
TODO
1.
:
100 ….
:
endpoint
cert path
各組織・コンポーネントや
チャンネルの構成
設定:相互に関連し、変更は多か所に影響
オペレーション:大量の長いコマンド
よくある例
自分のマシンから使う:OK 他から:NG
5
before minifabric: Fabric構築はハードワーク
Copyright 2021 FUJITSU LIMITED
configtx
crypto-config
certs params
docker run:
cert path
endpoint
policy:
cn:
運試し
<=Start FIN=>
STOP
1
1
4
Organizations:
- &org0
ID: org0
AnchorPeers: #アクセス先エンドポイント
- Host: peer1.org0.example.com Port: 7051
Policies:
Readers:
Type: Signature
Rule: "OR('org0.admin', 'org0.peer', 'org0.client’)”
Admins:
Type: Signature
Rule: "OR('org0.admin')"
:
Channel: &ChannelDefaults
Policies:
Writers:
Type: ImplicitMeta
Rule: "ANY Writers"
Admins:
Type: ImplicitMeta
Rule: "MAJORITY Admins"
configtxの具体例(一部)
TODO
1.
:
100 ….
:
endpoint
cert path
各組織・コンポーネントや
チャンネルの構成
設定:相互に関連し、変更は多か所に影響
オペレーション:大量の長いコマンド
よくある例
自分のマシンから使う:OK 他から:NG
うまくいかない…
他サンプルの値にしてみるか?
⇒ org0.memberに変更
・難解な用語:理解前の変更は失敗のもと
6
before minifabric: Fabric構築はハードワーク
Copyright 2021 FUJITSU LIMITED
configtx
crypto-config
certs params
docker run:
cert path
endpoint
policy:
cn:
運試し
<=Start FIN=>
STOP
1
1
4
Organizations:
- &org0
ID: org0
AnchorPeers: #アクセス先エンドポイント
- Host: peer1.org0.example.com Port: 7051
Policies:
Readers:
Type: Signature
Rule: "OR('org0.admin', 'org0.peer', 'org0.client’)”
Admins:
Type: Signature
Rule: "OR('org0.admin')"
:
Channel: &ChannelDefaults
Policies:
Writers:
Type: ImplicitMeta
Rule: "ANY Writers"
Admins:
Type: ImplicitMeta
Rule: "MAJORITY Admins"
configtxの具体例(一部)
TODO
1.
:
100 ….
:
endpoint
cert path
各組織・コンポーネントや
チャンネルの構成
設定:相互に関連し、変更は多か所に影響
オペレーション:大量の長いコマンド
よくある例
自分のマシンから使う:OK 他から:NG
・難解な用語:理解前の変更は失敗のもと
他マシンから使うには
実際のIPやポートを指定する
・難解な用語:理解前の変更は失敗のもと
・エンドポイント: 各構築先に合わせて指定
⇒設計と実際が違うと構築失敗
7
before minifabric: Fabric構築はハードワーク
Copyright 2021 FUJITSU LIMITED
configtx
crypto-config
certs params
docker run:
cert path
endpoint
policy:
cn:
運試し
<=Start FIN=>
STOP
1
1
4
上記で1操作分。こういうのが100件以上。
export
CORE_PEER_ADDRESS=peer1.org0.example.com:7051
export ORDERER_ADDRESS=orderer1.example.com:7050
export CORE_PEER_LOCALMSPID=org0
export
CORE_PEER_MSPCONFIGPATH=/certs/peerOrganizations
/org0.example.com/users/Admin@org0.example.com/msp
export CORE_PEER_TLS_ROOTCERT_FILE=…/tls/ca.crt
export ORDERER_TLS_CA=/certs/…/tls/ca.crt
export CORE_PEER_TLS_ENABLED=true
export CORE_PEER_ID=cli
peer channel create -c mychannel -f mychannel.tx -o
$ORDERER_ADDRESS --cafile $ORDERER_TLS_CA --tls
TODO
1.
:
100 ….
:
endpoint
cert path
オペレーション:大量の長いコマンド
最初の難関
(通信開始)
設定:相互に関連し、変更は多か所に影響
エラー発生で最初からやり直し…もたびたび発生
オペレーション具体例:チャンネル作成
8
環境構築あるある Fabric編
Copyright 2021 FUJITSU LIMITED
Person.X
組織名変えて
従来の方法
トライアルでFabricを使いたいんだけど
組織増やして
新version使いたい
別マシンに移したい
9
環境構築あるある Fabric編
Copyright 2021 FUJITSU LIMITED
Person.X
組織名変えて
数日かかる
従来の方法
トライアルでFabricを使いたいんだけど
組織増やして
1週間後に
・・・
・・・
数日かかる
数日かかる
・・・
早めによろしく!
設定やコマンドが変わる
所に注意
新version使いたい
別マシンに移したい ・・・ 数日かかる
10
環境構築あるある Fabric編
Copyright 2021 FUJITSU LIMITED
Person.X
組織名変えて
数日かかる
従来の方法
トライアルでFabricを使いたいんだけど
組織増やして
1週間後に
・・・
別の系を作りたい。
構築方法教えて
(わかりやすく) n年かかる
・・・
数日かかる
数日かかる
・・・
早めによろしく!
設定やコマンドが変わる
所に注意
新version使いたい
・・・
ツール探さねば
別マシンに移したい ・・・
ツール欲しい・・・
数日かかる
11
with minifabric: Fabric構築は簡単
https://github.com/hyperledger-labs/minifabric
チェックリスト
~1分 設定の作成
~5分 オペレーション:コマンド1発
前提条件
 OS: Linux or Win10
 インターネットアクセス
 docker
$minifab up
オペレーション: 簡単・短い
カスタマイズ用オプション:
- fabric versionの指定(1.4~2.4)
- chaincodeの指定
- channel名の指定 など
$minifab cleanup
@全削除時
@構築時
fabric:
cas:
- "ca1.org0.example.com“
peers:
- "peer1.org0.example.com“
orderers:
- "orderer1.example.com“
settings:
ca:
peer:
orderer:
FABRIC_LOGGING_SPEC: DEBUG
# the default goproxy
# goproxy: https://proxy.golang.org,direct
# set the endpoint address to override detected IP address
# endpoint_address: 104.196.45.144
# set the docker network name
netname: "mysite"
# set the extra optins for docker run command
# container_options: "--restart=always …"
設定:簡単(spec.yaml)
1ファイル、相互関連なし
名前リストのみ
名前や件数:自由
必要なときだけ変更
12
Before/After minifabric
Copyright 2021 FUJITSU LIMITED
phase Before After
Fabric network 設計
設定の 書き下し
証明書生成
全インスタンス起動
チャンネル作成
チャンネル参加
anchor peer 更新
connection profile生成
chaincode インストール
chaincode 承認
chaincode コミット
chaincode 初期化
ハードコーディングありfor 労力削減
- Policies
- Passwords
1週間 数分
第一関門
制限事項なし
多数 コマンド1発
大変 簡単
fabric version差
は要自己解決
fabric version変更は簡単
設定
オペレーション
運試し
<=Start FIN=>
STOP
セキュリティに絡む部分
13
fabric:
cas:
- "ca1.org0.example.com"
- "ca1.org1.example.com“
peers:
- "peer1.org0.example.com"
- "peer2.org0.example.com"
- "peer1.org1.example.com"
- "peer2.org1.example.com“
:
orderers:
- "orderer1.example.com"
- "orderer2.example.com"
- "orderer3.example.com"
Type:
- Peer用
- Orderer用
minifabric の設定ファイル spec.yaml 作成方法 (名前リスト)
Copyright 2021 FUJITSU LIMITED
ドメイン名(≒organization) Type ホスト名 (1件以上) CA名
org0.example.com Peer peer1, peer2 ca1
org1.example.com Peer peer1, peer2 ca1
example.com Orderer orderer1,orderer2, orderer3 ー
peer1
peer2
ca1
peer1
peer2
ca1
orderer1
orderer2
orderer3
グループわけ
FQDNで列挙
ドット(.)でつなげる
1
3
spec.yaml完成
2
表をイメージし・・・
* ドメイン名は重複しないこと
4 ホスト名 ドメイン名
CAの件数
Peer用: 1件以上
Oderer用:0件でもok
ca, peer, orderer
FQDN=
org0.example.com
〃
〃
org1.example.com
〃
〃
example.com
〃
〃
※orderer件数は奇数にする(1以上)
14
minifabric アーキテクチャ: 簡単・フレキシブルな構築の実現方法
Copyright 2021 FUJITSU LIMITED
minifab
コマンド docker
リポジトリ
Playbooks
(workflow)
コマンド
設定
Fabric
構築の知識
Templates
実行(構築オペレーション)
minifab
コンテナ
起動
Fabric 構築手順
タイプミスなし
名前・件数:自由
エンドポイント
CLI
実行
・実行時の引数
・spec.yaml
engine
{{ }}
playbooks
フォルダ内
vars フォルダに出力・保存
configtx、crypto-config
構築コマンド、証明書、 ・・・
①
②実行
出力
ユーザ指定
実際の構築操作
minifabコンテナ内
15
Minifabricの柔軟性
Copyright 2021 FUJITSU LIMITED
項目 備考 Reference
Y Fabricの組織名やコンポーネント名の指定 自由 前ページ参照
Y Fabricの組織数やpeer数 自由 (ホスト性能内 or 制限ナシ@k8s) 前ページ参照
Y Fabric versionの選択 オプション ‘-i ver’ (1.4.4~2.4) CI@
Y 自分のchaincode(スマートコントラクト) 利用 予約フォルダに置いてオプション指定
(‘ -n chaincode名 -l 言語)
docs@
Y chaincode のアップグレード サブコマンド ‘minifab ccup -v newver” cmd refs
Y chaincode実行 (アプリ開発ナシで) サブコマンド ‘minifab invoke’ docs@
Y 稼働中Fabricの拡張(新組織追加) minifabric のgithubページ参照 docs@
Y 台帳へのリッチクエリ検索 オプション ‘-s couchdb’ cmd refs
Y チャンネル名の指定 オプション ‘-c yourchannel’ cmd refs
Y コンテナ群の起動のみ(チャンネル作成など省略) サブコマンド ‘minifab netup’ cmd refs
N public認証局発行の証明書利用 未サポート。現状オレオレ証明書のみ
about more … https://github.com/hyperledger-
labs/minifabric/tree/main/docs
16
Demo: playing movie
minifabric youtube playlist:
https://www.youtube.com/playlist?list=PL0MZ85B_96CExhq0YdHLPS5cmSBvSmwyO
Copyright 2021 FUJITSU LIMITED
https://youtu.be/QCsKQ1S4C9E?list=PL0MZ85B_96CExhq0YdHLPS5cmSBvSmwyO&t
17
Copyright 2021 FUJITSU LIMITED
~修了証書~
あなたはFabric構築に必要な事項を習得済です
minifabric インストール方法
構築コマンド (minifab up)
終了コマンド (minifab cleanup)
カスタム環境の作りかた① 設定ファイル spec.yaml とアレンジ方法
カスタム環境の作りかた② コマンドオプション各種 (minifab -h ほか)
ご自身でFabricを構築・ご活用ください
18
明日以降
Copyright 2021 FUJITSU LIMITED
Person.X
minifabric
数日かかる
数分
従来の方法
・・・ 選ぶのは
どっち
あなた 構築ツール
minifabric使うと
あなたも簡単に作れますよ!
でもこう言ってみませんか?
組織名変えて
トライアルでFabricを使いたいんだけど
組織増やして
別の系を作りたい。
構築方法教えて
(わかりやすく)
新version使いたい
別マシンに移したい
19
minifabric の利点
Copyright 2021 FUJITSU LIMITED
Trial / Sandbox など
ユースケース:
・新しいことを試す
・Pull Reqのマージ前テスト
・issueの再現テスト・修正環境
minifabricで構築
‘minifabric up’ はgithub actions(CI workflow)で動作済。
Production環境
他手段利用
minifabric
簡単・すぐに作れる
nightly
beta
issue
fragile
Welcome
使い捨てもできるFabric環境を得た
20
発表者自身の使い方
Copyright 2021 FUJITSU LIMITED
VMイメージ(共通)
* minifabric
* docker
* 他ツール
ソースリポジトリ
(用途別)
VM をコピーしてから
minifab up
main branch feature branch fixing branch
VM1 VM2 VM3
新しいことを試す issue再現・修正
必要になった時に
その場で作る
いつでも作り直せる
21
minifabric の最新情報: Kubernetes(k8s) 対応 の紹介
k8s は、 docker のシングルホスト動作が前提という性能限界へのブレイクスルーを提供。
minifabricを使う場合、手順の差は3か所のみ( k8sクラスタを持っている場合)
Copyright 2021 FUJITSU LIMITED
kube
config
k8s クラスタ環境の入手
minifab
予約フォルダにコピー
fabric:
cas:
peers:
orderers:
:
endpoint_address: extIP
エンドポイントアドレス指定
1
2
$minifab up -e true
a
3
必須 plugin 提供機能 マネージド k8s 他 のk8s
Ingress controller external Port 要インストール ready?
loadbarancer external IP 済 ready?
volume provisioner shared disk 済 ready?
extIP:extPort
spec.yaml
b 必須Plugins確認(必要に応じて導入)
your app
必須 plugins
最初はマネージド k8sの利用を推奨します。
k8s版は fabric 2.x以降のみサポート
コマンドにオプション指定(-e)
vars/kubernetes/config
https://github.com/hyperledger-labs/minifabric/blob/main/docs/DeployOntoK8S.md
22
参考) minifabric コマンドレファレンス
Usage: minifab <mode> [options]
Copyright 2021 FUJITSU LIMITED
option summary
-h print usage
-e flag if node endpoints should be exposed
-f output log verbosity
-i the fabric version to be used (2.1 or others)
-o organization name for org specific ops
-c channel name
-l chaincode language (go / nodejs / java )
-n chaincode name to be installed
-s the backend DB for peer (golevel or couchdb)
-b block number to be queried
-d chaincode initialization flag
-p chaincode instantiation and invocation parameters
-r flag if for chaincode processes private data
-t chaincode instantiation and invocation transient parameters
-v chaincode version to be installed
-y chaincode policy
mode summary
up all in one command for fabric setup
cleanup remove all the nodes and runtime files
imageget download docker images of fabric
generate generate certificates and genesis block
netup bring up the network only
stats list all nodes and status
create create application channel
join join all peers currently in the network to a channel
anchorupdate do channel update for all peer anchors in all orgs
profilegen generate connection profiles
install install chaincode
approve approve chaincode
commit commit chaincode for fabric>=2.0
initialize initialize chaincode for fabric >= 2.0
discover discover channel endorsement policy
Fabric構築
step
by
step
mode(cont.) summary
apprun (experimental) run chaincode app if there is any
caliperrun (experimental) run caliper test
explorerdown shutdown Hyperledger explorer
explorerup start up Hyperledger explorer
portainerdown shutdown portainer web management
portainerup start up portainer web management
blockquery do channel block query for the channel tx
channelquery do channel query for the channel configuration
channelsign do channel config update signoff
channelupdate do channel update with a given new channel
down tear down the network
instantiate instantiate chaincode for fabric < 2.0
invoke run chaincode invoke method
nodeimport import external node certs and endpoints
orgjoin (experimental) join an org to the current channel
query run chaincode query method
ccup Update or force re-install chaincode
restart restart the network
update (experimental) update minifabric to the latest
外部ツール起動
その他のオペレーション
構築する環境のカスタマイズ用オプション
23
参考) Hyperledger 公式サンプルのchaincode x minifabric
 fabric-samplesのchaincode asset-transfer-basic を minifabric で構築する Fabric環境で利用する方法
 https://github.com/hyperledger/fabric-samples/tree/main/asset-transfer-basic
 version v2.3.0 at https://github.com/hyperledger/fabric-samples/archive/refs/tags/v2.3.0.zip
Copyright 2021 FUJITSU LIMITED
1) chaincode をダウンロード・解凍する。
https://github.com/hyperledger/fabric-samples/archive/refs/tags/v2.3.0.zip
2) 解凍したフォルダ内のchaincode ソースを、minifabricの予約フォルダにコピーする
mkdir -p vars/chaincide/basic/go
cp -r fabric-samples-2.3.0/asset-transfer-basic/chaincode-go/* vars/chaincide/basic/go/
3) Fabric 構築 ※ spec.yamlファイルはデフォルトのままでok
minifab up -i 2.3.0 -c mychannel -n basic -l go -o org1.example.com -e true
4) chaincode実行
minifab invoke -p ‘”InitLedger”’
minifab invoke -p ‘”GetAllAssets”’
※ asset-transfer-basic の添付アプリケーション(application-*)をそのまま上記構築環境で動かすことはできませんでした。
原因: 添付アプリケーションのソースが fabric-sample添付の専用ツールで環境構築することを前提にしているため。
各種パスを変更すれば動くと思います。
Fabric ver 2.3.0
公式のchaincodeサンプル
24
参考) minifabric の内部について、もう少し
主なフォルダ構成
Copyright 2021 FUJITSU LIMITED
項目 In/out path
利用するchaincode in vars/chaincode/<chaincodename>/<language>/*
サンプル:https://github.com/hyperledger-labs/minifabric/tree/main/chaincode
Fabric 構築ノウハウ in playbooks/* // 構築用スクリプトや テンプレートファイル
scripts/* // minifabric のコマンド一覧など
fabopts.yaml // ansible実行時の大元ファイル
Fabric アプリ用connection profile out vars/profiles/<channelname>_* (言語別)
※Fabric SDKを利用したアプリ開発に便利
構築時に生成されるファイル
(実際の構築オペレーション用)
out vars/configtx.yaml vars/crypto-config.yaml // Fabricの設定大元
vars/keyfiles/* 上記を元に生成した証明書やmsp
vars/run/* 構築時に実行したコマンド群
25
弊社のHyperledgerに関連するその他の取り組み
分散データトレーシング:
Chain Data Lineage
C 社
a b
処理履歴
b d
c
A 社 B 社
出 力
データ
利用者
各社が持つモノの流通・加工の履歴データを
エンド-エンドでトレース
処理履歴
ブロックチェーンの統合サービス用フレームワーク:
ConnectionChain
Hyperledger Fabricをサプライチェーンに適用し、
多組織による記録・トレースを公正に実現
Copyright 2021 FUJITSU LIMITED
事前に合意された価値取引を
ガバナンスを確保しつつ執行
ConnectionChain技術のオープン化を狙って、
Hyperledger Cactusにコア開発社として参加
ConnectionChain
プレスリリース(2017.11.15発表)「ブロックチェーン同士を安全につなげるセキュリティ技術を開発」
https://pr.fujitsu.com/jp/news/2017/11/15.html
プレスリリース(2020.5.15発表) 「富士通研究所とアクセンチュア、安心かつ確実な異なるブロックチェーン連携を共同で加速」
https://pr.fujitsu.com/jp/news/2020/05/15.html
https://github.com/hyperledger/cactus
https://youtu.be/LKUdWoxz_lQ?t=4107
https://youtu.be/Ndo52HxAr0Q
26
Hyperledger Fabric 簡単構築ツール minifabricのご紹介 〜productionへの移行をminifabricで加速〜

More Related Content

What's hot

ブロックチェーン統合ツールCactusとトークンエコノミー実現への期待
ブロックチェーン統合ツールCactusとトークンエコノミー実現への期待ブロックチェーン統合ツールCactusとトークンエコノミー実現への期待
ブロックチェーン統合ツールCactusとトークンエコノミー実現への期待
Hyperleger Tokyo Meetup
 
Hyperledger Cactus V0.4 リリースの概要と今後の開発方針
Hyperledger Cactus V0.4 リリースの概要と今後の開発方針Hyperledger Cactus V0.4 リリースの概要と今後の開発方針
Hyperledger Cactus V0.4 リリースの概要と今後の開発方針
Hyperleger Tokyo Meetup
 
Hyperledger Besuの動向
Hyperledger Besuの動向Hyperledger Besuの動向
Hyperledger Besuの動向
Hyperleger Tokyo Meetup
 
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
Akihiro Suda
 
実践!OpenTelemetry と OSS を使った Observability 基盤の構築(CloudNative Days Tokyo 2022 発...
実践!OpenTelemetry と OSS を使った Observability 基盤の構築(CloudNative Days Tokyo 2022 発...実践!OpenTelemetry と OSS を使った Observability 基盤の構築(CloudNative Days Tokyo 2022 発...
実践!OpenTelemetry と OSS を使った Observability 基盤の構築(CloudNative Days Tokyo 2022 発...
NTT DATA Technology & Innovation
 
ブロックチェーンの仕組みと動向(入門編)
ブロックチェーンの仕組みと動向(入門編)ブロックチェーンの仕組みと動向(入門編)
ブロックチェーンの仕組みと動向(入門編)
NTT DATA OSS Professional Services
 
自宅k8s/vSphere入門
自宅k8s/vSphere入門自宅k8s/vSphere入門
Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)
Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)
Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)
NTT DATA Technology & Innovation
 
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャーKubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Toru Makabe
 
BuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルドBuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルド
Akihiro Suda
 
GitLab から GitLab に移行したときの思い出
GitLab から GitLab に移行したときの思い出GitLab から GitLab に移行したときの思い出
GitLab から GitLab に移行したときの思い出
富士通クラウドテクノロジーズ株式会社
 
OCHaCafe #4 Hyperledger Fabric アプリケーション設計入門ガイドでしゃべった内容+おまけ資料
OCHaCafe #4 Hyperledger Fabric アプリケーション設計入門ガイドでしゃべった内容+おまけ資料OCHaCafe #4 Hyperledger Fabric アプリケーション設計入門ガイドでしゃべった内容+おまけ資料
OCHaCafe #4 Hyperledger Fabric アプリケーション設計入門ガイドでしゃべった内容+おまけ資料
オラクルエンジニア通信
 
わかる!metadata.managedFields / Kubernetes Meetup Tokyo 48
わかる!metadata.managedFields / Kubernetes Meetup Tokyo 48わかる!metadata.managedFields / Kubernetes Meetup Tokyo 48
わかる!metadata.managedFields / Kubernetes Meetup Tokyo 48
Preferred Networks
 
マイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチマイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチ
増田 亨
 
【第26回Elasticsearch勉強会】Logstashとともに振り返る、やっちまった事例ごった煮
【第26回Elasticsearch勉強会】Logstashとともに振り返る、やっちまった事例ごった煮【第26回Elasticsearch勉強会】Logstashとともに振り返る、やっちまった事例ごった煮
【第26回Elasticsearch勉強会】Logstashとともに振り返る、やっちまった事例ごった煮
Hibino Hisashi
 
ネットワークでなぜ遅延が生じるのか
ネットワークでなぜ遅延が生じるのかネットワークでなぜ遅延が生じるのか
ネットワークでなぜ遅延が生じるのか
Jun Kato
 
GKE に飛んでくるトラフィックを 自由自在に操る力 | 第 10 回 Google Cloud INSIDE Games & Apps Online
GKE に飛んでくるトラフィックを 自由自在に操る力 | 第 10 回 Google Cloud INSIDE Games & Apps OnlineGKE に飛んでくるトラフィックを 自由自在に操る力 | 第 10 回 Google Cloud INSIDE Games & Apps Online
GKE に飛んでくるトラフィックを 自由自在に操る力 | 第 10 回 Google Cloud INSIDE Games & Apps Online
Google Cloud Platform - Japan
 
急速に進化を続けるCNIプラグイン Antrea
急速に進化を続けるCNIプラグイン Antrea 急速に進化を続けるCNIプラグイン Antrea
急速に進化を続けるCNIプラグイン Antrea
Motonori Shindo
 
PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜
PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜
PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜
Preferred Networks
 
Kubernetes環境に対する性能試験(Kubernetes Novice Tokyo #2 発表資料)
Kubernetes環境に対する性能試験(Kubernetes Novice Tokyo #2 発表資料)Kubernetes環境に対する性能試験(Kubernetes Novice Tokyo #2 発表資料)
Kubernetes環境に対する性能試験(Kubernetes Novice Tokyo #2 発表資料)
NTT DATA Technology & Innovation
 

What's hot (20)

ブロックチェーン統合ツールCactusとトークンエコノミー実現への期待
ブロックチェーン統合ツールCactusとトークンエコノミー実現への期待ブロックチェーン統合ツールCactusとトークンエコノミー実現への期待
ブロックチェーン統合ツールCactusとトークンエコノミー実現への期待
 
Hyperledger Cactus V0.4 リリースの概要と今後の開発方針
Hyperledger Cactus V0.4 リリースの概要と今後の開発方針Hyperledger Cactus V0.4 リリースの概要と今後の開発方針
Hyperledger Cactus V0.4 リリースの概要と今後の開発方針
 
Hyperledger Besuの動向
Hyperledger Besuの動向Hyperledger Besuの動向
Hyperledger Besuの動向
 
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
 
実践!OpenTelemetry と OSS を使った Observability 基盤の構築(CloudNative Days Tokyo 2022 発...
実践!OpenTelemetry と OSS を使った Observability 基盤の構築(CloudNative Days Tokyo 2022 発...実践!OpenTelemetry と OSS を使った Observability 基盤の構築(CloudNative Days Tokyo 2022 発...
実践!OpenTelemetry と OSS を使った Observability 基盤の構築(CloudNative Days Tokyo 2022 発...
 
ブロックチェーンの仕組みと動向(入門編)
ブロックチェーンの仕組みと動向(入門編)ブロックチェーンの仕組みと動向(入門編)
ブロックチェーンの仕組みと動向(入門編)
 
自宅k8s/vSphere入門
自宅k8s/vSphere入門自宅k8s/vSphere入門
自宅k8s/vSphere入門
 
Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)
Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)
Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)
 
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャーKubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
Kubernetesのしくみ やさしく学ぶ 内部構造とアーキテクチャー
 
BuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルドBuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルド
 
GitLab から GitLab に移行したときの思い出
GitLab から GitLab に移行したときの思い出GitLab から GitLab に移行したときの思い出
GitLab から GitLab に移行したときの思い出
 
OCHaCafe #4 Hyperledger Fabric アプリケーション設計入門ガイドでしゃべった内容+おまけ資料
OCHaCafe #4 Hyperledger Fabric アプリケーション設計入門ガイドでしゃべった内容+おまけ資料OCHaCafe #4 Hyperledger Fabric アプリケーション設計入門ガイドでしゃべった内容+おまけ資料
OCHaCafe #4 Hyperledger Fabric アプリケーション設計入門ガイドでしゃべった内容+おまけ資料
 
わかる!metadata.managedFields / Kubernetes Meetup Tokyo 48
わかる!metadata.managedFields / Kubernetes Meetup Tokyo 48わかる!metadata.managedFields / Kubernetes Meetup Tokyo 48
わかる!metadata.managedFields / Kubernetes Meetup Tokyo 48
 
マイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチマイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチ
 
【第26回Elasticsearch勉強会】Logstashとともに振り返る、やっちまった事例ごった煮
【第26回Elasticsearch勉強会】Logstashとともに振り返る、やっちまった事例ごった煮【第26回Elasticsearch勉強会】Logstashとともに振り返る、やっちまった事例ごった煮
【第26回Elasticsearch勉強会】Logstashとともに振り返る、やっちまった事例ごった煮
 
ネットワークでなぜ遅延が生じるのか
ネットワークでなぜ遅延が生じるのかネットワークでなぜ遅延が生じるのか
ネットワークでなぜ遅延が生じるのか
 
GKE に飛んでくるトラフィックを 自由自在に操る力 | 第 10 回 Google Cloud INSIDE Games & Apps Online
GKE に飛んでくるトラフィックを 自由自在に操る力 | 第 10 回 Google Cloud INSIDE Games & Apps OnlineGKE に飛んでくるトラフィックを 自由自在に操る力 | 第 10 回 Google Cloud INSIDE Games & Apps Online
GKE に飛んでくるトラフィックを 自由自在に操る力 | 第 10 回 Google Cloud INSIDE Games & Apps Online
 
急速に進化を続けるCNIプラグイン Antrea
急速に進化を続けるCNIプラグイン Antrea 急速に進化を続けるCNIプラグイン Antrea
急速に進化を続けるCNIプラグイン Antrea
 
PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜
PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜
PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜
 
Kubernetes環境に対する性能試験(Kubernetes Novice Tokyo #2 発表資料)
Kubernetes環境に対する性能試験(Kubernetes Novice Tokyo #2 発表資料)Kubernetes環境に対する性能試験(Kubernetes Novice Tokyo #2 発表資料)
Kubernetes環境に対する性能試験(Kubernetes Novice Tokyo #2 発表資料)
 

Similar to Hyperledger Fabric 簡単構築ツール minifabricのご紹介 〜productionへの移行をminifabricで加速〜

"Up" with vagrant and docker
"Up" with vagrant and docker"Up" with vagrant and docker
"Up" with vagrant and docker
Hiroshi Miura
 
Big Cloud Fabric製品紹介とOpenStack Neutron Plugin 実装概要
Big Cloud Fabric製品紹介とOpenStack Neutron Plugin 実装概要Big Cloud Fabric製品紹介とOpenStack Neutron Plugin 実装概要
Big Cloud Fabric製品紹介とOpenStack Neutron Plugin 実装概要
Shohei Yoshimoto
 
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Masahito Zembutsu
 
エンプラに Kubernetes を 導入してみて分かった 4つの Lessons Learned
エンプラに Kubernetes を 導入してみて分かった 4つの Lessons Learnedエンプラに Kubernetes を 導入してみて分かった 4つの Lessons Learned
エンプラに Kubernetes を 導入してみて分かった 4つの Lessons Learned
Daiki Kawanuma
 
2015 0227 OSC-Spring Tokyo NETMF
2015 0227 OSC-Spring Tokyo NETMF2015 0227 OSC-Spring Tokyo NETMF
2015 0227 OSC-Spring Tokyo NETMF
Atomu Hidaka
 
AnsibleおよびDockerで始めるInfrastructure as a Code
AnsibleおよびDockerで始めるInfrastructure as a CodeAnsibleおよびDockerで始めるInfrastructure as a Code
AnsibleおよびDockerで始めるInfrastructure as a Code
Satoru Yoshida
 
"Up" with vagrant and docker
"Up" with vagrant and docker"Up" with vagrant and docker
"Up" with vagrant and docker
Hiroshi Miura
 
20190219 hyperledger tokyo_meetup_min_bft
20190219 hyperledger tokyo_meetup_min_bft20190219 hyperledger tokyo_meetup_min_bft
20190219 hyperledger tokyo_meetup_min_bft
Hyperleger Tokyo Meetup
 
半日でわかる コンテナー技術 (入門編)
半日でわかる コンテナー技術 (入門編)半日でわかる コンテナー技術 (入門編)
半日でわかる コンテナー技術 (入門編)
Toru Makabe
 
Wsfc basic 130720
Wsfc basic 130720Wsfc basic 130720
Wsfc basic 130720
wintechq
 
Kubernetes1.9でWindowsコンテナーをクラスタ化
Kubernetes1.9でWindowsコンテナーをクラスタ化Kubernetes1.9でWindowsコンテナーをクラスタ化
Kubernetes1.9でWindowsコンテナーをクラスタ化
Takashi Kanai
 
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
NTT DATA Technology & Innovation
 
Hyperledgerプロジェクト概観
Hyperledgerプロジェクト概観Hyperledgerプロジェクト概観
Hyperledgerプロジェクト概観
Hyperleger Tokyo Meetup
 
Japan Container Day 2018
Japan Container Day 2018Japan Container Day 2018
Japan Container Day 2018
Yoshio Terada
 
Node.jsアプリの開発をモダン化するために取り組んできたこと
Node.jsアプリの開発をモダン化するために取り組んできたことNode.jsアプリの開発をモダン化するために取り組んできたこと
Node.jsアプリの開発をモダン化するために取り組んできたこと
bitbank, Inc. Tokyo, Japan
 
[SoftLayer Summit 2015] DockerとOpenVNetを用いたSoftLayer VLAN上への仮想ネットワークオーバーレイ
[SoftLayer Summit 2015] DockerとOpenVNetを用いたSoftLayer VLAN上への仮想ネットワークオーバーレイ[SoftLayer Summit 2015] DockerとOpenVNetを用いたSoftLayer VLAN上への仮想ネットワークオーバーレイ
[SoftLayer Summit 2015] DockerとOpenVNetを用いたSoftLayer VLAN上への仮想ネットワークオーバーレイ
cloudconductor
 
Intranet Development v1.0 (TSG LIVE! 12 LT )
Intranet Development v1.0 (TSG LIVE! 12 LT )Intranet Development v1.0 (TSG LIVE! 12 LT )
Intranet Development v1.0 (TSG LIVE! 12 LT )
iwashiira2ctf
 
NIFcLab Tech Laboratoryはじめます(もうすぐ)
NIFcLab Tech Laboratoryはじめます(もうすぐ)NIFcLab Tech Laboratoryはじめます(もうすぐ)
NIFcLab Tech Laboratoryはじめます(もうすぐ)
富士通クラウドテクノロジーズ株式会社
 
QuickDemo HashiCorp Terraform with Microsoft Azure and VMware vSphere
QuickDemo HashiCorp Terraform with Microsoft Azure and VMware vSphereQuickDemo HashiCorp Terraform with Microsoft Azure and VMware vSphere
QuickDemo HashiCorp Terraform with Microsoft Azure and VMware vSphere
Wataru Unno
 
Kubernetes 初心者の僕からの JKD 参加報告
Kubernetes 初心者の僕からの JKD 参加報告Kubernetes 初心者の僕からの JKD 参加報告
Kubernetes 初心者の僕からの JKD 参加報告
Kentaro NOMURA
 

Similar to Hyperledger Fabric 簡単構築ツール minifabricのご紹介 〜productionへの移行をminifabricで加速〜 (20)

"Up" with vagrant and docker
"Up" with vagrant and docker"Up" with vagrant and docker
"Up" with vagrant and docker
 
Big Cloud Fabric製品紹介とOpenStack Neutron Plugin 実装概要
Big Cloud Fabric製品紹介とOpenStack Neutron Plugin 実装概要Big Cloud Fabric製品紹介とOpenStack Neutron Plugin 実装概要
Big Cloud Fabric製品紹介とOpenStack Neutron Plugin 実装概要
 
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
 
エンプラに Kubernetes を 導入してみて分かった 4つの Lessons Learned
エンプラに Kubernetes を 導入してみて分かった 4つの Lessons Learnedエンプラに Kubernetes を 導入してみて分かった 4つの Lessons Learned
エンプラに Kubernetes を 導入してみて分かった 4つの Lessons Learned
 
2015 0227 OSC-Spring Tokyo NETMF
2015 0227 OSC-Spring Tokyo NETMF2015 0227 OSC-Spring Tokyo NETMF
2015 0227 OSC-Spring Tokyo NETMF
 
AnsibleおよびDockerで始めるInfrastructure as a Code
AnsibleおよびDockerで始めるInfrastructure as a CodeAnsibleおよびDockerで始めるInfrastructure as a Code
AnsibleおよびDockerで始めるInfrastructure as a Code
 
"Up" with vagrant and docker
"Up" with vagrant and docker"Up" with vagrant and docker
"Up" with vagrant and docker
 
20190219 hyperledger tokyo_meetup_min_bft
20190219 hyperledger tokyo_meetup_min_bft20190219 hyperledger tokyo_meetup_min_bft
20190219 hyperledger tokyo_meetup_min_bft
 
半日でわかる コンテナー技術 (入門編)
半日でわかる コンテナー技術 (入門編)半日でわかる コンテナー技術 (入門編)
半日でわかる コンテナー技術 (入門編)
 
Wsfc basic 130720
Wsfc basic 130720Wsfc basic 130720
Wsfc basic 130720
 
Kubernetes1.9でWindowsコンテナーをクラスタ化
Kubernetes1.9でWindowsコンテナーをクラスタ化Kubernetes1.9でWindowsコンテナーをクラスタ化
Kubernetes1.9でWindowsコンテナーをクラスタ化
 
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
オススメのJavaログ管理手法 ~コンテナ編~(Open Source Conference 2022 Online/Spring 発表資料)
 
Hyperledgerプロジェクト概観
Hyperledgerプロジェクト概観Hyperledgerプロジェクト概観
Hyperledgerプロジェクト概観
 
Japan Container Day 2018
Japan Container Day 2018Japan Container Day 2018
Japan Container Day 2018
 
Node.jsアプリの開発をモダン化するために取り組んできたこと
Node.jsアプリの開発をモダン化するために取り組んできたことNode.jsアプリの開発をモダン化するために取り組んできたこと
Node.jsアプリの開発をモダン化するために取り組んできたこと
 
[SoftLayer Summit 2015] DockerとOpenVNetを用いたSoftLayer VLAN上への仮想ネットワークオーバーレイ
[SoftLayer Summit 2015] DockerとOpenVNetを用いたSoftLayer VLAN上への仮想ネットワークオーバーレイ[SoftLayer Summit 2015] DockerとOpenVNetを用いたSoftLayer VLAN上への仮想ネットワークオーバーレイ
[SoftLayer Summit 2015] DockerとOpenVNetを用いたSoftLayer VLAN上への仮想ネットワークオーバーレイ
 
Intranet Development v1.0 (TSG LIVE! 12 LT )
Intranet Development v1.0 (TSG LIVE! 12 LT )Intranet Development v1.0 (TSG LIVE! 12 LT )
Intranet Development v1.0 (TSG LIVE! 12 LT )
 
NIFcLab Tech Laboratoryはじめます(もうすぐ)
NIFcLab Tech Laboratoryはじめます(もうすぐ)NIFcLab Tech Laboratoryはじめます(もうすぐ)
NIFcLab Tech Laboratoryはじめます(もうすぐ)
 
QuickDemo HashiCorp Terraform with Microsoft Azure and VMware vSphere
QuickDemo HashiCorp Terraform with Microsoft Azure and VMware vSphereQuickDemo HashiCorp Terraform with Microsoft Azure and VMware vSphere
QuickDemo HashiCorp Terraform with Microsoft Azure and VMware vSphere
 
Kubernetes 初心者の僕からの JKD 参加報告
Kubernetes 初心者の僕からの JKD 参加報告Kubernetes 初心者の僕からの JKD 参加報告
Kubernetes 初心者の僕からの JKD 参加報告
 

More from Hyperleger Tokyo Meetup

Overview of Hyperledger Foundation
Overview of Hyperledger FoundationOverview of Hyperledger Foundation
Overview of Hyperledger Foundation
Hyperleger Tokyo Meetup
 
Hyperledger Fabricコミュニティ活動体験& Hyperledger Fabric最新状況ご紹介
Hyperledger Fabricコミュニティ活動体験& Hyperledger Fabric最新状況ご紹介Hyperledger Fabricコミュニティ活動体験& Hyperledger Fabric最新状況ご紹介
Hyperledger Fabricコミュニティ活動体験& Hyperledger Fabric最新状況ご紹介
Hyperleger Tokyo Meetup
 
Hyperledger Irohaを活用した海外におけるCBDCとクロスボーダー送金
Hyperledger Irohaを活用した海外におけるCBDCとクロスボーダー送金Hyperledger Irohaを活用した海外におけるCBDCとクロスボーダー送金
Hyperledger Irohaを活用した海外におけるCBDCとクロスボーダー送金
Hyperleger Tokyo Meetup
 
Hyperledger FireFly - HYPERLEDGER Workshop, WebX
Hyperledger FireFly - HYPERLEDGER Workshop, WebXHyperledger FireFly - HYPERLEDGER Workshop, WebX
Hyperledger FireFly - HYPERLEDGER Workshop, WebX
Hyperleger Tokyo Meetup
 
Hyperledger Irohaを活用した海外におけるCBDCとクロスボーダー送金
Hyperledger Irohaを活用した海外におけるCBDCとクロスボーダー送金Hyperledger Irohaを活用した海外におけるCBDCとクロスボーダー送金
Hyperledger Irohaを活用した海外におけるCBDCとクロスボーダー送金
Hyperleger Tokyo Meetup
 
エンタープライズブロックチェーン構築の基礎
エンタープライズブロックチェーン構築の基礎エンタープライズブロックチェーン構築の基礎
エンタープライズブロックチェーン構築の基礎
Hyperleger Tokyo Meetup
 
ブロックチェーンを用いた自己主権型デジタルID管理
ブロックチェーンを用いた自己主権型デジタルID管理ブロックチェーンを用いた自己主権型デジタルID管理
ブロックチェーンを用いた自己主権型デジタルID管理
Hyperleger Tokyo Meetup
 
異種ブロックチェーン統合ツールHyperledger Cactiご紹介
異種ブロックチェーン統合ツールHyperledger Cactiご紹介異種ブロックチェーン統合ツールHyperledger Cactiご紹介
異種ブロックチェーン統合ツールHyperledger Cactiご紹介
Hyperleger Tokyo Meetup
 
ファイアフライ「蛍」FireFly to Public and Private Chains
ファイアフライ「蛍」FireFly to Public and Private Chainsファイアフライ「蛍」FireFly to Public and Private Chains
ファイアフライ「蛍」FireFly to Public and Private Chains
Hyperleger Tokyo Meetup
 
Hyperledger Iroha
Hyperledger IrohaHyperledger Iroha
Hyperledger Iroha
Hyperleger Tokyo Meetup
 
Hyperledger Aries 101
Hyperledger Aries 101Hyperledger Aries 101
Hyperledger Aries 101
Hyperleger Tokyo Meetup
 
Introduction; Blockchain 101
Introduction; Blockchain 101Introduction; Blockchain 101
Introduction; Blockchain 101
Hyperleger Tokyo Meetup
 
Trusted Data Ecosystems(信頼できるデータエコシステム):アイデンティティに価値を見出す
Trusted Data Ecosystems(信頼できるデータエコシステム):アイデンティティに価値を見出すTrusted Data Ecosystems(信頼できるデータエコシステム):アイデンティティに価値を見出す
Trusted Data Ecosystems(信頼できるデータエコシステム):アイデンティティに価値を見出す
Hyperleger Tokyo Meetup
 
パネルディスカッション : エンタープライズブロックチェーンの活用例 オラクル資料
パネルディスカッション : エンタープライズブロックチェーンの活用例 オラクル資料パネルディスカッション : エンタープライズブロックチェーンの活用例 オラクル資料
パネルディスカッション : エンタープライズブロックチェーンの活用例 オラクル資料
Hyperleger Tokyo Meetup
 
ソラミツのご紹介 〜Hyperledger Irohaを活用した導入事例〜
ソラミツのご紹介 〜Hyperledger Irohaを活用した導入事例〜ソラミツのご紹介 〜Hyperledger Irohaを活用した導入事例〜
ソラミツのご紹介 〜Hyperledger Irohaを活用した導入事例〜
Hyperleger Tokyo Meetup
 
いろはを活用したデジタル地域通貨の運用開始
いろはを活用したデジタル地域通貨の運用開始いろはを活用したデジタル地域通貨の運用開始
いろはを活用したデジタル地域通貨の運用開始
Hyperleger Tokyo Meetup
 
パネルディスカッション : エンタープライズブロックチェーンの活用例
パネルディスカッション : エンタープライズブロックチェーンの活用例パネルディスカッション : エンタープライズブロックチェーンの活用例
パネルディスカッション : エンタープライズブロックチェーンの活用例
Hyperleger Tokyo Meetup
 
ブロックチェーンの実用化に向けたネットワーク・スケーリング
ブロックチェーンの実用化に向けたネットワーク・スケーリングブロックチェーンの実用化に向けたネットワーク・スケーリング
ブロックチェーンの実用化に向けたネットワーク・スケーリング
Hyperleger Tokyo Meetup
 
Challenges of applying Blockchain to enterprise systems in NTTDATA
Challenges of applying Blockchain to enterprise systems in NTTDATAChallenges of applying Blockchain to enterprise systems in NTTDATA
Challenges of applying Blockchain to enterprise systems in NTTDATA
Hyperleger Tokyo Meetup
 
世界経済フォーラム第四次産業革命センターによるブロックチェーンの相互運用フレームワークのご紹介
世界経済フォーラム第四次産業革命センターによるブロックチェーンの相互運用フレームワークのご紹介世界経済フォーラム第四次産業革命センターによるブロックチェーンの相互運用フレームワークのご紹介
世界経済フォーラム第四次産業革命センターによるブロックチェーンの相互運用フレームワークのご紹介
Hyperleger Tokyo Meetup
 

More from Hyperleger Tokyo Meetup (20)

Overview of Hyperledger Foundation
Overview of Hyperledger FoundationOverview of Hyperledger Foundation
Overview of Hyperledger Foundation
 
Hyperledger Fabricコミュニティ活動体験& Hyperledger Fabric最新状況ご紹介
Hyperledger Fabricコミュニティ活動体験& Hyperledger Fabric最新状況ご紹介Hyperledger Fabricコミュニティ活動体験& Hyperledger Fabric最新状況ご紹介
Hyperledger Fabricコミュニティ活動体験& Hyperledger Fabric最新状況ご紹介
 
Hyperledger Irohaを活用した海外におけるCBDCとクロスボーダー送金
Hyperledger Irohaを活用した海外におけるCBDCとクロスボーダー送金Hyperledger Irohaを活用した海外におけるCBDCとクロスボーダー送金
Hyperledger Irohaを活用した海外におけるCBDCとクロスボーダー送金
 
Hyperledger FireFly - HYPERLEDGER Workshop, WebX
Hyperledger FireFly - HYPERLEDGER Workshop, WebXHyperledger FireFly - HYPERLEDGER Workshop, WebX
Hyperledger FireFly - HYPERLEDGER Workshop, WebX
 
Hyperledger Irohaを活用した海外におけるCBDCとクロスボーダー送金
Hyperledger Irohaを活用した海外におけるCBDCとクロスボーダー送金Hyperledger Irohaを活用した海外におけるCBDCとクロスボーダー送金
Hyperledger Irohaを活用した海外におけるCBDCとクロスボーダー送金
 
エンタープライズブロックチェーン構築の基礎
エンタープライズブロックチェーン構築の基礎エンタープライズブロックチェーン構築の基礎
エンタープライズブロックチェーン構築の基礎
 
ブロックチェーンを用いた自己主権型デジタルID管理
ブロックチェーンを用いた自己主権型デジタルID管理ブロックチェーンを用いた自己主権型デジタルID管理
ブロックチェーンを用いた自己主権型デジタルID管理
 
異種ブロックチェーン統合ツールHyperledger Cactiご紹介
異種ブロックチェーン統合ツールHyperledger Cactiご紹介異種ブロックチェーン統合ツールHyperledger Cactiご紹介
異種ブロックチェーン統合ツールHyperledger Cactiご紹介
 
ファイアフライ「蛍」FireFly to Public and Private Chains
ファイアフライ「蛍」FireFly to Public and Private Chainsファイアフライ「蛍」FireFly to Public and Private Chains
ファイアフライ「蛍」FireFly to Public and Private Chains
 
Hyperledger Iroha
Hyperledger IrohaHyperledger Iroha
Hyperledger Iroha
 
Hyperledger Aries 101
Hyperledger Aries 101Hyperledger Aries 101
Hyperledger Aries 101
 
Introduction; Blockchain 101
Introduction; Blockchain 101Introduction; Blockchain 101
Introduction; Blockchain 101
 
Trusted Data Ecosystems(信頼できるデータエコシステム):アイデンティティに価値を見出す
Trusted Data Ecosystems(信頼できるデータエコシステム):アイデンティティに価値を見出すTrusted Data Ecosystems(信頼できるデータエコシステム):アイデンティティに価値を見出す
Trusted Data Ecosystems(信頼できるデータエコシステム):アイデンティティに価値を見出す
 
パネルディスカッション : エンタープライズブロックチェーンの活用例 オラクル資料
パネルディスカッション : エンタープライズブロックチェーンの活用例 オラクル資料パネルディスカッション : エンタープライズブロックチェーンの活用例 オラクル資料
パネルディスカッション : エンタープライズブロックチェーンの活用例 オラクル資料
 
ソラミツのご紹介 〜Hyperledger Irohaを活用した導入事例〜
ソラミツのご紹介 〜Hyperledger Irohaを活用した導入事例〜ソラミツのご紹介 〜Hyperledger Irohaを活用した導入事例〜
ソラミツのご紹介 〜Hyperledger Irohaを活用した導入事例〜
 
いろはを活用したデジタル地域通貨の運用開始
いろはを活用したデジタル地域通貨の運用開始いろはを活用したデジタル地域通貨の運用開始
いろはを活用したデジタル地域通貨の運用開始
 
パネルディスカッション : エンタープライズブロックチェーンの活用例
パネルディスカッション : エンタープライズブロックチェーンの活用例パネルディスカッション : エンタープライズブロックチェーンの活用例
パネルディスカッション : エンタープライズブロックチェーンの活用例
 
ブロックチェーンの実用化に向けたネットワーク・スケーリング
ブロックチェーンの実用化に向けたネットワーク・スケーリングブロックチェーンの実用化に向けたネットワーク・スケーリング
ブロックチェーンの実用化に向けたネットワーク・スケーリング
 
Challenges of applying Blockchain to enterprise systems in NTTDATA
Challenges of applying Blockchain to enterprise systems in NTTDATAChallenges of applying Blockchain to enterprise systems in NTTDATA
Challenges of applying Blockchain to enterprise systems in NTTDATA
 
世界経済フォーラム第四次産業革命センターによるブロックチェーンの相互運用フレームワークのご紹介
世界経済フォーラム第四次産業革命センターによるブロックチェーンの相互運用フレームワークのご紹介世界経済フォーラム第四次産業革命センターによるブロックチェーンの相互運用フレームワークのご紹介
世界経済フォーラム第四次産業革命センターによるブロックチェーンの相互運用フレームワークのご紹介
 

Recently uploaded

LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアルLoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
CRI Japan, Inc.
 
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
Matsushita Laboratory
 
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdfFIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance
 
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
atsushi061452
 
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
harmonylab
 
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
Fukuoka Institute of Technology
 
【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow
Sony - Neural Network Libraries
 
FIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdfFIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdfFIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance
 
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
iPride Co., Ltd.
 
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
atsushi061452
 
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
yassun7010
 
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdfFIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdfFIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance
 
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
NTT DATA Technology & Innovation
 

Recently uploaded (15)

LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアルLoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
 
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
TaketoFujikawa_物語のコンセプトに基づく情報アクセス手法の基礎検討_JSAI2024
 
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdfFIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
FIDO Alliance Osaka Seminar: LY-DOCOMO-KDDI-Mercari Panel.pdf
 
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
論文紹介: Offline Q-Learning on diverse Multi-Task data both scales and generalizes
 
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
【DLゼミ】XFeat: Accelerated Features for Lightweight Image Matching
 
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
単腕マニピュレータによる 複数物体の同時組み立ての 基礎的考察 / Basic Approach to Robotic Assembly of Multi...
 
【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow【AI論文解説】Consistency ModelとRectified Flow
【AI論文解説】Consistency ModelとRectified Flow
 
FIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdfFIDO Alliance Osaka Seminar: CloudGate.pdf
FIDO Alliance Osaka Seminar: CloudGate.pdf
 
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdfFIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
FIDO Alliance Osaka Seminar: PlayStation Passkey Deployment Case Study.pdf
 
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
MPAなWebフレームワーク、Astroの紹介 (その2) 2024/05/24の勉強会で発表されたものです。
 
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
論文紹介: Exploiting semantic segmentation to boost reinforcement learning in vid...
 
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
 
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdfFIDO Alliance Osaka Seminar: Welcome Slides.pdf
FIDO Alliance Osaka Seminar: Welcome Slides.pdf
 
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdfFIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
FIDO Alliance Osaka Seminar: NEC & Yubico Panel.pdf
 
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
YugabyteDB適用に向けた取り組みと隠れた魅力 (DSS Asia 2024 発表資料)
 

Hyperledger Fabric 簡単構築ツール minifabricのご紹介 〜productionへの移行をminifabricで加速〜

  • 1. Hyperledger Fabric 簡単構築ツール minifabricのご紹介 ~productionへの移行をminifabric で加速~ 2021.10.7 富士通(株) データ&セキュリティ研究所 中川 格 Copyright 2021 FUJITSU LIMITED 1 @ Hyperledger Meetup Tokyo
  • 2. 自己紹介 (中川 格 / Itaru NAKAGAWA) 現所属に Copyright 2021 FUJITSU LIMITED 2019.4 2020.12 Hyperledger Fabric の世界と関わりをもつ minifabric と出会い、使い始める 2021.1 2021.4 minifabricへの貢献開始(利用者の立場からカイゼン) (株)富士通研究所 入社。 ネットワーキングやIoT関連の研究開発を担当 今日 趣味: コロナ前 コロナ後 minifabric commiter に就任 (現: コミット件数2位) 2021.8 担当部分 Fabric アプリケーション Hyperledger Fabric Fabric API 担当部分を動かすには Fabric環境が必要 ※以降、Hyperledger Fabric を 単に “Fabric”とよぶことがあります @itaru2622 2
  • 3. Hyperledger Fabricとは エンタープライズ向けのブロックチェーンプラットフォーム ユースケース:金融系からサプライチェーンまで様々 クラウド各社がマネージドサービスとして提供 Copyright 2021 FUJITSU LIMITED “2nd Global Enterprise Blockchain Benchmarking Study” ケンブリッジ大学, 2019年調査 Hyperledger Fabric 48% Hyperledger Fabric ネットワークの概要 ◆コンポーネント: 3種  Peer 台帳(ブロック)を保持  Orderer トランザクション管理とブロック生成を担当  CA 証明書管理や認証を担当 ◆ 台帳の読み書きにはchaincode(スマートコントラクト)を用いる ◆ 抽象概念:2つ  チャンネル 台帳の共有範囲の制御に用いられる。 同一チャンネル内のPeerの台帳は同期される  Organization 企業や組織に対応。 全コンポーネントは何かのOrganizationに所属 Peer Peer CA 台帳 CA Peer Peer 台帳 チャンネル chaincode chaincode アプリケーション org1 org2 Orderer Orderer 3
  • 4. before minifabric: Fabric構築はハードワーク Copyright 2021 FUJITSU LIMITED configtx crypto-config certs params docker run: cert path endpoint policy: cn: 運試し <=Start FIN=> STOP 1 1 4 通信開始. 最初の難関 設定:相互に関連し、変更は多か所に影響 TODO 1. : 100 …. : endpoint cert path 数行~ 最初の構築成功には… 1週間かかった Fabricのネットワーク図 変更漏れとの戦い タイプミスとの戦い x 100本ノック オペレーション:大量の長いコマンド 4
  • 5. before minifabric: Fabric構築はハードワーク Copyright 2021 FUJITSU LIMITED configtx crypto-config certs params docker run: cert path endpoint policy: cn: 運試し <=Start FIN=> STOP 1 1 4 Organizations: - &org0 ID: org0 AnchorPeers: #アクセス先エンドポイント - Host: peer1.org0.example.com Port: 7051 Policies: Readers: Type: Signature Rule: "OR('org0.admin', 'org0.peer', 'org0.client’)” Admins: Type: Signature Rule: "OR('org0.admin')" : Channel: &ChannelDefaults Policies: Writers: Type: ImplicitMeta Rule: "ANY Writers" Admins: Type: ImplicitMeta Rule: "MAJORITY Admins" configtxの具体例(一部) TODO 1. : 100 …. : endpoint cert path 各組織・コンポーネントや チャンネルの構成 設定:相互に関連し、変更は多か所に影響 オペレーション:大量の長いコマンド よくある例 自分のマシンから使う:OK 他から:NG 5
  • 6. before minifabric: Fabric構築はハードワーク Copyright 2021 FUJITSU LIMITED configtx crypto-config certs params docker run: cert path endpoint policy: cn: 運試し <=Start FIN=> STOP 1 1 4 Organizations: - &org0 ID: org0 AnchorPeers: #アクセス先エンドポイント - Host: peer1.org0.example.com Port: 7051 Policies: Readers: Type: Signature Rule: "OR('org0.admin', 'org0.peer', 'org0.client’)” Admins: Type: Signature Rule: "OR('org0.admin')" : Channel: &ChannelDefaults Policies: Writers: Type: ImplicitMeta Rule: "ANY Writers" Admins: Type: ImplicitMeta Rule: "MAJORITY Admins" configtxの具体例(一部) TODO 1. : 100 …. : endpoint cert path 各組織・コンポーネントや チャンネルの構成 設定:相互に関連し、変更は多か所に影響 オペレーション:大量の長いコマンド よくある例 自分のマシンから使う:OK 他から:NG うまくいかない… 他サンプルの値にしてみるか? ⇒ org0.memberに変更 ・難解な用語:理解前の変更は失敗のもと 6
  • 7. before minifabric: Fabric構築はハードワーク Copyright 2021 FUJITSU LIMITED configtx crypto-config certs params docker run: cert path endpoint policy: cn: 運試し <=Start FIN=> STOP 1 1 4 Organizations: - &org0 ID: org0 AnchorPeers: #アクセス先エンドポイント - Host: peer1.org0.example.com Port: 7051 Policies: Readers: Type: Signature Rule: "OR('org0.admin', 'org0.peer', 'org0.client’)” Admins: Type: Signature Rule: "OR('org0.admin')" : Channel: &ChannelDefaults Policies: Writers: Type: ImplicitMeta Rule: "ANY Writers" Admins: Type: ImplicitMeta Rule: "MAJORITY Admins" configtxの具体例(一部) TODO 1. : 100 …. : endpoint cert path 各組織・コンポーネントや チャンネルの構成 設定:相互に関連し、変更は多か所に影響 オペレーション:大量の長いコマンド よくある例 自分のマシンから使う:OK 他から:NG ・難解な用語:理解前の変更は失敗のもと 他マシンから使うには 実際のIPやポートを指定する ・難解な用語:理解前の変更は失敗のもと ・エンドポイント: 各構築先に合わせて指定 ⇒設計と実際が違うと構築失敗 7
  • 8. before minifabric: Fabric構築はハードワーク Copyright 2021 FUJITSU LIMITED configtx crypto-config certs params docker run: cert path endpoint policy: cn: 運試し <=Start FIN=> STOP 1 1 4 上記で1操作分。こういうのが100件以上。 export CORE_PEER_ADDRESS=peer1.org0.example.com:7051 export ORDERER_ADDRESS=orderer1.example.com:7050 export CORE_PEER_LOCALMSPID=org0 export CORE_PEER_MSPCONFIGPATH=/certs/peerOrganizations /org0.example.com/users/Admin@org0.example.com/msp export CORE_PEER_TLS_ROOTCERT_FILE=…/tls/ca.crt export ORDERER_TLS_CA=/certs/…/tls/ca.crt export CORE_PEER_TLS_ENABLED=true export CORE_PEER_ID=cli peer channel create -c mychannel -f mychannel.tx -o $ORDERER_ADDRESS --cafile $ORDERER_TLS_CA --tls TODO 1. : 100 …. : endpoint cert path オペレーション:大量の長いコマンド 最初の難関 (通信開始) 設定:相互に関連し、変更は多か所に影響 エラー発生で最初からやり直し…もたびたび発生 オペレーション具体例:チャンネル作成 8
  • 9. 環境構築あるある Fabric編 Copyright 2021 FUJITSU LIMITED Person.X 組織名変えて 従来の方法 トライアルでFabricを使いたいんだけど 組織増やして 新version使いたい 別マシンに移したい 9
  • 10. 環境構築あるある Fabric編 Copyright 2021 FUJITSU LIMITED Person.X 組織名変えて 数日かかる 従来の方法 トライアルでFabricを使いたいんだけど 組織増やして 1週間後に ・・・ ・・・ 数日かかる 数日かかる ・・・ 早めによろしく! 設定やコマンドが変わる 所に注意 新version使いたい 別マシンに移したい ・・・ 数日かかる 10
  • 11. 環境構築あるある Fabric編 Copyright 2021 FUJITSU LIMITED Person.X 組織名変えて 数日かかる 従来の方法 トライアルでFabricを使いたいんだけど 組織増やして 1週間後に ・・・ 別の系を作りたい。 構築方法教えて (わかりやすく) n年かかる ・・・ 数日かかる 数日かかる ・・・ 早めによろしく! 設定やコマンドが変わる 所に注意 新version使いたい ・・・ ツール探さねば 別マシンに移したい ・・・ ツール欲しい・・・ 数日かかる 11
  • 12. with minifabric: Fabric構築は簡単 https://github.com/hyperledger-labs/minifabric チェックリスト ~1分 設定の作成 ~5分 オペレーション:コマンド1発 前提条件  OS: Linux or Win10  インターネットアクセス  docker $minifab up オペレーション: 簡単・短い カスタマイズ用オプション: - fabric versionの指定(1.4~2.4) - chaincodeの指定 - channel名の指定 など $minifab cleanup @全削除時 @構築時 fabric: cas: - "ca1.org0.example.com“ peers: - "peer1.org0.example.com“ orderers: - "orderer1.example.com“ settings: ca: peer: orderer: FABRIC_LOGGING_SPEC: DEBUG # the default goproxy # goproxy: https://proxy.golang.org,direct # set the endpoint address to override detected IP address # endpoint_address: 104.196.45.144 # set the docker network name netname: "mysite" # set the extra optins for docker run command # container_options: "--restart=always …" 設定:簡単(spec.yaml) 1ファイル、相互関連なし 名前リストのみ 名前や件数:自由 必要なときだけ変更 12
  • 13. Before/After minifabric Copyright 2021 FUJITSU LIMITED phase Before After Fabric network 設計 設定の 書き下し 証明書生成 全インスタンス起動 チャンネル作成 チャンネル参加 anchor peer 更新 connection profile生成 chaincode インストール chaincode 承認 chaincode コミット chaincode 初期化 ハードコーディングありfor 労力削減 - Policies - Passwords 1週間 数分 第一関門 制限事項なし 多数 コマンド1発 大変 簡単 fabric version差 は要自己解決 fabric version変更は簡単 設定 オペレーション 運試し <=Start FIN=> STOP セキュリティに絡む部分 13
  • 14. fabric: cas: - "ca1.org0.example.com" - "ca1.org1.example.com“ peers: - "peer1.org0.example.com" - "peer2.org0.example.com" - "peer1.org1.example.com" - "peer2.org1.example.com“ : orderers: - "orderer1.example.com" - "orderer2.example.com" - "orderer3.example.com" Type: - Peer用 - Orderer用 minifabric の設定ファイル spec.yaml 作成方法 (名前リスト) Copyright 2021 FUJITSU LIMITED ドメイン名(≒organization) Type ホスト名 (1件以上) CA名 org0.example.com Peer peer1, peer2 ca1 org1.example.com Peer peer1, peer2 ca1 example.com Orderer orderer1,orderer2, orderer3 ー peer1 peer2 ca1 peer1 peer2 ca1 orderer1 orderer2 orderer3 グループわけ FQDNで列挙 ドット(.)でつなげる 1 3 spec.yaml完成 2 表をイメージし・・・ * ドメイン名は重複しないこと 4 ホスト名 ドメイン名 CAの件数 Peer用: 1件以上 Oderer用:0件でもok ca, peer, orderer FQDN= org0.example.com 〃 〃 org1.example.com 〃 〃 example.com 〃 〃 ※orderer件数は奇数にする(1以上) 14
  • 15. minifabric アーキテクチャ: 簡単・フレキシブルな構築の実現方法 Copyright 2021 FUJITSU LIMITED minifab コマンド docker リポジトリ Playbooks (workflow) コマンド 設定 Fabric 構築の知識 Templates 実行(構築オペレーション) minifab コンテナ 起動 Fabric 構築手順 タイプミスなし 名前・件数:自由 エンドポイント CLI 実行 ・実行時の引数 ・spec.yaml engine {{ }} playbooks フォルダ内 vars フォルダに出力・保存 configtx、crypto-config 構築コマンド、証明書、 ・・・ ① ②実行 出力 ユーザ指定 実際の構築操作 minifabコンテナ内 15
  • 16. Minifabricの柔軟性 Copyright 2021 FUJITSU LIMITED 項目 備考 Reference Y Fabricの組織名やコンポーネント名の指定 自由 前ページ参照 Y Fabricの組織数やpeer数 自由 (ホスト性能内 or 制限ナシ@k8s) 前ページ参照 Y Fabric versionの選択 オプション ‘-i ver’ (1.4.4~2.4) CI@ Y 自分のchaincode(スマートコントラクト) 利用 予約フォルダに置いてオプション指定 (‘ -n chaincode名 -l 言語) docs@ Y chaincode のアップグレード サブコマンド ‘minifab ccup -v newver” cmd refs Y chaincode実行 (アプリ開発ナシで) サブコマンド ‘minifab invoke’ docs@ Y 稼働中Fabricの拡張(新組織追加) minifabric のgithubページ参照 docs@ Y 台帳へのリッチクエリ検索 オプション ‘-s couchdb’ cmd refs Y チャンネル名の指定 オプション ‘-c yourchannel’ cmd refs Y コンテナ群の起動のみ(チャンネル作成など省略) サブコマンド ‘minifab netup’ cmd refs N public認証局発行の証明書利用 未サポート。現状オレオレ証明書のみ about more … https://github.com/hyperledger- labs/minifabric/tree/main/docs 16
  • 17. Demo: playing movie minifabric youtube playlist: https://www.youtube.com/playlist?list=PL0MZ85B_96CExhq0YdHLPS5cmSBvSmwyO Copyright 2021 FUJITSU LIMITED https://youtu.be/QCsKQ1S4C9E?list=PL0MZ85B_96CExhq0YdHLPS5cmSBvSmwyO&t 17
  • 18. Copyright 2021 FUJITSU LIMITED ~修了証書~ あなたはFabric構築に必要な事項を習得済です minifabric インストール方法 構築コマンド (minifab up) 終了コマンド (minifab cleanup) カスタム環境の作りかた① 設定ファイル spec.yaml とアレンジ方法 カスタム環境の作りかた② コマンドオプション各種 (minifab -h ほか) ご自身でFabricを構築・ご活用ください 18
  • 19. 明日以降 Copyright 2021 FUJITSU LIMITED Person.X minifabric 数日かかる 数分 従来の方法 ・・・ 選ぶのは どっち あなた 構築ツール minifabric使うと あなたも簡単に作れますよ! でもこう言ってみませんか? 組織名変えて トライアルでFabricを使いたいんだけど 組織増やして 別の系を作りたい。 構築方法教えて (わかりやすく) 新version使いたい 別マシンに移したい 19
  • 20. minifabric の利点 Copyright 2021 FUJITSU LIMITED Trial / Sandbox など ユースケース: ・新しいことを試す ・Pull Reqのマージ前テスト ・issueの再現テスト・修正環境 minifabricで構築 ‘minifabric up’ はgithub actions(CI workflow)で動作済。 Production環境 他手段利用 minifabric 簡単・すぐに作れる nightly beta issue fragile Welcome 使い捨てもできるFabric環境を得た 20
  • 21. 発表者自身の使い方 Copyright 2021 FUJITSU LIMITED VMイメージ(共通) * minifabric * docker * 他ツール ソースリポジトリ (用途別) VM をコピーしてから minifab up main branch feature branch fixing branch VM1 VM2 VM3 新しいことを試す issue再現・修正 必要になった時に その場で作る いつでも作り直せる 21
  • 22. minifabric の最新情報: Kubernetes(k8s) 対応 の紹介 k8s は、 docker のシングルホスト動作が前提という性能限界へのブレイクスルーを提供。 minifabricを使う場合、手順の差は3か所のみ( k8sクラスタを持っている場合) Copyright 2021 FUJITSU LIMITED kube config k8s クラスタ環境の入手 minifab 予約フォルダにコピー fabric: cas: peers: orderers: : endpoint_address: extIP エンドポイントアドレス指定 1 2 $minifab up -e true a 3 必須 plugin 提供機能 マネージド k8s 他 のk8s Ingress controller external Port 要インストール ready? loadbarancer external IP 済 ready? volume provisioner shared disk 済 ready? extIP:extPort spec.yaml b 必須Plugins確認(必要に応じて導入) your app 必須 plugins 最初はマネージド k8sの利用を推奨します。 k8s版は fabric 2.x以降のみサポート コマンドにオプション指定(-e) vars/kubernetes/config https://github.com/hyperledger-labs/minifabric/blob/main/docs/DeployOntoK8S.md 22
  • 23. 参考) minifabric コマンドレファレンス Usage: minifab <mode> [options] Copyright 2021 FUJITSU LIMITED option summary -h print usage -e flag if node endpoints should be exposed -f output log verbosity -i the fabric version to be used (2.1 or others) -o organization name for org specific ops -c channel name -l chaincode language (go / nodejs / java ) -n chaincode name to be installed -s the backend DB for peer (golevel or couchdb) -b block number to be queried -d chaincode initialization flag -p chaincode instantiation and invocation parameters -r flag if for chaincode processes private data -t chaincode instantiation and invocation transient parameters -v chaincode version to be installed -y chaincode policy mode summary up all in one command for fabric setup cleanup remove all the nodes and runtime files imageget download docker images of fabric generate generate certificates and genesis block netup bring up the network only stats list all nodes and status create create application channel join join all peers currently in the network to a channel anchorupdate do channel update for all peer anchors in all orgs profilegen generate connection profiles install install chaincode approve approve chaincode commit commit chaincode for fabric>=2.0 initialize initialize chaincode for fabric >= 2.0 discover discover channel endorsement policy Fabric構築 step by step mode(cont.) summary apprun (experimental) run chaincode app if there is any caliperrun (experimental) run caliper test explorerdown shutdown Hyperledger explorer explorerup start up Hyperledger explorer portainerdown shutdown portainer web management portainerup start up portainer web management blockquery do channel block query for the channel tx channelquery do channel query for the channel configuration channelsign do channel config update signoff channelupdate do channel update with a given new channel down tear down the network instantiate instantiate chaincode for fabric < 2.0 invoke run chaincode invoke method nodeimport import external node certs and endpoints orgjoin (experimental) join an org to the current channel query run chaincode query method ccup Update or force re-install chaincode restart restart the network update (experimental) update minifabric to the latest 外部ツール起動 その他のオペレーション 構築する環境のカスタマイズ用オプション 23
  • 24. 参考) Hyperledger 公式サンプルのchaincode x minifabric  fabric-samplesのchaincode asset-transfer-basic を minifabric で構築する Fabric環境で利用する方法  https://github.com/hyperledger/fabric-samples/tree/main/asset-transfer-basic  version v2.3.0 at https://github.com/hyperledger/fabric-samples/archive/refs/tags/v2.3.0.zip Copyright 2021 FUJITSU LIMITED 1) chaincode をダウンロード・解凍する。 https://github.com/hyperledger/fabric-samples/archive/refs/tags/v2.3.0.zip 2) 解凍したフォルダ内のchaincode ソースを、minifabricの予約フォルダにコピーする mkdir -p vars/chaincide/basic/go cp -r fabric-samples-2.3.0/asset-transfer-basic/chaincode-go/* vars/chaincide/basic/go/ 3) Fabric 構築 ※ spec.yamlファイルはデフォルトのままでok minifab up -i 2.3.0 -c mychannel -n basic -l go -o org1.example.com -e true 4) chaincode実行 minifab invoke -p ‘”InitLedger”’ minifab invoke -p ‘”GetAllAssets”’ ※ asset-transfer-basic の添付アプリケーション(application-*)をそのまま上記構築環境で動かすことはできませんでした。 原因: 添付アプリケーションのソースが fabric-sample添付の専用ツールで環境構築することを前提にしているため。 各種パスを変更すれば動くと思います。 Fabric ver 2.3.0 公式のchaincodeサンプル 24
  • 25. 参考) minifabric の内部について、もう少し 主なフォルダ構成 Copyright 2021 FUJITSU LIMITED 項目 In/out path 利用するchaincode in vars/chaincode/<chaincodename>/<language>/* サンプル:https://github.com/hyperledger-labs/minifabric/tree/main/chaincode Fabric 構築ノウハウ in playbooks/* // 構築用スクリプトや テンプレートファイル scripts/* // minifabric のコマンド一覧など fabopts.yaml // ansible実行時の大元ファイル Fabric アプリ用connection profile out vars/profiles/<channelname>_* (言語別) ※Fabric SDKを利用したアプリ開発に便利 構築時に生成されるファイル (実際の構築オペレーション用) out vars/configtx.yaml vars/crypto-config.yaml // Fabricの設定大元 vars/keyfiles/* 上記を元に生成した証明書やmsp vars/run/* 構築時に実行したコマンド群 25
  • 26. 弊社のHyperledgerに関連するその他の取り組み 分散データトレーシング: Chain Data Lineage C 社 a b 処理履歴 b d c A 社 B 社 出 力 データ 利用者 各社が持つモノの流通・加工の履歴データを エンド-エンドでトレース 処理履歴 ブロックチェーンの統合サービス用フレームワーク: ConnectionChain Hyperledger Fabricをサプライチェーンに適用し、 多組織による記録・トレースを公正に実現 Copyright 2021 FUJITSU LIMITED 事前に合意された価値取引を ガバナンスを確保しつつ執行 ConnectionChain技術のオープン化を狙って、 Hyperledger Cactusにコア開発社として参加 ConnectionChain プレスリリース(2017.11.15発表)「ブロックチェーン同士を安全につなげるセキュリティ技術を開発」 https://pr.fujitsu.com/jp/news/2017/11/15.html プレスリリース(2020.5.15発表) 「富士通研究所とアクセンチュア、安心かつ確実な異なるブロックチェーン連携を共同で加速」 https://pr.fujitsu.com/jp/news/2020/05/15.html https://github.com/hyperledger/cactus https://youtu.be/LKUdWoxz_lQ?t=4107 https://youtu.be/Ndo52HxAr0Q 26