cios should consider using devops with cloud

15
WHY CIOs SHOULD CONSIDER USING DEVOPS WITH CLOUD? By Nitin Bhadauria Tarun Saxena

Upload: tarun-saxena

Post on 11-Jan-2017

7 views

Category:

Documents


1 download

TRANSCRIPT

WHY CIOs SHOULD CONSIDER USING DEVOPS WITH CLOUD?

2

CONTENT

1. Introduction

5.1 Fail Fast5.2 Point in Time Recovery Mechanisms5.3 Balance Between IT and Business5.4 Cross-domain Expertise5.5 Infrastructure Control

4.1 Easy to Automate4.2 Cloud Server Replication4.3 Orchestration4.4 Effective Monitoring4.5 Satisfied Customers4.6 Rapid Deployment / Less Time to Production4.7 Faster Time to Market

3.1 Digitalize the Pain Points

5. Ways to Maximize Benefits of Cloud

6. Conclusion

7. About the Authors

8. About TO THE NEW

4. Benefits of Using Cloud with DevOps

3. DevOps and Cloud Market Upsurge

2. Relationship Between Cloud and DevOps

3

11

8

12

9

12

910

12

8

10

5

4

11

7

7

7

11

13

13

14

WHY CIOs SHOULD CONSIDER USING DEVOPS WITH CLOUD?

3

1. INTRODUCTION

Leaders often carry a hawk-eyed view on upcoming trends even before they become a reality to stay ahead and competitive. Hence, all eyes are focused on next-gen digital transformation owing to the power of Cloud and DevOps.

Moreover, business executives change priorities often, leaving no time for businesses to adjust putting pressure on CIOs to create or launch new products, enter new geographic locations, or customize existing products as per customer feedback. The proliferation of startups has also added to the pressure on CIOs forcing them to look for ways to stay competitive and agile, thereby increasing the adoption of cloud.

DevOps with Cloud proves to be a perfect match that can impact and drive the business strategy and its outcomes leveraging cloud and DevOps-based models. It can help organizations to shift from reactive approach to more proactive approach. DevOps and cloud-based delivery architectures are a great starting point to offer speed and agility to the business through service delivery.

However, there are many businesses that are confused about the relationship between DevOps and Cloud, hence there are misconceptions prevailing such as If DevOps is possible only on Cloud or can you leverage cloud without implementing DevOps?

Cloud and DevOps both complement each other and can be used independently. However, both are mutually reinforcing strategies for delivering business value through IT. This comprehensive whitepaper outlines the key business benefits of using DevOps with cloud and suggests ways to maximize the benefits of a Cloud.

WHY CIOs SHOULD CONSIDER USING DEVOPS WITH CLOUD?

4

2. RELATIONSHIP BETWEEN CLOUD AND DEVOPS

DevOps is an emerging term in today’s global market that means a lot to the business ranging from small to large organizations. DevOps is a software development practice that brought a cultural shift by bringing the software developers, testers and ops team together to collaborate and bring business agility. It blurs the distinction between the development and operations team by leveraging automation of the processes for software delivery and infrastructure changes.

The DevOps methodology focuses on all the tasks which are directly or indirectly related to all the processes of developing, testing, analyzing, delivering the intended software, services or product with the best quality possible with keeping the cost factor in mind. DevOps in most companies has resulted in a complete transformation that has helped to break down silos, deploy code faster and ultimately meet customer expectations instantly.

DevOps with cloud is icing on the cake. Cloud and DevOps both can be used together or independently. While one is a practice, the other is an infrastructure hosting platform. Automated resources provisioning is one of the major advantages of the applying the DevOps practices with cloud. With the increasing demand for automation in the infrastructure provisioning, many cloud providers offer dedicated services which can help the DevOps team to spawn an entirely new environment which can be the replica of the existing one. This saves a lot of time and efforts of the team. Moreover, we don’t have to purchase the infrastructure in advance for the same, and thus, we can leverage the on-demand scalability feature of the cloud.

WHY CIOs SHOULD CONSIDER USING DEVOPS WITH CLOUD?

5

95% of Respondents are Using Cloud

71%

18%Public Cloud

Only

6%Private CloudOnly

Source: RightScale 2016 State of the Cloud Report

Public= 89%Private= 77%

Hybrid

3. DEVOPS AND CLOUD MARKET UPSURGE

In January 2016, RightScale conducted a Cloud Survey of 1,060 IT professionals about their adoption of cloud infrastructure and related technologies with a focus on infrastructure-as-a-service. 77 percent of respondents are now adopting private cloud up from 63 percent last year. As a result, use of hybrid cloud environments has grown to 71 percent.

Cloud Computing Trends 2016

