title
DevOps Tutorial For Beginners | What Is DevOps | DevOps Tools | DevOps Training | Edureka DevOps

description
๐Ÿ”ฅ๐„๐๐ฎ๐ซ๐ž๐ค๐š ๐ƒ๐ž๐ฏ๐Ž๐ฉ๐ฌ Professional Certificate ๐๐ซ๐จ๐ ๐ซ๐š๐ฆ ๐ฐ๐ข๐ญ๐ก ๐๐ฎ๐ซ๐๐ฎ๐ž ๐”๐ง๐ข๐ฏ๐ž๐ซ๐ฌ๐ข๐ญ๐ฒ: https://www.edureka.co/executive-programs/purdue-devops This Edureka DevOps Tutorial for Beginners talks about What is DevOps and how it works. You will learn about several DevOps tools (Git, Jenkins, Docker, Puppet, Ansible, Nagios) involved at different DevOps stages such as version control, continuous integration, continuous delivery, continuous deployment, continuous monitoring. Below are the topics covered in DevOps Tutorial for Beginners: 1. Traditional Waterfall Model 2. Limitations of Waterfall Model 3. What is Agile methodology? 4. Limitations of Agile Methodology 5. What is DevOps? 6. DevOps Stages and Tools 7. Version Control Systems: Git 8. Continuous Integration: Jenkins 9. Configuration Management: Puppet 10. Containerization: Docker 11. Continuous Monitoring: Nagios 12. Hands-On Check our complete DevOps playlist here (includes all the videos mentioned in the video): https://bit.ly/3iJoJIP For doubts & queries on DevOps, post the same on Edureka Community: https://www.edureka.co/community/devops-and-agile ----------๐„๐๐ฎ๐ซ๐ž๐ค๐š ๐ƒ๐ž๐ฏ๐Ž๐ฉ๐ฌ ๐“๐ซ๐š๐ข๐ง๐ข๐ง๐ ๐ฌ----------- ๐Ÿ”ตDevOps Online Training: https://bit.ly/3GOAlD5 ๐Ÿ”ตKubernetes Online Training: https://bit.ly/3q0zrg1 ๐Ÿ”ตDocker Online Training: https://bit.ly/3DYPCj9 ๐Ÿ”ตAWS Certified DevOps Engineer Online Training: https://bit.ly/3pXnB6y ๐Ÿ”ตAzure DevOps (Az-400) Online Training: https://bit.ly/3m8WmVr ----------๐„๐๐ฎ๐ซ๐ž๐ค๐š ๐ƒ๐ž๐ฏ๐จ๐ฉ๐ฌ ๐Œ๐š๐ฌ๐ญ๐ž๐ซ๐ฌ ๐๐ซ๐จ๐ ๐ซ๐š๐ฆ---------- ๐Ÿ”ตDevOps Engineer Masters Program: https://bit.ly/3pXp1Ou -----------๐„๐๐ฎ๐ซ๐ž๐ค๐š ๐”๐ง๐ข๐ฏ๐ž๐ซ๐ฌ๐ข๐ญ๐ฒ ๐๐ซ๐จ๐ ๐ซ๐š๐ฆ---------- ๐ŸŒ• Professional Certificate Program in DevOps with Purdue University: https://bit.ly/3yqRlMS DevOps Podcast: https://castbox.fm/channel/id1684800 Facebook: https://www.facebook.com/edurekaIN/ Twitter: https://twitter.com/edurekain LinkedIn: https://www.linkedin.com/company/edureka #Edureka #EdurekaDevOps #DevOpsTutorial #DevOpsTools #DevOpsTraining #Git #Jenkins #Docker #Puppet #Nagios #DevOpsUseCase - - - - - - - - - - - - - - About the Course Edurekaโ€™s DevOps online training is designed to help you master key tools of Devops lifecycle like Docker, Puppet, Jenkins, Nagios, GIT, Ansible, SaltStack and Chef used by a DevOps Engineer for automating multiple steps in SDLC. During this course, our expert DevOps instructors will help you: 1. Understand the concepts and necessities of DevOps 2. Understand the need for DevOps and the day-to-day real-life problems it resolves 3. Learn installation and configuration of common infrastructure servers like Apache, and Nginx for the Enterprise 4. Learn popular DevOps tools like Jenkins, Puppet, Chef, Ansible, SaltStack, Nagios and GIT 5. Implement automated system update, installations and deployments 6. Learn Virtualization Concepts 7. Configuration deployment and packaging, continuous integration using GIT 8. Fine tune Performance and set-up basic Security for Infrastructure 9. Manage server operations using Code which is popularly known as Infrastructure as a Code 10. Understand the need for and concepts of Monitoring and Logging. Along with the above mentioned topics, to help you master the most popular DevOps tools, you will also receive 3 additional self-paced courses including presentations, class recordings, assignments, solutions for the following tools: 1: Ansible - Covers Introduction, Setup & Configuration, Ansible Playbooks, 37 Ansible Modules, Different Roles and Command Line usage. 2: Chef - Covers Introduction, Building the Cook Book, Node Object & Search, Data-bags, Chef environment, Roles, Deploying Nodes in Production and using the Open Source Chef Server. 3: Puppet - Covers Puppet Infrastructure & run-cycle, the Puppet Language, Environment defining Nodes and Modules, Provisioning a Web Server and Executing Modules Against A Puppet Master. - - - - - - - - - - - - - - Who should go for this course? DevOps practitioners are among the highest paid IT professionals today, and the market demand for them is growing rapidly. With emergence of new job roles around DevOps philosophy, anyone aspiring to get into these new roles, can take up this DevOps course. Some of these roles are: 1. DevOps Architect 2. Automation Engineer 3. Software Tester 4. Security Engineer 5. Integration Specialist 6. Release Manager - - - - - - - - - - - - - - Project Work 1. Host a dummy webpage using Apache Web Server. 2. Write shell script which reports: a) Various system configurations related to the user and the OS. b) Data related to load on the server. c) Top 5 processes with maximum number of threads. d) Sort the services by memory 3. Install Nagios on a VM node for monitoring the various parameter of the VM. For more information, please write back to us at sales@edureka.in or call us at IND: 9606058406 / US: 18338555775 (toll-free).

