Dev Ops
Dev Ops
Dev Ops
Maven build the application by reading pom.xml and will produce artifactory which is .war file.
The pom. xml file contains information of project and configuration information for the maven
to build the project such as dependencies, build directory, source directory, test source
directory, plugin, goals etc.
Maven reads the pom. xml file, then executes the goal.
application.war >> artifacts details (Metadata file contains info about project files, java files, )
Tomcat server :- Install tomcat server on EC2 instance and deploy your code there. Integrate
tomcat with Jenkins.
Create a single job in Jenkins which will build and deploy the code to the Tomcat server. (we
have to configure Gitlab .git branch to take code from OR pull the code from gitLab, Configure build options)
To automate the entire process when ever new check in happens. You can do
that using “Build Trigger” in Jenkins.
It will build the code when ever it get changed and it will deploy it automatically.
You can configure cron jobs using Poll SCM as per the screen.
I do not want the code to be deployed on Tomcat but want to deploy it on docker as under.
To do this,
>> Create EC2 insatnce, install docker, start docker services and then operate it.
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
DevOps has to take care of Server management but not network management OR
not system management or maintanance.
Skillset required are :- CICD, Linux, shell script, phython, Networking, Ansible,
docker and kubernetes, puppet, Terraform, Git, Prometheus and Nagios.
1.Dev Concepts :- You should know, how to develop and design an application as a developer.
Linux Basics :- Linux will be the OS for the server so, you need to understand Linux.
Confortable using CLI:- You will be working on Server remotly using CLI so, you should be
confortable working with CLI ( Command line interface).
Ex. How to install some softwares through CLI. How to create files and folders. How to manage
the server using Bash command and file commands…etc.
Shell commands :-You should know how to write script / command using Shell script.
Linux file system:- How to manage Linux file system.
Server Management :- How to manage and SSH the server Keys and pwd OR service account
3. Networking and firewall :- You should know how Firewall and Proxy servers works, How load
balancers works, how http/https request works and IP and DNS accessible from out side world.
4. Containers :- You should know docker and containers. So, how we can put the code in containers
where the CICD comes in a picture.
1. You can use automation tool like jenkins to automate the CI pipeline.
2. You can use Automation tool like Ansible to automate the CD pipeline.
5. Cloud provider :- You should learn any one cloud provider like AWS OR Azure.
6.Container Orchastration :- If you have many containers then you should learn Container Orchastration
tool like Kubernetes.
7. Monitoring :- Monitor the software and infrastructure using tools like Prometheus and Nagios..etc.
8. Infrastructure as a code :- You have many environments to be created to manage your projects. Ex.
Development, testing, production…etc. You can create and maintain them using Terraform and
configure it using tools like Ansible, Chef and puppet.
9.Scripting language :- There are some task like backup, cron jobs, system monitoring..etc you need to
be achieved using scripting language like Python, ruby, Go lang and Linux / Shell Script.
10. Version Control :- You have your application code and you have your infrastructure code OR scripts
for automation task so, in order to manage all these code base and different versions you need
repository like Git to manage it.
Hybrid cloud
Create a gateway >> while creating gateway map it with your VPN Or ExpressRoute.
Ex. Run npm install , Use Nuget 4.4.1, Build the solution, Publish the artifact once it
ready with the build
Add build pipeline trigger
Configure CD pipeline
Create a release pipeline in DevOps
Once the CI setup is done. Now, it’s time to setup the CD.
Setup your artifact
Now, we have to map App service name with the production build OR release code
ready for production as under.
Setup deployment Conditions
We need some approval the code goes from one stage to another how to do that ?