WHY CIOs SHOULD CONSIDER USING DEVOPS WITH CLOUD?

6

Respondents Adopting Cloud 2016 vs. 2015

Source: RightScale 2016 State of the Cloud Report

Public Cloud Private Cloud Hybrid Cloud Any Cloud

89%88%

63%

77%

59%

71%

93% 95%

However, a transition to DevOps might not make sense for every IT organization today, yet we see most of them adopting Cloud Computing technologies. Moreover, experts believe that cloud facilitates DevOps and will eventually become a modus operandi for IT.

In total, 95 percent of respondents are now using cloud up from 93 percent in 2015.

Some other key findings that got pulled out from the survey-

• The adoption of DevOps and Docker has observed a significant increase.

• Overall DevOps adoption rises to 66 percent, with enterprises reaching 71 percent.

• Chef and Puppet Tools are used by 28 and 24 percent of organizations respectively.

• Docker, in its first year, is already used by 13 percent of organizations vs. 13 percent in 2015 with a whopping 35 percent of organizations that have plans to use Docker.

Cloud Computing Trends 2016 Cloud Adoption

WHY CIOs SHOULD CONSIDER USING DEVOPS WITH CLOUD?

7

A customer is the new leader of today’s market, reshaping the organizations and changing how businesses compete and win. The business leaders realize that the success depends on how fast they respond to the market. To achieve the said goal, enterprises are heading for digitization to bring business agility and this is where they are looking to leverage Cloud and DevOps together. Below are some key benefits of bringing in Cloud and DevOps in your IT Strategy.

In today’s era, the market’s demand is not only to deliver the best quality product to the customers but also to ensure the durability of the product in regards to its service. Traditionally, a software was developed and handed over to the businesses and they were responsible for operations work and maintaining of the product. However, the definition has changed now. Today, each product delivered to the client is not only a product but has a service associated with it which ensures that the delivered product can be used over decades.

The economy is transiting from the product based to the service based. Software as a service is getting more popular day by day with the enhancement of cloud services. Thus developing cloud based software has become a necessity for the IT industries today.

Looking at it from a different perspective, today we are living in the fastest IT transformations. In a short period, your business can easily span up from 100 to million users. The most important aspect of IT solutions today is the user-experience. Every new startup has to be on its toes to be ready to serve the increasing business demands to survive in the market. Cloud is just the answer for all the above questions.

3.1 SaaS Impact as Preferred Delivery Model

4. BENEFITS OF USING CLOUD WITH DEVOPS

Automation is an important aspect of the infrastructure management. Reducing human errors by automating the flow keeping the best practices in mind will ultimately lead to the satisfied customers. Automating processes leveraging cloud helps to enhance the pace of automation, making the process more reliable, error free, robust and efficient, ultimately leading to better results saving time and cost.

Cloud providers offer various services to their customers, and these services are nothing but tools by which customers can easily manage their infrastructure. The automation process includes infrastructure provisioning, making builds, running test cases, report generation with mailing alerts etc. which is done leveraging these tools. Although cloud services can help you solve one of your major use cases, it is challenging to manage the infrastructure without DevOps.

4.1 Easy to Automate

WHY CIOs SHOULD CONSIDER USING DEVOPS WITH CLOUD?

8

DevOps focuses on gaining the adequate knowledge of all the cloud platforms with other aspects like servers management, OS patching, automation, setting up CI - CD to automate the deployments, testing, report generations to get better insights. By using DevOps, you can customize the tools as per your requirements, write custom logic to achieve the whole process.

Every cloud provider has some backup mechanism. Even then there is a need to launch the servers manually and restore the backup on a different environment. Through DevOps, this process can be automated.

Imagine a case when you are hosting a big event and you expect increased traffic on your website. To ensure the stability of the application, load testing would be required. For which, you would have to separate the environment temporarily which should be a replica of the production environment. This will enable you to upgrade the production environment on the basis of the load test results to handle the expected load. This task can easily be automated leveraging various tools provided by leading cloud providers.

Furthermore, tools help you to define the hierarchy/pattern of the infrastructure and the way they will communicate with each other once the assets once they are launched. The idea is first to generate the template of the infrastructure and run it on cloud account to build up the environment as per the defined template. Without DevOps, replication can be highly complicated and complex task.

The word “orchestration” is often confused with the word ”automation” but there is a slight difference. The Orchestration is a specialized way of automation. It means complete coordination and control in automation. Automation that covers all the levels of hierarchy in the infrastructure is called orchestration.

