WEBVTT 0 00:05.870 --> 00:09.830 Hello and welcome to this lecture on Container Orchestration. 1 00:09.830 --> 00:12.760 My name is Mumshad Mannambeth and we are learning 2 00:12.760 --> 00:15.550 Kubernetes for beginners. In this lecture, 3 00:15.560 --> 00:18.880 we will talk about Container Orchestration. 4 00:19.580 --> 00:26.060 So we learned about containers and we now have our application packaged into a Docker container. 5 00:26.240 --> 00:27.750 But what's next? 6 00:27.770 --> 00:29.920 How do you run it in production? 7 00:29.930 --> 00:36.110 What if your application relies on other containers such as databases or messaging services or other 8 00:36.110 --> 00:37.650 backend services? 9 00:37.910 --> 00:43.580 What if the number of users increase and you need to scale your application? How do you scale down when 10 00:43.580 --> 00:47.190 the load decreases? To enable these functionalities, 11 00:47.210 --> 00:55.340 you need an underlying platform with a set of resources and capabilities. The platform needs to orchestrate 12 00:55.340 --> 01:02.180 the connectivity between the containers and automatically scale up or down based on the load. 13 01:02.180 --> 01:09.890 This whole process of automatically deploying and managing containers is known as Container Orchestration. 14 01:10.570 --> 01:14.910 kubernetes is just a container orchestration technology. 15 01:15.020 --> 01:18.250 There are multiple such technologies available today. 16 01:18.390 --> 01:21.970 Docker has its own tool called Docker swarm, 17 01:21.980 --> 01:29.960 Kubernetes from Google and MESOS from Apache. While Docker Swarm is really easy to set up and get 18 01:29.960 --> 01:31.070 started, 19 01:31.070 --> 01:36.120 it lacks some of the advanced features required for complex applications. 20 01:36.360 --> 01:42.320 MESOS on the other hand is quite difficult to set up and get started, but supports many advanced 21 01:42.320 --> 01:43.640 features. 22 01:43.640 --> 01:46.940 Kubernetes arguably the most popular of it all, 23 01:47.030 --> 01:53.230 is a bit difficult to set up and get started by provides a lot of options to customize deployments 24 01:53.660 --> 01:57.160 and supports deployment of complex architectures. 25 01:57.170 --> 02:05.360 Kubernetes is now supported on all public cloud service providers like GCP, Azure and AWS and Kubernetes 26 02:05.360 --> 02:10.050 project is one of the top ranked projects in Github. 27 02:10.100 --> 02:14.130 There are various advantages of Container Orchestration. 28 02:14.300 --> 02:20.840 Your application is now highly available as hardware failures to not bring your application down because 29 02:20.840 --> 02:25.920 we have multiple instances of your application running on different nodes. 30 02:26.030 --> 02:30.100 The user traffic is load balanced across the various containers. 31 02:30.200 --> 02:37.190 When demand increases, deploy more instances of the applications seamlessly and within a matter of seconds. 32 02:37.380 --> 02:42.920 And we have the ability to do that at a service level when we run out of hardware resources, 33 02:42.950 --> 02:49.520 scale the number of underlying nodes up or down without having to take down the application and do all 34 02:49.520 --> 02:55.610 of these easily with a set of declarative object configuration files. 35 02:55.610 --> 02:57.270 And that is Kubernetes. 36 02:57.380 --> 03:04.340 It is a container orchestration technology used to orchestrate the deployment and management of hundreds 37 03:04.340 --> 03:08.750 and thousands of containers in a clustered environment. 38 03:08.750 --> 03:14.330 Don't worry if you didn't get all of what I just said. In the upcoming lectures, we will take deeper 39 03:14.330 --> 03:19.450 look at the architecture and various concepts surrounding Kubernetes. 40 03:19.700 --> 03:21.510 That is all for this lecture. 41 03:21.620 --> 03:24.870 Thank you for listening and I will see you in the next lecture.