The document discusses Blockchain Technology Partners and their blockchain management platform called Sextant. Sextant provides a curated distribution of Hyperledger Sawtooth that allows for one click deployment of Sawtooth networks on Kubernetes clusters. It discusses Sextant's components, architecture, and how it can be used to deploy and manage Sawtooth validators, transaction processors, and infrastructure on Kubernetes.
3. Our Vision
▪Radically simplify enterprise adoption of blockchain technologies
▪Accelerate innovation by providing the foundations that businesses
can build upon
▪Ensure that enterprises focus on business application development
not blockchain infrastructure
Bring the benefits of blockchain to business
3@blockchaintp
4. Our Focus
▪We provide you with Sextant – a blockchain management platform
that leverages Linux Foundation open source projects Hyperledger
Sawtooth & Kubernetes contributed by Intel & Google respectively
▪We work with you to co-create blockchain-based solutions that
differentiate their business from their competitors
▪We support you and in collaboration with you create an operational
model that meets your needs now and in the future
4@blockchaintp
5. Our Experience
5@blockchaintp
▪We have extensive industry experience ranging from blockchain and
IoT to open source, fintech, cloud, operations and automation
▪We are longstanding members of the Linux Foundation
▪We are active members of the LF Hyperledger community
▪We are active members of the LF CNCF community
10. Sawtooth Host
Validator Process
A Couple More Pieces
REST
Service
Transaction
Processor(s)Transaction
Processor(s)Transaction
Processor(s)
Clients
Other
Validators
State
@blockchaintp 10
11. Sawtooth Host
Validator
High-level Sawtooth Architecture
Block
Management
Consensus
Transaction
Handling
State
Interconnect
REST
Service
Transaction
Processor(s)Transaction
Processor(s)Transaction
Processor(s)
P2P Network
Clients
Other
Validators
@blockchaintp 11
14. Validator
Process
Client
Transaction Processor ≈ Smart Contracts
Transaction
Processor
State
Transaction Family Transaction Families encapsulate business logic on
Sawtooth
A Transaction Family can be as simple as a single
transaction format, with associated validity and state
update logic…
…or as complex as a VM with opcode accounting and
bytecode stored in state -- ‘smart contracts’
The choice is up to the developer
Sawtooth allows these concepts to coexist in the
same instance of the blockchain -- same blocks, same
global state
@blockchaintp 14
15. Transaction Families: The Transaction Processor
All validators in the network run every
authorized transaction processor
On receipt of a transaction the
validator will call the TP’s Apply()
method
Business logic simply goes in Apply()
and gets and sets state as needed
Transaction
Processor
Validator
Register()
Get/Set(value)
Apply(transaction)
Basic API
@blockchaintp 15
19. Network
19
▪The network is not flat!
▪ NAT
▪ Multiple DNS sources
▪ non-uniform connectivity across the network
▪Contact both from within and outside the cluster
@blockchaintp
20. Persistence
20
▪Blockchains are data services
▪ A clean sync can potentially move a lot of data
▪ backups still required
▪Data retention must be considered
▪ Sawtooth 1.1 State Pruning
@blockchaintp
21. Open areas of concern
21
▪Major version upgrade techniques (data format and wire protocol)
▪Non-time/use based purging of data
▪ GDPR/Right to be Forgotten
▪More stringent data privacy requirements
▪ PDOs
▪ Homomorphic encryption, ZK Proofs
▪Key management
@blockchaintp
23. Introducing Sextant
▪Curated Hyperledger Sawtooth distribution
▪ Professional open source support model
▪ Built, tested and maintained by BTP engineers
▪ Hosted in private Docker Hub repository
▪Comprehensive blockchain management platform
▪ One click deployment of Hyperledger Sawtooth networks
▪ Underpinned by cloud native Kubernetes runtime environment
▪ Integral component of agile software development lifecycle (SDLC)
@blockchaintp 23
25. Sextant Components
▪Management Console
▪ Browser application for easy and intuitive management of clusters
▪ Real time view on cluster status
▪Management Server
▪ Connects to cloud providers to provision of new clusters
▪ Communicates to k8s api server for running cluster
▪ Deploys and manages Sawtooth resources on k8s cluster
@blockchaintp 25
27. Using Sextant
▪Infrastructure
▪ Create a new Kubernetes cluster
▪ Join an existing Kubernetes cluster
▪ Failover for high availability
▪Sawtooth
▪ Deploy managed version of sawtooth
▪ Auto configure network and storage
▪ Deploy and manage standard or custom transaction processors
▪ Monitor deployment
@blockchaintp 27
28. Using Sextant - Infrastructure
▪Provision a new Kubernetes cluster
▪ From nothing to running cluster with a button click
▪ Automate the setup across popular cloud providers
▪ Handles multi-zone for high availability
▪ Download “kubeconfig” for CLI “kubectl” access
▪Join an existing Kubernetes cluster
▪ For bare metal or custom clusters
▪ Provide a “kubeconfig” file and Sextant will deploy to it
@blockchaintp 28
29. Using Sextant - Sawtooth
▪Deploy managed Sawtooth
▪ Configuration of validators
▪ Networking between validators
▪ Connect to external seeds
▪ Persistent storage for validators
▪High availability
▪ k8s persistent volumes provide HA on node failure
▪ k8s ingress provides static external access endpoint
@blockchaintp 29
30. Using Sextant - Sawtooth
▪Standard transaction processors
▪ Deploy standard TPs like RBAC with sensible configuration options
▪ We can begin to curate a library of commonly used TPs
▪Custom transaction processors
▪ Deploy custom TPs to the cluster
▪ Any Docker image can be consumed
▪ Easy network access to the validator (localhost:4004)
@blockchaintp 30
31. Using Sextant - Sawtooth
▪Monitoring
▪ InfluxDB powering Grafana dashboards
▪ Monitor things like TPS
▪ Fully integrated into Sawtooth validators
▪Updates
▪ We curate Kubernetes manifests and Docker images
▪ The cluster can easily be upgraded in situ
@blockchaintp 31