Orchestration tools like Chef, Puppet and Ansible are some of the intelligent tools in the market. They are independent of any of the cloud providers and have their own defined standards. Moreover, these tools are available in the market with full documentation of integrating with the leading cloud providers. Cloud has some benefits like automated server provisioning, auto-scaling, etc. over data centre so the whole combination becomes easier to use and manage.

4.2 Cloud Server Replication

4.3 Orchestration

WHY CIOs SHOULD CONSIDER USING DEVOPS WITH CLOUD?

9

Cloud providers aim to provide all the cloud services to the customer at a centralized place. The services can be categorized as monitoring services, backup services, automation services, acknowledgment services or infrastructural services.

The customers can get almost everything in their package. One of the main advantage is monitoring services. Infrastructural assets have certain kind of monitoring metrics which shows the health and the usage of the resource. It is very easy to get the mail alerts when a resource is behaving abnormally. The role which DevOps has to play here is customizing alarms and various monitoring alerts.

Let us take an example of the site running on AWS. When the traffic on the site increases, a load balancer adds a new EC2 server to handle the load. Now in case another server gets added, you would have to configure the alerts. on the third system automatically. Configuring such custom alarms would require knowledge of the various OS on which the application is running. Hence DevOps plays an important role here.

The main aim of the DevOps is to meet the customer requirements. Though cloud adds the flavor of flexibility and scalability in the infrastructure in the real time but the DevOps practices give a sense to this flexibility.

DevOps allows businesses to deal with the frequently changing customer requirements seamlessly. From QA to production environment, the continuous delivery feature of DevOps keeps the infrastructure up to date in real time.

Continuous deployment via DevOps helps in moving the code to production smoothly. Continuous Integration helps in automating the Integration of latest tools with infrastructure. Automated performance tests and report generation keeps an eye on the stability of the current infrastructure. Also, we can anytime migrate our infrastructure from one cloud to another which suits our requirements. DevOps help you achieve scalability and flexibility which means DevOps practices such as "automated infrastructure provisioning" saves the human efforts and reduces chances of the errors. Without DevOps, we can't achieve this flexibility at such pace. With these practices in cloud, DevOps adoption in cloud keeps customers always happy.

4.4 Effective Monitoring

4.5 Satisfied Customers

WHY CIOs SHOULD CONSIDER USING DEVOPS WITH CLOUD?

10

In cloud, there are various services which deal with the deployments but when it comes to customizing the steps as per the requirement. Moreover, very complicated if you have not implemented DevOps.

DevOps culture focuses on solving the infrastructural problems with latest market tools, building custom logic, and writing capabilities. With such efficient practices, we can really automate the whole process using single click build tools which can interact with the cloud services and get the tasks done without any errors.

For example, with continuous integration tools like Jenkins and Bamboo, we can build the following flow:

• Trigger the build once the new code is pushed to the version control system

• Pulling latest code from the version control system

• Running automation test cases for code sanity

• If the test cases are passed then deployable artifacts will be built.

• The deployment will be triggered on staging environment

• Automation testing will be done on the staging environment ensuring code’s proper working.

• If the code works well on the staging environment, we can promote it to production environment.

• All the steps in the above description can be automated to keep human intervention as least as possible.

If your infrastructure runs on the cloud, you’re still above the organizations dealing with the slow process of delivering the quality softwares in the market. But today, this is not sufficient. The organization which knows how to maximize usage of the cloud is the leader. So having cloud is not enough. If you are following DevOps practices to automate the deployments, load testing exercises, automation testing, segregated experimentation then you are using the right flavor of the cloud.

DevOps practices speed up delivery rate to 100x faster. The key contributors to the today’s market are continuous delivery and continuous integration. The demand of today’s market is to boost the quality of the software products with the use of the latest technology. The faster a product is delivered, the more it will be popular in the global market.

4.6 Rapid Deployment / Less Time to Production

4.7 Faster time to market

WHY CIOs SHOULD CONSIDER USING DEVOPS WITH CLOUD?

11

5. WAYS TO MAXIMIZE BENEFITS OF CLOUD

Agile encourages failing fast and often, though this can be a difficult concept for people to accept, but this can be a great way to succeed. The combination of the cloud and DevOps is very efficient and dynamic. It can adapt itself according to the rapid change in the market.

When testing out new implementation, segregation of environment is required with all the deployment setup ready on a single click. And when the task is done, the environment should shut down to save the time and cost. The most efficient way of creating and replicating the environment for testing of the new implementations is only possible in the cloud, keeping the existing environments as it is.

DevOps use various tools and tactics to achieve these tasks. Every automated step at this end will help to focus completely on the implementation rather than wasting time in setting up the environment. The functionalities can be tested out as many times as the team requires because there is no manual effort. This way we can fail fast and learn.

