When we talk about DevOps, we’re probably talking about concepts like process and management, operations and automation, architecture and services, and culture and organization. So what exactly is “DevOps”?

What is the conversation

With the increasing frequency of software release iterations, the traditional “waterfall” (develop-test-release) model can no longer meet the needs of rapid delivery. Around 2009, DevOps came into being. To put it simply, it means better optimization of development (DEV), testing (QA), operation and maintenance (OPS) processes, integration of development and operation, and highly automated tools and processes to make software construction, testing, and release more quickly, frequently, and reliably.

DevOps co-author John Willis has a great post on what DevOps is, here.

The benefits and value of Devops

According to the 2016 DevOps Trends Survey, 74% of companies are trying to adopt DevOps. What are the benefits and values of DevOps?

  • Code submission is triggered directly: eliminate wait time, fast feedback

  • Each change corresponds to a delivery pipeline: making problem location and debugging easy

  • The entire development process is highly automated: stable, fast and predictable

  • Continuous automated regression testing: Improve delivery quality

  • Facilities shared and provided on demand: maximizing resource utilization

As you can see, the benefits of DevOps are more based on continuous deployment and delivery, both for business and product. DevOps, on the other hand, begins with the adoption of DevOps culture and technical methodology, a set of processes and methods for interdepartmental communication and collaboration that help improve organizational culture and employee engagement.

Devops and continuous integration

DevOps is a complete IT operations oriented workflow, based on IT automation and continuous integration (CI), continuous deployment (CD), to optimize all aspects of program development, testing, system operations and maintenance.

Taking a look at the technical data of various DevOps practice companies, the most comprehensive and classic are the key technical points of DevOps Tools mentioned in Flickr’s 10+ Deploys per Day Best Practices:

1.Automated Infrastructure 2. Shared version control (SVN shared source code) 3. One step build and deploy (continuous build and deployment) 4 6.IRC and IM Robots (Information integration)Copy the code

The above technical points run through the continuous integration/deployment line. The trunk development is the premise of continuous integration, and automation and centralized management of code periphery are the necessary conditions for the implementation of continuous integration. There is no doubt that DevOps is an extension of the idea of continuous integration. Continuous integration/deployment is the technical core of DevOps, and without automated testing and continuous integration/deployment, DevOps is pie in the sky.

Workflow Provides continuous integration (CI) services. It can also be understood as an automated process platform. In addition to integrating code, compilation, and testing, it can also integrate common tools and flexibly customize processes. Help you shape a better, smarter DevOps environment.

DevOps technology stack and tool chain

Everything is Code, DevOps also integrates continuous integration, continuous delivery, user feedback, and system optimization through the technical tool chain. Elasticbox is a collection of 60+ open source tools and categories, including version control & Collaborative Development tools, Automated Build & Test tools, Continuous Integration & Delivery tools, Deployment Tools, Maintenance tools, Monitoring, warning & Analysis tools, and more. This allows you to better execute and implement DevOps workflows.

  • Version control & Collaborative development: GitHub, GitLab, BitBucket, SubVersion, Coding, Bazaar

  • Automated build and test :Apache Ant, Maven, Selenium, PyUnit, QUnit, JMeter, Gradle, PHPUnit

  • Continuous integration & Delivery :Jenkins, Capistrano, BuildBot, Fabric, Tinderbox, Travis CI, Flow.ci Continuum, LuntBuild, CruiseControl, Integrity, Gump, Go

  • Container platforms: Docker, Rocket, Ubuntu (LXC), third-party vendors such as AWS/ Ari Cloud

  • Configuration management: Chef, Puppet, CFengine, Bash, Rudder, Powershell, RunDeck, Saltstack, Ansible

  • Microservices platforms: OpenShift, Cloud Foundry, Kubernetes, Mesosphere

  • Services: Puppet, Docker Swarm, Vagrant, Powershell, and OpenStack Heat

  • Log management: Logstash, CollectD, StatsD

  • Monitoring, Warning & Analysis: Nagios, Ganglia, Sensu, Zabbix, ICINGA, Graphite, Kibana

By the way, I’d like to share with you a DevOps BookMarks, which covers all aspects of DevOps tools and content for those who are interested.

DevOps best practices

Since the concept of DevOps was put forward in 2009, many companies have started to implement DevOps, such as Amazon, Google and Facebook in foreign countries and Baidu, Huawei and Ali in China. Amazon is one of the most convincing examples of DevOps best practices. Here’s a snapshot of Amazon’s Month-long DevOps at Why We Need DevOps:

11.6 seconds: Average deployment duration (working day) 1,079: maximum deployment duration in one hour 10,000: average number of concurrent deployment requests on a host 30,000: maximum number of concurrent deployment requests on a hostCopy the code

From the early days of large-scale Service Oriented Architecture (SOA) to the formation of DevOps culture, every Amazon engineer can write code, test code, version management, deployment rollout, Service monitoring and other tasks completely independently. This internal strong DevOps culture eventually formed a nuclear fusion, and Amazon rose to become a world-class cloud service leader — Amazon Web Services (AWS).

In addition to Amazon, there are several domestic and international DevOps practices. Take a look.

The most comprehensive and classic is Flickr’s 10+ Deploys per day, which is a textbook DevOps existence.

How baidu’s technical team uses DevOps to take a look at baidu’s continuous delivery methods and practices.

How baidu’s technical team uses DevOps to take a look at baidu’s continuous delivery methods and practices.

Decrypt the deployment tools and services used by Netflix’s technical team throughout the DevOps process.

How We Build Code at Netflix.

In 2009, Etsy built its own tools to better and faster deploy releases, “How Etsy Uses DevOps” is worth a read.

In 2009, the LinkedIn team started using automated deployment tools to manage the complexity of publishing thousands of applications/services in a 1000+ node environment. This is LinkedIn’s own wheel >>Deployment and Monitoring Automation with Glu.

As a third-party platform company, Airbnb needs to launch multiple small deployments quickly. For Airbnb’s data and infrastructure, please refer to the Slides.

Starbucks DevOps Program #DevOpsTogether

Ancestry.com was an early adopter of the DevOps movement, spearheading both Continuous Delivery and the DevOps movement. Want to know more about their process, migration, and enterprise culture, might as well take a look at their series blogs.ancestry.com/techroots/c… .

If you want to deploy DevOps across your entire business, you need not only soft requirements that foster a DevOps culture from the top down and explore from the top down, but also hard tool chain requirements that lead to higher quality software delivery.

Finally, whether you’re a technical Leader, Dev, QA, or Ops, achieving full DevOps is both ideal and challenging, and hopefully this beginner’s guide to DevOps is a good start 🙂