TOP five most popular tools for DevOps

Pankaj kushwaha
5 min readJun 10, 2020

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

The term DevOps comes from the combination of Development and Operations, and emphasizes the importance of communication and cooperation between software developers and operation and maintenance personnel. Through automated processes, software construction, testing, and release are made faster, more frequent, and more reliable.

Programmers who first contacted git or github may not know exactly what these terms refer to, so I will explain it a bit here. git and github are two completely different concepts.

  1. Git

Git is a version management tool. It is a version management tool that can only be used locally when your computer is not connected to the Internet. Its function is to allow you to better manage your programs, such as the content you submitted. Although it has been modified in the future, you can reproduce the content you originally submitted through the git tool. In this way, you can revert some erroneous changes that you only realized later.

Regarding github, this is a website, which is a program written by each programmer. You can build an online warehouse on github. You can submit the code to the Internet every time you submit, so that every time you submit, others also You can see your code, and others can also help you modify your code. This open source method is very convenient for programmers to communicate and learn.

In summary, git can be considered as a software that can help you write programs better, and github is a website that helps programmers communicate and learn from each other.

2. Chef

Chef is an open source automation platform that aims to address the toughest infrastructure challenges on the planet.

Chef gives you the power and flexibility you need to move forward faster in this complex world, from quickly building and deploying servers to automatically delivering applications and services — no matter the scale.

First, we can first understand the DevOps movement http://zh.wikipedia.org/wiki/DevOps . To put it simply, traditional software organizations separate development, IT operations, and quality assurance from each other. Departments, and the DevOps movement emerged as the software industry increasingly recognized that in order to deliver software products and services on time, development and operations must work closely together.
So Chef puts it simply, it is an important tool member in the DevOps movement, and is a centralized management tool for development and operation and maintenance.

Imagine that we now need to build a MySQL Database Slave server. We did not operate it for a long time during the installation process, and we need a second one. At this time, we will think that if we install the first one afterwards, we will write the commands executed during the operation process as Script, install the second one now, just run the script, saving time and not easy to make mistakes.

Chef is equivalent to such a script management tool, but it is much more powerful and customizable. Chef codes script commands. When customizing, you only need to modify the code. The installation process is the process of executing the code.
For example, Chef is like a toy factory. It can make some raw materials into beautiful toys. It has some templates. You put the raw materials in, choose a template (such as Shrek), and it will be made. In this toy, the server configuration is also the same. For a server that has not been configured, you specify a template (role or recipe) for it, and Chef will configure it as the online server you want.

3. Puppet

Puppet is an open-source software automatic configuration and deployment tool. It is simple to use and powerful. It is gaining more and more attention. Now many large IT companies are using puppet to manage and deploy software in the cluster, such as Google Use puppet to manage more than 6,000 Mac desktop computers (2007 data).

puppet which is IT infrastructure automation management tool that can help system administrators manage the entire life cycle of the infrastructure: provisioning, configuration, orchestration, and reporting.

4. Docker

Docker was one of the most popular technologies in 2014, and almost all programmers have heard of it. Docker is a “lightweight” container technology that has almost shaken the status of traditional virtualization technology. Now more and more companies at home and abroad have begun to gradually use Docker to replace the existing virtualization platform.

Let us first review the architecture of traditional virtualization technology:

It can be seen that we can install multiple virtual machines on the operating system of the host machine, and in each virtual machine, through virtualization technology, a virtual operating system is implemented, and then, on the virtual operating system, you can install I need the application.

We know that starting a virtual machine is like starting a computer, the initialization process is quite slow, and it takes a long time to see the login interface. Once the virtual machine is started, you can establish a network connection with the host machine to ensure that the virtual machine and the host machine are interconnected. Different virtual machines are isolated from each other, that is, they do not know each other’s existence, but each virtual machine occupies the host’s hardware and network resources.

Let’s compare the architecture of Docker technology again:

It can be seen that on the host’s operating system, there is a Docker service running (or “Docker engine”). On this service, we can open multiple Docker containers, and each Docker container can run its own needs. The applications and Docker containers are also isolated from each other. Similarly, they are all occupied by the host’s hardware and network resources.

Compared with a virtual machine, Docker containers are completely different in terms of technical implementation. The startup speed is essentially faster than that of virtual machines. Starting a container is only in the blink of an eye. Whether it is a virtual machine or a Docker container, they are intended to isolate the application’s running environment, save our hardware resources, and provide benefits for our developers.

Let’s take a look at the Docker logo again:

Obviously, this is a whale, which holds many containers. We can think of the host machine as this whale, and treat the isolated containers as containers, and each container contains its own application.

5. Splunk

Splunk mainly solves the problem: unified management of data distributed on different machines (such as log data).

Splunk is a full-featured enterprise-level product that provides command-line windows, web graphical interface and other interfaces, query results display, data query, permission control, distributed management services, data indexing, network port monitoring, data alerts, files Listen and so on.

Splunk’s reputation is due to its excellent log management capabilities, but in fact, Splunk is even better because of its excellent performance in data analysis. Splunk enables collection, indexing and utilization of all applications, servers and device generation The speed of data has been greatly improved. Using Splunk to process computer data, you can collect, analyze, and obtain data in minutes, quickly find system anomalies and investigate security incidents, monitor end-to-end infrastructure, avoid service performance degradation or interruption, and meet at lower cost Compliance requirements, correlate and analyze complex events across multiple systems to gain a new level of operational visibility and IT and business intelligence.

Thanks for reading this post, follow me up in order to get latest updates.

Pankaj K.

www.pankajconnect.com

--

--

Pankaj kushwaha

Database/System Administrator | DevOPS | Cloud Specialist | DevOPS