It is very easy to manage and restore backups in cloud as compared to the datacenter. The backup mechanisms in the cloud are very easy to use. Many cloud provider expose their command line API which is really helpful in doing a bunch of tasks in an automated way. We can anytime, integrate those scripts with continuous integration tools and achieve the task on a single click. With command line, you can configure automated backups, automate restore of the most recent backup, delete old backups and many more.

The restoration process is very fast and point in time. In just few minutes, you can restore the system to the state one year ago. The backup and restoration process is highly efficient in cloud and its automation through the DevOps practices makes it even more reliable.

5.1 Fail Fast

5.2 Point in time recovery mechanisms

WHY CIOs SHOULD CONSIDER USING DEVOPS WITH CLOUD?

12

To keep a healthy and long relationship with the customers, it's very Important to keep an eye on all the assets of the IT and business. Attaining the business value is one of the primary objectives of DevOps.

The benefits of DevOps are automatically propagated to all the departments including IT. Every step contributes towards the continuous improvements keeping in mind the needs of the end users. It provides higher efficiency and satisfaction to both business and IT.

DevOps is the solution to many business problems. If you want to boost up your business at an accelerated rate then DevOps can be the key. Every business wants maximum profit at minimum cost. Devops in cloud helps organization to achieve this goal. Right quality of the service delivered at the right team is the main focus of the IT principles thus DevOps is making its place not only in IT but also in business.

The traditional way of managing the work between individual teams doesn’t work in DevOps culture. Silos are the barriers between different teams of a single project. DevOps has ended the culture of saying “well !! my job is done, now it is your turn.” Every team member should work keeping in mind the single goal which needs to be achieved by the project. It doesn’t matter from which team you belong.

The main reason to adopt DevOps culture is to remove the dependency on a single person. Every team member should try to get the insights of the overall working of the project. People need to change their mindset to adopt DevOps culture. A level of maintaining the transparency with the whole team would be beneficial in this. People should try owning the whole process instead of owning the area of their specialization.

There are so many benefits of adopting DevOps with Cloud. DevOps grants you full control over the whole infrastructure and its management. “Full control” here means the ease of trying new technologies and new platforms in an isolated environment keeping the rest of the infrastructure without disturbance.

You don’t need to plan dedicatedly for the research and development expenses and can anytime start the work. The cost factor is also very flexible as you only have to pay for what you use. You can try the things on your own and apply the best practices when they work fine on the isolated environment. If any time things go worse, you can always revert back to the old way of doing things. The mixture of DevOps and the Cloud is one of the key contributors of today’s market.

5.3 Balance between IT and Business

5.4 Cross-domain Expertise

5.5 Infrastructure Control

WHY CIOs SHOULD CONSIDER USING DEVOPS WITH CLOUD?

13

6. CONCLUSION

In today’s time, Cloud has gained successive growth in the market and is one of the major aspects on which the organizations are focussing. Today’s IT is driven by the continuous experimentation. The large transformations which we see in IT is the result of the efforts which are engaged in handling cloud infrastructure using DevOps. DevOps with cloud enhances the performance of the IT businesses to achieve seamless functionalities. With DevOps on the cloud, one can achieve delivery through continuous scalability, integration, testing, and deployment. DevOps with Cloud are the game-changer for today’s market. Therefore, CIOs should definitely consider DevOps before thinking to migrate over Cloud.

Nitin is a technology geek who loves to take up new challenges having a total experience of 10 years in DevOps. He is a DevOps Manager, Red Hat Certified System Administrator, and an experienced DevOps consultant. He is a keen learner and likes exploring new technologies. Apart from being one of the leading DevOps consultants in the team, he is highly motivated and committed team player and likes recycling things from scrap to make them worthy.

Tarun is a Senior DevOps Engineer and AWS certified Solutions Architect (Associate), AWS accredited Business and Technical certified professional who loves to get his hands dirty in automating the tasks using DevOps automation tools with a deep knowledge of Linux shell scripting. Besides having ample amount of knowledge about DevOps, he is well known for his dedication and commitment towards the work.

Nitin Bhadauria

Tarun Saxena

7. ABOUT THE AUTHORS

WHY CIOs SHOULD CONSIDER USING DEVOPS WITH CLOUD?

14

TO THE NEW is a digital technology company that builds disruptive products and transforms businesses. We leverage the power of experience design, cutting-edge engineering, cloud and analytics led marketing to enable digital transformation.

Our passionate team of 750+ people includes passionate technologists, digital analytics experts, video specialists and creative mavericks who have transformed businesses of more than 300 companies spread across 30 countries worldwide. We take pride in our culture which is driven by passion for making an impact through technology.

8. ABOUT TO THE NEW