This article follows onto my previous article DBAs and the ITIL Framework. My first article dealt with ITIL from an event and services management perspective. Now, let’s tackle the asset side of ITIL. You may have heard it called ITAM – IT Asset Management.
You may be thinking about more exciting things to do than manage assets. We’d all much rather do something really important to company goals, such as setting up a play database and intentionally corrupting it with DBCC PAGE to see if we can recover it. Very few DBA can do a convincing Paul Randal imitation, but every DBA can benefit from treating SQL Servers and the databases they contain as assets, and managing them accordingly.
I understand that we are all very busy. Why should a DBA add to his or her workload to place the database under asset management? Imagine that you work in a data company. I do. Our product is data. In fact, the company’s most critical and valuable assets are the data we collect, analyze and create. Even if your company makes whoopee cushions, its data is a vitally important asset.
You agree and note that you do all of the good things that best practices mandate: (i) Backups with offsite copies, with frequent test restores; (ii) Frequent integrity checks; (iii) Testing and then applying service packs and cumulative updates. You may go even further with a good monitoring tool, space management and all of the normal things that make for an outstanding DBA. So why account for the database in the same way that you account for the server hardware and software?
Configuration Item Management
An ITIL-compliant tool with a good CMDB (Configuration Management Database) should allow you to configure your own Configuration Items. What’s a configuration item? Here is the ITIL v3 definition: “Any Component that needs to be managed in order to deliver an IT Service.” That’s an extremely broad definition. Databases clearly fit into that definition. But do we need to place the databases under the same sort of asset management that we would a server? The answer is yes! The question: why is yes the answer?
An ITIL-compliant service management tool will allow the DBA to see what is happening with the database, its application, and its server. This comes about in several ways. Here are a few:
Correlating Changes, Incidents and Problems
When there is an incident, you can associate it to all affected components. An example would be an application crash. Your ERP application’s data warehouse ETL function failed with a login timeout error from SQL Server. The ticket is linked to the application, server, and database. It keeps happening repeatedly, and you escalate the incidents into a problem for root cause analysis. Now, any history of the asset will have a list of tickets that are related to the asset. Big deal? Yes!
If your shop has disciplined change management, then deployments are done via approved change ticket, and those deployments are also linked to the same entities. A chronological log shows that release 123 happened the day before the first timeout problem, and the game is afoot. You put on your Sherlock hat and quickly deduce that developers changed the connection string in release 123, and it now has a problem. You fix that in emergency release 123.1 – also in an approved change ticket – and you solve the problem. That documented history just made your fix just that much easier. It also provides a paper trail of the solution should you see something similar happen again. A good ITSM system naturally creates a knowledge base of problem solutions. An automatically-maintained and searchable knowledge base.
A properly-managed ITSM system will enable DBA, Infrastructure, Developers and Management to understand dependencies. As your new cutting-edge systems age and become mature, and then continue to age into legacy applications, information can be lost. As people retire, move on, or are vanquished in an unanticipated zombie apocalypse, these relationships are often lost. I have actually worked on the database for a production application where the company lost all of the source code! I wish that last sentence was a joke. But seriously, it illustrates the need for careful asset management, including database and application dependencies.
A good ITSM tool will not only allow you to record and track assets, but also to link them to each other with defined relationships. Let’s consider examples:
|Asset 1||Asset Type 1||Relationship||Asset 2||Asset Type 2|
|AdventureWorksDB||SQL Server database||Resides on||Machine2||Server|
|AdventureWorks||Application||Uses Database||AdventureWorksDB||SQL Server Database|
|Donna||User||Administers||AdventureWorksDB||SQL Server Database|
The application, database, both servers and both users are all Configuration Items to ITIL. As people leave, or become a zombie snack, the information lives on. And each entity also carries a history incidents, problems and changes.
Beyond Most Tools: the DML
The Definitive Media Library is a concept in ITIL. It is a repository of software installation media and other necessary items (for example, licenses, install manuals, maintenance contracts and the like) for all soft assets in an enterprise. It can be in a physical cabinet, a network share, or even a source control tool. In most enterprises, it is in a combination of all three.
Most ITSM tools don’t have an explicit DML management module. However, you can shoehorn it into the CMDB. How does this help the DBA? It keeps the SQL source under control and catalogs its location. Not just for database DDL, but also for SSIS packages, jobs, etc. Nobody wants to have responsibility for an application that, over time, turns into a black box.
The DML is a source control tool with asset management. Imagine a change occurring in application X. Now, when you implement the change, the change ticket can point to the new and perhaps the old versions of the software in the CMDB, which in turn sets out the location of that software in the DML. No more lost code.
The DML Helps You Stay True
Moreover, you now have correlation to your software licenses. You can track how many SQL licenses are in use where, and the dreaded software audits are no longer terrifying jaunts into the realm of guessing or running semi-reliable tools to try to ascertain your license count, and then having to try to figure out production versus non-production licensing. For small shops, this is not as big a concern as large shops; but as someone who has had to work more than one multi-million dollar true-up, I have been trained to think through these details.
I could go on about other benefits of shaping your data administration operations around the ITIL framework. However, what is written here is a good primer on ITIL asset management and how it could make the DBA’s life much easier.
John F. Tamburo is the Chief Database Administrator for Landauer, Inc., the world's leading authority on radiation measurement, physics and education. John can be found at @SQLBlimp on Twitter. John also blogs atwww.sqlblimp.com.