Академический Документы
Профессиональный Документы
Культура Документы
Brooklyn
Distributed Ledgers and Smart Contracts with Apache Brooklyn and Hyperledger
What is Blockchain
@grkvlt
Blockchain
@grkvlt
Blockchain?
@grkvlt
Blockchain
Or...
@grkvlt
Blockchain
@grkvlt
Blockchain Overview
@grkvlt
Blockchain Properties
Transactions
Security
Privacy
Reliability
Resilience
@grkvlt
Blockchain Use Cases
@grkvlt
Hyperledger
Hyperledger Fabric
@grkvlt
Hyperledger Fabric
Open Source
@grkvlt
Hyperledgers Modular Umbrella Approach
Infrastructure
Technical, Legal, Marketing,
Organizational
Ecosystems that accelerate open
development and commercial CloudFoundry Node.js Hyperledger Cloud Native
adoption
Frameworks
Meaningfully differentiated approaches to Hyperledger Hyperledger Hyperledger Hyperledger
business blockchain frameworks developed by a Fabric Iroha Sawtooth Burrow
growing community of communities from the
entire industry
@grkvlt
Hyperledger Distributions
Hyperledger Fabric
Hyperledger Burrow
Hyperledger Sawtooth
Monax
@grkvlt
Brooklyn Blockchain Blueprints
@grkvlt
Cloudsoft Blockchain Service
@grkvlt
Hyperledger Fabric
Identity
Privacy
Confidentiality
Auditability
@grkvlt
Hyperledger Application Fabric
@grkvlt
Hyperledger and Kubernetes
@grkvlt
23
24
25
Global private cloud
London
@grkvlt
Hyperledger Fabric
@grkvlt
Hyperledger Fabric
@grkvlt
Simple Blueprint
1. Web Application
Node.js Server and Redis Store
2. Chaincode (or Smart Contract)
Reducing Complexity
Simple Brooklyn concepts
Dozen lines of YAML
@grkvlt
Simple Blueprint
location:
prod-kubernetes-europe
services:
- id: webapp
type: nodejs-server
brooklyn.config:
webapp.archive.url: "file://src.zip"
metadata.endpoint:
$brooklyn:entity("metadata")
.attributeWhenReady("datastore.url")
hyperledger.endpoint:
$brooklyn:config("assetmgmt.endpoint")
- id: metadata
type: redis-server
- id: asset-management
type: hyperledger-chaincode
brooklyn.config:
chaincode.url:
$brooklyn:config("assetmgmt.archive")
hyperledger.url:
$brooklyn:config("assetmgmt.endpoint")
@grkvlt
Simple Blueprint
location:
prod-kubernetes-europe
services:
- id: webapp
type: nodejs-server
brooklyn.config:
webapp.archive.url: "file://src.zip"
metadata.endpoint:
$brooklyn:entity("metadata")
.attributeWhenReady("datastore.url")
hyperledger.endpoint:
$brooklyn:config("assetmgmt.endpoint")
- id: metadata
type: redis-server
- id: asset-management
type: hyperledger-chaincode
brooklyn.config:
chaincode.url:
$brooklyn:config("assetmgmt.archive")
hyperledger.url:
$brooklyn:config("assetmgmt.endpoint")
@grkvlt
Simple Blueprint
location:
prod-kubernetes-europe
services:
- id: webapp
type: nodejs-server
brooklyn.config:
webapp.archive.url: "file://src.zip"
metadata.endpoint:
$brooklyn:entity("metadata")
.attributeWhenReady("datastore.url")
hyperledger.endpoint:
$brooklyn:config("assetmgmt.endpoint")
- id: metadata
type: redis-server
- id: asset-management
type: hyperledger-chaincode
brooklyn.config:
chaincode.url:
$brooklyn:config("assetmgmt.archive")
hyperledger.url:
$brooklyn:config("assetmgmt.endpoint")
@grkvlt
Simple Blueprint
location:
prod-kubernetes-europe
services:
- id: webapp
type: nodejs-server
brooklyn.config:
webapp.archive.url: "file://src.zip"
metadata.endpoint:
$brooklyn:entity("metadata")
.attributeWhenReady("datastore.url")
hyperledger.endpoint:
$brooklyn:config("assetmgmt.endpoint")
- id: metadata
type: redis-server
- id: asset-management
type: hyperledger-chaincode
brooklyn.config:
chaincode.url:
$brooklyn:config("assetmgmt.archive")
hyperledger.url:
$brooklyn:config("assetmgmt.endpoint")
@grkvlt
Simple Blueprint
location:
prod-kubernetes-europe
services:
- id: webapp
type: nodejs-server
brooklyn.config:
webapp.archive.url: "file://src.zip"
metadata.endpoint:
$brooklyn:entity("metadata")
.attributeWhenReady("datastore.url")
hyperledger.endpoint:
$brooklyn:config("assetmgmt.endpoint")
- id: metadata
type: redis-server
- id: asset-management
type: hyperledger-chaincode
brooklyn.config:
chaincode.url:
$brooklyn:config("assetmgmt.archive")
hyperledger.url:
$brooklyn:config("assetmgmt.endpoint")
@grkvlt
Simple Blueprint
location:
prod-kubernetes-europe
services:
- id: webapp
type: nodejs-server
brooklyn.config:
webapp.archive.url: "file://src.zip"
metadata.endpoint:
$brooklyn:entity("metadata")
.attributeWhenReady("datastore.url")
hyperledger.endpoint:
$brooklyn:config("assetmgmt.endpoint")
- id: metadata
type: redis-server
- id: asset-management
type: hyperledger-chaincode
brooklyn.config:
chaincode.url:
$brooklyn:config("assetmgmt.archive")
hyperledger.url:
$brooklyn:config("assetmgmt.endpoint")
@grkvlt
Simple Blueprint
location:
prod-kubernetes-europe
services:
- id: webapp
type: nodejs-server
brooklyn.config:
webapp.archive.url: "file://src.zip"
metadata.endpoint:
$brooklyn:entity("metadata")
.attributeWhenReady("datastore.url")
hyperledger.endpoint:
$brooklyn:config("assetmgmt.endpoint")
- id: metadata
type: redis-server
- id: asset-management
type: hyperledger-chaincode
brooklyn.config:
chaincode.url:
$brooklyn:config("assetmgmt.archive")
hyperledger.url:
$brooklyn:config("assetmgmt.endpoint")
@grkvlt
Hyperledger Sample Application
@grkvlt
?