5 Best Practices to for Devops in the cloud
Five ways to improve IT agility and speed development by adopting a Cloud DevOps approach
Benefiting from Cloud Computing Is Not Easy
Seventy percent of IT resources are spent on maintaining infrastructure rather than developing new capabilities that impact business growth. Cloud computing offers a compelling way to improve the speed and agility of a business, and yet, ensuring that your business sees the impact of the cloud can be as elusive as completing a full Siebel implementation.
What Is Cloud Computing?
Cloud computing is a combination of technologies and services that abstract hardware, software and networking into a subscription or usage-based service model. The simplest example of a cloud-based application is Gmail. Rather than hosting your own email software and physical servers, you can sign up for a free email account with Google. If you’re a business and want to use Gmail for your whole company, you can pay a monthly fee for each user. Microsoft has jumped into the game with Office 365, a cloud-based service that offers you email and some hosted unified communications applications for a monthly fee. These monthly fees should add up to less than you would pay to license, host and maintain your own email system. You’ll still need someone to set the policies and settings; however, you won’t need a system administrator, application engineer or network engineer to keep it up and running. And if 70% of your cost of operations was going to maintenance of systems, migrating to the cloud can add up to big savings.
Similarly, enterprises and small businesses alike are adopting software-as-a-service (SaaS) applications in place of traditional licensed software. Some of the big SaaS providers are Salesforce. com (customer relationship management), SAP (ERP), Intacct (accounting), Trinet (human resource management), and Concur (expenses).
What is so Hard about Transitioning to Cloud Computing Models?
For decades, traditional IT has been built around silos of expertise. The network engineers control the network; the storage and systems administrators control the hardware; and the database architects and engineers ensure the information is organized and accessible.
What’s more is that these IT silos have been serving the needs of their internal customers as an IT vendor, not a service provider. For example, how many times have you had to go to IT to request a new resource or access to a server only to be asked to get in line with everyone else and send over your business requirements first. IT has, for a long time, been a cost center that acts like a cost center.
Cloud computing changes things considerably by virtualizing infrastructure and enabling IT to deliver, track and bill based on the actual usage of the resource. Rather than having to get approval for buying a new server, end users can simply rent it for $0.07 an hour. The reason that transitioning to the cloud is challenging for IT is that they have lacked the expectations, people or systems in place to act like a service provider rather than an IT vendor.
So, how can enterprises or tech companies that are transitioning to the cloud ensure that they realize the benefits of moving faster, scaling faster and reducing costs? Here are the top five best practices to ensure your transition to the cloud improves IT agility and the speed of developing new applications your business requires to compete and grow.
Five Best Practices for Accelerating IT and Speeding Development with Cloud Computing
1. Create a DevOps team
If you have your IT department supporting the infrastructure needs of your software development and engineering, get rid of the silos. The needs of your engineers and software developers that are enabling innovation need to move as fast as the rest of the industry. Create a Development and Operations (DevOps) team that is dedicated to serve the needs of your engineering and software development teams. The DevOps leader should report into engineering or the CTO not IT. DevOps should be comprised of sysadmins, storage admins, network engineers, DBAs and developers that are familiar with building and integrating infrastructure to support software development.
IT can continue to serve the needs of the business; however, if you want to truly benefit from your cloud computing technology and services investment, build a DevOps team.
2. Think like a service provider
Service providers think differently than technology providers. A service provider doesn’t just think about delivering a technology; they think about delivering a service. For years, telecom providers and service delivery organizations have used different standards such as ITIL to define detailed processes and systems for service delivery, service management, service support and service assurance.
To take advantage of public and private cloud technologies, you must think like a service provider and create processes to actually deliver and guarantee technology-as-a-service. Without focusing on delivering a service, IT teams will end up with stranded cloud infrastructure that cannot be held to an availability SLA or metered based on usage. Thus, you won’t be able to scale your investment in cloud services economically. Without a service provider mentality, companies won’t invest in the automation required to manage and maintain cloud infrastructure effectively.
3. Adopt subscription-based models for cloud services you consume and deliver
Embrace subscription-based pricing and billing models which allow you to scale based on need. That means that as your company’s infrastructure or application needs grow or contract, you’ll be able to adjust accordingly. Scaling back is not always a bad thing. Today’s highly competitive technology industry requires that you scale fast and fail fast. Being at the forefront to develop new innovative features or capabilities for your customers means sometimes getting it wrong. In those cases, you want to be able to fail fast and not be stuck with the cost of software and hardware to support a failed initiative. Conversely, if you get it right, you want to be able to scale fast.
Whether you are managing infrastructure in-house, using public cloud infrastructure or are adopting a hybrid IT approach, the more automation that you can put in place to scale your resources up and down as needed is critical.
4. Accelerate each stage of the ALM: Dev, QA, Test, production with a hybrid cloud approach
Each stage of software development requires infrastructure resources that scale up and down. After selecting the features or capabilities that need to be developed, teams begin coding using various processes like SCRUM and agile development to develop, test, and QA as quickly as possible before rolling those changes into a new release.
We’ve come a long way from the days of waiting a year or more for new software updates from our favorite application. How long was it between Windows updates? Well, maybe it’s still long.
Companies should think about how to accelerate each stage of application lifecycle management. How do you create a scalable development environment on-site for your engineers that need to share code libraries and compile? How do you create a reliable environment to test and QA new software releases or updates? How do you execute load testing in a secure and reliable environment with enough space and power to scale? How do you ensure you can meet your SLA for uptime or privacy for your production application?
5. Shorten release cycles to weeks, not months
Facebook recently announced that it would be releasing new updates to its ubiquitous social media application every two weeks. Imagine the challenge of operating at that scale and pace.
If you want to realize the benefits of leveraging the cloud to improve the agility and competitiveness of your business, make it a goal to enable your engineering team and DevOps team to work hand-in-hand to release software updates and new features every two weeks.
For all of the hoopla around cloud computing, it still makes up one-third of one percent of all the dollars spent on hardware, software, IT services and telecom, which is a $3 trillion industry. For cloud consumers and providers to truly benefit and transform their organizations, they must be prepared to transform the way they think about enabling innovation. Building a DevOps team and adopting a service provider mentality is critical to getting the most out of any cloud technology or service investment.
Click here to contact your 365 Data Centers team today.