The Blockchain CMDBHow to Build-in Accuracy, Reliability and Security into a CMDB Implementation
Author: Michael Stroh (MBCS)Date: 13 Feb 2018Venue: BCS CMSG Event
Agenda
What is Blockchain?
Use Case 1: ITSM Processes (Incident, Problem, Change)
How can blockchain help the CMDB?
Blockchain and Distributed Ledgers
Use Case 2: Automated Discovery of Data Centre Devices
Conclusion
Agenda
What is Blockchain?
Use Case 1: ITSM Processes (Incident, Problem, Change)
How can blockchain help the CMDB?
Blockchain and Distributed Ledgers
Use Case 2: Automated Discovery of Data Centre Devices
Conclusion
What is Blockchain? (1)
● Type of data structure - literally “chain of blocks”
● Like a database, but only adds allowed● Distributed instead of centralised
What is Blockchain? (2)
● Each new block added by using cryptographic key
● Block’s ID generated by joining the key and the data in the block
● Copies of blockchain sent to, and authorised by connected nodes
What is Blockchain? (3)
Databases + Networks = Blockchain
- E.F Codd (1970): relational data model- T. Berners-Lee (1989): connected networks of
computers send data to each other- S. Nakamoto (2009): blockchain: the new way
to share data
What is Blockchain? (4)
Databases
- Before Codd, no real database standards- Each program had its own data structures- Algorithms written specifically one-off tailored to bespoke
data structures- Reinventing the wheel- E.F Codd (1970): Created relational data model- Created standard, structured way to access data (SQL)
What is Blockchain? (5)
Networks
- Before Berners-Lee, all sorts of networks- Difficult to communicate with devices outside of one’s own
network- Tim Berners-Lee (1989): invented World Wide Web: http
protocol connected networks and computers- One standard
What is Blockchain? (6)
Connecting Databases on Networks
- Errors found in early database connections
- Solution 1: Hub and spoke model: banks became trusted intermediaries
- Solution 2: Blockchain: the new way to share data
What is Blockchain?
Compared with current centralised methods:
Advantages ● Creates trust between unknown parties● Distributed records means it can’t be lost● Reduced transaction costs● Reduced transaction times
Disadvantages● New and unknown technology● No legal framework
Agenda
What is Blockchain?
Use Case 1: ITSM Processes (Incident, Problem, Change)
How can blockchain help the CMDB?
Blockchain and Distributed Ledgers
Use Case 2: Automated Discovery of Data Centre Devices
Conclusion
Blockchain and Distributed Ledgers
● Ledgers, foundation of accounting: as ancient as writing and money.
● From clay tablets to electronic spreadsheets
● Latest incarnation the “distributed ledger” (DL)
Blockchain and Distributed Ledgers
● Blockchains ○ allows the creation of distributed ledgers○ build in trust and accountability into the ledger
● No central control authority
Agenda
What is Blockchain?
Use Case 1: ITSM Processes (Incident, Problem, Change)
How can blockchain help the CMDB?
Blockchain and Distributed Ledgers
Use Case 2: Automated Discovery of Data Centre Devices
Conclusion
First, a Definition - the CMDB
● Configuration Management Data Base (CMDB): means of storing information relating to state of Configuration Items (CIs) of IT estate
● CIs consist in hardware, software and relationships among them
● CMDB stores date/time stamped state changes to CIs ● CMDB: System of Record for all ITSM processes - Incident,
Change, Asset, Release Management
How can blockchain help the CMDB? (1)
● Secure log created for devices and events in data centre
● Contained in private blockchain-based distributed ledger (DL)
● Daily log of all transactions added to DL● (Or individual transactions)● Each time event occurs, block is added
to DL● Then, copy of DL saved on each node
How can blockchain help the CMDB? (2)
● Cost of maintaining trust and accuracy reduced dramatically● No automated discovery applications required to maintain
accurate CMDB● No requirement for discovery projects● No credential provisioning and verification tasks● Change, Incident and Problem Management events inherently
become transactions in the CMDB
Agenda
What is Blockchain?
Use Case 1: ITSM Processes (Incident, Problem, Change)
How can blockchain help the CMDB?
Blockchain and Distributed Ledgers
Use Case 2: Automated Discovery of Data Centre Devices
Conclusion
Use Case 1: ITSM Processes (Incident, Problem, Change)
Event Normal CMDB Blockchain CMDB
Create incident, problem, change event
Associate CI with eventAdd event to CMDB table
Add a block to the DL;Copy DL to all nodes
Update incident, problem, change
Update CMDB table Add a block to the DL;Copy DL to all nodes
Close incident, problem, change
Update CMDB table Add a block to the DL;Copy DL to all nodes
Agenda
What is Blockchain?
Use Case 1: ITSM Processes (Incident, Problem, Change)
How can blockchain help the CMDB?
Blockchain and Distributed Ledgers
Use Case 2: Automated Discovery of Data Centre Devices
Conclusion
Use Case 2: Automated Discovery of Data Centre Devices
● All changes to device (CI) registered on DL on device
● Copies of DL sent out to all other network nodes
● Authorised using cryptography
Use Case 2: Automated Discovery of Data Centre Devices
● Comparison of discovery assisted vs. blockchain-based CMDB
Task Discovery Assisted CMDB Blockchain CMDB
Commission a device into the network
Discovery scan finds device and adds a CI to the CMDB
As a device is connected to the network, a new transaction block is added to the CMDB blockchain
Update a device Discovery scan finds the device and updates the CMDB
Add an “updated” transaction block to the CMDB blockchain
Delete a device Discovery scan fails to find the device and removes it from the CMDB
Add a “deleted” transaction block to the CMDB blockchain
Agenda
What is Blockchain?
Use Case 1: ITSM Processes (Incident, Problem, Change)
How can blockchain help the CMDB?
Blockchain and Distributed Ledgers
Use Case 2: Automated Discovery of Data Centre Devices
Conclusion
Conclusion
● Accurate, reliable, secure CMDB achieved without using discovery tools
● Devices secured by existence of local copy of CMDB● Costs of CMDB maintenance reduced● Distributed technology means no single point of failure
References
Bauerle, N., (2018) What is a Distributed Ledger? URL:
https://www.coindesk.com/information/what-is-a-distributed-ledger/
Lim, M., (2016), What is Blockchain? URL: https://fifthperson.com/how-the-blockchain-might-disrupt-the-banking-financial-industries/
Baloiu, A. (2015) When the Blockchain Technology meets the Internet of Things, URL: https://www.rs-online.com/designspark/when-the-blockchain-technology-meets-the-internet-of-things
Stroh, M.J. (2016), The Internet of Things : Configuring the Internet of Things with the Ledger of Things, URL: http://www.bcs.org/category/19035
Gupta,V., (2015), Programmable Blockchains in Context, URL: https://media.consensys.net/programmable-blockchains-in-context-ethereum-s-future-cd8451eb421e
Questions