Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Managing Blockchain Applications with Hyperledger and Docker on Cloudsoft AMP

Managing Blockchain Applications with Hyperledger and Docker on Cloudsoft AMP

DockerCon 2016 Community Theater, June 2016 with Mike Zaccardo

Andrew Kennedy

June 21, 2016
Tweet

More Decks by Andrew Kennedy

Other Decks in Technology

Transcript

  1. Managing Blockchain
    Applications with
    Hyperledger and Docker
    on Cloudsoft AMP
    Andrew Kennedy and Mike Zaccardo
    Cloudsoft

    View Slide

  2. Hyperledger
    and Blockchain
    Overview
    Blockchain
    Hyperledger
    Agenda
    AMP Container
    Service
    Applications
    Management
    Containers
    Managing
    Blockchain
    Applications
    Blueprints
    Live* Demo

    View Slide

  3. Hyperledger and
    Blockchain

    View Slide

  4. For the “business guys”:
    Blockchain is a technology for a new
    generation of transactional applications
    that establishes trust, accountability and
    transparency while streamlining business
    processes.
    Blockchain Overview

    View Slide

  5. For the rest of us?
    Blockchain is a distributed,
    cryptographically secure ledger of
    transactions.
    Blockchain Overview

    View Slide

  6. Blockchain Overview
    Source: ibm.com/blockchain

    View Slide

  7. Blockchain Overview
    Source: https://letstalkpayments.com/an-overview-of-blockchain-technology/

    View Slide

  8. Blockchain Overview
    Source: https://letstalkpayments.com/an-overview-of-blockchain-technology/

    View Slide

  9. The Hyperledger Project is a collaborative
    effort created to advance blockchain
    technology by identifying and addressing
    important features for a cross-industry
    open standard for distributed ledgers that
    can transform the way business
    transactions are conducted globally.
    Hyperledger Fabric

    View Slide

  10. • Open source
    • Originally IBM Open Blockchain
    • Graduated to become the Hyperledger
    Foundation’s first incubation project
    • Linux Foundation Collaborate Project
    Hyperledger Fabric

    View Slide

  11. View Slide

  12. Hyperledger Fabric
    • Identity
    • Privacy
    • Confidentiality
    • Auditability

    View Slide

  13. AMP Container
    Service

    View Slide

  14. Cloudsoft Application Management
    Platform allows deployment and runtime
    management of applications.
    • Describe Application
    • Deploy to Location
    • Retrieve Sensor Data
    • Execute Effectors
    • Trigger Policies
    Cloudsoft AMP

    View Slide

  15. Not just containers, but a wide range of
    entity types that can be composed into a
    single Hybrid application, and deployed to
    supported locations.
    • Virtual Machines
    • Public and Private Clouds
    • Bare Metal
    • Containers
    • Docker Swarm
    Application Definition

    View Slide

  16. Runtime management of deployed
    applications. Policies use application-
    specific metrics such as latency or
    transactions per second, averaged across
    groups of processes to give meaningful
    results.
    • Scaling
    • Failover
    • Resilience
    Application Management

    View Slide

  17. Infrastructure management of your Docker
    clusters or Swarm clusters. Can also use
    existing endpoints, managed externally.
    • Docker Swarm Components
    • Docker Engine
    • TLS Configuration
    • Discovery Cluster
    • SDN Plugins
    • ...?
    Docker Management

    View Slide

  18. Infrastructure

    View Slide

  19. View Slide

  20. Run Docker commands the same as on
    the command line. Build up your
    application from small, tested components.
    Blueprints are extensible, with a large
    library of templates and entities available,
    from Brooklyn specific to Docker Hub
    provided images.
    Docker Applications

    View Slide

  21. Managing
    Blockchain
    Applications

    View Slide

  22. The Hyperledger Application Fabric is a
    group of Clusters of Docker Engines on
    VMs in locations spread across different
    regions, giving a global deployment that
    can be easily scaled and extended.
    Individual Hyperledger components are
    Docker containers running on the VMs,
    providing the Blockchain services.
    Hyperledger Application

    View Slide

  23. locations:
    - sjc-cloud
    - lon-cloud
    - sng-cloud
    services:
    - type: hyperledger-fabric
    name: Hyperledger Fabric Cluster
    brooklyn.config:
    hyperledger.peers.per.location: 4
    hyperledger.app.timeout: 200
    ...
    Hyperledger Blueprint

    View Slide

  24. Hyperledger Demo
    We will demonstrate an asset management chaincode application
    that performs the following functions:
    • Spin up a non-validating peer in a Docker container
    • Deploy the chaincode onto the validating peer cluster
    • Assign an asset “Picasso” to “Alice”
    • Transfer “Picasso” to “Bob” and verify his ownership
    • Transfer “Picasso” to “Charlie” and verify his ownership
    • Transfer “Picasso” to “Dave” and verify his ownership

    View Slide

  25. Hyperledger Demo
    docker run --name=$HYPERLEDGER_PEER_ID \
    --restart=unless-stopped \
    -i \
    -p 5000:5000 \
    -p 30303:30303 \
    -p 30304:30304 \
    -p 31315:31315 \
    -e CORE_VM_ENDPOINT=http://$HOST_ADDRESS:4243 \
    -e CORE_PEER_ID=$HYPERLEDGER_PEER_ID \
    -e CORE_PEER_DISCOVERY_ROOTNODE=$ROOT_NODE:30303 \
    ...

    View Slide

  26. https://github.com/hyperledger/fabric/
    https://github.com/cloudsoft/brooklyn-hyperledger
    Hyperledger Resources

    View Slide

  27. “We have elected to put our
    money and faith in a mathematical
    framework that is free of politics
    and human error.”
    — Tyler Winklevoss

    View Slide

  28. Thank you!
    @grkvlt
    @ItsMeMikeZ

    View Slide