Engineer Commonly Used DevOps Technology Stack

Source: Internet
Author: User
Keywords devops technology stack devops stack full stack devops

This article introduces Devops engineers to the commonly used DevOps technology stack and tools. Including: Agile management tools, products & quality management, etc.

Agile management tools

Trello
Teambition
Worktile
Tower

Product & Quality Management
confluence

Stack
Jira
Bugzila
Among them, confluence and Zen Tao are mainly comprehensive management tools for product requirements, definitions, dependencies, and promotion; while Jira and Bugzilla are product quality management and monitoring capabilities, including test cases, defect tracking, and quality monitoring. Currently Jira is used more.

Code warehouse management
Git
Gitlab
Github
Git is an open source distributed version control system; Gitlab and Github are open source projects for warehouse management systems. They use Git as a code management tool and build a web service on this basis.

Development process specification
Git Flow
Git Flow is a model for organizing software development activities built on Git, and is a software development best practice built on Git. Git Flow is a set of codes of conduct and tools for simplifying some Git operations when using Git for source code management.

Github Flow
Github Flow is a simpler alternative to Git Flow. It has only one feature branch and one master branch, which is simple and clean.

Gitlab Flow
GitHub Flow believes that you can directly deploy code online by merging feature branches.

Automated build script
Gradle
Maven
SBT
ANT

At present, Gradle and Maven are mainly used, and Gradle is a project automation build tool based on the concepts of Apache Ant and Apache Maven. It uses a domain-specific language (DSL) based on Groovy to declare project settings, abandoning the tedious configuration based on XML. Mainly for Java applications. The languages currently supported are limited to Java, Groovy, Kotlin, and Scala.

Virtual machine and containerization
VMware
VirtualBox
Vagrant

Docker
VMware and VirtualBox are the most commonly used virtual machines, supporting many platforms, and Vagrant is a virtual machine running environment management tool built on virtualization technology. Vagrant can easily manage virtual machines, including creating and deleting virtual machines, configuring virtual machine operating parameters, managing virtual machine operating states, automating configuration and installing various types of software necessary for development environments, packaging and distributing virtual machine operating environments Wait.

Docker is an open source application container engine. It allows developers to package their applications and dependent packages into a portable container, and then publish it to any popular Linux machine. It can also be virtualized.

Continuous Integration (CI) & Continuous Deployment (CD)
Jenkins
Hudson
Travis CI
CircleCI

Jenkins is an open source software project. It is a continuous integration tool developed based on Java. It is used to monitor continuous repetitive work. It is designed to provide an open and easy-to-use software platform to make continuous integration of software possible. Its predecessor is Hudson.

Travis CI is currently an emerging open source continuous integration build project. The obvious difference between it and jenkins is that it uses the yaml format, which is simple and fresh.

CircleCI is a continuous integration platform that provides services for web application developers. It mainly provides testing, continuous integration, and code deployment services for development teams.

automated test
Appium
Appium is a mobile automation framework that can be used to test native applications, mobile web applications and hybrid applications, and is cross-platform. Can be used in IOS and Android and firefox operating systems.

Selenium
Selenium tests run directly in the browser, just like real users do. Selenium tests can be run in Internet Explorer, Mozilla, and Firefox on Windows, Linux, and Macintosh.

Mock test
Mock test is a test method that uses a virtual object to create some objects that are not easy to construct or obtain during the testing process. This virtual object is the Mock object, and the Mock object is the substitute for the real object during debugging. The Mock framework in Java is commonly used EasyMock and Mockito.

Consumer-driven contract testing
Contract testing is a test for the interface of external services. It can verify whether the service meets the contract expected by the consumer. When some consumers use the behavior provided by a component through an interface, a contract is created between them. This contract contains expectations, performance, and concurrency for input and output data structures. PACT is currently a more streamlined consumer-driven contract testing framework.

Automated operation and maintenance tools
Ansible
Puppet
Chef
IT operation and maintenance automation refers to the automation of daily and large amounts of repetitive work in IT operation and maintenance, turning the past manual execution into an automated operation. Automation is the sublimation of IT operation and maintenance work. IT operation and maintenance automation is not just a maintenance process, but also a management upgrade process. It is the highest level of IT operation and maintenance, and is also the future development trend. The following figure is a comparison of common automated operation and maintenance tools:
Monitoring and management tools

Zabbix
Zabbix is an enterprise-level open source solution that provides distributed system monitoring and network monitoring functions based on the WEB interface.

ELK Stack log analysis system
ELK Stack is an open source log processing platform solution, and the commercial company behind it is Elastic. It consists of three parts: log collection and analysis tool Logstash, Lucene-based full-text search engine Elasticsearch, and analysis and visualization platform Kibana.
Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.