-
Notifications
You must be signed in to change notification settings - Fork 2
Home
This is demo project pipeline for Open Source Conference by OSTL labs, IIIT-Bangalore. Workshop link: Devops Framework, OSI Contributors: Nilesh Singh, Vaibhav Aggarwal
- A sample java spring boot application.
- Jenkins for continuous integration
- Docker for containerisation
- ELK stack for big data analysis
- Rundeck for continuous deployment
-
Download centos docker image
Download ElasticSearch by downloading tar file
curl -L -O https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.4.0-linux-x86_64.tar.gz
Untar to extract the files from tar
tar -xvf elasticsearch-7.4.0-linux-x86_64.tar.gz
Run the process
cd elasticsearch-7.4.0/bin ./elasticsearch
Run docker in interactive mode
docker run -p 8080:8080 -p 8085:8085 -it nileshsingh067iiitb_2019_ostl_devops_framework /bin/bash
Suppose, you have a team of 10 people. Everybody is writing code and wants to test their changes. Someone needs to collect all the new packages and then compile it. But if an error arises its very difficult to figure out which piece of code caused that error.
Jenkins is a continuous integration tool. Jenkins maintains a pipeline that will compile, build and test the code maintaining a context to the user. If found any failure, Jenkins can alert the corresponding contributor.
Docker is a continuous delivery tool. In a business enterprise, requirements keep changing and new updates keep waiting for deployment.
Process of deployment has various pre-requisites steps that need to be followed. Code that is contributed by the developer goes to the testing environment and then to the staging environment before reaching to final production.
There are many issues can be faced throughout the stages.
- Testing environment should have the same configuration as a developer machine.
- There should not be any kernel dependency.
- Synchronizing environment across is a redundant task.
Logstash is an open-source, a server-side tool that is used to collect, parse and then process data centrally into a structured form. It provides various filters that enhance the insights and human readability.
Elasticsearch is a distributed open-source search engine released under Apache license. It is a REST API layer over Apache’s Lucene. It provides horizontal scalability, reliability and capability of a real-time search through the documents. Elasticsearch is able to search faster because it uses indexing to search over documents.
Kibana is a tool to visualise indexed data in real-time. It provides a variety of visualisations to get the best meaning out of your data. Dashboards according to use case can be created and get updated with new data automatically.
@Vaibhav