1 00:00:01,030 --> 00:00:05,170 Now that you've got some semblance of an idea between the difference of a load balancer and an ingress 2 00:00:05,170 --> 00:00:05,730 controller. 3 00:00:05,770 --> 00:00:10,270 Let's take a look at the actual implementation this ingress controller and low balancer stuff that we're 4 00:00:10,270 --> 00:00:12,540 going to use inside of our cluster. 5 00:00:12,580 --> 00:00:16,720 So we are going to making use of a project called Ingress engine x. 6 00:00:16,810 --> 00:00:22,780 This is a project or a open source library that's going to create a load balancer service in cyber cluster 7 00:00:22,840 --> 00:00:28,940 plus an ingress automatically before we take a look at any documentation around ingress engine x. 8 00:00:28,960 --> 00:00:33,380 I want to give you a very quick and extremely important note. 9 00:00:33,450 --> 00:00:37,130 We are going to be using a project called Ingress engine X. 10 00:00:37,130 --> 00:00:43,770 There is another extremely similar project with an almost identical name but it is not what we are using. 11 00:00:43,790 --> 00:00:45,900 These are two very different projects. 12 00:00:45,920 --> 00:00:49,200 They are provided by different organizations. 13 00:00:49,220 --> 00:00:52,430 The second one is called Cuban eddies ingress. 14 00:00:52,640 --> 00:00:56,300 So whenever you start to look at documentation or blog posts whatever else. 15 00:00:56,300 --> 00:01:01,690 Make sure that whatever you're reading is related to ingress engine X and not Cuban eddies ingress. 16 00:01:01,820 --> 00:01:09,720 As a matter of fact if I open up a new tab right now and do a search for Cuban eddies ingress and then 17 00:01:09,720 --> 00:01:13,810 scroll down a little bit you're going to see that some of the top results here. 18 00:01:13,920 --> 00:01:16,110 Here's some to get hub repos right here. 19 00:01:16,140 --> 00:01:19,520 The first one that I see is ingress engine x. 20 00:01:19,530 --> 00:01:21,630 That is what we are using. 21 00:01:21,810 --> 00:01:26,260 We are not making use of humanity's ingress but they're right next to each other. 22 00:01:26,340 --> 00:01:29,140 Really easy to click on one or the other. 23 00:01:29,160 --> 00:01:33,370 Just make sure you're always looking at ingress engine X. That's long and short of it. 24 00:01:33,430 --> 00:01:33,610 All right. 25 00:01:33,610 --> 00:01:38,440 So then might let's take a look at some documentation around ingress engine X so I can open up a new 26 00:01:38,440 --> 00:01:45,110 tab and do a search for ingress engine X and I should see hopefully as the first result or so to get 27 00:01:45,110 --> 00:01:47,460 hub repo for ingress engine X. 28 00:01:47,510 --> 00:01:50,980 Again make sure you're looking at ingress engine X.. 29 00:01:50,990 --> 00:01:55,810 I'm gonna go to that github repo and then right here at the very top and the description is a link to 30 00:01:55,810 --> 00:01:56,980 the official documentation. 31 00:01:56,980 --> 00:02:00,000 I believe there's also one of the Read me down here as well. 32 00:02:00,010 --> 00:02:04,630 Yeah we can take a look at say getting started and you'll see a page like this. 33 00:02:04,630 --> 00:02:09,330 So make sure you come to deployment and there's going to be an installation guide on how to get started. 34 00:02:09,340 --> 00:02:16,930 Now I've got to be honest with you my very frank notes on ingress engine X the documentation page here 35 00:02:16,960 --> 00:02:18,660 is not the best in the world. 36 00:02:18,820 --> 00:02:23,350 It turns out that once you start doing some more advanced stuff there's just it's just a little bit 37 00:02:23,350 --> 00:02:25,690 hard to interpret this documentation sometimes. 38 00:02:25,720 --> 00:02:26,790 I'm just gonna leave it there. 39 00:02:26,860 --> 00:02:30,640 If you start to read this stuff and you're getting a little bit confused you are not alone at all. 40 00:02:31,660 --> 00:02:35,710 You can take a look at the installation guide you're going to see a couple of notes on here. 41 00:02:35,720 --> 00:02:37,580 These notes change all the time. 42 00:02:37,580 --> 00:02:42,690 So if you see a different set of notes an eye that is totally ok whenever you get started with ingress 43 00:02:42,720 --> 00:02:46,590 engine X there's going to be what is called a mandatory command up here. 44 00:02:47,370 --> 00:02:52,560 So if we want to use ingress engine X inside of our cluster we have to run this mandatory command no 45 00:02:52,560 --> 00:02:53,830 matter what. 46 00:02:53,850 --> 00:02:58,120 After that there are going to be a series of provider specific commands. 47 00:02:58,170 --> 00:03:03,000 So if you're using Docker for Mac for example or Docker for windows you will run this additional command 48 00:03:03,000 --> 00:03:03,420 right here. 49 00:03:03,960 --> 00:03:08,070 If you're using many cube you'll run that command right there and there's a set of additional commands 50 00:03:08,220 --> 00:03:13,800 depending upon your provider on here as well rather than just taking these commands and executing them 51 00:03:13,860 --> 00:03:14,960 inside of our terminal. 52 00:03:14,970 --> 00:03:17,070 I want to really understand what these commands are doing. 53 00:03:17,090 --> 00:03:22,360 I'm going to copy one right here and I'm going to go to my code editor really quickly just open up an 54 00:03:22,420 --> 00:03:28,870 empty page and paste that command in to take a look at this command that they're asking us to run it 55 00:03:28,870 --> 00:03:34,990 is QC DL apply dash F and then we are providing a U or L you're L that you would see right here is to 56 00:03:34,990 --> 00:03:36,670 a Yemen file. 57 00:03:36,670 --> 00:03:41,560 So this entire installation command is very similar to these same commands we've already been running 58 00:03:41,800 --> 00:03:46,090 recently just taking a config file and throwing it into our cluster the exact same thing you and I have 59 00:03:46,090 --> 00:03:49,390 been doing throughout this entire Cuban entity section. 60 00:03:49,570 --> 00:03:55,980 I'm going to take this Your L and open it up inside of my browser you're going to see that when you 61 00:03:55,980 --> 00:04:00,940 get start with Cuban eddies there are going to be a lot of add ons other packages you want to use inside 62 00:04:00,960 --> 00:04:05,510 your cluster and a lot of them are going to be installed or added in by doing the same kind of cubes 63 00:04:05,510 --> 00:04:09,560 GTL apply dash F and then some you're out to a config file. 64 00:04:09,720 --> 00:04:14,730 I highly recommend that before you just take that entire command and throw it into your terminal. 65 00:04:14,730 --> 00:04:20,470 I really recommend you take a look at that config file and understand what you are getting so in this 66 00:04:20,470 --> 00:04:23,110 case we can see what is going to happen if we run that command. 67 00:04:23,110 --> 00:04:28,180 This is the config file these are the changes that will be implemented inside of our cluster you'll 68 00:04:28,180 --> 00:04:32,450 see that there are a couple of different config sections in here that look somewhat similar to the ones 69 00:04:32,450 --> 00:04:33,880 that we've already been writing. 70 00:04:33,880 --> 00:04:37,630 The big difference is that they are creating different kinds of objects than the ones we've been looking 71 00:04:37,630 --> 00:04:38,600 at so far. 72 00:04:38,620 --> 00:04:40,570 So this one create something called a namespace. 73 00:04:40,570 --> 00:04:45,610 We've got a config map a service account cluster all lot of different kinds of objects beyond what we've 74 00:04:45,610 --> 00:04:46,810 looked at so far. 75 00:04:46,810 --> 00:04:52,390 But most importantly I'm going to scroll down a little bit here is the bottom those scrolls grow scroll 76 00:04:52,630 --> 00:04:56,560 and down here you're going to see that there is a can pick section for a deployment. 77 00:04:56,560 --> 00:05:01,890 Well we know what a deployment is a deployment something that creates and manages a set of pods. 78 00:05:01,900 --> 00:05:07,060 Take a look closely at this thing and you'll notice that it's creating something that is called an ingress 79 00:05:07,510 --> 00:05:09,890 and connects ingress controller. 80 00:05:09,940 --> 00:05:14,680 So this ingress controller thing right here is essentially what we were just discussing back inside 81 00:05:14,680 --> 00:05:15,420 this diagram. 82 00:05:15,460 --> 00:05:19,900 So it's this ingress controller that's going to have a set of routing rules inside of it and it's going 83 00:05:19,900 --> 00:05:25,200 to make sure that incoming traffic gets sent off to inappropriate pod. 84 00:05:25,300 --> 00:05:29,900 That was the first config file that the installation guide was asking us to run. 85 00:05:29,950 --> 00:05:32,110 That was the mandatory command. 86 00:05:32,140 --> 00:05:36,650 I now want to take a look at the other config file that we're being asked to run if you're using Docker 87 00:05:36,660 --> 00:05:37,560 for Mac. 88 00:05:37,660 --> 00:05:40,990 It's going to take just that config file to you all right there. 89 00:05:40,990 --> 00:05:48,340 And again paste it into my browser but this is what we get when we run the docker for macro Docker for 90 00:05:48,350 --> 00:05:50,040 Windows specific installation. 91 00:05:50,120 --> 00:05:54,280 We get just this very simple config file right here and take a look at what it creates. 92 00:05:54,290 --> 00:05:57,800 It makes a service of type load balancer. 93 00:05:57,800 --> 00:06:00,470 So this is the other part of what we just saw inside this diagram. 94 00:06:00,470 --> 00:06:05,330 This is the thing that's going to somehow provision an outside load balancer and it's going to somehow 95 00:06:05,330 --> 00:06:12,290 get traffic in to our cluster specifically at that ingress controller thing so between these two different 96 00:06:12,290 --> 00:06:14,270 can pick files that we just looked at. 97 00:06:14,270 --> 00:06:19,830 We're essentially implementing this diagram that you see right here OK. 98 00:06:19,930 --> 00:06:23,890 So now that we've got a better idea of what these different installation commands are doing. 99 00:06:23,950 --> 00:06:28,910 Let's go ahead and run them so no matter what you're going to make sure that you now run this mandatory 100 00:06:28,910 --> 00:06:29,770 command right here. 101 00:06:29,780 --> 00:06:37,180 So we're going to copy that link or commands will then go back over to our terminal pasted in and run 102 00:06:37,180 --> 00:06:40,230 it well then see a bunch of stuff being created. 103 00:06:40,260 --> 00:06:44,640 Now for me I see a lot of stuff being unchanged because I've already got engine X ingress controller 104 00:06:44,820 --> 00:06:51,030 installed inside my cluster I'll then go back over and because I am using Docker for Mac or if you are 105 00:06:51,030 --> 00:06:53,760 using Docker for windows you're still going to use the same command right here. 106 00:06:54,240 --> 00:06:58,280 I'm going to copy that command and run that one as well. 107 00:07:00,080 --> 00:07:04,930 And I see unchanged but you're probably gonna see something that says service created or what have you. 108 00:07:05,060 --> 00:07:10,650 And then of course if you're using a mini cube instead you will follow these directions right here. 109 00:07:10,700 --> 00:07:12,530 You do not have to do the for development. 110 00:07:12,530 --> 00:07:18,200 That's just if you are developing ingress engine X. If you are a mini cube you'll just do standard usage 111 00:07:19,980 --> 00:07:20,610 OK. 112 00:07:20,670 --> 00:07:23,510 That is it for the initial setup. 113 00:07:23,520 --> 00:07:28,800 Now we've added these things into our cluster but we have not yet set up any routing rules or anything 114 00:07:28,800 --> 00:07:30,720 like that around our ingress controller. 115 00:07:30,750 --> 00:07:32,310 So we still have a little bit of work to do. 116 00:07:32,760 --> 00:07:36,540 Let's take a pause right here in the next video we'll start to understand how we can tell the ingress 117 00:07:36,540 --> 00:07:39,540 controller how to route traffic off to our different set of pods.