Using the Cloud Foundry and Kubernetes Stack as a Part of a Blockchain CI/CD Pipeline
- 2. ● It’s a time-distributed
database. It consists of
one-at-a-time blocks,
which contain a set of
transactions.
What is blockchain?
● It’s a peer-to-peer
network where each
node is a server and a
client at the same time.
● It’s magic math logic
covered in software.
@altoros
- 3. Blockchain client servers
● Different for different type of networks
● For EVMs:
○ CLI: geth, eth, parity, ethereumj, etc.
○ GUI: mist, alethzero, etc.
● For BitCoin:
○ Bitcoin Wallet
○ Bitcoin Core
○ etc.
@altoros
- 4. DApps
● Is the same app as usual, but
uses Blockchain methods
under the hood.
● Based on smart contracts, a
software that validates digital
contracts/negotiations
between network participants.
@altoros
- 5. DApps authorization
● DApps do not authorize at node
directly.
● User authorizes his/her requests
(if necessary) via a wallet. A
DApp receives a signed
transaction, not a secret key,
preventing hackers from
performing the MitM attack.
@altoros
- 9. DApps automation. Step 1
• Manual management
• Devs need to operate
Kubernetes or request it from
an Ops team
• Flexibility still low
@altoros
- 10. Cloud Foundry + Kubernetes
DApp
• Stateless
• Moving fast
• Node.js
• Devs love cf push
Parity (a blockchain client)
• Stateful
• Changes come from the
outside
• Provide service for DApps
@altoros
- 13. DApps automation. Step 3
Kibosh
• On-demand service broker
• cf cli to create or delete
service cluster in k8s
• A service URL automatically
appears in env vars
@altoros
- 16. How many resources I need?
Kibosh
Helm chart
Kibosh
• Helm chart has variables
• Helm chart should define
plans
• Plans define variables
@altoros
- 17. Who configures the service source?
Kibosh
• Chart can be customized to correspond to
Parity functional
• Chart supports flexible number of Blockchain
nodes
• No dependencies needed
@altoros
- 18. How access the service?
Kibosh
VCAP_SERVICES="poanode"[{credentials:...},{services:..}]
config = {‘77’},{NAME:..},{RPC:..},{BRANCH:..}]
@altoros