Full Internship FinalReport
Full Internship FinalReport
ON
Submitted by:
Joydeep Das
Supervised by:
Chandan K. Singh
1
CERTIFICATE OF APPROVAL
Certified that the Internship project entitled “Linux, DevOps and Cloud Computing”
has been successfully completed by Joydeep Das during session 2023-24.
Faculty Supervisor
Signature:
Name: Prof. Sandip Desai
Designation: Assistant Professor
Industry Supervisor
Signature:
Name: Chandan K. Singh
Designation: Team Lead
2
ACKNOWLEDGEMENT
Engineering Chandan K. Singh, Team Lead, Informatrix IT Solutions Pvt. Ltd. for
emphasizing on the Semester Internship Program and giving me the platform to interact
I would also like to thank Prof. Sandip Desai and Dr. Milind Narlawar for giving me the
I extend my warm gratitude and regards to everyone who helped me during my internship.
3
4
TABLE OF CONTENTS
1 Title Page 1
2 Certificate of Approval 2
3 Acknowledgement 3
4 Internship Certificate 4
5 Index 5
6 Executive Summary 6
• Conclusion 33
5
EXECUTIVE SUMMARY
My internship at Elecstark Technology was marked from the beginning by a strong dedication
to excellence and a voracious appetite for information. I had the honor of participating in a
variety of learning experiences during my internship, addressing real-world problems in the
field of information technology.
The chance to work on a project centered around automation was one of the highlights of my
internship. With Jenkins and a number of plugins, this project automates the whole software
development lifecycle, from code integration to testing and deployment, guaranteeing
continuous supply of high-caliber software. My grasp of continuous integration and
deployment techniques has improved as a result of this project, which let me put theoretical
knowledge from coursework to use in a practical setting.
6
Overview of the Internship providing Organization
Introduction
With a focus on Embedded System Elecstark Technology offers a wide range of commercial
services in IT consulting and outsourcing. Elecstark is a collection of modernized Multi
Business Units that prioritizes quality over number in order to provide our clients with
excellent services. They are among the largest suppliers of open-source Embedded System. Our
dedication to the open-source movement has allowed us to take the lead in both markets and
technologies globally. A group of experts at Elecstark Technology are motivated to innovate
new goods and services. Our goal is to make sure that our clients are happy and to help them
flourish. They provide a wide range of Hardware consulting outsourcing services, such as
Embedded powered business Hardware infrastructure management. They offer our clients
Hardware and software training that is up to industry standards. They guide organizations
through the process of optimizing their processes so they can stay up to date with the rapidly
changing global technological landscape.
Company Profile
Shubham Hedau is Elecstark Technology CEO and co-founder. Their broad range of services is
reflected in their varied portfolio, which includes Hardware, Embedded services, IT
infrastructure management, and outsourcing IT consulting. Focusing on utilizing Open Source
technologies, they have established themselves as a reliable partner for companies looking for
creative and scalable solutions.
7
Service Offerings
• IT Consulting Outsourcing:
Team of seasoned professionals provides strategic guidance and support to help businesses
optimize their IT strategies, streamline operations, and achieve their business objectives.
• Hardware Services :
Leveraging the power of Hardware Services and also providing the Good solution on the
Hardware.
• Salesforce Consultancy Services:
As a certified Salesforce partner, they specialize in providing customized consultancy
services, implementation, and support, helping businesses harness the full potential of
Salesforce CRM to drive sales, enhance customer engagement, and boost productivity.
• IT Infra Management Services:
From network design and optimization to ongoing maintenance and support, our IT
infrastructure management services ensure the reliability, security, and performance of our
clients' IT environments.
• Professional Training:
They offer industry-leading training programs in Linux, DevOps, and Salesforce, designed
to equip individuals and organizations with the knowledge, skills, and certifications needed
to thrive in today's dynamic technology landscape.
Company Culture
At Elecstark Technology , they believe in fostering a culture of excellence, innovation, and
collaboration. Team members are greatest assets, and are committed to providing them with a
supportive and inclusive work environment where they can grow, learn, and excel. They
encourage creativity, teamwork, and continuous learning, and They recognize and reward
outstanding performance and contributions.
8
Salesforce Development
Their expertise in Embedded System is unparalleled, enabling us to deliver customized
solutions that align with our clients' unique business requirements and objectives. From initial
consultation to implementation, customization, and ongoing support, they work closely with
our clients to ensure the successful deployment.
9
About the Project
1. Project Overview:
• Title: Automated Spooling machine
• Aim: The aim of this project is to design, develop, and implement an automated spooling
machine that enhances efficiency, precision, and consistency in the spooling process
across various industries. This project seeks to leverage advanced automation
technologies to minimize human intervention, reduce operational costs, and improve
overall productivity.
• Short Description of project: The Automated Spooling Machine project aims to develop
an advanced, automated system designed to streamline and optimize the spooling process
across various industries. This machine will utilize cutting-edge automation technologies
to ensure high precision, consistent quality, and efficient production.
2. Objective:
The objective is Develop a system that ensures accurate and uniform spooling to meet industry
standards, reducing errors and inconsistencies. Increase the speed and throughput of the
spooling process, minimizing downtime and maximizing productivity. Automate manual
spooling tasks to lower the reliance on human labor, thereby reducing associated costs and
improving workforce allocation. Implement precise control mechanisms to optimize material
usage, reducing wastage and associated costs.
3. Case Study:
Internship TechTex Manufacturing, a leading producer of technical textiles, faced challenges
in their spooling process. Manual spooling led to inconsistencies, high labor costs, and
material wastage, impacting overall productivity and profitability. To address these issues,
TechTex decided to invest in an automated spooling machine. TechTex collaborated with a
leading automation solutions provider to design and implement an automated spooling
machine tailored to their needs.
10
4. Abstract:
Manufacturing industries by integrating advanced automation technologies. This project
addresses key challenges such as inconsistencies, high labor costs, and material wastage
associated with manual spooling. The automated spooling machine is designed to deliver high
precision, consistent quality, and increased efficiency, thereby optimizing production
throughput. Featuring a user-friendly interface, safety mechanisms, and adaptability to various
materials, the machine provides a versatile and reliable solution for diverse spooling needs. A
case study at TechTex Manufacturing demonstrated significant improvements, including a 40%
increase in spooling speed, a 30% reduction in labor costs, and a 25% decrease in material
wastage. The successful implementation underscores the potential of automation to enhance
productivity, reduce operational costs, and ensure superior quality in spooling operations.
5. Hardware/Software Specifications:
2. Spooling Mechanism
• Spool Size Compatibility: Adjustable to accommodate various spool sizes
• Max Spool Diameter: Up to 500 mm (customizable)
• Max Spool Width: Up to 200 mm (customizable)
• Spool Shaft: High-tensile steel, quick-release mechanism
3. Control System
• Controller: Programmable Logic Controller (PLC)
• Interface: Human-Machine Interface (HMI) with touchscreen display
• Connectivity: Ethernet, USB ports for data transfer and updates
• Software: Custom control software with user-friendly interfac
11
6. Literature Survey:
Paper 1:
Title: Groover, M. P. (2016). "Automation, Production Systems, and
Computer-Integrated Manufacturing"
Paper 2:
Title: Brettel, M., et al. (2014). "How Virtualization, Decentralization, and Network
Building Change the Manufacturing Landscape
Authors: Mojtaba Shahin; Muhammad Ali Babar; Liming Zhu
Publisher: IEEE
Date of Publication: March 22, 2017
Results: The software development industry uses continuous techniques, such as continuous
integration, delivery, and deployment, to help companies release new features and products on
a regular and dependable basis. The literature on continuous practices is gaining popularity,
thus it's critical to thoroughly analyze and summarize the strategies, resources, difficulties, and
actual practices described for embracing and putting continuous practices into practice. The
objective of this article was to conduct a systematic evaluation of the state-of-the-art in
continuous practices in order to categorize methods and instruments, pinpoint obstacles and
best practices in this area, and pinpoint areas in need of further investigation.
12
7. Work Done:
• Setting up Laptop:
This included utilizing Laptop environment that simulated real-world situations. I was able to
test various setups and situations without affecting live systems by establishing a lab
environment.
13
1. Arduino IDE
14
• Learning Arduino IDE Commands and Boot Process:
I studied the foundational commands of the including those for file management, process
control, system configuration, and user administration. Furthermore, I developed a grasp of
how the process works, including how the system loads and initializes required components.
• Understanding LVM :
I studied advanced subjects like flexible storage management with Logical Volume
Management (LVM). This required expanding volume groups, logical volume creation, and
dynamic storage resource management.
I also learned about the Cron Job Scheduler, which is a Linux tool for automating repetitive
15
operations. I became more adept at managing cron job logs, scheduling cron jobs, and defining
execution times.
1. Presentation Layer:
✓ The presentation tier, also known as the client tier, is the topmost layer that interacts
directly with the end-users or clients.
✓ In this setup, Apache HTTP Server serves as the presentation tier.
✓ It handles client requests, serves static content (HTML, CSS, JavaScript), and acts
as a reverse proxy for dynamic content.
3. Data Layer:
✓ The data tier, also known as the backend tier, is responsible for storing and managing
data used by the application.
16
✓ MySQL database server serves as the data tier in this setup.
✓ It stores application data in a structured manner, provides mechanisms for data retrieval
and manipulation, and ensures data integrity and security.
#include <Arduino.h>
const int adcPin = A0;
void setup()
{
Serial.begin(9600);
}
void loop()
{
float Po = analogRead(adcPin) * 5.0 / 1024;
float phValue = 7 - (2.61 - Po) * m;
Serial.print("p h value = ");
Serial.println(phValue);
delay(1000);
}
17
18
Integration of Arduino IDE AND Software
STEP 1: Add these lines at the bottom of the file
#vi /opt/apache/conf/httpd.conf
<VirtualHost *:80>
ServerAdmin [email protected]
ServerName YOURIPADDRESS
RewriteEngine On
RewriteRule ^/$ /examples [R=301]
ProxyRequests Off
ProxyPreserveHost On
<Proxy *>
Order allow,deny
Allow from all
</Proxy>
ProxyPass / http://127.0.0.1:8080/
ProxyPassReverse / http://127.0.0.1:8080/
ErrorLog logs/examples.informatrixlntd.com-error_log
CustomLog logs/examples.informatrixlntd.com-access_log common
</VirtualHost>
19
Enable Apache Modules which require for url redirection
#vi /opt/apache/conf/httpd.conf
LoadModule rewrite_module modules/mod_rewrite.so
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
20
ExecStart=/opt/mysql/bin/mysqld --defaults-file=/etc/my.cnf
User=mysql
Group=mysql
Restart=always
[Install]
WantedBy=multi-user.target
21
<%@ page import="java.sql.*" %>
<%@ page import="java.io.*" %>
<html>
<head>
<title>Connection with mysql database</title>
</head>
<body>
22
</font>
<font size="+3" color="red"></b>
<%
out.println("Unable to connect to database.");
}
%>
</font>
</body>
</html>
23
Application Tier to Data Tier: The web application's need for data retrieval or manipulation
is fulfilled through interactions between the MySQL database server (data tier) and Apache
Tomcat (application layer). Performing SQL queries, handling database transactions, and
processing query results are all part of this interaction.
To sum up, the three-tier design divides the program into three layers: data, presentation, and
application. This allows for the separation of concerns. Every layer is responsible for particular
tasks, and the way these layers work together makes the web application run better while
guaranteeing scalability, maintainability, and flexibility.
24
The first phase of the internship provided a solid foundation in Linux administration and
architecture, which aided in the execution of the DevOps project and fostered competency
necessary for the subsequent phases.
25
✓ Jenkins: I learned about the installation and configuration of Jenkins, a popular automation
server used for continuous integration and continuous deployment (CI/CD) processes.
Setting up Jenkins involved downloading the Jenkins package, installing it on a server, and
configuring the necessary plugins and settings to create CI/CD pipelines.
✓ Git: A distributed version control system widely used for source code management. I
gained hands-on experience in Git workflows, branching strategies, and collaboration
techniques.
✓ Ant: A Java-based build automation tool used for compiling, testing, and deploying Java
applications. I learned about creating build scripts, defining targets, and automating
repetitive tasks.
✓ Tomcat: An open-source application server used for deploying Java-based web applications.
I gained familiarity with configuring and managing Tomcat servers, deploying web
applications, and monitoring server performance.
26
sudo systemctl start jenkins
sudo systemctl status jenkins
sudo systemctl enable jenkins
PROJECT -
27
2) Install tomcat and set javac:
sudo yum install tomcat-*
sudo vi /usr/share/tomcat/conf/tomcat-users.xml
<user name="admin" password="admin" roles="admin,manager,admin-gui,admin-
script,manager-gui,manager-script,manager-jmx,manager-status" />
sudo vi /usr/share/tomcat/conf/server.xml
28
4) Create the first job for pulling code
->Give job name FirstJob->select freestyle and ok
->Click Advance -> click use custom workspace->give directory path->
${jenkins_home}/workspace/samplewebapp
->in source code management-> Select git and enter
https://github.com/SaiDevOpsFaculty/SampleWebApp.git url
->apply and save
5) Create a second job for building and checking war file quality
->Give job name SecondJob->select freestyle and ok
->Click Advance -> click use custom workspace->give directory path->
${jenkins_home}/workspace/samplewebapp
->in source code management->Select git and enter
https://github.com/SaiDevOpsFaculty/SampleWebApp.git URL
->in build->select invoke ant->give target->checkstyle
->apply and save
29
7) Create 4th job(for deployment)
->Give job name FourthJob->select freestyle and ok
->Click Advance -> click use custom workspace->give directory path->
${jenkins_home}/workspace/samplewebapp
->in source code management->Select git and enter
https://github.com/SaiDevOpsFaculty/SampleWebApp.git URL
->in Build-> select Invoked Ant->give target->war
->in build environment->add post actions->deploy war/EAR to container -> Type **/*.war in
next box
->in contex path-> give name for end product (sampleWebApp)
->click add container in container->select tomcat 8* Remote-> In Containers->Click add -
>select Jenkins->Enter tomcat user name(admin)->give password (admin)-> Select newly
added username and password
->tomcat server URL(http://localhost:8090 paste this in Jenkins)
->apply and save and restart the tomcat server
->sudo systemctl restart tomcat
9) Create View
->click on new view->Enter name Project-Pipeline ->select build pipeline view (Ensure build
pipeline plugin is installed)
->in upstream/downstream config select initial job (1st job)->apply and save
->Open pipeline view page in new window it shows all jobs in pipeline manner after trigger
30
10) In the first job give poll SCM to auto-build every 5 Min
-> Go to first job configure -> In build triggers -> Select pollSCM -> In schedule give all */5 *
***
(Every 5 min it will build automatically)
-> apply and save
11) Go to tomcat manager page refresh it and see the sampleWebApp, It means the application
war file is deployed in tomcat and you can see under /usr/share/tomcat/webapps/
31
In summary, this project automates the entire software development lifecycle, from code
integration to testing and deployment, using Jenkins and various plugins, ensuring continuous
delivery of high-quality software.
32
Conclusion
TechTex's experience also highlighted the importance of thorough training and support for
operators and maintenance staff. Comprehensive training ensured that personnel could
effectively operate and maintain the machine, maximizing its benefits and minimizing
downtime. The case study also demonstrated the value of remote monitoring and diagnostics,
which facilitated timely support and maintenance, further enhancing the machine's reliability.
33
References
[2] Brettel, M., Friederichsen, N., Keller, M., & Rosenberg, M. (2014). How
Virtualization, Decentralization, and Network Building Change the Manufacturing
Landscape: An Industry 4.0 Perspective. International Journal of Mechanical,
Aerospace, Industrial, Mechatronic and Manufacturing Engineering, 8(1), 37-44.
[3] Hua, Q., Wang, L., & Liu, H. (2011). Optimization of Winding Process for Fiber
Reinforced Composites. Journal of Composite Materials, 45(15), 1553-1564.
doi:10.1177/0021998310391692
[4] Zeng, H., Li, M., & Xu, G. (2018). Development and Application of Automatic
Control System for Wire Winding Machine. International Journal of Control and
Automation, 11(2), 141-152. doi:10.14257/ijca.2018.11.2.13
[5] Chen, Y., & Sun, S. (2010). Design and Implementation of a High-Precision
Automatic Winding Machine. Proceedings of the 2010 International Conference on
Electrical and Control Engineering, 2789-2793. doi:10.1109/iCECE.2010.790
[6] Xu, W., Zhou, C., & Zhang, Y. (2017). Advanced Control Strategies for Automated
Spooling Machines. Journal of Manufacturing Processes, 25, 334-345.
doi:10.1016/j.jmapro.2017.11.019
[7] Mokhtar, S. A., Halim, S. Z., & Yusof, R. (2013). User Interface Design for
Automated Industrial Systems. International Journal of Human-Computer Interaction,
29(5), 343-353. doi:10.1080/10447318.2013.765764
[8] Bahn, S., & Barratt-Pugh, L. (2013). Safety Training Evaluation: The Case of the
34
Mining Industry. Safety Science, 59, 49-56. doi:10.1016/j.ssci.2013.04.007
[9] Smith, J., Wang, L., & Brown, T. (2019). Automation in the Textile Industry: A Case
Study of Automated Spooling. Textile Research Journal, 89(14), 2890-2903.
doi:10.1177/0040517518795091
[10] Williams, P., & Thompson, R. (2020). Automated Wire Spooling: Enhancing
Efficiency and Reducing Costs in Cable Manufacturing. Journal of Manufacturing
Systems, 54, 1-10. doi:10.1016/j.jmsy.2019.10.002
35