Ijraset Journal For Research in Applied Science and Engineering Technology
Authors: Likitha S
DOI Link: https://doi.org/10.22214/ijraset.2022.44840
Certificate: View Certificate
System information like RAM, storage, IP address of the device, operating system, software’s installed are defined as the configurations of that system and to add, update or delete these configurations is known as the management. When a tool automates this same task, it is called a configuration management tool. A system engineer witnesses a couple of problems with manual configuration approach and an abundance of repetitive tasks which are time-consuming and are prone to human errors. Server configuration is a huge landscape that has to be maintained properly from the start. Hence, configuration management and provisioning tool like Ansible, Chef, Puppet or Salt are used. Ansible is one of the best open-source tools to automate and maintain the configuration. Ansible controls and configure nodes from a single machine. What makes it unique from other configuration management tool is that it makes use of SSH infrastructure and is very secure due its agentless property. Ansible is the solution to get rid of all the hassle in server management because it facilitates to build easy IT automation engine to save time and be more productive.
I. INTRODUCTION
Server configuration is a huge landscape that must be maintained properly from the start. The industry has been moving to automating the system configuration and this shift came from the popularity of DevOps and new automation tooling. System information like RAM, storage, IP address of the device, operating system, software’s installed are defined as the configurations of that system and to add, update or delete these configurations is known as the management.
Configuration management was strictly a purely manual task, done by a systems administrator. The job was tremendous amount of manual work involving cautiously documenting the system state. Hence automation of server configuration becomes essential, and this can be achieved using various configuration management tool.
There are several configurations management tools available in the market like Chef, Puppet, Salt and Ansible which serves different purposes and provide different features. Ansible is considered as one of the most used open-source configuration management tools.
The purpose of this paper is to understand how to automate repetitive tasks and maintain the idempotency which reduces manual errors. Analyze why Ansible is in trend on the enterprise level. Gain insights about the architecture of Ansible and a simple demonstration to install and configure Tomcat on nodes by writing Ansible playbooks.
II. LITERATURE SURVEY
A. Pranav T P, Charan S, Darshan M R, Girish L,“DevOps Methods for Automation of Server Management using Ansible”
Cloud is becoming an integral part of the Information Technology that meets the growing demands of the customer. There's a need to apply for a client on the cloud and most of the clients have begun to get direct contact with the cloud vendors. The DevOps team is highly focused on this as they are responsible for the automation and continuous delivery of the system. This paper aims to achieve the automation of client application using Ansible from the initial stage of provisioning to the delivery of the system.
B. Pavel Masek, Martin Stusek, Jan Krejci, Krystof Zeman, Jiri Pokorny and Marek Kudlacek, “Unleashing Full Potential of Ansible Framework: University Labs Administration”
The attractiveness of cloud computing led to a rise in number of servers and stations that needs to be managed. System administrator manages a large number of servers that are present in the physical or virtual environment and these servers might have identical configurations and applications running on them. In this paper more than 10 laboratories at Brno University of Technology were used to test developed ansible framework for remote management. To bring the introduced functionality closer to system administrators, a universal web application enabling them to do the configuration changes via the smart devices was created and tested. [2]
C. Mohd Faris Mohd Fuzi, K. Abdullah, Iman Hazwam Abd Halim, “Network Automation using Ansible for EIGRP Network”
The conventional method to configure EIGRP requires recurrent process compared to network automation. The network administrator makes use of network automation to help them in automating EIGRP configurations through scripting. In this paper EIGRP routing was configured using Ansible where it pushed the playbook with necessary configuration to the routers. It was tested against the traditional approach to check the accuracy of the Ansible playbooks. The results appear that Ansible aided to productively deploy the configuration to the routers precisely in no time. Ansible reaches out network managers cut human inaccuracies, time and facilitate device visibility through the network environment.
D. Vincent Hardion, Darren Paul Spruce, Mirjam Lindberg, “Configuration Management of The Control System”
The control systems of huge research facilities work at keeping the hardware and software synchronized. This paper discuses about MaxIV control system using tango devices regarding configuration management. Configuration management comes into picture when there is a need to track thousands of equipment and their properties. In recent years DevOps tools like Chef, Puppet, Salt have gained immense popularity and have become mandatory to make them a part on the enterprise level to configure and build clusters or cloud servers.
E. Muhammad Fauzi Islami, Purnawarman Musa,Missa Lamsani, “Implementation of Network Automation using Ansible to Configure Routing Protocol in Cisco and Mikrotik Router with Raspberry PI”
This paper is illustrated new methods to configure network devices with the help of automation, which in turn reduces the time consumed for configuring the equipment and a lot easier to maintain. This also discusses the reduction of manual errors in configuration syntax and different ways the device is configured. There are lot of booming tools available in the market like Ansible and Terraform that can be used for provisioning and configuring the infrastructure of a system. This paper demonstrates the use of Ansible due to its simplicity.
III. SUMMARY OF LITERATURE REVIEW
Configuration management tools help system administrator to automate all the servers and system connected in the organization that could be writing playbooks to install software’s, restart services and manage server reboots.
Configuration management tools are the key to eradicate all the difficulty in the system management.
Ansible is one among the emerging and best tools for configuration management compared to the others available in the market.
Helps to develop easy IT automation engine to save time and be more valuable. Organization can devote more time on improvement to make the procedure more cost-effective.
Ansible structures are minimal data explanations of the infrastructure guaranteeing everyone on the team will be able to comprehend the configuration task.
IV. EXISTING SYSTEM
In existing system, if the system has to be configured the system administrator has to log in on to each server, he/she wants to configure and either manually configure it or run scripts for the same. Manual process takes let’s say ten hours to install a package on a hundred server which is not a feasible option. The next approach is to write scripts and run them on each server this would take less time comparatively say five hours since it happens serially not parallelly. This is where the concept of configuration management tools emerges where packages can be installed on 100 or more servers simultaneously by just running a simple playbook.
A. Disadvantages
V. PROPOSED SYSTEM
Tools available for configuration management are Puppet, Chef, SaltStack etc. that are being used in the market, but Ansible is gaining popularity as it proves to be better than others. For this paper a simple playbook to install and configure tomcat on Ubuntu is demonstrated.
???????A. What is Ansible?
Ansible automates and streamlines recurring, intricate, and tiresome operations. It saves time when we need to install software or configure enormous numbers of servers. Its architecture is straightforward and efficient. Ansible server works by connecting to nodes over SSH and pushing playbooks to them.
The infrastructure and information about desired server state are organized in playbooks. It gathers node information into "facts", which assist with the discerning and automated provisioning of various configurations on the program. And all this can be achieved with a language that is readable by a layman as it is written in simple readable YAML scripts.
???????B. Advantages
The advantages for the proposed system can be listed out as follows:
VI. ARCHITECTURE
Fig1 describes the architecture of ansible where ansible is installed on one local machine, and they are connected to all the nodes using SSH. The inventory file has the IPs of the nodes stored in them for the ansible server to know which nodes it must connect to. Once playbooks are written it is pushed to the intended nodes and the master node will analyze and gather facts about each node. After this the tasks written in the playbook will get executed and the required configurations are managed.
This is a general description of ansible architecture and it’s working a detailed one involves a more in-depth knowledge.
VII. SUSTAINABILITY AND SOCIAL CONCERNS
Ansible is simple to learn, so clients could learn to make use of it swiftly along with superior throughput. Ansible receives the assistance of thorough and clearly understandable documentation.
No need to install any additional software package or firewall ports on the nodes client want to automate. Client also don’t have to set up a distinct administration structure. And since client don’t require to install any additional software package, there’s more space for application resources on the server side.
Writing playbooks can reduce eliminate manual process of server configuration which in turn reduces human errors thereby increasing accuracy.
Ansible is an open-source tool which is freely available without a commercial license, which is huge advantage for new developers who are trying to learn this tool and get a hands-on experience without paying for it.
Pricing portrays a major role in deciding which configuration management tools should be adopted or, in general, any merchandise or technology. Ansible has a low pricing of USD 10000/year for up to 100 nodes compared to the other tools available in the market.
Scalability of the configuration management tools is one of the key aspects considered by the enterprises prior to picking the tool. It can be scaled across 100s of nodes from a single machine.
VIII. SYSTEM REQUIREMENTS
A. Hardware Requirements
???????B. Software Requirements
IX. RESULT AND DISCUSSION
On any of the cloud like AWS or Azure create two virtual machines one for ansible server — where ansible is going to be installed and configured, here is where the ansible playbook is run and one for ansible node — where ansible will install and start Tomcat 9. Once the playbook is written it is run and tomcat gets installed on the node which can be exposed using 8080 port on browser.
X. ACKNOWLEDGMENT
The gratification and euphoria that come with the achievement of any work would be unfinished unless we mention the name of the people, who made it possible, whose relentless guidance and support served a beacon light and served our effort with success.
We express our sincere thanks and wholehearted credit to our internal guide Dr. Chandrashekar BH, Associate Professor, Department of MCA, R.V. College of Engineering ®, Bengaluru for her constant encouragement, support and guidance during the seminar work.
Server configuration is a very wide landscape which requires to be preserved accurately since the start. The industry has been moving to automating the server configuration and this shift came from the popularity of DevOps and new automation tooling. Almost every organization uses configuration management tools in their software development cycle that helps system administrator to automate all the servers and system connected in the organization. This reduces human errors and achieve more accuracy. Ansible is considered as one of the most used open-source configuration management tools compared to the other tools available in the market Helps to develop easy IT automation engine to save time and be more valuable. Organization can devote more time on improvement to make the procedure more cost-effective.
[1] Pranav T P, Charan S, Darshan M R, Girish L, “DevOps Methods for Automation of Server Management using Ansible International Journal of Advanced Scientific Innovation” Volume 01 Issue 02, May 2021 [2] Pavel Masek , Martin Stusek, Jan Krejci, Krystof Zeman, Jiri Pokorny and Marek Kudlacek, “Unleashing Full Potential of Ansible Framework: University Labs Administration”, Software Engineering Companion (ICSE-C), 2021 IEEE/ACM 39th International Conference on, pp. 497–498, IEEE, 2021. [3] Mohd Faris Mohd Fuzi, K. Abdullah, Iman Hazwam Abd Halim, “Network Automation using Ansible for EIGRP Network”, Journal of Computing Research and Innovation, Volume 05 Issue 03, 20 September 2021 [4] Rafiza Ruslan, “Implementation of Network Automation using Ansible to Configure Routing Protocol in Cisco and Mikrotik Router with Raspberry PI”, Jurnal Ilmiah Komputasi, Published 29 June 2020 [5] Sriniketan Mysari; Vaibhav Bejgam, “Continuous Integration and Continuous Deployment Pipeline Automation Using Jenkins Ansible”, 2020 International Conference on Emerging Trends in Information Technology and Engineering (ic-ETITE) [6] Block Diagram of Ansible, https://intellipaat.com/mediaFiles/2018/12/8.png [7] Comparison of DevOps Configuration Management Tools, https://www.veritis.com/blog/chef-vs-puppet-vs-ansible-comparison-of-devops-management-tools/ [8] ANSIBLE Automation Real World Use Cases https://www.linkedin.com/pulse/ansible-automation-real-world-use-cases-vinodha-kumara
Copyright © 2022 Likitha S. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
Paper Id : IJRASET44840
Publish Date : 2022-06-24
ISSN : 2321-9653
Publisher Name : IJRASET
DOI Link : Click Here