Linux for DevOps
DevOps Architecture:
1) Build: DevOps introduces the utilization of cloud resources and resource sharing, making the construction process contingent on users' specific needs. This approach serves as a means to regulate resource usage and capacity.
2) Code: This ensures that code is developed for business purposes, aids in change tracking, provides notifications for discrepancies between actual and expected outputs, and allows for reverting to the original code if necessary. The code can be organized efficiently into files, directories, and other structures, making it reusable.
3) Test: Once testing is completed, the application becomes ready for production. Manual testing can be time-consuming, involving the movement of code to the production environment. Automation of testing reduces testing time and, in turn, shortens the time required to deploy the code to production. Automated script execution eliminates many manual steps.
4) Plan: DevOps employs the Agile methodology for strategic planning in development. When operations and development teams work in sync, it becomes easier to organize tasks and enhance overall productivity.
5) Monitor: Continuous monitoring plays a crucial role in identifying potential failure risks and accurately tracking system performance. Monitoring is made more convenient with the use of services that allow log data to be monitored using various third-party tools, such as Splunk.
6) Deploy: Several systems support automated deployment scheduling. Cloud management platforms provide users with valuable insights and the ability to view optimization scenarios and analytics trends through dashboard deployments.
7) Operate: DevOps revolutionizes the conventional approach of separate development and testing. Teams collaborate closely throughout the service lifecycle, with operations and development teams actively participating. The operation team collaborates with developers to create a monitoring plan that aligns with IT and business requirements.
8) Release: Many processes involved in release management often require manual deployment in the production environment to minimize any potential impact on customers.
Linux:
The Linux operating system plays a crucial role in the DevOps.
An operating system (OS) is a software element responsible for managing and controlling both the hardware and software resources within a computer or any computing device. Acting as a bridge between the hardware of the computer and the user's applications, it establishes a reliable and streamlined environment in which software can operate.
Linux is an open-source, Unix-like operating system kernel that serves as the core component of various Linux distributions. It was created by Linus Torvalds in 1991 and has since become one of the most widely used and influential operating systems in the world. Linux is known for its stability, security, and flexibility, and it is commonly used in a wide range of computing devices, from personal computers to servers and embedded systems.
Linux Architecture-
Linux has a wide variety of distributions commonly known as Flavors.
Here are some well-known Flavors-
Basic Commands of Linux:
Ø pwd : used to check present working directory
Recommended by LinkedIn
Ø ls : used to show available files and directories in present working directory
Ø uname : shows the name of the kernel
Ø uname -r: shows the version of kernel
Ø clear : used to clear the screen
Ø whoami : shows current login user name
Ø history : shows previously used commands
Ø date : shows current time and date
Ø mkdir : to create a directory
Ø touch : to create a file
Examples:
o To check your present working directory:
pwd
Here ‘ubuntu’ is the present working directory
o To create a nested directory A/B/C/D/E:
mkdir -p A/B/C/D/E
The "tree" command in Linux is used for displaying the directory structure of a file system in a tree-like format.
o To list all the files or directories including hidden files:
ls -a
.file-name are hidden files
e.g .cache, .ssh, .bash_history etc.
Nice article.