detail
{'title': 'DevOps Tutorial For Beginners | What Is DevOps | DevOps Tools | DevOps Training | Edureka DevOps', 'heatmap': [{'end': 729.138, 'start': 681.9, 'weight': 0.728}, {'end': 1837.491, 'start': 1745.544, 'weight': 1}, {'end': 1968.898, 'start': 1921.624, 'weight': 0.844}, {'end': 2097.915, 'start': 2005.44, 'weight': 0.799}, {'end': 2606.311, 'start': 2562.615, 'weight': 0.792}, {'end': 2822.025, 'start': 2726.524, 'weight': 0.894}, {'end': 3034.404, 'start': 2988.851, 'weight': 0.727}], 'summary': 'This tutorial explores devops methodology, stages, and tools, including docker, jenkins, and git, emphasizing continuous integration, delivery, and deployment. it also discusses agile and waterfall models, configuration management, and continuous monitoring with nagios in a devops culture.', 'chapters': [{'end': 73.334, 'segs': [{'end': 35.521, 'src': 'embed', 'start': 4.226, 'weight': 0, 'content': [{'end': 6.767, 'text': 'Welcome everyone to this demo session on DevOps tutorial.', 'start': 4.226, 'duration': 2.541}, {'end': 9.109, 'text': 'Before I begin guys, let me introduce myself.', 'start': 7.168, 'duration': 1.941}, {'end': 13.851, 'text': 'My name is Saurav and I have experience working on various DevOps solutions for different companies.', 'start': 9.529, 'duration': 4.322}, {'end': 19.654, 'text': "I've worked on quite a lot of DevOps tools starting from Git, Jenkins, Docker, Puppet, Ansible.", 'start': 14.472, 'duration': 5.182}, {'end': 25.778, 'text': "So this was about me, guys, and in today's session we are going to focus on various stages and tools involved in DevOps.", 'start': 20.255, 'duration': 5.523}, {'end': 28.459, 'text': 'and what exactly is the meaning of DevOps methodology?', 'start': 25.778, 'duration': 2.681}, {'end': 31.441, 'text': "So let's move forward and have a look at the agenda for today.", 'start': 29.18, 'duration': 2.261}, {'end': 33.56, 'text': "So this is what we'll be discussing today.", 'start': 32.119, 'duration': 1.441}, {'end': 35.521, 'text': "We'll begin by understanding why we need DevOps.", 'start': 33.58, 'duration': 1.941}], 'summary': "Saurav, with extensive devops experience, will cover devops stages and tools in today's session.", 'duration': 31.295, 'max_score': 4.226, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic4226.jpg'}, {'end': 78.416, 'src': 'embed', 'start': 51.13, 'weight': 1, 'content': [{'end': 56.332, 'text': "And then finally, in the hands-on part, I'll tell you how you can create a Docker image, how you can build it,", 'start': 51.13, 'duration': 5.202}, {'end': 60.875, 'text': 'test it and even push it onto Docker Hub in an automated fashion using Jenkins.', 'start': 56.332, 'duration': 4.543}, {'end': 63.772, 'text': 'So I hope you all are clear with the agenda kindly.', 'start': 61.491, 'duration': 2.281}, {'end': 66.212, 'text': 'Give me a quick confirmation by writing down in the chat box.', 'start': 63.812, 'duration': 2.4}, {'end': 68.353, 'text': "They says he's clear.", 'start': 67.413, 'duration': 0.94}, {'end': 73.334, 'text': 'So does Theon, Quen, Kashif, Sohail, Jessica fine.', 'start': 68.413, 'duration': 4.921}, {'end': 75.515, 'text': "I've got a confirmation from almost everyone.", 'start': 73.475, 'duration': 2.04}, {'end': 78.416, 'text': "So let's move forward guys and we'll see why we need devops.", 'start': 75.795, 'duration': 2.621}], 'summary': 'Learn to automate docker image creation, testing, and pushing using jenkins, with most participants confirming understanding.', 'duration': 27.286, 'max_score': 51.13, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic51130.jpg'}], 'start': 4.226, 'title': 'Devops tutorial demo session', 'summary': 'Discusses the importance of devops, its methodology, various stages, and tools involved, along with a hands-on demonstration of creating and automating docker image deployment using jenkins.', 'chapters': [{'end': 73.334, 'start': 4.226, 'title': 'Devops tutorial demo session', 'summary': 'Discusses the importance of devops, its methodology, and various stages and tools involved in devops, along with a hands-on demonstration of creating and automating docker image deployment using jenkins.', 'duration': 69.108, 'highlights': ['The chapter covers the importance of DevOps, its methodology, and various stages and tools involved in DevOps. The session will focus on why DevOps is needed, the limitations of traditional software delivery methodologies, and how DevOps overcomes those limitations.', 'A hands-on demonstration will be provided on creating and automating Docker image deployment using Jenkins. The session will include a practical demonstration of creating a Docker image, building and testing it, and automating its deployment to Docker Hub using Jenkins.', 'The presenter, Saurav, has experience working on various DevOps solutions for different companies. Saurav has practical experience with various DevOps tools such as Git, Jenkins, Docker, Puppet, and Ansible, gained through working with different companies.']}], 'duration': 69.108, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic4226.jpg', 'highlights': ['The chapter covers the importance of DevOps, its methodology, and various stages and tools involved in DevOps.', 'A hands-on demonstration will be provided on creating and automating Docker image deployment using Jenkins.', 'The presenter, Saurav, has experience working on various DevOps solutions for different companies.']}, {'end': 629.324, 'segs': [{'end': 118.376, 'src': 'embed', 'start': 92.956, 'weight': 2, 'content': [{'end': 97.558, 'text': 'The waterfall model describes a development method that is linear and sequential.', 'start': 92.956, 'duration': 4.602}, {'end': 101.76, 'text': 'Waterfall development has distinct goals for each phase of development.', 'start': 98.119, 'duration': 3.641}, {'end': 106.443, 'text': "Now you must be thinking why the name waterfall model because it's pretty similar to a waterfall.", 'start': 102.441, 'duration': 4.002}, {'end': 111.305, 'text': 'Now what happens in a waterfall once the water has flowed over the edge of the cliff, it cannot turn back.', 'start': 106.903, 'duration': 4.402}, {'end': 118.376, 'text': 'The same is the case for waterfall development strategy as well an application will go to the next stage only when the previous stage is complete.', 'start': 111.835, 'duration': 6.541}], 'summary': 'Waterfall model is a linear and sequential development method with distinct goals for each phase. it progresses like a waterfall, ensuring completion of each stage before moving to the next.', 'duration': 25.42, 'max_score': 92.956, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic92956.jpg'}, {'end': 199.329, 'src': 'embed', 'start': 168.657, 'weight': 3, 'content': [{'end': 169.938, 'text': 'So here are a few disadvantages.', 'start': 168.657, 'duration': 1.281}, {'end': 172.8, 'text': 'So first one is once the application is in the testing stage.', 'start': 170.098, 'duration': 2.702}, {'end': 177.764, 'text': 'It is very difficult to go back and change something that was not well thought out in the concept stage.', 'start': 173.26, 'duration': 4.504}, {'end': 184.809, 'text': 'Now what I mean by that suppose you have written the code for the entire application, but in testing there is some bug in that particular application.', 'start': 178.284, 'duration': 6.525}, {'end': 192.307, 'text': 'Now, in order to remove that bug, you need to go through the entire source code of the application, which used to take a lot of time, right?', 'start': 185.365, 'duration': 6.942}, {'end': 195.528, 'text': 'So that is one very big limitation of waterfall model.', 'start': 192.647, 'duration': 2.881}, {'end': 199.329, 'text': 'apart from that, no working software is produced until late during the life cycle.', 'start': 195.528, 'duration': 3.801}], 'summary': 'Waterfall model: difficult to change after testing, late software production', 'duration': 30.672, 'max_score': 168.657, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic168657.jpg'}, {'end': 233.126, 'src': 'embed', 'start': 203.37, 'weight': 4, 'content': [{'end': 208.731, 'text': 'There are high amount of risk and uncertainty, which means that once your product is live, it is there in the market.', 'start': 203.37, 'duration': 5.361}, {'end': 214.935, 'text': "Then, if there's any bug or any downtime, then you have to go through the entire source code of the application again.", 'start': 209.332, 'duration': 5.603}, {'end': 222.199, 'text': 'You have to go through that entire process of waterfall model that we just saw in order to produce a working software again right?', 'start': 215.175, 'duration': 7.024}, {'end': 224.681, 'text': "So that's how it used to take a lot of time.", 'start': 222.54, 'duration': 2.141}, {'end': 226.382, 'text': "There's a lot of risk and uncertainty.", 'start': 224.721, 'duration': 1.661}, {'end': 233.126, 'text': 'And imagine if you have upgraded some software stack in your production environment and that led to the failure of your application.', 'start': 226.862, 'duration': 6.264}], 'summary': 'High risk and uncertainty in software development leads to potential downtime and time-consuming bug fixes.', 'duration': 29.756, 'max_score': 203.37, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic203370.jpg'}, {'end': 260.778, 'src': 'embed', 'start': 237.87, 'weight': 5, 'content': [{'end': 246.273, 'text': 'Now, it is not a good model for complex and object-oriented projects and it is not suitable for the projects where requirements are at a moderate to high risk of changing.', 'start': 237.87, 'duration': 8.403}, {'end': 252.055, 'text': 'So what I mean by that, suppose your client has given you a requirement for a web application today.', 'start': 246.313, 'duration': 5.742}, {'end': 258.257, 'text': 'Now, you have taken your own sweet time and you are in a condition to release the application, say, after one year.', 'start': 252.435, 'duration': 5.822}, {'end': 260.778, 'text': 'Now, after one year, the market has changed.', 'start': 258.637, 'duration': 2.141}], 'summary': 'Model unsuitable for complex projects or high-risk changes.', 'duration': 22.908, 'max_score': 237.87, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic237870.jpg'}, {'end': 405.773, 'src': 'embed', 'start': 377.641, 'weight': 0, 'content': [{'end': 380.581, 'text': 'then we discover a few things that we can incorporate in the application.', 'start': 377.641, 'duration': 2.94}, {'end': 387.063, 'text': 'we again design it, develop it, and there are multiple iterations involved in development and testing of a particular application.', 'start': 380.581, 'duration': 6.482}, {'end': 393.684, 'text': 'So in agile methodology, each project is broken up into several iterations, and all iterations should be of the same time duration.', 'start': 387.443, 'duration': 6.241}, {'end': 396.245, 'text': 'And generally, it is between two to eight weeks.', 'start': 394.264, 'duration': 1.981}, {'end': 399.951, 'text': 'and at the end of each iteration of working product should be delivered.', 'start': 396.869, 'duration': 3.082}, {'end': 403.292, 'text': 'So this is what agile methodology in a nutshell is now.', 'start': 400.331, 'duration': 2.961}, {'end': 405.773, 'text': 'Let me go ahead and compare this with the waterfall model.', 'start': 403.332, 'duration': 2.441}], 'summary': 'Agile methodology involves iterations of 2-8 weeks, delivering working product at the end of each iteration.', 'duration': 28.132, 'max_score': 377.641, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic377641.jpg'}, {'end': 500.703, 'src': 'embed', 'start': 472.846, 'weight': 1, 'content': [{'end': 475.067, 'text': 'The development and testing used to happen continuously.', 'start': 472.846, 'duration': 2.221}, {'end': 478.708, 'text': 'But when I talk about deployment, then that was not continuous.', 'start': 475.567, 'duration': 3.141}, {'end': 483.237, 'text': 'There were still a lot of conflicts happening between the dev and the ops side of the company.', 'start': 479.372, 'duration': 3.865}, {'end': 487.001, 'text': 'The dev team wants agility, whereas the ops team wants stability.', 'start': 483.817, 'duration': 3.184}, {'end': 489.384, 'text': "And there's a very common conflict that happens.", 'start': 487.441, 'duration': 1.943}, {'end': 493.949, 'text': "And a lot of you can actually relate to it that the code works fine in the developer's laptop,", 'start': 490.024, 'duration': 3.925}, {'end': 499.015, 'text': 'but when it reaches the production there is some bug in the application or it does not work in the production at all.', 'start': 493.949, 'duration': 5.066}, {'end': 500.703, 'text': 'So this is because, of you know,', 'start': 499.562, 'duration': 1.141}], 'summary': 'Development and testing were continuous, but deployment faced conflicts between dev and ops teams, resulting in production issues.', 'duration': 27.857, 'max_score': 472.846, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic472846.jpg'}, {'end': 618.276, 'src': 'embed', 'start': 594.008, 'weight': 6, 'content': [{'end': 599.97, 'text': 'where requirements are not at a moderate to high risk of changing, right? The requirements are pretty static.', 'start': 594.008, 'duration': 5.962}, {'end': 607.192, 'text': 'So if that is suitable for waterfall model, when you talk about agile so your application is at a moderate risk of changing,', 'start': 600.35, 'duration': 6.842}, {'end': 609.573, 'text': 'then you can go ahead and use agile methodology as well.', 'start': 607.192, 'duration': 2.381}, {'end': 611.534, 'text': 'So I hope this answers your question, Dave.', 'start': 610.013, 'duration': 1.521}, {'end': 613.354, 'text': 'And it was a very interesting question, guys.', 'start': 611.994, 'duration': 1.36}, {'end': 616.175, 'text': 'You please go ahead and ask whatever doubts you have in your mind.', 'start': 613.394, 'duration': 2.781}, {'end': 618.276, 'text': "You won't even enjoy it if it's a one-way conversation.", 'start': 616.215, 'duration': 2.061}], 'summary': 'Waterfall model for static requirements, agile for moderate risk of change.', 'duration': 24.268, 'max_score': 594.008, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic594008.jpg'}], 'start': 73.475, 'title': 'Waterfall model and agile methodology', 'summary': "Discusses waterfall model limitations, including difficulties in testing, late software production, high risk, and unsuitability for complex projects. it also compares waterfall and agile, highlighting continuous development and testing in agile, iterations and deployment in both models, and agile's limitations in conflicts and manual deployment.", 'chapters': [{'end': 294.26, 'start': 73.475, 'title': 'Understanding waterfall model limitations', 'summary': 'Discusses the waterfall model, a linear and sequential development method, its stages, drawbacks including the difficulty to make changes in testing, late production of working software, high risk and uncertainty, time-consuming nature, unsuitability for complex and object-oriented projects, and projects with changing requirements.', 'duration': 220.785, 'highlights': ['The waterfall model describes a development method that is linear and sequential. The description of the linear and sequential nature of the waterfall model.', 'Once the application is in the testing stage, it is very difficult to go back and change something that was not well thought out in the concept stage. Explains the difficulty of making changes in the testing stage of the waterfall model, leading to time-consuming processes.', 'No working software is produced until late during the life cycle, leading to high risk and uncertainty. Highlights the drawback of late production of working software and the associated high risk and uncertainty.', 'It is not a good model for complex and object-oriented projects and not suitable for projects with changing requirements. Explains the unsuitability of the waterfall model for complex, object-oriented projects, and projects with changing requirements.']}, {'end': 629.324, 'start': 294.26, 'title': 'Comparison of waterfall and agile', 'summary': 'Compares the linear waterfall model with the iterative agile methodology, emphasizing continuous development and testing in agile, iterations and deployment in both models, and the limitations of agile regarding conflicts between development and operations teams and manual deployment.', 'duration': 335.064, 'highlights': ['Agile promotes continuous iteration of development and testing throughout the software development lifecycle, with iterations of 2 to 8 weeks and delivery of a working product at the end of each iteration. Agile promotes continuous iteration of development and testing throughout the software development lifecycle, with iterations of 2 to 8 weeks and delivery of a working product at the end of each iteration.', 'The limitations of Agile include conflicts between the development and operations teams, as the development part is agile while deployment remains linear, causing manual deployment onto production servers and conflicts due to computing environment inconsistencies. The limitations of Agile include conflicts between the development and operations teams, as the development part is agile while deployment remains linear, causing manual deployment onto production servers and conflicts due to computing environment inconsistencies.', 'Waterfall model is suitable for projects where requirements are not at a moderate to high risk of changing, while Agile is suitable when the application is at a moderate risk of changing. Waterfall model is suitable for projects where requirements are not at a moderate to high risk of changing, while Agile is suitable when the application is at a moderate risk of changing.']}], 'duration': 555.849, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic73475.jpg', 'highlights': ['Agile promotes continuous iteration of development and testing throughout the software development lifecycle, with iterations of 2 to 8 weeks and delivery of a working product at the end of each iteration.', 'The limitations of Agile include conflicts between the development and operations teams, as the development part is agile while deployment remains linear, causing manual deployment onto production servers and conflicts due to computing environment inconsistencies.', 'The waterfall model describes a development method that is linear and sequential.', 'Once the application is in the testing stage, it is very difficult to go back and change something that was not well thought out in the concept stage.', 'No working software is produced until late during the life cycle, leading to high risk and uncertainty.', 'It is not a good model for complex and object-oriented projects and not suitable for projects with changing requirements.', 'Waterfall model is suitable for projects where requirements are not at a moderate to high risk of changing, while Agile is suitable when the application is at a moderate risk of changing.']}, {'end': 1068.287, 'segs': [{'end': 676.716, 'src': 'embed', 'start': 645.891, 'weight': 0, 'content': [{'end': 649.172, 'text': 'Now we are going to look at the solution to all the problems that we have just discussed.', 'start': 645.891, 'duration': 3.281}, {'end': 652.212, 'text': 'And the solution is none other than DevOps.', 'start': 649.77, 'duration': 2.442}, {'end': 659.497, 'text': 'DevOps is basically a software development strategy, which bridges the gap between the dev side and the op side of the company.', 'start': 652.872, 'duration': 6.625}, {'end': 665.361, 'text': 'So DevOps is basically a term for a group of concepts that, while not all new,', 'start': 660.158, 'duration': 5.203}, {'end': 670.205, 'text': 'have catalyzed into a movement and are rapidly spreading throughout the technical community.', 'start': 665.361, 'duration': 4.844}, {'end': 676.716, 'text': 'Like any new and popular term people may have confused and sometimes contradictory impressions of what it is.', 'start': 670.632, 'duration': 6.084}], 'summary': 'Devops bridges gap between dev and op sides, catalyzing a movement in technical community.', 'duration': 30.825, 'max_score': 645.891, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic645891.jpg'}, {'end': 711.561, 'src': 'embed', 'start': 681.9, 'weight': 1, 'content': [{'end': 689.325, 'text': 'So basically devops is a practice dedicated to the study of building evolving and operating rapidly changing systems at scale.', 'start': 681.9, 'duration': 7.425}, {'end': 691.804, 'text': 'Now, let me put this in simpler terms.', 'start': 690.163, 'duration': 1.641}, {'end': 699.411, 'text': 'So devops is the practice of operations and development engineers participating together in the entire software lifecycle,', 'start': 692.285, 'duration': 7.126}, {'end': 703.134, 'text': 'from design through the development process to production support.', 'start': 699.411, 'duration': 3.723}, {'end': 711.561, 'text': 'and you can also say that devops is also characterized by operation staff making use many of the same techniques as developers for this system work.', 'start': 703.134, 'duration': 8.427}], 'summary': 'Devops is the practice of operations and development engineers working together in the entire software lifecycle, characterized by operational staff using similar techniques as developers.', 'duration': 29.661, 'max_score': 681.9, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic681900.jpg'}, {'end': 729.138, 'src': 'heatmap', 'start': 681.9, 'weight': 0.728, 'content': [{'end': 689.325, 'text': 'So basically devops is a practice dedicated to the study of building evolving and operating rapidly changing systems at scale.', 'start': 681.9, 'duration': 7.425}, {'end': 691.804, 'text': 'Now, let me put this in simpler terms.', 'start': 690.163, 'duration': 1.641}, {'end': 699.411, 'text': 'So devops is the practice of operations and development engineers participating together in the entire software lifecycle,', 'start': 692.285, 'duration': 7.126}, {'end': 703.134, 'text': 'from design through the development process to production support.', 'start': 699.411, 'duration': 3.723}, {'end': 711.561, 'text': 'and you can also say that devops is also characterized by operation staff making use many of the same techniques as developers for this system work.', 'start': 703.134, 'duration': 8.427}, {'end': 713.02, 'text': "I'll explain you that.", 'start': 712.179, 'duration': 0.841}, {'end': 715.122, 'text': 'how is this definition relevant?', 'start': 713.02, 'duration': 2.102}, {'end': 723.912, 'text': 'because all we are saying here is devops is characterized by operation staff making use many of the same techniques as developers for their systems work.', 'start': 715.122, 'duration': 8.79}, {'end': 729.138, 'text': "So when I will explain you infrastructure is code, you'll understand why I'm using this particular definition.", 'start': 724.453, 'duration': 4.685}], 'summary': 'Devops is the practice of operations and development engineers collaborating in the entire software lifecycle, characterized by operation staff using similar techniques as developers for system work.', 'duration': 47.238, 'max_score': 681.9, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic681900.jpg'}, {'end': 788.069, 'src': 'embed', 'start': 761.906, 'weight': 2, 'content': [{'end': 767.329, 'text': 'So not only the knowledge of these tools are important for a DevOps engineer, but also how to use these tools.', 'start': 761.906, 'duration': 5.423}, {'end': 772.792, 'text': 'How can I architect my software delivery lifecycle such that I get the maximum output right?', 'start': 767.409, 'duration': 5.383}, {'end': 774.673, 'text': "So it doesn't mean that you know.", 'start': 773.252, 'duration': 1.421}, {'end': 779.195, 'text': 'if I have a good knowledge of Jenkins or Git or Docker, then I become a DevOps engineer.', 'start': 774.673, 'duration': 4.522}, {'end': 780.396, 'text': 'No, that is not true.', 'start': 779.475, 'duration': 0.921}, {'end': 782.037, 'text': 'You should know how to use them.', 'start': 780.796, 'duration': 1.241}, {'end': 784.818, 'text': 'You should know where to use them to get the maximum output.', 'start': 782.157, 'duration': 2.661}, {'end': 788.069, 'text': "So I hope you have got my point what I'm trying to say here.", 'start': 785.447, 'duration': 2.622}], 'summary': 'Importance of knowledge and usage of devops tools for maximizing output.', 'duration': 26.163, 'max_score': 761.906, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic761906.jpg'}, {'end': 922.875, 'src': 'embed', 'start': 891.085, 'weight': 3, 'content': [{'end': 893.986, 'text': 'So version control is basically maintaining different versions of the code.', 'start': 891.085, 'duration': 2.901}, {'end': 898.088, 'text': 'What I mean by that suppose there are multiple developers writing a code for a particular application.', 'start': 894.006, 'duration': 4.082}, {'end': 899.907, 'text': 'So how will I know that?', 'start': 898.746, 'duration': 1.161}, {'end': 905.492, 'text': 'which developer has made which commit, at what time and which commit is actually causing the error?', 'start': 899.907, 'duration': 5.585}, {'end': 907.393, 'text': 'and how will I revert back to the previous commit?', 'start': 905.492, 'duration': 1.901}, {'end': 908.955, 'text': "So I hope you're getting my point.", 'start': 907.794, 'duration': 1.161}, {'end': 916.101, 'text': 'My point here is how will I manage that source code suppose developer a has made a commit and that commit is causing some error.', 'start': 909.015, 'duration': 7.086}, {'end': 922.875, 'text': 'Now, how will I know that developer a has made that commit and at what time he made that comment and where in the code was that?', 'start': 916.781, 'duration': 6.094}], 'summary': 'Version control helps manage code by tracking commits, errors, and contributors.', 'duration': 31.79, 'max_score': 891.085, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic891085.jpg'}, {'end': 962.219, 'src': 'embed', 'start': 930.478, 'weight': 4, 'content': [{'end': 931.999, 'text': "We're going to focus on git in our course.", 'start': 930.478, 'duration': 1.521}, {'end': 934.12, 'text': 'So then we have continuous integration.', 'start': 932.479, 'duration': 1.641}, {'end': 937.961, 'text': 'So continuous integration is basically building your application continuously.', 'start': 934.18, 'duration': 3.781}, {'end': 938.882, 'text': 'What I mean by that?', 'start': 938.001, 'duration': 0.881}, {'end': 941.163, 'text': 'suppose any developer made a change in resource code.', 'start': 938.882, 'duration': 2.281}, {'end': 945.565, 'text': 'a continuous integration server should be able to pull that code and prepare a build.', 'start': 941.163, 'duration': 4.402}, {'end': 949.769, 'text': 'now, when I say build, people have this misconception of, you know, only compiling the source code.', 'start': 945.565, 'duration': 4.204}, {'end': 956.595, 'text': 'It is not true, guys, includes everything, starting from compiling your source code, validating your source code code, review, unit testing,', 'start': 949.889, 'duration': 6.706}, {'end': 958.396, 'text': 'integration testing, Etc.', 'start': 956.595, 'duration': 1.801}, {'end': 962.219, 'text': 'Etc And even packaging your application as well then comes continuous delivery.', 'start': 958.416, 'duration': 3.803}], 'summary': 'Focus on git and continuous integration for building and testing applications continuously.', 'duration': 31.741, 'max_score': 930.478, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic930478.jpg'}, {'end': 1007.792, 'src': 'embed', 'start': 981.02, 'weight': 5, 'content': [{'end': 984.481, 'text': 'it will be then deployed onto the broad servers for release right.', 'start': 981.02, 'duration': 3.461}, {'end': 989.743, 'text': "that is called continuous deployment, and here we'll be using configuration management and containerization tools.", 'start': 984.481, 'duration': 5.262}, {'end': 994.585, 'text': 'so this is basically to provision your infrastructure, to provision your prod environment.', 'start': 990.183, 'duration': 4.402}, {'end': 1000.288, 'text': 'and let me tell you guys, continuous deployment is something which is not a good practice, because before releasing your product in the market,', 'start': 994.585, 'duration': 5.703}, {'end': 1003.43, 'text': 'there might be multiple checks that you want to do before that right.', 'start': 1000.288, 'duration': 3.142}, {'end': 1007.792, 'text': "there might be multiple other testings that you want to do, So you don't want this to be automated, right?", 'start': 1003.43, 'duration': 4.362}], 'summary': 'Continuous deployment automates release process, but may lack necessary checks and testing.', 'duration': 26.772, 'max_score': 981.02, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic981020.jpg'}, {'end': 1077.294, 'src': 'embed', 'start': 1048.249, 'weight': 7, 'content': [{'end': 1051.072, 'text': 'analysis of the code, basically static code analysis.', 'start': 1048.249, 'duration': 2.823}, {'end': 1055.937, 'text': 'you know if there are empty cache blocks or there are certain for loops which can be replaced with while loops,', 'start': 1051.072, 'duration': 4.865}, {'end': 1058.919, 'text': 'And you know all the different kinds of warnings.', 'start': 1056.437, 'duration': 2.482}, {'end': 1060.981, 'text': 'basically is what we call code review.', 'start': 1058.919, 'duration': 2.062}, {'end': 1062.582, 'text': "It's basically static code analysis.", 'start': 1061.001, 'duration': 1.581}, {'end': 1064.183, 'text': 'So I hope this answers your question.', 'start': 1062.662, 'duration': 1.521}, {'end': 1068.287, 'text': 'So Ajay has requested me to repeat this entire slide once more.', 'start': 1065.384, 'duration': 2.903}, {'end': 1070.528, 'text': 'So definitely, Ajay, let me do that.', 'start': 1068.507, 'duration': 2.021}, {'end': 1072.97, 'text': "So let's start with version control.", 'start': 1071.089, 'duration': 1.881}, {'end': 1074.852, 'text': "So you've got the requirement from the client.", 'start': 1073.151, 'duration': 1.701}, {'end': 1077.294, 'text': 'You have designed it, how your application is going to look like.', 'start': 1074.872, 'duration': 2.422}], 'summary': 'Code review involves static code analysis for identifying empty cache blocks, loop optimizations, and warnings.', 'duration': 29.045, 'max_score': 1048.249, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic1048249.jpg'}], 'start': 629.644, 'title': 'Devops methodology and its stages', 'summary': 'Discusses the devops methodology as a bridge between development and operations, emphasizing its continuous nature, tool usage, and flexibility. it also outlines the stages in devops, including version control, continuous integration, delivery, and deployment, highlighting their importance.', 'chapters': [{'end': 873.059, 'start': 629.644, 'title': 'Understanding devops methodology', 'summary': 'Discussed the limitations of the waterfall model and agile methodology, followed by an introduction to devops as a software development strategy that bridges the gap between development and operations. it emphasized that devops is not a technology but a methodology and highlighted the continuous nature of processes, the importance of knowledge and usage of tools, and the flexibility in selecting tools based on organizational requirements and application types.', 'duration': 243.415, 'highlights': ['DevOps is a software development strategy that bridges the gap between the dev and op sides of the company and is characterized by the practice of operations and development engineers participating together in the entire software lifecycle, emphasizing the continuous nature of processes (e.g., coding, testing, deployment, monitoring) (Quantity: Multiple stages, 1 concept).', 'DevOps is not a technology but a methodology dedicated to the study of building evolving and operating rapidly changing systems at scale, requiring not only knowledge of tools but also understanding of how to architect the software delivery lifecycle for maximum output and flexibility in tool selection based on organizational requirements and application types (Quantity: 1 concept, 3 key points).', 'Various tools are involved in the DevOps methodology, and it is essential for a DevOps engineer to have knowledge of these tools and understand how to use them effectively to maximize output, emphasizing the importance of knowledge and usage of tools (Quantity: Multiple tools, 1 concept).']}, {'end': 1068.287, 'start': 873.079, 'title': 'Stages in devops', 'summary': 'Outlines the various stages involved in devops, including version control, continuous integration, continuous delivery, and deployment, emphasizing the importance of each stage in the devops process.', 'duration': 195.208, 'highlights': ['Version control is essential for managing code changes, identifying errors, and reverting to previous commits, using tools like git and subversion. Version control facilitates tracking code changes, identifying errors, and reverting to previous commits, utilizing tools like git and subversion.', 'Continuous integration involves building and testing the application continuously, encompassing code validation, review, unit testing, integration testing, and packaging. Continuous integration entails continuous building and testing of the application, including code validation, review, unit testing, integration testing, and packaging.', 'Continuous delivery includes deploying the built application onto test servers for testing and then onto production servers for release, using tools like Jenkins and automation testing tools like Selenium. Continuous delivery involves deploying the built application onto test servers for testing and then onto production servers for release, utilizing tools like Jenkins and automation testing tools like Selenium.', 'Deployment stage involves provisioning infrastructure and production environments using configuration management and containerization tools like Puppet, Chef, Ansible, Solstack, and Docker. Deployment stage encompasses provisioning infrastructure and production environments using configuration management and containerization tools like Puppet, Chef, Ansible, Solstack, and Docker.', 'Code review includes static code analysis to identify code warnings and issues, such as empty catch blocks or inefficient loops, for improving code quality. Code review involves static code analysis to identify code warnings and issues, such as empty catch blocks or inefficient loops, for improving code quality.']}], 'duration': 438.643, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic629644.jpg', 'highlights': ['DevOps bridges the gap between dev and op sides, emphasizing continuous processes.', 'DevOps is a methodology for building and operating rapidly changing systems at scale.', 'DevOps emphasizes the importance of knowledge and usage of various tools.', 'Version control is essential for managing code changes and identifying errors.', 'Continuous integration involves continuous building and testing of the application.', 'Continuous delivery includes deploying the built application onto test and production servers.', 'Deployment stage encompasses provisioning infrastructure and production environments.', 'Code review involves static code analysis to identify code warnings and issues.']}, {'end': 1995.412, 'segs': [{'end': 1112.124, 'src': 'embed', 'start': 1086.554, 'weight': 3, 'content': [{'end': 1094.497, 'text': 'So what my point here is how will I know which commit has caused that error? Which commit has caused a particular error? Or who has made which commit,', 'start': 1086.554, 'duration': 7.943}, {'end': 1095.637, 'text': 'at what time, right?', 'start': 1094.497, 'duration': 1.14}, {'end': 1100.058, 'text': 'To answer all of these questions, we use version control tools like git subversion, etc.', 'start': 1095.657, 'duration': 4.401}, {'end': 1100.859, 'text': 'etc. right?', 'start': 1100.058, 'duration': 0.801}, {'end': 1103.559, 'text': 'So these tools will maintain different versions of the code.', 'start': 1101.179, 'duration': 2.38}, {'end': 1108.481, 'text': 'So even if, you know, I want to revert back to the previous commit, I can go ahead and do that.', 'start': 1103.88, 'duration': 4.601}, {'end': 1112.124, 'text': 'I can go ahead and check out the previous version of the code as well.', 'start': 1109.062, 'duration': 3.062}], 'summary': 'Version control tools like git, subversion maintain different code versions, allowing reverting to previous commits.', 'duration': 25.57, 'max_score': 1086.554, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic1086554.jpg'}, {'end': 1227.954, 'src': 'embed', 'start': 1172.188, 'weight': 0, 'content': [{'end': 1176.091, 'text': 'Now, under this continuous deployment, we have configuration management and containerization.', 'start': 1172.188, 'duration': 3.903}, {'end': 1180.174, 'text': 'So configuration management tools are basically Chef Puppet Ansible and SaltStack,', 'start': 1176.511, 'duration': 3.663}, {'end': 1186.499, 'text': 'which can provision and deploy your application onto the prod servers, and containerization is basically docker container.', 'start': 1180.174, 'duration': 6.325}, {'end': 1187.9, 'text': 'So which serves a similar purpose.', 'start': 1186.519, 'duration': 1.381}, {'end': 1193.665, 'text': 'Once your application is live, it will be continuously monitored by tools like Nagios or Splunk,', 'start': 1188.521, 'duration': 5.144}, {'end': 1196.487, 'text': 'which will provide the relevant feedback to the concerned teams.', 'start': 1193.665, 'duration': 2.822}, {'end': 1198.347, 'text': "So that's how DevOps works.", 'start': 1196.966, 'duration': 1.381}, {'end': 1203.61, 'text': 'So these are the various stages involved in DevOps, right? So now let me just go back to clear if there are doubts.', 'start': 1198.367, 'duration': 5.243}, {'end': 1206.912, 'text': 'So this is how various stages are scheduled, various jobs are scheduled.', 'start': 1204.17, 'duration': 2.742}, {'end': 1208.532, 'text': 'So we have Jenkins here.', 'start': 1207.292, 'duration': 1.24}, {'end': 1210.373, 'text': 'We have a continuous integration server.', 'start': 1208.613, 'duration': 1.76}, {'end': 1212.114, 'text': 'So what Jenkins will do?', 'start': 1210.734, 'duration': 1.38}, {'end': 1215.236, 'text': 'the moment any developer makes a change in the source code,', 'start': 1212.114, 'duration': 3.122}, {'end': 1220.199, 'text': 'it will take that code and then it will trigger a build using tools like Maven or Ant or Gradle.', 'start': 1215.236, 'duration': 4.963}, {'end': 1227.954, 'text': 'Once that is done, it will deploy it onto the test servers for testing for end user testing using tools like Selenium, JUnit, etc.', 'start': 1220.692, 'duration': 7.262}], 'summary': 'Devops involves continuous deployment, configuration management, containerization, monitoring with tools like nagios or splunk, and continuous integration with jenkins triggering builds and deployments for testing.', 'duration': 55.766, 'max_score': 1172.188, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic1172188.jpg'}, {'end': 1453.899, 'src': 'embed', 'start': 1423.738, 'weight': 4, 'content': [{'end': 1426.039, 'text': "Let's talk about the distributed version control system now.", 'start': 1423.738, 'duration': 2.301}, {'end': 1431.581, 'text': 'Now these systems do not necessarily rely on a central server to store all the versions of the project file.', 'start': 1426.579, 'duration': 5.002}, {'end': 1438.851, 'text': 'So, in distributed version control system, every contributor has a local copy or clone of the main repository.', 'start': 1432.327, 'duration': 6.524}, {'end': 1442.132, 'text': "as you can see I'm highlighting with my cursor right now that is,", 'start': 1438.851, 'duration': 3.281}, {'end': 1449.156, 'text': 'everyone maintains a local repository of their own which contains all the files and metadata present in the main repository.', 'start': 1442.132, 'duration': 7.024}, {'end': 1453.899, 'text': 'as you can see then, the diagram as well, every programmer maintains a local repository on its own,', 'start': 1449.156, 'duration': 4.743}], 'summary': 'Distributed version control systems use local copies, no central server, every contributor maintains a local repository.', 'duration': 30.161, 'max_score': 1423.738, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic1423738.jpg'}, {'end': 1572.438, 'src': 'embed', 'start': 1539.557, 'weight': 5, 'content': [{'end': 1545.381, 'text': 'they can share changes with one another if they want to get some feedback before affecting the changes in the main repository as well.', 'start': 1539.557, 'duration': 5.824}, {'end': 1551.765, 'text': 'So these are the various ways in which a distributed version control system is actually better than a centralized version control system.', 'start': 1545.841, 'duration': 5.924}, {'end': 1556.088, 'text': 'So we saw the two types of source code management systems and I hope you have understood it.', 'start': 1552.225, 'duration': 3.863}, {'end': 1561.571, 'text': 'We are going to discuss a one resource code management tool called git which is very popular in the market right now.', 'start': 1556.488, 'duration': 5.083}, {'end': 1563.793, 'text': 'Almost all the companies actually use git.', 'start': 1561.631, 'duration': 2.162}, {'end': 1569.156, 'text': 'So before I move ahead if you have any questions or doubts, you can just go ahead and ask me any questions guys.', 'start': 1564.133, 'duration': 5.023}, {'end': 1572.438, 'text': 'So there is a question popped on my screen.', 'start': 1570.857, 'duration': 1.581}], 'summary': 'Distributed version control system is better; git is popular.', 'duration': 32.881, 'max_score': 1539.557, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic1539557.jpg'}, {'end': 1714.499, 'src': 'embed', 'start': 1692.271, 'weight': 7, 'content': [{'end': 1700.934, 'text': 'I can perform git push to push the changes that I made in my local repository to the remote repository and in order to pull other changes which are there in the remote repository to the local repository,', 'start': 1692.271, 'duration': 8.663}, {'end': 1703.975, 'text': 'you can perform git pull and finally git checkout.', 'start': 1700.934, 'duration': 3.041}, {'end': 1708.577, 'text': 'that will be added to your working directory as well, and git merge is also a pretty similar command.', 'start': 1703.975, 'duration': 4.602}, {'end': 1712.758, 'text': "Now, if you want to learn more about git, I'll leave the link in the chat box.", 'start': 1709.137, 'duration': 3.621}, {'end': 1714.499, 'text': 'You can go ahead and have a look at that video.', 'start': 1712.778, 'duration': 1.721}], 'summary': 'Learn to use git commands like push, pull, checkout, and merge. check out the link for more.', 'duration': 22.228, 'max_score': 1692.271, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic1692271.jpg'}, {'end': 1837.491, 'src': 'heatmap', 'start': 1745.544, 'weight': 1, 'content': [{'end': 1752.946, 'text': 'now in order to check the version of git, you can just type in here git hyphen hyphen version and you can see that I have 2.7.2 here.', 'start': 1745.544, 'duration': 7.402}, {'end': 1754.807, 'text': 'let me go ahead and clear my terminal.', 'start': 1752.946, 'duration': 1.861}, {'end': 1763.349, 'text': "so now let me first make a directory and let me call this as edureka hyphen repository and I'll move into this edureka repository.", 'start': 1754.807, 'duration': 8.542}, {'end': 1768.05, 'text': 'so first thing that I need to do is initialize this repository as an empty git repository.', 'start': 1763.349, 'duration': 4.701}, {'end': 1776.167, 'text': 'so for that, all I have to type here is git init and it will go ahead and initialize this empty directory as a local git repository.', 'start': 1768.05, 'duration': 8.117}, {'end': 1777.228, 'text': 'so it has been initialized.', 'start': 1776.167, 'duration': 1.061}, {'end': 1779.89, 'text': 'now, as you can see, initialize empty git repository in home.', 'start': 1777.228, 'duration': 2.662}, {'end': 1781.432, 'text': 'edureka, edureka hyphen report.', 'start': 1779.89, 'duration': 1.542}, {'end': 1782.653, 'text': 'dot git.', 'start': 1781.432, 'duration': 1.221}, {'end': 1783.653, 'text': 'all right net.', 'start': 1782.653, 'duration': 1}, {'end': 1786.776, 'text': "so over here i'm just going to create a file, a python file.", 'start': 1783.653, 'duration': 3.123}, {'end': 1793.681, 'text': "so let me just name that as edureka dot py and i'm going to make some changes in this particular file.", 'start': 1786.776, 'duration': 6.905}, {'end': 1796.043, 'text': "so i'll use gedit for that.", 'start': 1793.681, 'duration': 2.362}, {'end': 1803.608, 'text': "i'm just going to write in here a normal print statement Welcome to Edureka.", 'start': 1796.043, 'duration': 7.565}, {'end': 1805.45, 'text': 'Close the parenthesis.', 'start': 1804.429, 'duration': 1.021}, {'end': 1806.07, 'text': 'Save it.', 'start': 1805.57, 'duration': 0.5}, {'end': 1807.551, 'text': 'Close it.', 'start': 1807.131, 'duration': 0.42}, {'end': 1809.293, 'text': 'Let me clear my terminal.', 'start': 1808.232, 'duration': 1.061}, {'end': 1813.276, 'text': 'Now, if I hit an ls command, so I can see that edureka.py file is here.', 'start': 1809.813, 'duration': 3.463}, {'end': 1820.942, 'text': 'Now, if you can recall from the slides, I was telling you, in order to add a particular file or a directory into the local Git repository,', 'start': 1813.816, 'duration': 7.126}, {'end': 1822.903, 'text': 'first I need to add it to my staging area.', 'start': 1820.942, 'duration': 1.961}, {'end': 1825.265, 'text': 'And how will I do that? By using the git add command.', 'start': 1822.963, 'duration': 2.302}, {'end': 1830.539, 'text': 'So all I have to type here is git add at the name of my file, which is edureka.py.', 'start': 1825.731, 'duration': 4.808}, {'end': 1831.28, 'text': 'And here we go.', 'start': 1830.779, 'duration': 0.501}, {'end': 1832.542, 'text': 'So it is done now.', 'start': 1831.861, 'duration': 0.681}, {'end': 1837.491, 'text': 'Now if I type in here git status, it will give me the files which I need to commit.', 'start': 1832.903, 'duration': 4.588}], 'summary': 'Initialized local git repository with version 2.7.2, added and committed edureka.py file.', 'duration': 91.947, 'max_score': 1745.544, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic1745544.jpg'}, {'end': 1968.898, 'src': 'heatmap', 'start': 1921.624, 'weight': 0.844, 'content': [{'end': 1922.584, 'text': "I'm going to keep it public.", 'start': 1921.624, 'duration': 0.96}, {'end': 1924.725, 'text': 'If you want any description, you can go ahead and give that.', 'start': 1922.704, 'duration': 2.021}, {'end': 1927.086, 'text': 'And I can also initialize it with a readme.', 'start': 1925.245, 'duration': 1.841}, {'end': 1928.486, 'text': 'Create repository.', 'start': 1927.566, 'duration': 0.92}, {'end': 1931.808, 'text': "And that's all you have to do in order to create a remote GitHub repository.", 'start': 1928.707, 'duration': 3.101}, {'end': 1935.149, 'text': "Now over here, you can see that there's only one readme.md file.", 'start': 1932.408, 'duration': 2.741}, {'end': 1938.83, 'text': "So what I'm going to do, I'm just going to copy this particular SSH link.", 'start': 1935.189, 'duration': 3.641}, {'end': 1944.032, 'text': "And I'm going to perform git remote add origin.", 'start': 1939.67, 'duration': 4.362}, {'end': 1946.993, 'text': "And the link that I've just copied, I'll paste it here.", 'start': 1944.472, 'duration': 2.521}, {'end': 1948.283, 'text': 'And here we go.', 'start': 1947.663, 'duration': 0.62}, {'end': 1952.545, 'text': 'So this has basically added my remote repository to my local repository.', 'start': 1948.603, 'duration': 3.942}, {'end': 1959.067, 'text': 'Now what I can do is I can go ahead and pull whatever is there in my remote repository to my local git repository.', 'start': 1953.225, 'duration': 5.842}, {'end': 1963.708, 'text': 'for that, all I have to type here is git pull origin master and here we go.', 'start': 1959.067, 'duration': 4.641}, {'end': 1968.898, 'text': "So it is done now as you can see that I've pulled all the changes.", 'start': 1965.876, 'duration': 3.022}], 'summary': 'Creating a remote github repository, adding ssh link, pulling changes to local repository', 'duration': 47.274, 'max_score': 1921.624, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic1921624.jpg'}], 'start': 1068.507, 'title': 'Devops lifecycle and git', 'summary': 'Covers stages of devops lifecycle and tools like git, jenkins, and docker. it also discusses distributed version control with git, emphasizing its advantages and providing detailed commands and operations.', 'chapters': [{'end': 1268.003, 'start': 1068.507, 'title': 'Devops lifecycle and tools', 'summary': 'Explains the various stages of the devops lifecycle, including version control, continuous integration, continuous delivery, and continuous deployment, along with the relevant tools like git, jenkins, selenium, docker, and monitoring tools like nagios and splunk.', 'duration': 199.496, 'highlights': ['Version control tools like git subversion are used to maintain different versions of the code, allowing developers to revert to previous commits and manage code effectively. Version control tools like git subversion are essential for managing code by maintaining different versions, enabling developers to revert to previous commits.', 'Continuous integration tools like Jenkins continuously build applications, including compilation, code review, and testing, before deploying them onto test servers for user acceptance testing, using tools like Selenium. Continuous integration tools like Jenkins play a crucial role in continuously building and testing applications before deployment onto test servers for user acceptance testing.', 'Continuous delivery involves deploying the application onto production servers after successful testing, while continuous deployment is not recommended due to the need for additional checks before releasing the product in the market. Continuous delivery involves deploying the application onto production servers after successful testing, while continuous deployment is not recommended due to the need for additional checks before product release.', 'Configuration management tools like Chef, Puppet, Ansible, and SaltStack are used for provisioning and deploying applications onto production servers, while containerization with docker containers serves a similar purpose. Configuration management tools like Chef, Puppet, Ansible, and SaltStack are essential for provisioning and deploying applications onto production servers, while containerization with docker containers serves a similar purpose.', 'Monitoring tools like Nagios or Splunk continuously monitor live applications and provide relevant feedback to the concerned teams, contributing to the effective functioning of DevOps. Monitoring tools like Nagios or Splunk play a crucial role in continuously monitoring live applications and providing relevant feedback to the concerned teams, contributing to the effective functioning of DevOps.']}, {'end': 1539.557, 'start': 1268.829, 'title': 'Source code management: centralized vs distributed', 'summary': 'Discusses the differences between centralized and distributed version control systems, highlighting the drawbacks and advantages of each. it also emphasizes the benefits of distributed version control over centralized, including faster operations, local commits, and easy data recovery in case of central server failure.', 'duration': 270.728, 'highlights': ['Distributed version control systems do not rely on a central server, allowing every contributor to have a local copy of the main repository, leading to faster operations and local commits. Faster operations, local commits, no reliance on central server', 'Centralized version control systems use a central server and have drawbacks such as the need for constant network connection, risk of data loss if the central server crashes, and less preference in industries. Constant network connection required, risk of data loss, less preference in industries', "Advantages of distributed version control include faster operations, local commits, and easy data recovery from any contributor's local repository in case of central server failure. Faster operations, local commits, easy data recovery", 'In distributed version control, contributors can push new chainsets to the central server once they have a group of chainsets ready. Ability to push multiple chainsets at once', 'In centralized version control, every developer has a working copy and can directly access the central server to make commits and update their working copy. Direct access to central server for commits and updates']}, {'end': 1995.412, 'start': 1539.557, 'title': 'Distributed version control with git', 'summary': "Explains the advantages of a distributed version control system over a centralized system, introduces the popularity of git, and provides a detailed walkthrough of git's basic commands and operations, including adding, committing, pushing, pulling, and merging, along with integrating with remote repositories on github, using specific version numbers, and creating and pushing files to a remote repository.", 'duration': 455.855, 'highlights': ['The advantages of a distributed version control system over a centralized system The chapter explains the advantages of a distributed version control system over a centralized system, highlighting the ability to share changes for feedback before affecting the main repository and the flexibility it offers.', "Introduction to Git's popularity and usage in companies Git is introduced as a widely used source code management tool in the market, with the majority of companies leveraging its capabilities.", "Detailed walkthrough of Git's basic commands and operations The chapter provides a detailed walkthrough of Git's basic commands and operations, including adding, committing, pushing, pulling, and merging, along with specific version numbers and integrating with remote repositories on GitHub."]}], 'duration': 926.905, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic1068507.jpg', 'highlights': ['Continuous integration tools like Jenkins play a crucial role in continuously building and testing applications before deployment onto test servers for user acceptance testing.', 'Configuration management tools like Chef, Puppet, Ansible, and SaltStack are essential for provisioning and deploying applications onto production servers, while containerization with docker containers serves a similar purpose.', 'Monitoring tools like Nagios or Splunk play a crucial role in continuously monitoring live applications and providing relevant feedback to the concerned teams, contributing to the effective functioning of DevOps.', 'Version control tools like git subversion are essential for managing code by maintaining different versions, enabling developers to revert to previous commits.', 'Distributed version control systems do not rely on a central server, allowing every contributor to have a local copy of the main repository, leading to faster operations and local commits.', 'The advantages of a distributed version control system over a centralized system The chapter explains the advantages of a distributed version control system over a centralized system, highlighting the ability to share changes for feedback before affecting the main repository and the flexibility it offers.', "Introduction to Git's popularity and usage in companies Git is introduced as a widely used source code management tool in the market, with the majority of companies leveraging its capabilities.", "Detailed walkthrough of Git's basic commands and operations The chapter provides a detailed walkthrough of Git's basic commands and operations, including adding, committing, pushing, pulling, and merging, along with specific version numbers and integrating with remote repositories on GitHub."]}, {'end': 2550.666, 'segs': [{'end': 2097.915, 'src': 'heatmap', 'start': 2005.44, 'weight': 0.799, 'content': [{'end': 2011.125, 'text': "So let's move forward with this devops tutorial and we are going to focus on the next stage which is called continuous integration.", 'start': 2005.44, 'duration': 5.685}, {'end': 2012.867, 'text': 'So we have seen few basic commands of git.', 'start': 2011.285, 'duration': 1.582}, {'end': 2017.051, 'text': 'We saw how to initialize an empty directory into a git repository, how we can, you know,', 'start': 2012.907, 'duration': 4.144}, {'end': 2020.795, 'text': 'add a file to the staging area and how we can go ahead and come in it in the local repository.', 'start': 2017.051, 'duration': 3.744}, {'end': 2026.52, 'text': 'After that we saw how we can push the changes in the local repository to the remote repository.', 'start': 2021.415, 'duration': 5.105}, {'end': 2028.221, 'text': 'My repository was on GitHub.', 'start': 2026.92, 'duration': 1.301}, {'end': 2033.867, 'text': 'I told you how to connect to that remote repository and then how even you can pull the changes from the remote repository right?', 'start': 2028.762, 'duration': 5.105}, {'end': 2036.309, 'text': 'So all of these things we have discussed in detail.', 'start': 2033.887, 'duration': 2.422}, {'end': 2040.813, 'text': "now let's move forward, guys, and we are going to focus on the next stage, which is called continuous integration.", 'start': 2036.309, 'duration': 4.504}, {'end': 2054.359, 'text': 'So continuous integration is basically a development practice in which the developers are required to commit changes to the source code in a shared repository several times a day or you can say more frequently and every commit made in the repository is then built.', 'start': 2041.508, 'duration': 12.851}, {'end': 2056.802, 'text': 'This allows the teams to detect the problems early.', 'start': 2054.659, 'duration': 2.143}, {'end': 2060.665, 'text': 'So let us just understand this with the help of the diagram that is there in front of your screen.', 'start': 2057.282, 'duration': 3.383}, {'end': 2067.944, 'text': 'So here we have multiple developers which are writing code for a particular application, and all of them are committing code to a shared repository,', 'start': 2061.26, 'duration': 6.684}, {'end': 2070.905, 'text': 'which can be a git repository or subversion repository.', 'start': 2067.944, 'duration': 2.961}, {'end': 2071.446, 'text': 'from there.', 'start': 2070.905, 'duration': 0.541}, {'end': 2074.587, 'text': 'the Jenkins over, which is nothing but a continuous integration tool,', 'start': 2071.446, 'duration': 3.141}, {'end': 2079.17, 'text': 'will pull that code the moment any developer commits a change in the source code.', 'start': 2074.587, 'duration': 4.583}, {'end': 2082.812, 'text': 'the moment any developer commits a change in the source code, Jenkins over will pull that.', 'start': 2079.17, 'duration': 3.642}, {'end': 2084.213, 'text': 'it will prepare a build.', 'start': 2082.812, 'duration': 1.401}, {'end': 2088.455, 'text': 'now, as I have told you earlier as well, build does not only mean compiling the source code.', 'start': 2084.213, 'duration': 4.242}, {'end': 2091.672, 'text': 'It includes compiling but apart from that there are other things as well.', 'start': 2088.931, 'duration': 2.741}, {'end': 2097.915, 'text': 'For example code review unit testing integration testing, you know packaging your application into an executable file.', 'start': 2091.931, 'duration': 5.984}], 'summary': 'The tutorial covers git basics, github repository usage, and continuous integration principles with jenkins, emphasizing the importance of frequent code commits for early problem detection.', 'duration': 92.475, 'max_score': 2005.44, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic2005440.jpg'}, {'end': 2060.665, 'src': 'embed', 'start': 2041.508, 'weight': 0, 'content': [{'end': 2054.359, 'text': 'So continuous integration is basically a development practice in which the developers are required to commit changes to the source code in a shared repository several times a day or you can say more frequently and every commit made in the repository is then built.', 'start': 2041.508, 'duration': 12.851}, {'end': 2056.802, 'text': 'This allows the teams to detect the problems early.', 'start': 2054.659, 'duration': 2.143}, {'end': 2060.665, 'text': 'So let us just understand this with the help of the diagram that is there in front of your screen.', 'start': 2057.282, 'duration': 3.383}], 'summary': 'Continuous integration requires frequent commits to a shared repository, enabling early problem detection.', 'duration': 19.157, 'max_score': 2041.508, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic2041508.jpg'}, {'end': 2137.942, 'src': 'embed', 'start': 2110.091, 'weight': 1, 'content': [{'end': 2112.512, 'text': 'So Jenkins has various tools in order to perform this.', 'start': 2110.091, 'duration': 2.421}, {'end': 2116.333, 'text': 'So it has various tools for development testing and deployment technologies.', 'start': 2112.552, 'duration': 3.781}, {'end': 2118.814, 'text': 'It has well over 2,500 plugins.', 'start': 2116.753, 'duration': 2.061}, {'end': 2123.916, 'text': 'So you need to install that plugin and you can just go ahead and trigger whatever job you want with the help of Jenkins.', 'start': 2119.034, 'duration': 4.882}, {'end': 2130.436, 'text': "It is originally written in Java right and let's move forward and we are going to focus on containers delivery now.", 'start': 2124.531, 'duration': 5.905}, {'end': 2134.159, 'text': 'So continuous delivery is nothing but taking continuous integration to the next step.', 'start': 2130.796, 'duration': 3.363}, {'end': 2135.54, 'text': 'So what are we doing?', 'start': 2134.599, 'duration': 0.941}, {'end': 2137.942, 'text': 'in a continuous manner or in an automated fashion?', 'start': 2135.54, 'duration': 2.402}], 'summary': 'Jenkins has over 2,500 plugins with tools for development, testing, and deployment. it enables triggering jobs and focuses on continuous delivery.', 'duration': 27.851, 'max_score': 2110.091, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic2110091.jpg'}, {'end': 2179.042, 'src': 'embed', 'start': 2145.808, 'weight': 2, 'content': [{'end': 2147.81, 'text': 'So that is basically what is continuous delivery.', 'start': 2145.808, 'duration': 2.002}, {'end': 2150.619, 'text': 'So let us just summarize containers delivery again.', 'start': 2148.317, 'duration': 2.302}, {'end': 2154.201, 'text': 'moment any developers makes a change in the source code, Jenkins will pull that code.', 'start': 2150.619, 'duration': 3.582}, {'end': 2156.543, 'text': 'prepare a build once build is successful.', 'start': 2154.201, 'duration': 2.342}, {'end': 2162.988, 'text': 'It will take the build application and Jenkins will deploy it onto the test server for end-user testing or user acceptance test.', 'start': 2156.563, 'duration': 6.425}, {'end': 2166.975, 'text': 'So this is basically what continuous delivery is this happens in a continuous fashion.', 'start': 2163.533, 'duration': 3.442}, {'end': 2168.656, 'text': 'So what advantage we get here?', 'start': 2167.375, 'duration': 1.281}, {'end': 2171.237, 'text': "basically, if there's a build failure,", 'start': 2168.656, 'duration': 2.581}, {'end': 2179.042, 'text': "then we know which commit has caused that error and we don't need to go through the entire source code of the application similarly for testing,", 'start': 2171.237, 'duration': 7.805}], 'summary': 'Continuous delivery automates deployment, enables quick error identification, and facilitates continuous testing.', 'duration': 33.234, 'max_score': 2145.808, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic2145808.jpg'}, {'end': 2244.918, 'src': 'embed', 'start': 2215.296, 'weight': 3, 'content': [{'end': 2219.62, 'text': 'So once the application is tested, it will automatically be deployed onto the broad servers for release.', 'start': 2215.296, 'duration': 4.324}, {'end': 2223.062, 'text': "Now, this is something not a good practice, as I've told you earlier as well,", 'start': 2220.08, 'duration': 2.982}, {'end': 2226.745, 'text': 'because there might be certain checks that you need to do in order to release your software in the market.', 'start': 2223.062, 'duration': 3.683}, {'end': 2229.307, 'text': 'or you might want to market your product before that.', 'start': 2227.225, 'duration': 2.082}, {'end': 2232.569, 'text': 'So there are a lot of things that you want to do before deploying your application.', 'start': 2229.387, 'duration': 3.182}, {'end': 2239.394, 'text': "So it's not advisable or a good practice to you know, actually automatically deploying your application onto the prod service for release.", 'start': 2232.969, 'duration': 6.425}, {'end': 2244.918, 'text': 'So this is basically continuous integration delivery and deployment any questions you have guys you can ask me.', 'start': 2239.894, 'duration': 5.024}], 'summary': 'Automatically deploying applications may not be advisable due to the need for pre-release checks and marketing.', 'duration': 29.622, 'max_score': 2215.296, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic2215296.jpg'}, {'end': 2354.651, 'src': 'embed', 'start': 2329.23, 'weight': 7, 'content': [{'end': 2334.154, 'text': "So there's one more question from Jagati again, which kind of testing are you talking about now? Fine.", 'start': 2329.23, 'duration': 4.924}, {'end': 2337.977, 'text': 'So this kind of testing is called the end user testing or user acceptance test,', 'start': 2334.174, 'duration': 3.803}, {'end': 2344.723, 'text': 'where you need to deploy your application onto a server which can be a replica of your production server, and you perform end user testing,', 'start': 2337.977, 'duration': 6.746}, {'end': 2346.184, 'text': 'or you call it user acceptance test.', 'start': 2344.723, 'duration': 1.461}, {'end': 2352.189, 'text': 'For example in my application if I want to check all the functions right functional testing if I want to perform functional testing of my application.', 'start': 2346.204, 'duration': 5.985}, {'end': 2354.651, 'text': "I'll first go ahead and check whether my search engine is working.", 'start': 2352.449, 'duration': 2.202}], 'summary': 'End user testing, also known as user acceptance test, involves deploying application on a replica server for functional testing.', 'duration': 25.421, 'max_score': 2329.23, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic2329230.jpg'}, {'end': 2405.953, 'src': 'embed', 'start': 2376.76, 'weight': 8, 'content': [{'end': 2382.083, 'text': "So once the application is tested, it will be then deployed onto the prod servers for release and I've told you earlier as well.", 'start': 2376.76, 'duration': 5.323}, {'end': 2386.765, 'text': 'It is not a good practice to deploy an application continuously or in an automated fashion.', 'start': 2382.143, 'duration': 4.622}, {'end': 2387.805, 'text': 'All right, fine guys.', 'start': 2386.785, 'duration': 1.02}, {'end': 2391.387, 'text': 'So any other questions any other doubts related to integration delivery and deployment.', 'start': 2387.825, 'duration': 3.562}, {'end': 2394.508, 'text': "All right, so there's a question on popped on my screen.", 'start': 2392.327, 'duration': 2.181}, {'end': 2395.228, 'text': 'It is from Shubham.', 'start': 2394.548, 'duration': 0.68}, {'end': 2398.85, 'text': "He's asking can you explain a bit more about Jenkins?", 'start': 2395.268, 'duration': 3.582}, {'end': 2399.37, 'text': 'fine, Shubham?', 'start': 2398.85, 'duration': 0.52}, {'end': 2405.953, 'text': 'So Jenkins is basically a continuous integration tool and its job is to integrate the various stages of devops that we have discussed, right?', 'start': 2399.55, 'duration': 6.403}], 'summary': 'Application tested, deployed on prod servers, jenkins for continuous integration', 'duration': 29.193, 'max_score': 2376.76, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic2376760.jpg'}, {'end': 2438.194, 'src': 'embed', 'start': 2412.496, 'weight': 4, 'content': [{'end': 2417.718, 'text': 'So Jenkins server or the Jenkins continuous integration tool will actually integrate all of these stages.', 'start': 2412.496, 'duration': 5.222}, {'end': 2419.239, 'text': 'Now what it does.', 'start': 2418.278, 'duration': 0.961}, {'end': 2421.02, 'text': 'it will give you a nice UI.', 'start': 2419.239, 'duration': 1.781}, {'end': 2424.443, 'text': 'basically, that UI will contain the entire software delivery life cycle.', 'start': 2421.02, 'duration': 3.423}, {'end': 2428.186, 'text': 'that will give you the 360 degree view of your entire software delivery life cycle.', 'start': 2424.443, 'duration': 3.743}, {'end': 2429.907, 'text': 'Where is my application right now?', 'start': 2428.506, 'duration': 1.401}, {'end': 2431.368, 'text': 'whether tests were successful?', 'start': 2429.907, 'duration': 1.461}, {'end': 2433.71, 'text': 'is it deployed onto the prod environment successfully?', 'start': 2431.368, 'duration': 2.342}, {'end': 2434.231, 'text': 'all those things.', 'start': 2433.71, 'duration': 0.521}, {'end': 2435.872, 'text': 'you can find it in the Jenkins dashboard.', 'start': 2434.231, 'duration': 1.641}, {'end': 2438.194, 'text': 'If you want to visualize it, consider it.', 'start': 2436.312, 'duration': 1.882}], 'summary': 'Jenkins integrates software delivery stages, providing a 360-degree view of the life cycle in a ui dashboard.', 'duration': 25.698, 'max_score': 2412.496, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic2412496.jpg'}, {'end': 2476.534, 'src': 'embed', 'start': 2446.56, 'weight': 5, 'content': [{'end': 2448.041, 'text': 'It will trigger different different jobs.', 'start': 2446.56, 'duration': 1.481}, {'end': 2452.944, 'text': 'It will trigger different phases of devops lifecycle with the help of various plugins that Jenkins support.', 'start': 2448.101, 'duration': 4.843}, {'end': 2454.185, 'text': "I hope that's clear.", 'start': 2453.405, 'duration': 0.78}, {'end': 2456.227, 'text': "So I believe I've answered all the questions.", 'start': 2454.726, 'duration': 1.501}, {'end': 2458.408, 'text': 'So guys we have discussed a lot about Jenkins.', 'start': 2456.687, 'duration': 1.721}, {'end': 2463.512, 'text': 'How about I show you how Jenkins UI looks like and how you can download plugins and all those things.', 'start': 2458.468, 'duration': 5.044}, {'end': 2466.712, 'text': "So I've already installed Jenkins in my CentOS virtual machine.", 'start': 2464.051, 'duration': 2.661}, {'end': 2468.672, 'text': 'And if you have any problems installing Jenkins,', 'start': 2466.732, 'duration': 1.94}, {'end': 2474.233, 'text': "refer the video that I'll ping you in the chat box and people are watching it on YouTube can find it in the description box below.", 'start': 2468.672, 'duration': 5.561}, {'end': 2476.534, 'text': 'So let me just quickly open my CentOS virtual machine.', 'start': 2474.253, 'duration': 2.281}], 'summary': 'Jenkins triggers different jobs and phases of devops lifecycle with various plugins, shown through jenkins ui on centos virtual machine.', 'duration': 29.974, 'max_score': 2446.56, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic2446560.jpg'}], 'start': 1996.311, 'title': 'Devops ci/cd and jenkins', 'summary': 'Covers the basics of continuous integration (ci) and continuous delivery (cd) in devops, focusing on how developers commit changes, jenkins triggers builds, and applications are deployed onto test servers. it also includes an in-depth explanation of jenkins and its role in end user testing and continuous deployment.', 'chapters': [{'end': 2329.21, 'start': 1996.311, 'title': 'Devops ci/cd basics', 'summary': 'Covers the basics of continuous integration (ci) and continuous delivery (cd) in devops, focusing on how developers commit changes, jenkins triggers builds, and applications are deployed onto test servers, aiming to detect problems early and automate deployment processes.', 'duration': 332.899, 'highlights': ['Continuous integration involves developers committing changes several times a day to a shared repository, and every commit triggers a build using Jenkins, aiming to detect problems early and allow teams to build applications continuously. Developers commit changes several times a day to a shared repository, triggering a build using Jenkins, aiming to detect problems early and allow teams to build applications continuously.', 'Jenkins, a continuous integration tool, pulls code from the shared repository and prepares a build, including tasks like code review, unit testing, and packaging, with over 2,500 plugins available for various development, testing, and deployment technologies. Jenkins pulls code from the shared repository, prepares a build including tasks like code review, unit testing, and packaging, with over 2,500 plugins available for various development, testing, and deployment technologies.', 'Continuous delivery involves Jenkins deploying the built application onto test servers for end-user testing, aiming to detect problems early and automate deployment processes in a continuous manner. Jenkins deploys the built application onto test servers for end-user testing, aiming to detect problems early and automate deployment processes in a continuous manner.', "Continuous deployment automates the deployment of the tested application onto production servers, though it's noted as not always advisable due to the need for additional checks before releasing software. Continuous deployment automates the deployment of the tested application onto production servers, though noted as not always advisable due to the need for additional checks before releasing software."]}, {'end': 2550.666, 'start': 2329.23, 'title': 'Understanding jenkins for devops', 'summary': 'Covers the concept of end user testing, continuous deployment, and a detailed explanation of jenkins, a continuous integration tool, providing a 360-degree view of the software delivery life cycle.', 'duration': 221.436, 'highlights': ['Jenkins integrates various stages of devops, offering a 360-degree view of the software delivery life cycle, including successful tests and deployments. Jenkins serves as a continuous integration tool, integrating the stages of devops by providing a 360-degree view of the software delivery life cycle, including the success of tests and deployments.', 'Explaining the purpose of Jenkins with a comparison to an orchestra conductor, triggering different phases of devops lifecycle with plugins support. Jenkins is likened to an orchestra conductor, triggering different phases of the devops lifecycle with the support of various plugins.', 'Demonstrating the process of configuring Jenkins, including installing plugins and specifying project configurations. The process of configuring Jenkins is demonstrated, encompassing the installation of plugins and the specification of project configurations.', 'Describing the type of testing - end user testing or user acceptance test - and the functions involved, such as checking the search engine and user logins. End user testing, also known as user acceptance test, involves checking functions like the search engine and user logins.', 'Emphasizing the importance of not continuously deploying an application in an automated fashion, after testing and before release. Highlighting the importance of not continuously deploying an application in an automated fashion after testing and before release.']}], 'duration': 554.355, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic1996311.jpg', 'highlights': ['Continuous integration involves developers committing changes several times a day to a shared repository, triggering a build using Jenkins, aiming to detect problems early and allow teams to build applications continuously.', 'Jenkins, a continuous integration tool, pulls code from the shared repository and prepares a build, including tasks like code review, unit testing, and packaging, with over 2,500 plugins available for various development, testing, and deployment technologies.', 'Continuous delivery involves Jenkins deploying the built application onto test servers for end-user testing, aiming to detect problems early and automate deployment processes in a continuous manner.', "Continuous deployment automates the deployment of the tested application onto production servers, though it's noted as not always advisable due to the need for additional checks before releasing software.", 'Jenkins integrates various stages of devops, offering a 360-degree view of the software delivery life cycle, including successful tests and deployments.', 'Explaining the purpose of Jenkins with a comparison to an orchestra conductor, triggering different phases of devops lifecycle with plugins support.', 'Demonstrating the process of configuring Jenkins, including installing plugins and specifying project configurations.', 'Describing the type of testing - end user testing or user acceptance test - and the functions involved, such as checking the search engine and user logins.', 'Emphasizing the importance of not continuously deploying an application in an automated fashion, after testing and before release.']}, {'end': 3413.011, 'segs': [{'end': 2606.311, 'src': 'heatmap', 'start': 2562.615, 'weight': 0.792, 'content': [{'end': 2567.22, 'text': 'So I was just giving you a tour to the Jenkins dashboard will actually execute the practical as well.', 'start': 2562.615, 'duration': 4.605}, {'end': 2569.022, 'text': "So we'll come back to it later.", 'start': 2567.521, 'duration': 1.501}, {'end': 2573.748, 'text': "But for now, let me open my slides and we'll proceed with the next stage in the DevOps lifecycle.", 'start': 2569.503, 'duration': 4.245}, {'end': 2576.451, 'text': "So now let's talk about configuration management.", 'start': 2574.489, 'duration': 1.962}, {'end': 2582.838, 'text': 'So what exactly is configuration management? So now let me talk about few issues with the deployment of a particular application.', 'start': 2576.471, 'duration': 6.367}, {'end': 2584.792, 'text': 'or provisioning of the servers.', 'start': 2583.411, 'duration': 1.381}, {'end': 2586.454, 'text': 'So basically what happens?', 'start': 2584.952, 'duration': 1.502}, {'end': 2592.299, 'text': 'you know, I have built my application, but when I deploy it onto the test servers or onto the prod servers, there are some dependency issues,', 'start': 2586.454, 'duration': 5.845}, {'end': 2594.2, 'text': 'because of which my application is not working fine.', 'start': 2592.299, 'duration': 1.901}, {'end': 2599.405, 'text': 'For example, in my developers laptop there might be some software stack which was upgraded,', 'start': 2594.601, 'duration': 4.804}, {'end': 2603.929, 'text': "but in my prod and in the test environment they're still using the outdated version of that software stack.", 'start': 2599.405, 'duration': 4.524}, {'end': 2606.311, 'text': 'because of which the application is not working fine.', 'start': 2604.389, 'duration': 1.922}], 'summary': 'Introduction to jenkins dashboard and discussion on configuration management and deployment issues', 'duration': 43.696, 'max_score': 2562.615, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic2562615.jpg'}, {'end': 2710.736, 'src': 'embed', 'start': 2682.268, 'weight': 1, 'content': [{'end': 2686.592, 'text': "So I don't have to manually go ahead and, you know, write scripts and deploy it onto the nodes.", 'start': 2682.268, 'duration': 4.324}, {'end': 2688.454, 'text': 'This is that easy guys.', 'start': 2687.053, 'duration': 1.401}, {'end': 2692.738, 'text': 'So now let me just focus on few challenges that configuration management helps us to overcome.', 'start': 2688.514, 'duration': 4.224}, {'end': 2697.949, 'text': 'First of all, it can help us to figure out which components to change when requirements change.', 'start': 2693.507, 'duration': 4.442}, {'end': 2705.553, 'text': 'It also helps us in redoing an implementation, because the requirements have changed since the last implementation and very important point, guys,', 'start': 2698.37, 'duration': 7.183}, {'end': 2710.736, 'text': 'that it helps us to revert to a previous version of the component if you have replaced with a new, but the flawed version.', 'start': 2705.553, 'duration': 5.183}], 'summary': 'Configuration management simplifies deployment, facilitates change management, and supports version control.', 'duration': 28.468, 'max_score': 2682.268, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic2682268.jpg'}, {'end': 2822.025, 'src': 'heatmap', 'start': 2726.524, 'weight': 0.894, 'content': [{'end': 2734.849, 'text': 'a new software installation caused the problem that software was installed on eight of its 20 trading terminals and the system was tested out the night before.', 'start': 2726.524, 'duration': 8.325}, {'end': 2737.952, 'text': 'However in the morning it failed to operate on the eight terminals.', 'start': 2735.23, 'duration': 2.722}, {'end': 2740.633, 'text': 'So there was a need to switch back to the old software.', 'start': 2738.412, 'duration': 2.221}, {'end': 2747.098, 'text': "Now, you might think that this was a failure of NYC's configuration management process, but in reality, it was a success.", 'start': 2740.954, 'duration': 6.144}, {'end': 2754.667, 'text': 'As a result of proper configuration management, NYC recovered from that situation in 90 minutes, which was pretty fast.', 'start': 2747.802, 'duration': 6.865}, {'end': 2758.59, 'text': 'had the problem continued longer, the consequences would have been more severe guys.', 'start': 2754.667, 'duration': 3.923}, {'end': 2760.772, 'text': 'So I hope you have understood its importance.', 'start': 2759.191, 'duration': 1.581}, {'end': 2764.195, 'text': "Now, let's focus on various tools available for configuration management.", 'start': 2760.932, 'duration': 3.263}, {'end': 2767.217, 'text': 'So we have multiple tools like puppet chef ansible and salt stack.', 'start': 2764.495, 'duration': 2.722}, {'end': 2768.658, 'text': "I'm going to focus on puppet for now.", 'start': 2767.257, 'duration': 1.401}, {'end': 2773.702, 'text': 'So puppet is a configuration management tool that is used for deploying configuring and managing servers.', 'start': 2768.998, 'duration': 4.704}, {'end': 2776.256, 'text': "So let's see what are the various functions of puppet.", 'start': 2774.375, 'duration': 1.881}, {'end': 2777.456, 'text': 'So, first of all,', 'start': 2776.796, 'duration': 0.66}, {'end': 2787.121, 'text': 'you can define distinct configurations for each and every host and continuously check and confirm whether the required configuration is in place and is not altered on the host.', 'start': 2777.456, 'duration': 9.665}, {'end': 2791.316, 'text': 'So what I mean by that you can actually define distinct configuration.', 'start': 2787.992, 'duration': 3.324}, {'end': 2793.418, 'text': 'For example in my one particular node.', 'start': 2791.656, 'duration': 1.762}, {'end': 2795.2, 'text': 'I need this office stack and another node.', 'start': 2793.438, 'duration': 1.762}, {'end': 2797.222, 'text': 'I need this office stack so I can, you know,', 'start': 2795.24, 'duration': 1.982}, {'end': 2805.792, 'text': 'define distinct configurations for different nodes and continuously check and confirm whether the required configuration is in place and is not altered.', 'start': 2797.222, 'duration': 8.57}, {'end': 2809.516, 'text': 'and if it is altered, puppet will revert back to the required configurations.', 'start': 2805.792, 'duration': 3.724}, {'end': 2811.019, 'text': 'This is one function of puppet.', 'start': 2809.897, 'duration': 1.122}, {'end': 2813.987, 'text': 'It can also help in dynamic scaling up and scaling down of machines.', 'start': 2811.08, 'duration': 2.907}, {'end': 2818.799, 'text': "So what will happen if in your company, there's a big billion day sale, right? And you're expecting a lot of traffic.", 'start': 2814.288, 'duration': 4.511}, {'end': 2822.025, 'text': 'So at that time, in order to provision more servers.', 'start': 2819.324, 'duration': 2.701}], 'summary': 'Nyc recovered from a software problem in 90 minutes, showcasing successful configuration management. puppet is a tool for deploying, configuring, and managing servers, with functions including defining distinct configurations for each host and dynamic scaling up and down of machines.', 'duration': 95.501, 'max_score': 2726.524, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic2726524.jpg'}, {'end': 2764.195, 'src': 'embed', 'start': 2735.23, 'weight': 0, 'content': [{'end': 2737.952, 'text': 'However in the morning it failed to operate on the eight terminals.', 'start': 2735.23, 'duration': 2.722}, {'end': 2740.633, 'text': 'So there was a need to switch back to the old software.', 'start': 2738.412, 'duration': 2.221}, {'end': 2747.098, 'text': "Now, you might think that this was a failure of NYC's configuration management process, but in reality, it was a success.", 'start': 2740.954, 'duration': 6.144}, {'end': 2754.667, 'text': 'As a result of proper configuration management, NYC recovered from that situation in 90 minutes, which was pretty fast.', 'start': 2747.802, 'duration': 6.865}, {'end': 2758.59, 'text': 'had the problem continued longer, the consequences would have been more severe guys.', 'start': 2754.667, 'duration': 3.923}, {'end': 2760.772, 'text': 'So I hope you have understood its importance.', 'start': 2759.191, 'duration': 1.581}, {'end': 2764.195, 'text': "Now, let's focus on various tools available for configuration management.", 'start': 2760.932, 'duration': 3.263}], 'summary': 'Nyc recovered from software failure in 90 minutes, demonstrating effective configuration management.', 'duration': 28.965, 'max_score': 2735.23, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic2735230.jpg'}, {'end': 2795.2, 'src': 'embed', 'start': 2768.998, 'weight': 2, 'content': [{'end': 2773.702, 'text': 'So puppet is a configuration management tool that is used for deploying configuring and managing servers.', 'start': 2768.998, 'duration': 4.704}, {'end': 2776.256, 'text': "So let's see what are the various functions of puppet.", 'start': 2774.375, 'duration': 1.881}, {'end': 2777.456, 'text': 'So, first of all,', 'start': 2776.796, 'duration': 0.66}, {'end': 2787.121, 'text': 'you can define distinct configurations for each and every host and continuously check and confirm whether the required configuration is in place and is not altered on the host.', 'start': 2777.456, 'duration': 9.665}, {'end': 2791.316, 'text': 'So what I mean by that you can actually define distinct configuration.', 'start': 2787.992, 'duration': 3.324}, {'end': 2793.418, 'text': 'For example in my one particular node.', 'start': 2791.656, 'duration': 1.762}, {'end': 2795.2, 'text': 'I need this office stack and another node.', 'start': 2793.438, 'duration': 1.762}], 'summary': 'Puppet is a configuration management tool for deploying, configuring, and managing servers, allowing defining distinct configurations for each host.', 'duration': 26.202, 'max_score': 2768.998, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic2768998.jpg'}, {'end': 2898.335, 'src': 'embed', 'start': 2871.731, 'weight': 4, 'content': [{'end': 2876.394, 'text': 'So these two tools follow pull configuration and Ansible and Solstack follows push configuration,', 'start': 2871.731, 'duration': 4.663}, {'end': 2878.835, 'text': 'in which these configurations are pushed onto the nodes.', 'start': 2876.394, 'duration': 2.441}, {'end': 2882.497, 'text': 'and here in Chef and Puppet, the nodes will pull that configurations.', 'start': 2878.835, 'duration': 3.662}, {'end': 2885.079, 'text': 'They keep on checking the master at regular intervals.', 'start': 2882.577, 'duration': 2.502}, {'end': 2887.4, 'text': 'And if there is any change in the configuration, it will pull it.', 'start': 2885.459, 'duration': 1.941}, {'end': 2890.673, 'text': 'Now, let me explain you the architecture that is there in front of your screen.', 'start': 2888.112, 'duration': 2.561}, {'end': 2894.194, 'text': 'So that is basically a typical puppet architecture in which what happens?', 'start': 2890.693, 'duration': 3.501}, {'end': 2896.194, 'text': "you can see that there's a master slave architecture.", 'start': 2894.194, 'duration': 2}, {'end': 2898.335, 'text': 'here is our puppet master and here is our puppet slave.', 'start': 2896.194, 'duration': 2.141}], 'summary': 'Different configuration management tools have different push/pull configurations. puppet uses a master-slave architecture.', 'duration': 26.604, 'max_score': 2871.731, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic2871731.jpg'}, {'end': 3034.404, 'src': 'heatmap', 'start': 2988.851, 'weight': 0.727, 'content': [{'end': 2990.912, 'text': "It can be a chef's over, chef's over.", 'start': 2988.851, 'duration': 2.061}, {'end': 2998.559, 'text': 'So the nodes will pull the central server, for you know configurations, and it will pull any change that has happened in the configuration.', 'start': 2991.497, 'duration': 7.062}, {'end': 2999.86, 'text': 'So I hope you have understood it.', 'start': 2998.859, 'duration': 1.001}, {'end': 3002.861, 'text': 'Just give me a confirmation Shubham so that I can move forward.', 'start': 3000.5, 'duration': 2.361}, {'end': 3007.962, 'text': 'All right, he says yes all clear fine guys, so I can see there are no more questions.', 'start': 3004.201, 'duration': 3.761}, {'end': 3011.383, 'text': "So let's move forward and talk about containerization.", 'start': 3008.342, 'duration': 3.041}, {'end': 3016.905, 'text': 'So what exactly is containerization? So I believe all of you have heard about virtual machines.', 'start': 3011.403, 'duration': 5.502}, {'end': 3022.418, 'text': 'So what are containers containers are nothing but the lightweight alternatives to virtual machines.', 'start': 3017.535, 'duration': 4.883}, {'end': 3024.879, 'text': 'So let me just explain that to you.', 'start': 3023.138, 'duration': 1.741}, {'end': 3031.362, 'text': "So we have docker containers that will contain the binaries and libraries required for a particular application, and that's when we call it.", 'start': 3025.039, 'duration': 6.323}, {'end': 3034.404, 'text': 'you know, we have containerize a particular application, right?', 'start': 3031.362, 'duration': 3.042}], 'summary': 'Nodes pull central server configurations and changes. containers are lightweight alternatives to virtual machines with docker containers containing binaries and libraries for specific applications.', 'duration': 45.553, 'max_score': 2988.851, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic2988851.jpg'}, {'end': 3210.5, 'src': 'embed', 'start': 3182.794, 'weight': 3, 'content': [{'end': 3185.715, 'text': 'What is the difference between virtual machines and docker containers?', 'start': 3182.794, 'duration': 2.921}, {'end': 3190.098, 'text': "So, with the help of docker containers you don't have to preallocate any RAM right?", 'start': 3186.116, 'duration': 3.982}, {'end': 3196.242, 'text': 'It will take as and when required, but in virtual machines you have to preallocate some amount of RAM, because of which a lot of resources are wasted.', 'start': 3190.118, 'duration': 6.124}, {'end': 3199.391, 'text': "So yeah, it's a lightweight alternative to virtual machines.", 'start': 3197.009, 'duration': 2.382}, {'end': 3201.553, 'text': "It doesn't work on the guest operating system.", 'start': 3199.591, 'duration': 1.962}, {'end': 3204.235, 'text': 'It uses the host operating system the docker containers.', 'start': 3201.593, 'duration': 2.642}, {'end': 3210.5, 'text': 'So these are few differences which actually makes it better than virtual machines and a lightweight alternative to virtual machines.', 'start': 3204.775, 'duration': 5.725}], 'summary': 'Docker containers are a lightweight alternative to virtual machines, utilizing host os, saving resources and offering on-demand ram allocation.', 'duration': 27.706, 'max_score': 3182.794, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic3182794.jpg'}], 'start': 2551.006, 'title': 'Devops lifecycle, configuration management, docker containers vs virtual machines', 'summary': "Discusses the significance of configuration management in devops, highlighting issues with deployment, infrastructure as code, and tools like puppet. it also explains the differences between virtual machines and docker containers, emphasizing docker's efficiency and providing a step-by-step demonstration.", 'chapters': [{'end': 3164.054, 'start': 2551.006, 'title': 'Devops lifecycle and configuration management', 'summary': 'Discusses the significance of configuration management in devops, highlighting issues with deployment, the importance of infrastructure as code, use cases, and tools like puppet for configuration management and docker for containerization.', 'duration': 613.048, 'highlights': ['The significance of configuration management in DevOps Configuration management addresses issues with deployment, such as dependency conflicts, and offers infrastructure as code, streamlining the provisioning process and ensuring the stability of software stacks across environments.', 'Impact of configuration management through a use case The New York Stock Exchange experienced a software glitch, but proper configuration management allowed a recovery within 90 minutes, demonstrating the importance of configuration management in minimizing downtime and potential financial losses.', 'Functions of puppet for configuration management Puppet allows defining distinct configurations for each host, ensuring required configurations are in place and not altered, and facilitating dynamic scaling up and scaling down of machines for efficient resource management.', 'Explanation of push and pull configurations in tools An overview of push and pull configurations in tools like ansible and salt stack (push) and puppet and chef (pull), clarifying the mechanisms through which configurations are propagated to nodes in the infrastructure.', 'Containerization with Docker for application deployment Explaining containerization as a lightweight alternative to virtual machines, using docker containers to contain application binaries and libraries, and illustrating the process of creating docker images and containers for efficient application deployment.']}, {'end': 3413.011, 'start': 3164.074, 'title': 'Docker containers vs virtual machines', 'summary': 'Explains the differences between virtual machines and docker containers, emphasizing that docker containers are a lightweight alternative due to their efficient use of resources, and provides a step-by-step demonstration of pulling and running images from docker hub.', 'duration': 248.937, 'highlights': ['Docker containers are a lightweight alternative to virtual machines, as they do not require preallocation of RAM and use the host operating system, making them more efficient in resource utilization. Comparison between resource utilization of docker containers and virtual machines.', 'The process of pulling images from Docker Hub and running containers is demonstrated step-by-step, providing practical knowledge to the audience. Step-by-step demonstration of pulling and running images from Docker Hub.', 'Explanation of docker containers as infinitely replicable boxes containing applications and their dependencies, making it easy to run applications on different computers and environments. Understanding the concept of docker containers and their portability.']}], 'duration': 862.005, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic2551006.jpg', 'highlights': ['Proper configuration management allowed recovery within 90 minutes at the New York Stock Exchange, demonstrating its importance in minimizing downtime and financial losses.', 'Configuration management addresses issues with deployment, such as dependency conflicts, and offers infrastructure as code, streamlining the provisioning process and ensuring the stability of software stacks across environments.', 'Puppet allows defining distinct configurations for each host, ensuring required configurations are in place and not altered, and facilitating dynamic scaling up and scaling down of machines for efficient resource management.', 'Docker containers are a lightweight alternative to virtual machines, as they do not require preallocation of RAM and use the host operating system, making them more efficient in resource utilization.', 'An overview of push and pull configurations in tools like ansible and salt stack (push) and puppet and chef (pull), clarifying the mechanisms through which configurations are propagated to nodes in the infrastructure.']}, {'end': 4271.008, 'segs': [{'end': 3459.379, 'src': 'embed', 'start': 3429.417, 'weight': 0, 'content': [{'end': 3434.56, 'text': 'you know what kind of system errors low memory, unreachable server, Etc, Etc.', 'start': 3429.417, 'duration': 5.143}, {'end': 3437.101, 'text': 'before they have any negative impact on your business productivity.', 'start': 3434.56, 'duration': 2.541}, {'end': 3443.404, 'text': 'Now, what are the reasons to use continuous monitoring tools? Let me tell you that it detects any network or server problems.', 'start': 3437.941, 'duration': 5.463}, {'end': 3445.866, 'text': 'It can determine the root cause of any issue.', 'start': 3443.865, 'duration': 2.001}, {'end': 3451.769, 'text': 'It maintains the security and availability of the services and also monitors and troubleshoots over performance issues.', 'start': 3446.586, 'duration': 5.183}, {'end': 3459.379, 'text': 'It also allows us to plan for infrastructure upgrades before outdated system cause failures and it can respond to issues at the first sign of problem.', 'start': 3452.418, 'duration': 6.961}], 'summary': 'Continuous monitoring tools detect and resolve network or server problems, ensuring security and availability. it also aids in planning for infrastructure upgrades and responding to issues promptly.', 'duration': 29.962, 'max_score': 3429.417, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic3429417.jpg'}, {'end': 3490.964, 'src': 'embed', 'start': 3464.941, 'weight': 1, 'content': [{'end': 3473.102, 'text': "It also ensures IT infrastructure outages have a minimal effect on your organization's bottom line and can monitor your entire infrastructure and business processes.", 'start': 3464.941, 'duration': 8.161}, {'end': 3475.003, 'text': 'So what is continuous monitoring?', 'start': 3473.782, 'duration': 1.221}, {'end': 3480.344, 'text': 'It is all about the ability of an organization to detect, report, respond,', 'start': 3475.503, 'duration': 4.841}, {'end': 3485.121, 'text': 'contain and mitigate that acts that occur on its infrastructure or on the software.', 'start': 3480.344, 'duration': 4.777}, {'end': 3490.964, 'text': 'So basically we have to monitor the events on the ongoing basis and determine what level of risk we are experiencing.', 'start': 3486.081, 'duration': 4.883}], 'summary': "Continuous monitoring detects, reports, and mitigates it infrastructure risks to minimize impact on the organization's bottom line.", 'duration': 26.023, 'max_score': 3464.941, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic3464941.jpg'}, {'end': 3572.311, 'src': 'embed', 'start': 3535.827, 'weight': 3, 'content': [{'end': 3542.372, 'text': 'Nagios is used for continuous monitoring of systems, applications, services and business processes in a DevOps culture right?', 'start': 3535.827, 'duration': 6.545}, {'end': 3546.235, 'text': 'And in the event of failure, Nagios can alert technical staff of the problem,', 'start': 3542.492, 'duration': 3.743}, {'end': 3551.899, 'text': 'allowing them to begin remediation process before outages affect business processes, end users or customers.', 'start': 3546.235, 'duration': 5.664}, {'end': 3558.176, 'text': "So with Nagios you don't have to explain why an unseen infrastructure outage affect your organization's bottom line.", 'start': 3552.691, 'duration': 5.485}, {'end': 3559.797, 'text': 'So let me tell you how it works.', 'start': 3558.636, 'duration': 1.161}, {'end': 3562.139, 'text': "So I'll focus on the diagram that is there in front of your screen.", 'start': 3559.857, 'duration': 2.282}, {'end': 3566.063, 'text': 'So Nagios runs on a server usually as a daemon or a service.', 'start': 3562.68, 'duration': 3.383}, {'end': 3569.549, 'text': 'It periodically runs plugins residing on the same server.', 'start': 3566.667, 'duration': 2.882}, {'end': 3572.311, 'text': 'They contact hosts or servers on your network.', 'start': 3570.01, 'duration': 2.301}], 'summary': 'Nagios provides continuous monitoring to alert technical staff, minimizing outages and impact on business processes.', 'duration': 36.484, 'max_score': 3535.827, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic3535827.jpg'}, {'end': 3681.985, 'src': 'embed', 'start': 3646.187, 'weight': 5, 'content': [{'end': 3648.769, 'text': 'First, we saw what was the methodology before DevOps.', 'start': 3646.187, 'duration': 2.582}, {'end': 3651.852, 'text': 'We saw the waterfall model, what were its limitations then?', 'start': 3648.829, 'duration': 3.023}, {'end': 3658.137, 'text': 'we understood the agile model and the difference between the waterfall and the agile methodology, and what were the limitations of agile methodology.', 'start': 3651.852, 'duration': 6.285}, {'end': 3662.833, 'text': 'Then we understood how devops overcomes all of those limitations and what exactly is devops.', 'start': 3658.59, 'duration': 4.243}, {'end': 3667.656, 'text': 'We saw the various stages and tools involved in devops starting from version control.', 'start': 3663.273, 'duration': 4.383}, {'end': 3669.417, 'text': 'Then we saw continuous integration.', 'start': 3667.756, 'duration': 1.661}, {'end': 3670.938, 'text': 'Then we saw continuous delivery.', 'start': 3669.657, 'duration': 1.281}, {'end': 3672.219, 'text': 'Then we saw continuous deployment.', 'start': 3670.978, 'duration': 1.241}, {'end': 3676.041, 'text': 'Basically, we understood the difference between integration delivery and deployment.', 'start': 3672.259, 'duration': 3.782}, {'end': 3681.985, 'text': 'Then we saw what is configuration management and containerization and finally explained continuous monitoring.', 'start': 3676.361, 'duration': 5.624}], 'summary': 'Devops overcomes limitations of waterfall and agile models, covers stages like version control, ci, cd, deployment, and monitoring.', 'duration': 35.798, 'max_score': 3646.187, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic3646187.jpg'}, {'end': 3762.975, 'src': 'embed', 'start': 3734.568, 'weight': 6, 'content': [{'end': 3740.951, 'text': 'It will build a docker image based on a docker file that will create and from there it will push the docker image onto the docker hub.', 'start': 3734.568, 'duration': 6.383}, {'end': 3743.712, 'text': 'This will happen automatically with a click of a button.', 'start': 3741.491, 'duration': 2.221}, {'end': 3748.354, 'text': 'So what are tools will be using will be using git Jenkins and docker.', 'start': 3744.412, 'duration': 3.942}, {'end': 3751.615, 'text': "So let me just quickly open my virtual machine and I'll show you there.", 'start': 3749.034, 'duration': 2.581}, {'end': 3756.692, 'text': 'So what our application is all about?', 'start': 3755.171, 'duration': 1.521}, {'end': 3762.975, 'text': 'so we are basically what creating a docker image of a particular application and then pushing it onto docker hub in an automated fashion,', 'start': 3756.692, 'duration': 6.283}], 'summary': 'Using git, jenkins, and docker to automate building and pushing a docker image to docker hub.', 'duration': 28.407, 'max_score': 3734.568, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic3734568.jpg'}], 'start': 3413.371, 'title': 'Continuous monitoring with nagios and devops methodology', 'summary': 'Covers continuous monitoring tools, with an emphasis on nagios in a devops culture for detecting and remediating system errors and infrastructure outages. it also discusses the transition to devops, its stages, and a use case involving git, jenkins, and docker for automation.', 'chapters': [{'end': 3645.557, 'start': 3413.371, 'title': 'Continuous monitoring with nagios', 'summary': 'Focuses on continuous monitoring tools, highlighting the reasons to use them, the definition of continuous monitoring, and the functionality of nagios for continuous monitoring in a devops culture, emphasizing its ability to detect and remediate system errors and infrastructure outages.', 'duration': 232.186, 'highlights': ['Continuous monitoring tools resolve any system errors, including low memory and unreachable server, before they impact business productivity. Continuous monitoring tools help in detecting and resolving system errors such as low memory and unreachable servers, preventing negative impacts on business productivity.', 'Reasons to use continuous monitoring tools include detecting network or server problems, determining root causes of issues, maintaining security and availability of services, and planning for infrastructure upgrades to prevent failures. Continuous monitoring tools provide various benefits such as detecting network or server problems, maintaining security and availability of services, and planning for infrastructure upgrades to prevent failures.', "Continuous monitoring is defined as the integration of an organization's security tools, aggregation, normalization, and correlation of data, analysis based on risk goals and real-time response to identified risks. Continuous monitoring is defined as the integration of an organization's security tools, data analysis based on risk goals, and real-time response to identified risks, ensuring the security and stability of the infrastructure.", 'Nagios is used for continuous monitoring of systems, applications, services, and business processes in a DevOps culture, providing alerts and notifications to technical staff in case of failure. Nagios is a continuous monitoring tool used in DevOps culture for monitoring systems, applications, and services, providing alerts and notifications to technical staff in case of failure, ensuring minimal impact on business processes and end users.', 'Nagios runs on a server as a daemon or service, periodically running plugins to contact hosts or servers on the network, and provides status information via a web interface and notifications via email or SMS. Nagios runs on a server, periodically running plugins to contact hosts or servers on the network, providing status information via a web interface and notifications via email or SMS, ensuring effective monitoring and quick response to any issues.']}, {'end': 4271.008, 'start': 3646.187, 'title': 'Devops methodology and use case', 'summary': 'Discusses the transition from waterfall to agile to devops methodologies, the stages and tools involved in devops, and a use case implementation involving git, jenkins, and docker for automating the process of cloning a repository, building a docker image, testing, and pushing it onto docker hub.', 'duration': 624.821, 'highlights': ['Transition from Waterfall to Agile to DevOps Methodologies The chapter explains the limitations of the waterfall model, the agile methodology, and how DevOps overcomes those limitations.', 'Use Case Implementation with Git, Jenkins, and Docker The use case involves automating the process of cloning a repository, building a Docker image, testing, and pushing it onto Docker Hub using Git, Jenkins, and Docker.', 'Stages and Tools Involved in DevOps The chapter covers various stages and tools involved in DevOps, including version control, continuous integration, continuous delivery, continuous deployment, configuration management, containerization, and continuous monitoring.']}], 'duration': 857.637, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/GJQ36pIYbic/pics/GJQ36pIYbic3413371.jpg', 'highlights': ['Continuous monitoring tools resolve system errors, preventing negative impacts on business productivity.', 'Continuous monitoring provides benefits such as detecting network or server problems and maintaining security and availability of services.', 'Continuous monitoring integrates security tools, data analysis, and real-time response to identified risks, ensuring infrastructure stability.', 'Nagios is used for continuous monitoring in a DevOps culture, providing alerts and notifications to technical staff in case of failure.', 'Nagios runs on a server, periodically contacting hosts or servers, providing status information via a web interface and notifications via email or SMS.', 'DevOps overcomes limitations of the waterfall model and agile methodology.', 'Use case involves automating processes using Git, Jenkins, and Docker for cloning, building, testing, and pushing Docker images.', 'DevOps covers stages and tools including version control, continuous integration, delivery, deployment, configuration management, containerization, and continuous monitoring.']}], 'highlights': ['Proper configuration management allowed recovery within 90 minutes at the New York Stock Exchange, demonstrating its importance in minimizing downtime and financial losses.', 'Continuous monitoring tools resolve system errors, preventing negative impacts on business productivity.', 'Continuous monitoring provides benefits such as detecting network or server problems and maintaining security and availability of services.', 'Nagios is used for continuous monitoring in a DevOps culture, providing alerts and notifications to technical staff in case of failure.', 'Continuous integration involves developers committing changes several times a day to a shared repository, triggering a build using Jenkins, aiming to detect problems early and allow teams to build applications continuously.', 'Jenkins, a continuous integration tool, pulls code from the shared repository and prepares a build, including tasks like code review, unit testing, and packaging, with over 2,500 plugins available for various development, testing, and deployment technologies.', 'Continuous delivery involves Jenkins deploying the built application onto test servers for end-user testing, aiming to detect problems early and automate deployment processes in a continuous manner.', "Continuous deployment automates the deployment of the tested application onto production servers, though it's noted as not always advisable due to the need for additional checks before releasing software.", 'DevOps bridges the gap between dev and op sides, emphasizing continuous processes.', 'DevOps is a methodology for building and operating rapidly changing systems at scale.', 'DevOps emphasizes the importance of knowledge and usage of various tools.', 'Version control is essential for managing code changes and identifying errors.', 'Continuous integration involves continuous building and testing of the application.', 'Continuous delivery includes deploying the built application onto test and production servers.', 'Deployment stage encompasses provisioning infrastructure and production environments.', 'Code review involves static code analysis to identify code warnings and issues.', 'Continuous integration tools like Jenkins play a crucial role in continuously building and testing applications before deployment onto test servers for user acceptance testing.', 'Configuration management tools like Chef, Puppet, Ansible, and SaltStack are essential for provisioning and deploying applications onto production servers, while containerization with docker containers serves a similar purpose.', 'Monitoring tools like Nagios or Splunk play a crucial role in continuously monitoring live applications and providing relevant feedback to the concerned teams, contributing to the effective functioning of DevOps.', 'Version control tools like git subversion are essential for managing code by maintaining different versions, enabling developers to revert to previous commits.', 'Distributed version control systems do not rely on a central server, allowing every contributor to have a local copy of the main repository, leading to faster operations and local commits.', 'The advantages of a distributed version control system over a centralized system The chapter explains the advantages of a distributed version control system over a centralized system, highlighting the ability to share changes for feedback before affecting the main repository and the flexibility it offers.', "Introduction to Git's popularity and usage in companies Git is introduced as a widely used source code management tool in the market, with the majority of companies leveraging its capabilities.", "Detailed walkthrough of Git's basic commands and operations The chapter provides a detailed walkthrough of Git's basic commands and operations, including adding, committing, pushing, pulling, and merging, along with specific version numbers and integrating with remote repositories on GitHub.", 'Agile promotes continuous iteration of development and testing throughout the software development lifecycle, with iterations of 2 to 8 weeks and delivery of a working product at the end of each iteration.', 'The limitations of Agile include conflicts between the development and operations teams, as the development part is agile while deployment remains linear, causing manual deployment onto production servers and conflicts due to computing environment inconsistencies.', 'The waterfall model describes a development method that is linear and sequential.', 'Once the application is in the testing stage, it is very difficult to go back and change something that was not well thought out in the concept stage.', 'No working software is produced until late during the life cycle, leading to high risk and uncertainty.', 'It is not a good model for complex and object-oriented projects and not suitable for projects with changing requirements.', 'Waterfall model is suitable for projects where requirements are not at a moderate to high risk of changing, while Agile is suitable when the application is at a moderate risk of changing.']}