Authors: @Hiren Shah @Daniel Jast @Danny Min Kim @Travis Biro @Haley Fung @Bryant Panyarachun
It's no secret that in this age of digital transformation businesses are looking to build high-quality software for their customers and critical business processes. However, there are several challenges that they face when building software, including navigating the complexities of multiple development environments and impending skills-gap issues, all the while generally doing more with less. Provisioning is an often overlooked, yet key aspect of the software deployment lifecycle that offers the opportunity to create a solid foundation for easier and higher-quality development and testing by using modern tools and processes to deploy solutions faster and more reliably.
"To be effective in today’s agile environments, enterprises are turning to these types of programmatic, infrastructure-as-code approaches to configuration, provisioning, security and application release automation. While improvements were realized in all key areas, one of the greatest improvements were identified in the area of provisioning with 40% increase in staff time efficiencies."
- IDC: Red Hat Ansible Automation Improves IT Agility and Time to Market
In this blog series we will be exploring different opportunities for automated provisioning in your deployment lifecycle and dive into some of the solutions IBM is bringing to market for its clients. Along the way we'll be asking for your input through some polls and discussion opportunities: where are you in the provisioning lifecycle and how can IBM help?
What is provisioning?
Simply, provisioning is the process of setting up IT infrastructure. Two common examples of provisioning are software provisioning (create and deploy new instances of software) and environment/runtime provisioning (entirely new environment to develop, test and run multiple applications). Whether you are looking to create a brand new software instance or a unique environment as part of a deployment lifecycle, it ultimately involves provisioning to produce high-quality software for the end user.
Traditionally, provisioning has been a complex and time-consuming process involving countless manual inputs. Many experienced system programmers do not have the time for provisioning, and less experienced system programmers often do not have the skills to independently navigate its complexities. Furthermore, once an instance has been provisioned, it can quickly become difficult to keep track of the different environments, applications, resources and users in your enterprise. This causes delays and in some cases even deters provisioning altogether. When new instances are not readily available or old ones, often containing outdated libraries shared across multiple lines of businesses, are used it can lead to insecure workarounds, unpredictable software behavior and slower time-to-market, affecting the software quality and bottom line.
Understanding provisioning and focusing on automating it as a foundational part of your organization's deployment lifecycle will help to improve developer efficiency and agility, and optimize your applications and environments. With the proper provisioning processes and tools in place, you can do more with less, spending less time on manual tasks, including tracking and allocating resources for multiple applications, and bridge the skills gap for less experienced system programmers.
As businesses adopt hybrid cloud and agile practices, the need for efficient, agile deployment becomes critical for productivity. Not only does automated provisioning increase the speed at which developers receive the environment needed for development and test, it can now also be done in a consistent and repeatable way, allowing the developer to be familiar with the environment prior to it being provisioned.
Please take a moment to contribute to the poll below (time: <1 minute)
Poll: How much time does your shop spend every month provisioning new environments?
In the upcoming parts of this blog series we'll be taking you through some of the existing automated provisioning solutions available for z/OS. We will talk about IBM z/OSMF Cloud Provisioning and Management and Red Hat Ansible automation. Both of these technologies are leveraged by IBM z/OS Cloud Broker to provide a modern cloud experience in hybrid cloud environments. We will also highlight IBM's strategy for where provisioning is heading as our clients continue their journey to hybrid cloud.
Continue on to part 2: IBM and Red Hat Ansible
Resources:
Red Hat Ansible Tower Analysis
Red Hat Ansible Provisioning Use Cases