Skip to main content

DevOps and Infrastructure as Code

With the onset of the cultural and professional movement into today’s industry I recognize that culture and people are at the forefront and also acknowledge that automation will be critical to our success as we move to improve productivity and quality throughout the lifecycle between Development and Operations. (DevOps).

Some believe that DevOps is all about pushing development paradigms into operations others believe that it is taking the accountability for risk mitigation and production that has been traditionally owned by operations into development.   It is in fact both and understanding terms such and Infrastructure as code, unit testing, integration testing, and more importantly how the integrated roles between Dev, Ops and third party vendors fit into that will help to ensure the scalability, speed and productivity that we all need to deliver quality service. 

Infrastructure as code

The essence of Infrastructure as Code is to treat the configuration of systems the same way that software source code is treated. Collaboration between coders, engineers, and operational staff is required to ensure that the code and production are viewed as tied, tested and validated in forms of integrated code and Infrastructure for production.  The old way of moving from one stage to another will not work in today’s environment.  The code, the infrastructure and the testing has to start and end with the same people via collaborative methods.  We must learn to test the same way in Dev that we do in Ops and do those simultaneously when possible.   A fully integrated approach that leverages from Agile, Lean and ITSM Best Practices from start to production and into operation.
The term Infrastructure as code is not new.  A decade ago we used this term but the main difference today is that then we were writing scripts and code we got better at it and we have gotten better at version control.  Another big difference is that technology is more complex.  Now the demand is increasing making the need for version control on the infrastructure as well as the code ever more important but important to do it fast.  Things have to scale across the tools and across the infrastructure.

Code is reusable but the configuration and recipes for pairing are unique depending on business outcome requirements and the infrastructure that it is running on.  As barriers of entry for reusable code are made more consistent and repeatable the more efficient we as and industry will become.  We will in fact shrink the amount of customization requirements.   Certainly there are a large percentage of infrastructure requirements that are standardized and that can be leveraged as the norm.  We need to code to insert into those norms.

There are many vendors in the industry such a Puppet and Chef that will help to optimize code and infrastructure via automation.  Automation tools are available from a wide variety of vendors for unit testing, integration testing, continual deployment and continual delivery.  And…yes!  They are different! The key to success is not just in the tool but understanding these concepts, the people involved and when and where to leverage those tools.  For more information on these terms, or for DevOps education and DevOps Foundation Certification look at what is available here:   



Comments

Popular posts from this blog

Four Service Characteristics

Recently I came across several articles by researchers and experts that laid out definitions and characteristics of services. ITIL provides us with a definition that can help drive the creation of value-laden services: A means of delivering value to customers by facilitating outcomes customers want to achieve without the ownership of specific costs and risks. An area that ITIL is not so clear is in terms of service characteristics. Several researchers and experts put forth that services have four basic characteristics (IHIP): Intangibility—Services are the results of actions not things. They have no physical presence and represent a logical set of elements. One way to think of service is “work done for others.”  Heterogeneity—Also known as “variability”; services are unique items because of the mechanisms used to deliver services, which is people. Because the people element adds variability, the service is variable. This holds true, especially for the value proposition—not eve...

What Is A Service Offering?

The ITIL 4 Best Practice Guidance defines a “Service Offering” as a description of one or more services designed to address the needs of a target customer or group.   As a service provider, we can’t stop there!   We must know what the contracts of our service offering are and be able to put them into context as required by the customer.     Let’s explore the three elements that comprise a Service Offering. A “Service Offering” may include:     Goods, Access to Resources, and Service Actions 1. Goods – When we think of “Goods” within a service offering these are the items where ownership is transferred to the consumer and the consumer takes responsibility for the future use of these goods.   Example of goods that are being provided in the offering – If this is a hotel service then toiletries or chocolates are yours to take with you.   You the consumer own these and they are yours to take with you.      ...

What is the difference between Process Owner, Process Manager and Process Practitioner?

This article was originally published in 2015. With the Introduction of ITIL 4, some of this best practice has changed. See  ITIL 4 and the Evolving Role of Roles . Updated Definitions in ITIL 4: Process Owner: In ITIL 4, the concept of 'processes' has expanded into broader 'practices.' Consequently, the Process Owner is now often referred to as the 'Practice Owner.' This individual is accountable for the overall design, performance, integration, and improvement of a specific practice within the organization. They ensure that the practice achieves its intended outcomes and aligns with the organization's objectives. Process Manager: Now commonly known as the 'Practice Manager' in ITIL 4, this role is responsible for the day-to-day management of the practice. The Practice Manager ensures that activities are carried out as intended, manages resources assigned to the practice, and oversees the practitioners performing the work. Process Practit...