So welcome back. And in the previous video, we just set things up. I hope either you've got a working system up and running, or you're happy just to sit back and watch these videos. I said something at the end of the last video, which I think is so significant. And I'm going to repeat it just in case you missed the end of the last video, I want to talk about exactly what do you need to have in place on your Kubernetes cluster? In order to get all of the upcoming benefits of Istio telemetry? Well, it's possibly simpler than you might think. First of all, we do need to have those envoy sidecar proxies running in every pod that we're wanting to monitor. Well, we've done that, let's confirm, keep CTL get po we know we've got two containers inside every pod. And the second of those containers is that sidecar proxy. Remember, you don't have to have every namespace in your system labelled with sidecar injection, it's up to you, which parts of the system that you have these proxies deployed to, for us, we're going to monitor the whole of this default namespace. So we've achieved that requirement. The other requirement to have telemetry working is that we do need the control plane up and running, what I'm leading to here, and I think it's so important, we don't need any specific istio yaml configuration. If you read user guides, and blog posts, and so on, they'll immediately start going on about some fairly complex Istio concepts of virtual services, gateways, destination rules, and quite few other things. Now, when I started with this, the other project that I was working with just wanted telemetry, actually, they just wants to do distributed tracing at first, and then they started using kiali, quite extensively. And their big question for me was, well, we really don't want to set up an Istio gateway, that would have been quite a complex thing for them to install on their already existing architecture. And they thought that this meant they couldn't use telemetry, well, I'm going to put a big red box around this, really just to emphasise that we don't need any clever Istio configuration. We do need virtual services and gateways when we start doing traffic management. And we will be covering that in detail on that section of the course. But I've been quite deliberate in this section just to say you know what we're good to go. We don't have to do anything particularly clever with our existing architecture, we can just go straight in and start using the user interfaces. Now there is one big requirement that we need to make tracing work. So we want to talk about that just now that's coming up in a few videos time, I'm afraid you are going to have to do some fairly serious changes to your application if you want the full benefits of tracing. But this video is all about kiali. So let's get started with that. So what is kiali I'm sure most of you will have gone through the warm up section where we used kiali. One of the great things about kiali is it doesn't take much learning really. Now I've set things up so that kiali is available on port 31,000. That's not actually standard. If I do a kubectl get SVC dash n Istio system that will confirm that there is a kiali service here. And I did just did an edit in the yaml file to change it to a node port. And I just randomly chose Port 31,000. Again, if you do the installing Istio video, then I'll show you exactly how to do that. But it's a very simple operation. There are other ways of getting there. But I find that that's the easiest. And the difficulty for me in this video is showing you everything I'm not showing saying when I think things are difficult to use or complicated or badly implemented. But I can be really honest with kiali and say I think kiali is fantastic. The perfect balance really have been incredibly powerful, it really can help you find very difficult to diagnose problems. I tried to demonstrate that in the warm up session. But also at the same time, it's pretty simple to use, it kind of makes it a bit hard for me to do a video on it because you know what, you could probably just play with it for an hour and and learn how to use it yourself. So if I'm over gushing about how wonderful kiali is, I don't care. It's one of the most valuable tools that I have. So starting from the front dashboard, this gives you an overview of the overall health of the system. And it splits this up by namespace so of course we only have two namespaces here but you can see very easily at a glance if your systems healthy. Now, if you're seeing unhealthy at this stage, don't panic, it might just be the fact that you've come to here quite quickly, and we've Just started this system up. So just while the system was warming up and the microservices were starting to talk to each other, there might have been some HTTP errors during that startup phase that being picked up. Now a crucial aspect of kiali throughout, it's a very dynamic thing, it is not just showing you the health at a particular snapshot. The top right is so important. This is telling me this is showing the health over the last minute and it will refresh every 15 seconds. So if I switch this, for example, back to the last 30 minutes, Yeah, perfect. That's exactly what I wanted to see, that might look worrying. We're getting warnings. Now we're seeing that six of our while it calls them applications, these are actually pods, it's saying that four out of the six pods are showing some kind of a an ill health. And as I say, That's absolutely nothing to worry about that was just in the startup period. And if we wait 30 minutes, then this would all go to green. So you're going to be a bit tactical in what you set for this period. If for example, you've just done a request into the system, like I've just selected a vehicle there, and you know that doing that has caused the problem to happen. And you want to be absolutely careful that your time frame here will actually capture that event. If you set things to just the last minute. Well, by the time you've started drilling down into here, you'll find that the fault is cleared. So watch out for that, I must admit that has caught me out a few times that probably the first port of call has to be the graph. If I click the graph link here, if you're not seeing anything on here, you might need to go to the namespace here. If no namespace is selected, then you will get this warning here, but it tells you go to the namespace selector and select the namespace you want to see. And I think the default graph you'll get is the version app graph. I'll come on to that one in a minute. But I think an easy one to understand is perhaps the service graph here. And what that is showing you is with these triangles is every service that you have, in your standard Kubernetes yaml. There's no special Istio stuff going on here. And it's showing how they're connected together based on the traffic that has gone between these services in the period you can see here. Do you remember a few moments ago, when I clicked I'm not going to click again. But a few moments ago, I clicked on one of these vehicles here. Well, I can tell you again, you don't need to know the inner workings of the system. But that is implemented by a call from this service here, the Fleetman API gateway. And it goes straight to this service here called the Fleetman staff service. Now, I did that more than a minute ago. And that's the reason that this line is being painted in grey. I don't know how well you can see that on the video, I can zoom in either with this button here, or I can use my mouse wheel. This line here is grey. And that means in this time period in the last minute, there's been no traffic between these those two services. Although there was some traffic a bit earlier than that. Now what it's going to do is in a future refresh, eventually it will expire. It will take that line out. So be careful of that. Again, I reckon if I go back across last 10 minutes, can you see now that line is in green, because in the last 10 minutes, there was traffic between that this service and that service. Now that's useful, because we can see how dynamic This is. If I go back to the last minute, we've got that line in grey. But now if I switch to the system, I'm going to just click on a random vehicle and then go straight back to kiali. Now I'm waiting for the next refresh. Don't expect things that's great, there was a refresh there. And you can tell by that and actually the line is still in grey. So don't expect changes to be picked up immediately does take time for the telemetry data to propagate. So I'm filling for time perfect. That's the next update the next 15 second update and can you see now the line has been filled in in green to say there has been live traffic so it will take some time but if I were to carry on talking now for like 10 minutes and do nothing else, assuming no more traffic goes between that service and that service, this line will go to grey in the once this one minute window is expired. I'll do a quick video editor to take us past that one minute window. Yeah, that's about 415 second refreshes the line has gone to grey But I think it's important to note that if we wait a little longer, and I'm going to stop recording now and just leave this running in the background, eventually that line will be removed entirely if there's been no traffic between those two services. And yes, I can confirm, I stopped recording there and waited for five minutes. And once the five minutes have passed, then kiali determines that the traffic between those two services is now stale. Remember, we had a call from API gateway to the staff service. Now that's been removed from the diagram entirely. So that's very important to note about kiali, then it's not showing you a static picture of your system architecture, it's only showing parts of the system that are sending and receiving traffic in the window that you've specified here, with an extra five minutes grace. So if you ever find yourself looking at this and thinking, Well, my services disappeared, then you might need to either exercise the system by sending in a request or changing the window. So let's look at that, then. I reckon if I go back across the last 10 minutes, yeah, I can now see the full line from the gateway to the staff service. If we go back to the last one minute, then that line is not in place. But I can very easily Now again, I'll switch to the app, I'll click on one of the vehicles that should have sent a request from API gateway to staff service in the next refresh. There was one refresh. Now, that didn't change things. Again, it takes a while. Let's wait for the next refresh. There's a refresh icon appears here when it's refreshing. Interestingly, that refresh didn't catch it either, within about 30 seconds, since I made that request. A bit nervous now. There's an extra refresh. And yeah, actually, by the time it's actually captured that data, already, that line has gone back to a grey line set actually took a little over a minute for that data to actually appear on the graph. So be aware of that. You might have noticed in these demos that the layouts have been changing a little bit remote, you can't expect it to always build a beautiful, perfectly drawn graph. Sometimes these things can look a little bit messy, you do have some options. Here, you have three alternative layouts, the default is the one here. But if I click on the other one, I'm not sure how to describe these. And I'm certainly not familiar with the implementations of these layouts. But I always find layout number one's a bit more angular, it's a bit more sort of straight edge. And layout. Number two, well, it just looks different. I don't really know how to explain that. Just experiment for yourself with three layouts and work with the one you prefer. I think on balance, I mean, the the default layout tries to lay things out in a kind of left to right fashion. Where is it more of a tree style. Whereas layouts one and two, I think are a bit more of a star formation. I think oftentimes, I prefer personally layout one, but that's entirely up to you. So that's the service graph. And it's probably the graph where I spend most of my time in kiali. Before I leave the graph, I should mention that, obviously, in real life, some of these graphs can get very big and complicated. Although it's not usually that bad, because you can always filter by the particular net by namespaces. namespaces shouldn't really have too many items in them. Although I realise in the real world, lots of projects do go stuffing hundreds of things into namespaces. So one useful tip might be if you have a particularly complicated graph, you can always take any of these items, I'll go for this one here doesn't matter what it is, if you double click on any item, then the view will change to show you just that item together with any incoming and outgoing routes from that particular object. So that can be really useful to clean things up. And you can always go back to the full graph here. Now as a service graph, so each of these triangles is representing a regular Kubernetes service. But we have some alternative graphs here on the drop down, and there are four of them. Now until we go a little further in the course I can't explain all of them, we will need to do some traffic management before I can give you a full description of the version dap graph, but I can show you the workload graph, and you'll immediately notice that it is a little bit bigger. Looks a little bit more complicated at first view. Let's just try the different layouts and see if we get something a bit a bit cleaner. I think that's all Probably the best one. Now what we have here is a view where we still have the services. So these are the triangles here. And by the way, there's a button here to show you the legend or the key for the graphs of the triangles of the services. But on this graph, we also have circles, representing what they call the workloads, you can think of those has just been the parts. This diagram is perhaps not that useful with my particular system, because really, every service just has a pod behind it. I should mention if you go further with this, so if you have multiple pods for a service, you will only still see one pod, you will only see one workload, I should say. That's because the workload represents all of the pods for a particular service, I don't find this graph quite so useful, because it's a lot more cluttered, because you always have basically two entries for everything, you have the service, and then its underlying collection of pods, if you like. But there's at least one extra thing you can do with this graph that you can't do with the other. If I go to this button here for edge labels, there's a very useful option of setting the response time. Now the response time is telling you the average response time for a particular set of requests. So I can see, for example, when the position tracker is servicing a request, its average response time is 237 milliseconds. Now, you'll notice that this label is only in position between the service and its underlying workload or its underlying parts. So for that reason, if you switch to the service graph, even with response time selected, you don't see anything. So don't forget that if you do want to see these response times, then you will need to make sure you're on the workload graph. Looking at the clock, I think I will defer talking about the version that graph on the app graph. Until the traffic management section of the course that's really where those graphs come into their own. For now, at least, you won't see a big difference between those graphs and the workload graph that we've just seen. So what to do next well, on any of these graphs, you can right click on any of the objects. So I'm back here on the service graph. And if I right click on the any of them Fleetman staff service, we get a pop up menu, and we can go into the details of the service. This will very usefully show me a list of all of the pods that are represented by this particular service. And I also have an inbound metrics graph here, which will show me things such as the request volume, the request duration, over time, the request size and the response size. So all of that might be very useful. If you are interested in these metrics, you're probably more likely to be looking in grafana, which I'll be showing you in a short while. So I won't go into too much detail there. By contrast, if I go back to the graph, that was the service graph, if I'm on the workload graph, there is a difference. Remember, right clicking on a service will allow me to look at details traffic and inbound metrics. But if I right click on a workload, then I get different options. And I can access all of these options. Actually, through the Show Details link, very usefully for a workload, you can look at the logs. Now remember, a workload can be more than one part. So you'll find a drop down list here of all of the pods for that particular workload. We only have one pod, per workload in this system. But remember, of course, all of our pods have two containers in them the application container and the proxy. So you can look at the logs for the proxy as well. Now, of course, you can do this on the command line. There's nothing particularly special about this. But I have found that useful a few times where I'm debugging an emergency situation. And I can stay within this user interface rather than having switched to the command line. So maybe not a big deal for you. But definitely nice to know it's there. Notice that the logs work differently to the rest of kiali. It has its own time period, and you have to manually refresh them. So keep that in mind. Now, I don't know how if you're following along I don't know how chatty this particular part is. So you might not see anything. I'm seeing lots of exceptions in there, which I think is there purely because I've just restarted we still need to revisit the version That graph, which we will do in the traffic management system, just a few miscellaneous things really, you might find useful under the display button here, you can click on traffic animation. And that will give you a cue animation showing you the direction of the traffic flow, I switch to the service graph, and you'll see it works there. Just the same, this perhaps is a little bit of eye candy, because you can see the direction from the arrows. But quite often, I do like to have this on, it just gives me a stronger visual feel for the direction that things are happening. This icon that's moving down the line also changes depending on the amount of traffic going along that connection. And also, it will make the little circles bigger, depending on the size of the payloads between them. We're not really getting a feel for that on this demo, but on your systems that might be really useful, are bound to have missed quite a few things. But I hope you will find this quite intuitive to work with. And if you do run into any problems, then the documentation, which you can get here by following the icon here on the top right to documentation, I found that documentation to be excellently well written. One last thing I would like to cover. And this is something that we really do need to have done the traffic management system to get a full feel for but it's just too big really to leave until later. So I'm going to do it now. And that is you might be amazed to discover that as well as just looking at the system as well as just observing what's going on. You can also make dramatic changes to the configuration of this system. You can actually make modifications to your system architecture through kiali. Well, that's a big feature. So I think that definitely needs a video of its own. We'll do that next So welcome back. And in the previous video, we just set things up. I hope either you've got a working system up and running, or you're happy just to sit back and watch these videos. I said something at the end of the last video, which I think is so significant. And I'm going to repeat it just in case you missed the end of the last video, I want to talk about exactly what do you need to have in place on your Kubernetes cluster? In order to get all of the upcoming benefits of Istio telemetry? Well, it's possibly simpler than you might think. First of all, we do need to have those envoy sidecar proxies running in every pod that we're wanting to monitor. Well, we've done that, let's confirm, keep CTL get po we know we've got two containers inside every pod. And the second of those containers is that sidecar proxy. Remember, you don't have to have every namespace in your system labelled with sidecar injection, it's up to you, which parts of the system that you have these proxies deployed to, for us, we're going to monitor the whole of this default namespace. So we've achieved that requirement. The other requirement to have telemetry working is that we do need the control plane up and running, what I'm leading to here, and I think it's so important, we don't need any specific istio yaml configuration. If you read user guides, and blog posts, and so on, they'll immediately start going on about some fairly complex Istio concepts of virtual services, gateways, destination rules, and quite few other things. Now, when I started with this, the other project that I was working with just wanted telemetry, actually, they just wants to do distributed tracing at first, and then they started using kiali, quite extensively. And their big question for me was, well, we really don't want to set up an Istio gateway, that would have been quite a complex thing for them to install on their already existing architecture. And they thought that this meant they couldn't use telemetry, well, I'm going to put a big red box around this, really just to emphasise that we don't need any clever Istio configuration. We do need virtual services and gateways when we start doing traffic management. And we will be covering that in detail on that section of the course. But I've been quite deliberate in this section just to say you know what we're good to go. We don't have to do anything particularly clever with our existing architecture, we can just go straight in and start using the user interfaces. Now there is one big requirement that we need to make tracing work. So we want to talk about that just now that's coming up in a few videos time, I'm afraid you are going to have to do some fairly serious changes to your application if you want the full benefits of tracing. But this video is all about kiali. So let's get started with that. So what is kiali I'm sure most of you will have gone through the warm up section where we used kiali. One of the great things about kiali is it doesn't take much learning really. Now I've set things up so that kiali is available on port 31,000. That's not actually standard. If I do a kubectl get SVC dash n Istio system that will confirm that there is a kiali service here. And I did just did an edit in the yaml file to change it to a node port. And I just randomly chose Port 31,000. Again, if you do the installing Istio video, then I'll show you exactly how to do that. But it's a very simple operation. There are other ways of getting there. But I find that that's the easiest. And the difficulty for me in this video is showing you everything I'm not showing saying when I think things are difficult to use or complicated or badly implemented. But I can be really honest with kiali and say I think kiali is fantastic. The perfect balance really have been incredibly powerful, it really can help you find very difficult to diagnose problems. I tried to demonstrate that in the warm up session. But also at the same time, it's pretty simple to use, it kind of makes it a bit hard for me to do a video on it because you know what, you could probably just play with it for an hour and and learn how to use it yourself. So if I'm over gushing about how wonderful kiali is, I don't care. It's one of the most valuable tools that I have. So starting from the front dashboard, this gives you an overview of the overall health of the system. And it splits this up by namespace so of course we only have two namespaces here but you can see very easily at a glance if your systems healthy. Now, if you're seeing unhealthy at this stage, don't panic, it might just be the fact that you've come to here quite quickly, and we've Just started this system up. So just while the system was warming up and the microservices were starting to talk to each other, there might have been some HTTP errors during that startup phase that being picked up. Now a crucial aspect of kiali throughout, it's a very dynamic thing, it is not just showing you the health at a particular snapshot. The top right is so important. This is telling me this is showing the health over the last minute and it will refresh every 15 seconds. So if I switch this, for example, back to the last 30 minutes, Yeah, perfect. That's exactly what I wanted to see, that might look worrying. We're getting warnings. Now we're seeing that six of our while it calls them applications, these are actually pods, it's saying that four out of the six pods are showing some kind of a an ill health. And as I say, That's absolutely nothing to worry about that was just in the startup period. And if we wait 30 minutes, then this would all go to green. So you're going to be a bit tactical in what you set for this period. If for example, you've just done a request into the system, like I've just selected a vehicle there, and you know that doing that has caused the problem to happen. And you want to be absolutely careful that your time frame here will actually capture that event. If you set things to just the last minute. Well, by the time you've started drilling down into here, you'll find that the fault is cleared. So watch out for that, I must admit that has caught me out a few times that probably the first port of call has to be the graph. If I click the graph link here, if you're not seeing anything on here, you might need to go to the namespace here. If no namespace is selected, then you will get this warning here, but it tells you go to the namespace selector and select the namespace you want to see. And I think the default graph you'll get is the version app graph. I'll come on to that one in a minute. But I think an easy one to understand is perhaps the service graph here. And what that is showing you is with these triangles is every service that you have, in your standard Kubernetes yaml. There's no special Istio stuff going on here. And it's showing how they're connected together based on the traffic that has gone between these services in the period you can see here. Do you remember a few moments ago, when I clicked I'm not going to click again. But a few moments ago, I clicked on one of these vehicles here. Well, I can tell you again, you don't need to know the inner workings of the system. But that is implemented by a call from this service here, the Fleetman API gateway. And it goes straight to this service here called the Fleetman staff service. Now, I did that more than a minute ago. And that's the reason that this line is being painted in grey. I don't know how well you can see that on the video, I can zoom in either with this button here, or I can use my mouse wheel. This line here is grey. And that means in this time period in the last minute, there's been no traffic between these those two services. Although there was some traffic a bit earlier than that. Now what it's going to do is in a future refresh, eventually it will expire. It will take that line out. So be careful of that. Again, I reckon if I go back across last 10 minutes, can you see now that line is in green, because in the last 10 minutes, there was traffic between that this service and that service. Now that's useful, because we can see how dynamic This is. If I go back to the last minute, we've got that line in grey. But now if I switch to the system, I'm going to just click on a random vehicle and then go straight back to kiali. Now I'm waiting for the next refresh. Don't expect things that's great, there was a refresh there. And you can tell by that and actually the line is still in grey. So don't expect changes to be picked up immediately does take time for the telemetry data to propagate. So I'm filling for time perfect. That's the next update the next 15 second update and can you see now the line has been filled in in green to say there has been live traffic so it will take some time but if I were to carry on talking now for like 10 minutes and do nothing else, assuming no more traffic goes between that service and that service, this line will go to grey in the once this one minute window is expired. I'll do a quick video editor to take us past that one minute window. Yeah, that's about 415 second refreshes the line has gone to grey But I think it's important to note that if we wait a little longer, and I'm going to stop recording now and just leave this running in the background, eventually that line will be removed entirely if there's been no traffic between those two services. And yes, I can confirm, I stopped recording there and waited for five minutes. And once the five minutes have passed, then kiali determines that the traffic between those two services is now stale. Remember, we had a call from API gateway to the staff service. Now that's been removed from the diagram entirely. So that's very important to note about kiali, then it's not showing you a static picture of your system architecture, it's only showing parts of the system that are sending and receiving traffic in the window that you've specified here, with an extra five minutes grace. So if you ever find yourself looking at this and thinking, Well, my services disappeared, then you might need to either exercise the system by sending in a request or changing the window. So let's look at that, then. I reckon if I go back across the last 10 minutes, yeah, I can now see the full line from the gateway to the staff service. If we go back to the last one minute, then that line is not in place. But I can very easily Now again, I'll switch to the app, I'll click on one of the vehicles that should have sent a request from API gateway to staff service in the next refresh. There was one refresh. Now, that didn't change things. Again, it takes a while. Let's wait for the next refresh. There's a refresh icon appears here when it's refreshing. Interestingly, that refresh didn't catch it either, within about 30 seconds, since I made that request. A bit nervous now. There's an extra refresh. And yeah, actually, by the time it's actually captured that data, already, that line has gone back to a grey line set actually took a little over a minute for that data to actually appear on the graph. So be aware of that. You might have noticed in these demos that the layouts have been changing a little bit remote, you can't expect it to always build a beautiful, perfectly drawn graph. Sometimes these things can look a little bit messy, you do have some options. Here, you have three alternative layouts, the default is the one here. But if I click on the other one, I'm not sure how to describe these. And I'm certainly not familiar with the implementations of these layouts. But I always find layout number one's a bit more angular, it's a bit more sort of straight edge. And layout. Number two, well, it just looks different. I don't really know how to explain that. Just experiment for yourself with three layouts and work with the one you prefer. I think on balance, I mean, the the default layout tries to lay things out in a kind of left to right fashion. Where is it more of a tree style. Whereas layouts one and two, I think are a bit more of a star formation. I think oftentimes, I prefer personally layout one, but that's entirely up to you. So that's the service graph. And it's probably the graph where I spend most of my time in kiali. Before I leave the graph, I should mention that, obviously, in real life, some of these graphs can get very big and complicated. Although it's not usually that bad, because you can always filter by the particular net by namespaces. namespaces shouldn't really have too many items in them. Although I realise in the real world, lots of projects do go stuffing hundreds of things into namespaces. So one useful tip might be if you have a particularly complicated graph, you can always take any of these items, I'll go for this one here doesn't matter what it is, if you double click on any item, then the view will change to show you just that item together with any incoming and outgoing routes from that particular object. So that can be really useful to clean things up. And you can always go back to the full graph here. Now as a service graph, so each of these triangles is representing a regular Kubernetes service. But we have some alternative graphs here on the drop down, and there are four of them. Now until we go a little further in the course I can't explain all of them, we will need to do some traffic management before I can give you a full description of the version dap graph, but I can show you the workload graph, and you'll immediately notice that it is a little bit bigger. Looks a little bit more complicated at first view. Let's just try the different layouts and see if we get something a bit a bit cleaner. I think that's all Probably the best one. Now what we have here is a view where we still have the services. So these are the triangles here. And by the way, there's a button here to show you the legend or the key for the graphs of the triangles of the services. But on this graph, we also have circles, representing what they call the workloads, you can think of those has just been the parts. This diagram is perhaps not that useful with my particular system, because really, every service just has a pod behind it. I should mention if you go further with this, so if you have multiple pods for a service, you will only still see one pod, you will only see one workload, I should say. That's because the workload represents all of the pods for a particular service, I don't find this graph quite so useful, because it's a lot more cluttered, because you always have basically two entries for everything, you have the service, and then its underlying collection of pods, if you like. But there's at least one extra thing you can do with this graph that you can't do with the other. If I go to this button here for edge labels, there's a very useful option of setting the response time. Now the response time is telling you the average response time for a particular set of requests. So I can see, for example, when the position tracker is servicing a request, its average response time is 237 milliseconds. Now, you'll notice that this label is only in position between the service and its underlying workload or its underlying parts. So for that reason, if you switch to the service graph, even with response time selected, you don't see anything. So don't forget that if you do want to see these response times, then you will need to make sure you're on the workload graph. Looking at the clock, I think I will defer talking about the version that graph on the app graph. Until the traffic management section of the course that's really where those graphs come into their own. For now, at least, you won't see a big difference between those graphs and the workload graph that we've just seen. So what to do next well, on any of these graphs, you can right click on any of the objects. So I'm back here on the service graph. And if I right click on the any of them Fleetman staff service, we get a pop up menu, and we can go into the details of the service. This will very usefully show me a list of all of the pods that are represented by this particular service. And I also have an inbound metrics graph here, which will show me things such as the request volume, the request duration, over time, the request size and the response size. So all of that might be very useful. If you are interested in these metrics, you're probably more likely to be looking in grafana, which I'll be showing you in a short while. So I won't go into too much detail there. By contrast, if I go back to the graph, that was the service graph, if I'm on the workload graph, there is a difference. Remember, right clicking on a service will allow me to look at details traffic and inbound metrics. But if I right click on a workload, then I get different options. And I can access all of these options. Actually, through the Show Details link, very usefully for a workload, you can look at the logs. Now remember, a workload can be more than one part. So you'll find a drop down list here of all of the pods for that particular workload. We only have one pod, per workload in this system. But remember, of course, all of our pods have two containers in them the application container and the proxy. So you can look at the logs for the proxy as well. Now, of course, you can do this on the command line. There's nothing particularly special about this. But I have found that useful a few times where I'm debugging an emergency situation. And I can stay within this user interface rather than having switched to the command line. So maybe not a big deal for you. But definitely nice to know it's there. Notice that the logs work differently to the rest of kiali. It has its own time period, and you have to manually refresh them. So keep that in mind. Now, I don't know how if you're following along I don't know how chatty this particular part is. So you might not see anything. I'm seeing lots of exceptions in there, which I think is there purely because I've just restarted we still need to revisit the version That graph, which we will do in the traffic management system, just a few miscellaneous things really, you might find useful under the display button here, you can click on traffic animation. And that will give you a cue animation showing you the direction of the traffic flow, I switch to the service graph, and you'll see it works there. Just the same, this perhaps is a little bit of eye candy, because you can see the direction from the arrows. But quite often, I do like to have this on, it just gives me a stronger visual feel for the direction that things are happening. This icon that's moving down the line also changes depending on the amount of traffic going along that connection. And also, it will make the little circles bigger, depending on the size of the payloads between them. We're not really getting a feel for that on this demo, but on your systems that might be really useful, are bound to have missed quite a few things. But I hope you will find this quite intuitive to work with. And if you do run into any problems, then the documentation, which you can get here by following the icon here on the top right to documentation, I found that documentation to be excellently well written. One last thing I would like to cover. And this is something that we really do need to have done the traffic management system to get a full feel for but it's just too big really to leave until later. So I'm going to do it now. And that is you might be amazed to discover that as well as just looking at the system as well as just observing what's going on. You can also make dramatic changes to the configuration of this system. You can actually make modifications to your system architecture through kiali. Well, that's a big feature. So I think that definitely needs a video of its own. We'll do that next |
돌아온 걸 환영해
그리고 이전 비디오에서는 그냥 설정만 했습니다.
저는 여러분이 작업 시스템을 가동시키고 있거나 아니면 가만히 앉아서 이 비디오를 보는 것만으로도 행복하길 바랍니다.
마지막 영상 마지막에 제가 한마디 했는데 너무 의미 있는 것 같아요.
마지막 비디오를 놓쳤을 때를 대비해서 다시 한 번 말씀드리겠습니다. 쿠베르네츠 클러스터에 정확히 필요한 것이 무엇인지 말씀드리고 싶습니다. 앞으로 다가올 아이스티오 원격 측정의 혜택을 모두 얻기 위해서요? 글쎄요, 생각보다 간단할 수도 있어요다시 오신 것을 환영합니다. 이전 비디오에서는 설정 만했습니다. 나는 당신이 작동하는 시스템을 가지고 있고, 아니면 그냥 앉아서이 비디오들을 보는 것에 만족하기를 바랍니다. 지난 영상 끝 부분에서 말씀 드렸는데 그게 너무 중요하다고 생각합니다. 마지막 비디오의 끝을 놓친 경우를 대비하여 반복하겠습니다. Kubernetes 클러스터에 정확히 무엇을 배치해야하나요? Istio 원격 측정의 향후 이점을 모두 얻으려면? 글쎄, 아마도 당신이 생각하는 것보다 더 간단 할 것입니다. 우선, 모니터링하려는 모든 포드에서 이러한 특사 사이드카 프록시를 |
실행해야합니다. |
글쎄, 우리는 그것을 완료했다. 확인하자. CTL은 우리가 모든 포드 안에 두 개의 |
컨테이너가 있다는 것을 |
알고있다. |
두 번째 컨테이너는 사이드카 프록시입니다. |
시스템의 모든 |
네임 스페이스를 사이드카 주입으로 라벨링 할 필요는 없습니다. |
시스템의 |
어느 부분에 이러한 프록시가 배포되어 있는지는 사용자에게 달려 있습니다. 우리는이 전체를 모니터링 할 것입니다. 기본 네임 스페이스. 그래서 우리는 그 |
요구 사항을 달성했습니다. 원격 측정이 작동하기위한 또 |
다른 요구 사항은 제어 플레인을 가동하고 실행해야한다는 것입니다. 여기에서 설명하는 것은 매우 중요하며 특정 istio yaml 구성이 필요하지 않습니다. 사용자 가이드, 블로그 게시물 등을 |
읽으면 가상 서비스, 게이트웨이, 대상 규칙 |
및 기타 몇 가지 사항에 대한 상당히 복잡한 Istio 개념에 대해 즉시 |
설명 할 것입니다. 이제 제가 이것을 시작했을 때 |
제가 |
함께 일하던 다른 프로젝트는 |
원격 측정을 원했습니다. 사실 그들은 처음에는 |
분산 추적을 원했고 그 다음에는 kiali를 꽤 광범위하게 |
사용하기 시작했습니다. |
저에게 그들의 |
큰 질문은 |
Istio 게이트웨이를 설치하고 싶지 않다는 |
것이 었습니다. 이미 존재하는 아키텍처에 설치하기에는 상당히 복잡한 일이었을 것입니다. 그리고 그들은 이것이 |
그들이 원격 측정을 사용할 수 없다는 것을 의미한다고 생각했습니다. 음, |
저는이 주위에 큰 빨간 상자를 놓을 것입니다. 정말 영리한 Istio |
구성이 필요하지 않다는 것을 강조하기 |
위해서입니다. 트래픽 관리를 시작할 |
때 가상 서비스와 게이트웨이가 필요합니다. |
그리고 우리는 코스의 해당 섹션에서 자세히 다룰 것입니다. 하지만 |
저는이 섹션에서 우리가 무엇을하면 좋을지 알고 있다고 말하기 위해 매우 신중했습니다. 기존 |
아키텍처로 특별히 |
영리한 작업을 |
할 필요가 없습니다. 바로 들어가서 사용자 |
인터페이스 사용을 시작할 수 있습니다. 이제 추적 작업을 |
수행하는 데 필요한 하나의 큰 요구 사항이 있습니다. |
그래서 우리는 몇 가지 비디오 |
시간에 다가오는 것에 대해 이야기하고 싶습니다. 추적의 모든 이점을 |
원한다면 응용 프로그램에 상당히 심각한 변경을해야 할 것 같습니다. |
하지만이 비디오는 |
키 알리에 관한 것입니다. |
그럼 시작합시다. 그래서 |
kiali는 무엇입니까? 저는 여러분 대부분이 |
우리가 kiali를 사용한 워밍업 섹션을 통과했을 것이라고 확신합니다. 키 알리의 가장 큰 장점 중 하나는 실제로 |
많은 학습이 필요하지 않다는 것입니다. 이제 |
포트 31, |
000에서 kiali를 사용할 수 있도록 |
설정했습니다. 그것은 |
실제로 표준이 아닙니다. |
kubectl을 수행하면 여기에 kiali 서비스가 |
있음을 확인하는 SVC dash n Istio 시스템이 있습니다. 그리고 |
방금 yaml 파일을 편집하여 노드 포트로 |
변경했습니다. |
그리고 무작위로 포트 31, |
000을 선택했습니다. 다시 |
하지만 이것은 매우 간단한 수술입니다.
그곳에 가는 다른 방법들이 있다.
하지만 그게 가장 쉽다는 걸 알아.
그리고 이 비디오에서 제가 말하는 어려움은 제가 생각하기에 상황이말하지만 Istio 비디오 설치를 수행하면 정확히 수행하는 방법을 보여 드리겠습니다. 그러나 그것은 매우 간단한 작업입니다. 거기에 도달하는 다른 방법이 있습니다. 하지만 이것이 가장 쉬운 방법이라는 것을 알았습니다. 이 비디오에서 저에게 어려운 점은 사용하기 어렵거나 복잡하거나 잘못 구현되었다고 생각할 때 |
보여주지 않는 모든 것을 |
보여줍니다. 하지만 |
저는 키 알리에게 정말 정직하고 키 알리가 환상적이라고 생각합니다. 완벽한 균형은 정말 믿을 수 |
없을만큼 강력했고, 문제를 진단하기가 매우 어려운 것을 찾는 데 도움이 될 수 있습니다. 나는 |
워밍업 세션에서 그것을 증명하려고 |
노력했습니다. |
하지만 동시에, 사용하기는 꽤 간단합니다. 비디오로 영상을 찍기가 좀 어렵죠. 아시다시피, 한 시간 동안만 가지고 놀 수도 있고, 직접 사용하는 법을 배울 수도 있기 때문입니다.
그래서 만약 내가 키알리가 얼마나 멋진지에 대해 너무 과장한다면, 나는 상관하지 않는다.
그것은 제가 가지고 있는 가장 가치 있는그러나 동시에 사용하기가 매우 간단합니다. 비디오를 찍는 것이 조금 어렵습니다. 왜냐하면 여러분이 알고 있기 때문입니다. 아마 한 시간 동안 가지고 놀고 사용 방법을 배울 수 있습니다. 너 자신. 그래서 내가 키 알리가 얼마나 멋진 지에 대해 너무나도 말했더라도 상관 없어요. 제가 가지고있는 가장 귀중한 도구 중 하나입니다. 따라서 전면 |
대시 보드에서 시작하여 시스템의 전반적인 상태에 대한 개요를 제공합니다. |
네임스페이스별로 분할되므로 여기에 두 개의 네임스페이스만 있습니다. 하지만 시스템이 정상이면 한눈에 쉽게 확인할 수 있습니다.
자, 만약 여러분이 이 단계에서 건강하지 않다고 생각하신다면, 당황하지 마세요. 그것은 여러분이 아주 빨리 여기 와서 우리가 이 시스템을 막 시작했다는 사실일 수도 있습니다.
시스템이 워밍업되고 마이크로서비스가 서로 말을 걸기 시작하는 동안 시작 단계에서 HTTP 오류가 발생했을 수 있습니다.
그래서 이 선들이 회색으로 칠해지고 있는 것입니다.
영상에서 얼마나 잘 보이실지 모르겠습니다. 여기 이그리고 이것은 네임 스페이스별로 분할되므로 물론 여기에는 두 개의 네임 스페이스 만 있지만 시스템이 정상인지 한 눈에 쉽게 볼 수 있습니다. 이 단계에서 건강에 좋지 않다면 당황하지 마십시오. 여기에 아주 빨리 오셨 기 때문에이 시스템을 방금 시작했습니다. 따라서 시스템이 워밍업되고 마이크로 서비스가 서로 통신하기 시작하는 동안 시작 단계에서 선택되는 일부 HTTP 오류가있을 수 있습니다. 이제 전체적으로 kiali의 중요한 측면은 매우 역동적이며 특정 스냅 샷에서 건강을 보여주는 것이 아닙니다. 오른쪽 상단이 너무 중요합니다. 이것은 이것이 마지막 1 분 동안의 상태를 보여주고 있으며 15 초마다 새로 고쳐진다는 것을 의미합니다. 예를 들어 이걸 바꾸면 지난 30 분으로 돌아갑니다. 예, 완벽합니다. 내가보고 싶었던 바로 그게 걱정스러워 보일 수도 있습니다. 경고를 받고 있습니다. 이제 6 개가 애플리케이션이라고 부르는 것을 볼 수 있습니다. 실제로는 포드입니다. 6 개 포드 중 4 개가 일종의 건강 상태가 좋지 않다는 것을 의미합니다. 그리고 내가 말했듯이, 그것은 단지 시작 기간에 있었던 것에 대해 전혀 걱정할 것이 없습니다. 30 분을 기다리면 모두 초록색으로 바뀝니다. 따라서이 기간 동안 설정 한 내용에서 약간 전술적 일 것입니다. 예를 들어, 제가 방금 그곳에서 차량을 선택한 것처럼 시스템에 요청을 한 경우 문제가 발생했음을 알고 있습니다. 그리고 여기에있는 시간 프레임이 실제로 해당 이벤트를 캡처 할 수 있도록 절대적으로주의해야합니다. 마지막 순간으로 설정했다면. 음, 여기로 드릴 다운을 시작하면 오류가 해결되었음을 알 수 있습니다. 그러니 조심하세요. 아마도 첫 번째 호출 포트가 그래프 여야한다는 것을 몇 번이나 알아 차 렸습니다. 여기 그래프 링크를 클릭하면 여기에 아무것도 표시되지 않으면 여기에있는 네임 스페이스로 이동해야 할 수 있습니다. 네임 스페이스를 선택하지 않은 경우 여기에이 경고가 표시되지만 네임 스페이스 선택기로 이동하여 보려는 네임 스페이스를 선택하라는 메시지가 표시됩니다. 그리고 얻을 수있는 기본 그래프는 버전 앱 그래프라고 생각합니다. 잠시 후에 그것에 대해 설명하겠습니다. 하지만 이해하기 쉬운 것은 아마도 여기의 서비스 그래프 일 것입니다. 그리고 이것이 여러분에게 보여주는 것은 표준 Kubernetes yaml에있는 모든 서비스입니다. 여기에는 특별한 Istio 관련 내용이 없습니다. 그리고 여기에서 볼 수있는 기간 동안 이러한 서비스간에 이동 한 트래픽을 기반으로 이들이 어떻게 서로 연결되어 있는지 보여줍니다. 내가 클릭했을 때 다시 클릭하지 않을 것입니다. 하지만 얼마 전에 여기이 차량 중 하나를 클릭했습니다. 음, 다시 말씀 드릴 수 있습니다. 시스템의 내부 작동을 알 필요는 없습니다. 그러나 이것은이 서비스 인 Fleetman API 게이트웨이의 호출에 의해 구현됩니다. Fleetman 직원 서비스라고하는이 서비스로 바로 연결됩니다. 자, 저는 1 분 전에 그렇게했습니다. 이것이이 선이 회색으로 칠해진 이유입니다. 비디오에서 얼마나 잘 볼 수 있는지 모르겠습니다. 여기이 버튼으로 확대하거나 마우스 휠을 사용할 수 있습니다. |
여기이 선은 회색입니다. |
이는 마지막 |
순간에이 두 |
서비스간에 트래픽이 없었 음을 의미합니다. |
그것보다 조금 일찍 |
교통 체증이 있었지만. 이제 수행 할 작업은 향후 새로 |
고침으로, 결국 만료됩니다. 그 |
라인을 제거합니다. 그러니 조심하세요. 다시 |
말하지만, 지난 |
10 분 동안 돌아 가면 선이 녹색으로 표시됩니다. 지난 10 분 동안이 서비스와 해당 서비스간에 트래픽이 있었기 때문입니다. 이것은 유용합니다. This가 |
얼마나 역동적인지 알 수 있기 |
때문입니다. 마지막 순간으로 |
돌아 가면 해당 선이 회색으로 표시됩니다. 하지만 이제 시스템으로 |
전환하면 임의의 차량을 클릭 한 다음 바로 키 알리로 돌아갑니다. 이제 |
다음 |
새로 고침을 기다리고 있습니다. |
좋은 일은 기대하지 마, 거기서 새로워진 일이 있었어.
그걸 보시면 아시겠지만 사실 그 선은 여전히 회색입니다.
따라서 변경사항이 즉시 수집될 것으로 예상하지 마십시오. 원격 측정 데이터가 전파되는 데 시간이 걸립니다대단한 것을 기대하지 마십시오. 거기에 새로 고침이있었습니다. 그리고 당신은 그것을 알 수 있고 실제로 선은 여전히 회색입니다. 따라서 원격 분석 데이터가 전파되는 데 시간이 걸리므로 변경 사항이 즉시 적용될 것으로 기대하지 마십시오. 그래서 나는 완벽한 시간을 |
채우고 있습니다. 이것이 다음 |
업데이트 인 다음 15 초 업데이트입니다. 이제 |
줄이 |
초록색으로 채워져 실시간 교통이 있었다는 것을 알 수 있습니다. 그래서 시간이 좀 걸릴 것입니다.하지만 지금 |
비디오 편집기를 돌려서 1분간의 창문을 지나도록 하겠습니다.
네, 새로 고침이 415초 정도 지났지만 좀 더 기다리면 녹화를 중단하고 백그라운드에서 실행 중인 상태로 두면 두 서비스 간에 트래픽이 없으면 해당 회선이10 분 정도 이야기를 계속한다면 더 이상 해당 서비스와 해당 서비스간에 트래픽이 이동하지 않는다고 가정하면이 1 분 기간이 만료되면이 선이 회색으로 바뀝니다. 이 1 분 창을지나도록 빠른 비디오 편집기를 사용하겠습니다. 예, 약 415 초의 새로 고침이 회색으로 바뀝니다.하지만 조금 더 기다렸다가 지금 녹음을 중지하고 백그라운드에서 실행 상태로두면 결국 해당 라인이 두 서비스간에 트래픽이없는 경우 완전히 제거됩니다. 네, 확인할 수 있습니다. |
거기서 녹화를 중단하고 |
5 분 동안 기다렸습니다. 그리고 |
5 분이 지나면 |
kiali는 두 서비스 |
간의 트래픽이 |
현재 부실한 것으로 판단합니다. API 게이트웨이에서 직원 |
서비스로의 호출이 있음을 기억하십시오. 이제 다이어그램에서 완전히 제거되었습니다. |
따라서 kiali에 대해 주목하는 |
것이 매우 중요합니다. 그러면 시스템 아키텍처의 정적 |
인 그림이 표시되지 않습니다. 여기에서 지정한 창에서 트래픽을 |
보내고받는 시스템의 일부만 |
추가로 5 분 동안 표시합니다. 은혜. 그래서 당신이 이것을보고 생각한다면, 글쎄, 내 서비스가 사라 졌다고 생각한다면, 당신은 요청을 보내거나 창을 변경하여 |
시스템을 연습해야 할 수도 있습니다. |
그럼 한번 보시죠. 지난 |
10 분 동안 돌아 가면 예, 이제 게이트웨이에서 직원 서비스까지의 전체 라인을 볼 수 있습니다. 마지막 1 분으로 돌아 가면 해당 라인이 제자리에 |
있지 않습니다. 하지만 매우 쉽게 할 수 있습니다. 이제 다시 앱으로 전환하고 |
다음 |
새로 |
고침에서 API 게이트웨이에서 직원 서비스로 요청을 |
보내야하는 차량 중 하나를 |
클릭합니다. 한 |
번 새로 |
고침했습니다. 자, |
그것은 상황을 바꾸지 않았습니다. 다시 말하지만 |
시간이 |
걸립니다. 다음 |
새로 고침을 |
기다립니다. 새로 |
고침 할 때 여기에 새로 고침 아이콘이 |
표시됩니다. 흥미롭게도 |
지금 약간 긴장하고 있어요.
새로 고침이 하나 더 있습니다.
네, 실제로 데이터를 캡처했을 때 이미 이 선은 회색 선으로 돌아갔습니다. 이 데이터가 그래프에 나타나기까지 1분 조금 넘게 걸렸습니다.
그러니까 잘 알아두세요.
이러한그 새로 고침도 내가 요청한 이후 약 30 초 이내에 인식하지 못했습니다. 이제 조금 긴장합니다. 추가 새로 고침이 있습니다. 그리고 네, 실제로 그 데이터를 실제로 캡처했을 때 이미 그 선이 회색 선 세트로 돌아 갔는데 실제로 그 데이터가 그래프에 실제로 나타나기까지 1 분 조금 넘게 걸렸습니다. 그러니 알아 두세요. 이 데모에서 레이아웃이 약간 원격으로 변경되고 있다는 것을 |
눈치 채 셨을 것입니다. 항상 아름답고 완벽하게 그려진 그래프를 |
구축 할 것이라고 기대할 수는 없습니다. |
때로는 이러한 것들이 약간 지저분하게 보일 수 있으며 몇 가지 옵션이 있습니다. 여기에는 세 |
가지 대체 레이아웃이 있으며 기본값은 |
여기입니다. 하지만 다른 하나를 클릭하면 |
어떻게 설명할지 모르겠습니다. 그리고 |
나는 확실히 이러한 |
레이아웃의 구현에 익숙하지 않습니다. 하지만 저는 항상 |
1 번 레이아웃이 좀 더 |
각진 것이고, 좀 더 |
직선적 인 모서리라는 것을 |
알게되었습니다. 그리고 |
레이아웃. |
두 번째, 음, 그냥 |
다르게 보입니다. 나는 그것을 |
설명하는 방법을 정말로 모른다. 세 가지 레이아웃으로 직접 실험하고 원하는 레이아웃으로 |
작업하십시오. |
균형을 맞추면, 제 말은, 기본 배치는 좌에서 우로 배치하려고 노력한다는 것입니다.
나무 스타일에 가까운 곳은 어디인가?
레이아웃 1과 2에 비해, 저는 별의 형성에 조금 더균형에 대해 생각합니다. 기본 레이아웃은 일종의 왼쪽에서 오른쪽으로 배치하려고합니다. 그것은 더 많은 나무 스타일입니다. 레이아웃 1과 2는 별 모양에 가깝다고 생각합니다. 나는 종종 개인적으로 |
레이아웃 1을 선호한다고 생각하지만 그것은 전적으로 당신에게 달려 있습니다. 이것이 서비스 그래프입니다. |
그리고 아마도 제가 대부분의 시간을 |
키 알리에서 보내는 그래프 일 것입니다. 그래프를 떠나기 전에 |
분명히 실제 생활에서 이러한 그래프 중 일부는 매우 크고 복잡해질 수 |
있음을 언급해야합니다. |
일반적으로 그렇게 나쁘지는 않지만 |
항상 |
네임 스페이스별로 특정 넷별로 필터링 할 수 있기 때문입니다. |
네임 스페이스에 항목이 너무 많으면 |
안됩니다. |
현실 세계에서는 많은 프로젝트가 수백 가지를 네임 스페이스에 넣습니다. 한 가지 유용한 팁은 |
특히 복잡한 그래프가있는 경우 언제든지 이러한 항목 중 하나를 선택할 수 있습니다. 여기에서 항목을 선택해도 상관 없습니다. 항목을 두 번 클릭하면보기 특정 개체에서 들어오는 경로와 나가는 경로와 함께 해당 항목 만 표시하도록 변경됩니다. 정리하는 데 정말 유용 할 수 있습니다. 여기에서 언제든지 전체 그래프로 돌아갈 수 있습니다. 이제 서비스 그래프로서 이러한 각 삼각형은 일반 Kubernetes |
그래서 그것은 물건들을 치우는 데 정말 유용할 수 있습니다.
그리고 언제든지 전체 그래프를 다시 볼 수 있습니다.
서비스 그래프로서, 이 삼각형들은 일반적인 쿠베르네테스서비스를 나타냅니다. 하지만 여기 |
드롭 다운에 몇 가지 |
대체 그래프가 있으며 그중 4 개가 있습니다. 이제 |
과정을 조금 더 |
진행할 때까지 모두 설명 할 수는 없습니다. 버전 |
dap 그래프에 대한 |
전체 설명을 |
제공하기 전에 트래픽 관리를 |
수행해야하지만 워크로드 그래프를 보여 드릴 수 있습니다. |
조금 더 |
큰 것을 즉시 알 수 있습니다. 처음에는 조금 더 복잡해 보입니다 |
. 다른 |
레이아웃을 시도해보고 좀 더 |
깔끔한 것이 있는지 살펴 보겠습니다. |
그게 가장 좋은 것 같아요
현재 우리가 가지고 있는 것은 우리가 여전히 서비스를 가지고 있는 관점입니다.
이것이 바로 삼각형들입니다.
그런데 여기 서비스 삼각형의 그래프에서 범례나 키를 볼 수 있는아마 그게 모두 최고라고 생각합니다. 이제 여기에있는 것은 여전히 서비스가있는 뷰입니다. 여기에 삼각형이 있습니다. 그런데 여기에 서비스의 삼각형 그래프에 대한 범례 또는 키를 표시하는 버튼이 있습니다. |
그러나이 그래프에는 워크로드라고 부르는 것을 나타내는 원도 있습니다. 여러분은 그것들이 단지 부분이라고 생각할 수 있습니다. 이 다이어그램은 내 특정 |
시스템에서는 그다지 유용하지 않을 |
것입니다. |
실제로 모든 서비스에는 그 뒤에 포드가 있기 때문입니다. |
이 문제에 대해 더 자세히 설명해야 합니다. 서비스를 위한 여러 개의 팟을 가지고 있어도 하나의 팟만 볼 수 있고 하나의 워크로드만 볼 수 있습니다.
그 이유는 작업 부하가 특정 서비스의 모든 포드를 대표하기 때문입니다. 이 그래프는이것으로 더 나아가면 언급해야하므로 서비스에 대해 여러 포드가있는 경우 여전히 하나의 포드 만 표시되고 하나의 워크로드 만 표시됩니다. 워크로드가 특정 서비스에 대한 모든 포드를 나타 내기 때문입니다.이 그래프는 그다지 유용하지 않습니다. 훨씬 더 복잡하기 때문입니다. 기본적으로 모든 |
항목에 기본적으로 두 개의 항목이 있고 |
서비스가 |
있고 그다음에는 원하는 경우 |
기본 |
포드 컬렉션. |
하지만이 그래프로 할 수있는 추가 작업 중 다른 것으로는 할 수없는 것이 하나 이상 있습니다. 가장자리 레이블을 |
위해 여기에있는이 버튼으로 이동하면 응답 시간을 |
설정하는 매우 유용한 옵션이 있습니다. 이제 응답 |
시간은 특정 요청 |
세트에 대한 평균 응답 시간을 알려줍니다. 예를 들어 위치 추적기가 요청을 |
처리 할 때 평균 응답 |
시간이 237 밀리 초임을 알 수 있습니다. |
이제이 레이블은 서비스와 기본 워크로드 또는 기본 |
부분 사이에서만 위치에 있음을 알 수 있습니다. 따라서 |
응답 시간을 선택한 경우에도 서비스 그래프로 전환하면 |
아무것도 표시되지 않습니다. 따라서 이러한 응답 시간을 |
보려면 워크로드 그래프에 있는지 확인해야합니다. 시계를 |
보면 앱 그래프에서 |
그 그래프 버전에 대해 |
이야기하는 것을 |
연기 할 것 |
같습니다. |
과정의 트래픽 관리 |
섹션까지는 그래프가 자체적으로 생성됩니다. |
지금은 최소한 이러한 그래프와 방금 본 워크로드 |
그래프간에 큰 |
차이가 보이지 |
않을 것입니다. |
따라서 다음에 할 일은이 그래프 중 하나에서 객체를 마우스 오른쪽 버튼으로 클릭 할 수 있습니다. |
그래서 저는 여기 서비스 그래프로 돌아 왔습니다. |
그리고 Fleetman 직원 서비스 중 하나를 마우스 오른쪽 버튼으로 클릭하면 팝업 메뉴가 |
표시되고 서비스 세부 정보로 이동할 수 있습니다. |
이 특정 |
서비스가 나타내는 모든 포드 |
목록을 매우 유용하게 보여줍니다. 또한 여기에는 요청 볼륨, 요청 기간, 시간 경과에 따른 요청 크기 |
및 응답 크기와 같은 항목을 보여주는 인바운드 메트릭 그래프도 있습니다. 이 |
모든 것이 매우 |
유용 할 수 있습니다. 이 |
측정 항목에 관심이 있으시다면 |
그라파 나를보고있을 가능성이 더 높을 것입니다. 잠시 후에 |
보여 드리겠습니다. 그래서 나는 |
거기에 너무 자세히 설명하지 않을 |
것입니다. 반대로 |
그래프로 |
돌아 가면 서비스 그래프 였고, 워크로드 그래프에 있으면 차이가 있습니다. 서비스를 마우스 오른쪽 버튼으로 클릭하면 |
트래픽 및 인바운드 |
메트릭에 대한 세부 정보를 볼 수 있습니다. 하지만 워크로드를 마우스 오른쪽 버튼으로 클릭하면 다른 |
옵션이 표시됩니다. 이 모든 |
옵션에 액세스 할 수 있습니다. 실제로 워크로드에 매우 유용하게 Show Details 링크를 통해 |
로그를 |
볼 수 있습니다. 이제 워크로드는 |
둘 이상의 부분이 될 수 있습니다. 따라서 특정 워크로드에 대한 모든 포드의 |
드롭 다운 목록이 여기에 |
있습니다. 이 |
시스템의 워크로드 당 하나의 포드 만 있습니다. |
그러나 물론 |
모든 포드에는 애플리케이션 컨테이너와 |
프록시라는 두 개의 컨테이너가 있습니다. 따라서 프록시에 대한 로그도 |
볼 수 있습니다. 물론 |
이제 명령 줄에서이 작업을 수행 할 수 있습니다. 이것에 대해 특별히 특별한 것은 없습니다. |
그러나 비상 상황을 디버깅 할 때 유용하다는 것을 몇 번 |
발견했습니다. 그리고 |
명령 줄로 전환하지 |
않고이 사용자 인터페이스에 머물 수 있습니다. 그래서 |
아마도 당신에게 큰 문제는 아닙니다. 하지만 |
거기에 있다는 사실을 알게되어 기쁩니다. |
로그는 나머지 |
kiali와 다르게 |
작동합니다. |
자체 기간이 있으며 수동으로 새로 |
고쳐야합니다. |
그래서 그것을 명심하십시오. 자, |
나는 당신이 따라가는 방법을 모르겠습니다.이 특정 부분이 얼마나 수다 스러운지 모르겠습니다. 그래서 |
당신은 아무것도 보지 못할 수도 있습니다. |
거기에 많은 예외가 있습니다. |
순전히 방금 다시 시작했기 때문에 |
버전을 다시 |
방문해야한다고 생각합니다. 트래픽 관리 시스템에서 |
수행 할 해당 그래프, 실제로 몇 가지 기타 |
사항이 있습니다. 여기 |
표시 버튼 아래에서 유용 할 수 있습니다. |
교통 애니메이션을 클릭 할 수 있습니다. 그러면 |
트래픽 흐름의 방향을 보여주는 큐 |
애니메이션이 제공됩니다. 서비스 그래프로 전환하면 |
작동하는 것을 |
볼 수 |
있습니다. |
똑같이, 이것은 |
화살표에서 방향을 볼 수 있기 |
때문에 약간의 눈 사탕 일 것입니다. 하지만 |
꽤 자주, 저는 이것을 |
켜고 싶습니다. 그것은 |
일이 |
일어나고있는 방향에 대해 더 강한 시각적 |
느낌을줍니다. |
라인 아래로 이동하는이 아이콘도 해당 연결을 |
따라가는 트래픽 양에 따라 변경됩니다. |
그리고 또한, 그것은 작은 원들을 더 크게 만들 것입니다, 그들 사이의 페이로드의 크기에 따라서 말이죠.
우리는 이 데모에 대한 느낌을 제대로 받지 못하고 있습니다. 하지만 여러분의 시스템이 정말 유용할지 모르지만, 틀림없이 많은 것들을 놓쳤을 것입니다.
하지만 저는 여러분이 이것을 다루는 데 꽤 직관적이기를 바랍니다.
그리고 만약 어떤 문제가 발생한다면, 여기 오른쪽 상단에 있는 아이콘을 따라 문서화할 수 있는 문서를 저는 그 문서가 아주 잘 쓰여져 있다는 것을 알았습니다.
마지막으로 한 가지만 더 말씀드리겠습니다.
그리고 이것은 우리가 충분한 감각을 얻기 위해 교통 관리 시스템을 정말로 필요로 하는 것입니다. 하지만 그것은 너무 커서 나중에 떠날 수 없습니다.
그래서 지금 하려고 합니다.
그리고 여러분은또한 그 사이에있는 페이로드의 크기에 따라 작은 원이 더 커집니다. 이 데모에서는 그런 느낌이 들지 않지만, 정말 유용 할 수있는 시스템에서는 몇 가지를 놓쳤을 것입니다. 하지만이 작업이 매우 직관적이라는 것을 알기를 바랍니다. 문제가 발생하면 문서 오른쪽 상단에있는 아이콘을 따라 여기에있는 문서를 찾을 수 있습니다. 문서가 훌륭하게 작성되었습니다. 마지막으로 다루고 싶은 것이 있습니다. 그리고 이것은 우리가 완전한 느낌을 얻기 위해 교통 관리 시스템을 수행하기 위해 정말로 필요한 것이지만, 나중에까지 떠나기에는 정말 너무 큽니다. 그래서 지금 할 것입니다. 그리고 그것은 당신이 그것을 발견하고 단지 시스템을 보는 것뿐만 아니라 무슨 일이 일어나고 있는지 관찰하는 |
것에 놀랄 것입니다. 이 시스템의 구성을 크게 변경할 수도 있습니다. 실제로 |
kiali를 통해 시스템 아키텍처를 수정할 수 있습니다. 음, |
그것은 큰 |
특징입니다. 그래서 |
다음 번에는 그렇게 할 테니까 잘 돌아오세요.
그리고 이전 비디오에서는 그냥 설정만 했습니다.
저는 여러분이 작업 시스템을 가동시키고 있거나 아니면 가만히 앉아서 이 비디오를 보는 것만으로도 행복하길 바랍니다.
마지막 영상 마지막에 제가 한마디 했는데 너무 의미 있는 것 같아요.
마지막 비디오를 놓쳤을 때를 대비해서 다시 한 번 말씀드리겠습니다. 쿠베르네츠 클러스터에 정확히 필요한 것이 무엇인지 말씀드리고 싶습니다. 앞으로 다가올 아이스티오 원격 측정의 혜택을 모두 얻기 위해서요? 글쎄요, 생각보다 간단할 수도 있어요저는 그 자체의 비디오가 확실히 필요하다고 생각합니다. 우리는 다음에 할 것입니다. 다시 오신 것을 환영합니다. 이전 비디오에서는 설정 만했습니다. 나는 당신이 작동하는 시스템을 가지고 있고, 아니면 그냥 앉아서이 비디오들을 보는 것에 만족하기를 바랍니다. 지난 영상 끝 부분에서 말씀 드렸는데 정말 의미가 있다고 생각합니다. 마지막 비디오의 끝을 놓친 경우를 대비하여 반복하겠습니다. Kubernetes 클러스터에 정확히 무엇을 배치해야하나요? Istio 원격 측정의 향후 이점을 모두 얻으려면? 글쎄, 당신이 생각하는 것보다 더 간단 할 수 있습니다. 우선, 모니터링하려는 모든 포드에서 해당 엔보이 사이드카 프록시를 |
실행해야합니다. |
자, 이제 확인하겠습니다. CTL에 모든 팟 안에 두 개의 용기가 있다는 것을 알 수 있도록 합니다.
그리고글쎄, 우리는 모든 포드 내부에 두 개의 컨테이너가 있다는 것을 알고 있습니다. 두 번째 컨테이너는 사이드카 프록시입니다. |
시스템의 모든 |
네임 스페이스를 사이드카 주입으로 라벨링 할 필요는 없습니다. 시스템의 어느 부분에 이러한 프록시가 배포되어 있는지는 사용자에게 달려 있습니다. 우리는이 전체를 모니터링 할 것입니다. 기본 네임 스페이스. 그래서 우리는 그 |
요구 사항을 달성했습니다. 원격 |
측정이 작동하기위한 또 다른 요구 사항은 제어 플레인을 가동하고 실행해야한다는 것입니다. 여기에서 설명하는 것은 매우 중요하며 특정 istio yaml 구성이 필요하지 않습니다. 사용자 가이드, 블로그 게시물 등을 |
읽으면 가상 서비스, 게이트웨이, 대상 규칙 |
및 기타 몇 가지 사항에 대한 상당히 복잡한 Istio 개념에 대해 즉시 |
설명 할 것입니다. 이제 제가 이것을 시작했을 때 |
제가 |
함께 일하던 다른 프로젝트는 |
원격 측정을 원했습니다. 사실 그들은 처음에는 |
분산 추적을 원했고 그 다음에는 kiali를 꽤 광범위하게 |
사용하기 시작했습니다. |
저에게 그들의 |
큰 질문은 |
Istio 게이트웨이를 설치하고 싶지 않다는 |
것이 었습니다. 이미 존재하는 아키텍처에 설치하기에는 상당히 복잡한 일이었을 것입니다. 그리고 그들은 이것이 |
그들이 원격 측정을 사용할 수 없다는 것을 의미한다고 생각했습니다 |
. 음, 저는이 주위에 큰 빨간 상자를 놓을 것입니다. 정말 영리한 Istio 구성이 필요하지 않다는 것을 강조하기 |
위해서입니다. 트래픽 관리를 시작할 |
때 가상 서비스와 게이트웨이가 필요합니다. |
그리고 우리는 코스의 해당 섹션에서 자세히 다룰 것입니다. 하지만 |
저는이 섹션에서 우리가 무엇을하면 좋을지 알고 있다고 말하기 위해 매우 신중했습니다. 기존 |
아키텍처로 특별히 |
영리한 작업을 |
할 필요가 없습니다. 바로 들어가서 사용자 |
인터페이스 사용을 시작할 수 있습니다. 이제 추적 작업을 |
수행하는 데 필요한 하나의 큰 요구 사항이 있습니다. |
그래서 우리는 몇 가지 비디오 |
시간에 다가오는 것에 대해 이야기하고 싶습니다. 추적의 모든 이점을 |
원한다면 응용 프로그램에 상당히 심각한 변경을해야 할 것 같습니다. |
하지만이 비디오는 |
키 알리에 관한 것입니다. |
그럼 시작합시다. 그래서 |
kiali는 무엇입니까? 저는 여러분 대부분이 |
우리가 kiali를 사용한 워밍업 섹션을 통과했을 것이라고 확신합니다. 키 알리의 가장 큰 장점 중 하나는 실제로 |
많은 학습이 필요하지 않다는 것입니다. 이제 |
포트 31, |
000에서 kiali를 사용할 수 있도록 |
설정했습니다. 그것은 |
실제로 표준이 아닙니다. |
kubectl을 수행하면 여기에 kiali 서비스가 |
있음을 확인하는 SVC dash n Istio 시스템이 있습니다. 그리고 |
방금 yaml 파일을 편집하여 노드 포트로 |
변경했습니다. |
그리고 무작위로 포트 31, |
000을 선택했습니다. 다시 |
하지만 이것은 매우 간단한 수술입니다.
그곳에 가는 다른 방법들이 있다.
하지만 그게 가장 쉽다는 걸 알아.
그리고 이 비디오에서 제가 말하는 어려움은 제가 생각하기에 상황이말하지만 Istio 비디오 설치를 수행하면 정확히 수행하는 방법을 보여 드리겠습니다. 그러나 그것은 매우 간단한 작업입니다. 거기에 도달하는 다른 방법이 있습니다. 하지만 그것이 가장 쉬운 방법이라는 것을 알았습니다. 이 비디오에서 저에게 어려운 점은 사용하기 어렵거나 복잡하거나 잘못 구현되었다고 생각할 때 |
보여주지 않는 모든 것을 |
보여줍니다. 하지만 |
저는 키 알리에게 정말 정직하고 키 알리가 환상적이라고 생각합니다. 완벽한 균형은 정말 믿을 수 |
없을만큼 강력했고, 문제를 진단하기가 매우 어려운 것을 찾는 데 도움이 될 수 있습니다. 나는 |
워밍업 세션에서 그것을 증명하려고 |
노력했습니다. |
하지만 동시에, 사용하기는 꽤 간단합니다. 비디오로 영상을 찍기가 좀 어렵죠. 아시다시피, 한 시간 동안만 가지고 놀 수도 있고, 직접 사용하는 법을 배울 수도 있기 때문입니다.
그래서 만약 내가 키알리가 얼마나 멋진지에 대해 너무 과장한다면, 나는 상관하지 않는다.
그것은 제가 가지고 있는 가장 가치 있는그러나 동시에 사용하기가 매우 간단합니다. 비디오를 찍는 것이 조금 어렵습니다. 왜냐하면 여러분이 알고 있기 때문입니다. 아마 한 시간 동안 가지고 놀고 사용 방법을 배울 수 있습니다. 너 자신. 그래서 내가 키 알리가 얼마나 멋진 지에 대해 너무나도 말했더라도 상관 없어요. 제가 가지고있는 가장 귀중한 도구 중 하나입니다. 따라서 전면 |
대시 보드에서 시작하여 시스템의 전반적인 상태에 대한 개요를 제공합니다. |
그리고 이것은 네임 스페이스별로 분할되므로 물론 여기에는 두 개의 네임 스페이스 만 있지만 시스템이 정상인지 한 눈에 쉽게 볼 수 있습니다. |
이 단계에서 |
건강에 좋지 않다면 당황하지 마십시오. 여기에 아주 빨리 오셨 기 때문에이 시스템을 방금 시작했습니다. 따라서 시스템이 워밍업되고 마이크로 서비스가 서로 통신하기 시작하는 동안 시작 단계에서 선택되는 일부 HTTP |
오류가있을 수 있습니다. |
이제 전체적으로 kiali의 중요한 측면은 매우 |
역동적이며 특정 스냅 샷에서 건강을 보여주는 것이 아닙니다. 오른쪽 |
상단이 너무 |
중요합니다. 이것은 |
이것이 마지막 |
1 분 동안의 |
상태를 보여주고 있으며 15 초마다 새로 고침된다는 것을 의미합니다. 예를 들어 |
이걸 |
바꾸면 지난 30 분으로 돌아갑니다. 예, 완벽합니다. |
그게 바로 내가 보고 싶었던 거야. 걱정스러워 보일지도 몰라.
경고가 들어오고내가보고 싶었던 바로 그게 걱정스러워 보일 수도 있습니다. 경고를 받고 있습니다. 이제 |
6 개가 애플리케이션이라고 부르는 것을 볼 수 있습니다. 실제로는 포드입니다. 6 개 포드 중 4 개는 일종의 건강이 좋지 않다는 것을 의미합니다. 그리고 내가 말했듯이, 그것은 단지 시작 기간에 있었던 것에 대해 전혀 걱정할 것이 없습니다. 30 분을 기다리면 모두 녹색으로 바뀝니다. 따라서이 기간 동안 설정 한 내용에서 약간 전술적 일 |
제가 말씀드린 것처럼, 그것은 전혀 걱정할 것이 없습니다. 단지 시작 시기에 있었던 일입니다.
30분만 기다리면 녹색이 됩니다.
그래서 이 시기에 대해 좀 전략적으로 설정하게 될것입니다. 예를 들어, |
내가 방금 거기에서 차량을 선택한 것처럼 시스템에 요청을 |
한 경우 문제가 발생했음을 알고 있습니다. 그리고 |
여기에있는 시간 프레임이 실제로 해당 이벤트를 캡처 할 수 있도록 절대적으로주의해야합니다. 마지막 |
순간으로 설정하면. |
음, 여기로 드릴 다운을 시작하면 오류가 해결되었음을 알 수 있습니다. 그러니 |
조심하세요. |
아마도 첫 번째 |
호출 포트가 그래프 여야한다는 것을 몇 번이나 알아 차 렸습니다. |
여기 그래프 링크를 클릭하면 여기에 아무것도 표시되지 |
않으면 여기에있는 네임 스페이스로 이동해야 할 수 있습니다. |
네임 스페이스를 선택하지 않은 경우 |
여기에이 경고가 표시되지만 |
네임 스페이스 선택기로 이동하여 보려는 |
네임 스페이스를 선택하라는 메시지가 표시됩니다. 그리고 |
얻을 수있는 기본 그래프는 버전 앱 그래프라고 생각합니다. 잠시 후에 |
그것에 대해 설명하겠습니다. 하지만 이해하기 쉬운 것은 아마도 |
여기의 서비스 |
그래프 일 것입니다. |
그리고 이것이 여러분에게 보여주는 것은 표준 Kubernetes yaml에있는 모든 서비스입니다. |
여긴 특별한 ISTIO가 없어
그리고 이러한 서비스 간에 발생한 트래픽을 기반으로 이들 서비스가 어떻게 연결되어 있는지 보여 줍니다.
몇 분 전에여기에는 특별한 Istio 관련 내용이 없습니다. 그리고 여기에서 볼 수있는 기간 동안 이러한 서비스간에 이동 한 트래픽을 기반으로 이들이 어떻게 서로 연결되어 있는지 보여줍니다. 내가 클릭했을 때 다시 클릭하지 않을 |
것입니다. 하지만 |
얼마 전에 여기이 차량 중 하나를 클릭했습니다. |
음, 다시 말씀 드릴 수 있습니다. 시스템의 내부 작동을 알 필요는 없습니다. 그러나 |
이것은이 서비스 인 Fleetman API |
게이트웨이의 호출에 의해 구현됩니다. |
그리고 바로 플리트맨 직원 서비스라고 불리는 이 서비스로 이어집니다.
1분도 더 전에 그랬어요.
그래서 이 선들이 회색으로 칠해지고 있는 것입니다.
영상에서 얼마나 잘 보이실지 모르겠습니다. 여기 이Fleetman 직원 서비스라고하는이 서비스로 바로 연결됩니다. 자, 저는 1 분 전에 그렇게했습니다. 이것이이 선이 회색으로 칠해진 이유입니다. 비디오에서 얼마나 잘 볼 수 있는지 모르겠습니다. 여기이 버튼으로 확대하거나 마우스 휠을 사용할 수 있습니다. |
여기이 선은 회색입니다. |
이는 마지막 |
순간에이 두 |
서비스간에 트래픽이 없었 음을 의미합니다. |
그것보다 조금 일찍 |
교통 체증이 있었지만. 이제 수행 할 작업은 향후 새로 |
고침으로, 결국 만료됩니다. 그 |
라인을 제거합니다. 그러니 조심하세요. 다시 |
말하지만, 지난 |
10 분 동안 돌아 가면 선이 녹색으로 표시됩니다. 지난 10 분 동안이 서비스와 해당 서비스간에 트래픽이 있었기 때문입니다. 이것은 유용합니다. This가 |
얼마나 역동적인지 알 수 있기 |
때문입니다. 마지막 순간으로 |
돌아 가면 해당 선이 회색으로 표시됩니다. 하지만 이제 시스템으로 |
전환하면 임의의 차량을 클릭 한 다음 바로 키 알리로 돌아갑니다. 이제 |
다음 |
새로 고침을 기다리고 있습니다. |
좋은 일은 기대하지 마, 거기서 새로워진 일이 있었어.
그걸 보시면 아시겠지만 사실 그 선은 여전히 회색입니다.
따라서 변경사항이 즉시 수집될 것으로 예상하지 마십시오. 원격 측정 데이터가 전파되는 데 시간이 걸립니다대단한 것을 기대하지 마십시오. 거기에 새로 고침이있었습니다. 그리고 당신은 그것을 알 수 있고 실제로 선은 여전히 회색입니다. 따라서 원격 분석 데이터가 전파되는 데 시간이 걸리므로 변경 사항이 즉시 적용될 것으로 기대하지 마십시오. 그래서 나는 완벽한 시간을 |
채우고 있습니다. 이것이 다음 업데이트 인 다음 15 초 업데이트입니다. 이제 |
줄이 |
초록색으로 채워져 실시간 교통이 있었다는 것을 알 수 있습니다. 그래서 시간이 좀 걸릴 것입니다.하지만 지금 |
비디오 편집기를 돌려서 1분간의 창문을 지나도록 하겠습니다.
네, 새로 고침이 415초 정도 지났지만 좀 더 기다리면 녹화를 중단하고 백그라운드에서 실행 중인 상태로 두면 두 서비스 간에 트래픽이 없으면 해당 회선이10 분 정도 이야기를 계속한다면 더 이상 해당 서비스와 해당 서비스간에 트래픽이 이동하지 않는다고 가정하면이 1 분 기간이 만료되면이 선이 회색으로 바뀝니다. 이 1 분 창을지나도록 빠른 비디오 편집기를 사용하겠습니다. 예, 약 415 초의 새로 고침이 회색으로 바뀝니다.하지만 조금 더 기다렸다가 지금 녹음을 중지하고 백그라운드에서 실행 상태로두면 결국 해당 라인이 두 서비스간에 트래픽이없는 경우 완전히 제거됩니다. 네, 확인할 수 있습니다. |
거기서 녹화를 중단하고 |
5 분 동안 기다렸습니다. 그리고 |
5 분이 지나면 |
kiali는 두 서비스 |
간의 트래픽이 |
현재 부실한 것으로 판단합니다. API 게이트웨이에서 직원 |
서비스로의 호출이 있음을 기억하십시오. 이제 |
다이어그램에서 완전히 |
제거되었습니다. |
따라서 kiali에 대해 |
주목하는 것이 매우 중요합니다. 그러면 시스템 아키텍처의 정적 |
인 그림이 표시되지 않습니다. 여기에서 지정한 창에서 트래픽을 보내고받는 시스템의 일부만 추가로 5 분 동안 표시합니다. 은혜. 그래서 당신이 이것을보고 생각한다면, 글쎄, 내 서비스가 사라 졌다고 생각한다면, 당신은 요청을 보내거나 창을 변경하여 시스템을 연습해야 할 수도 있습니다. 그럼 한번 보시죠. 지난 10 분 동안 돌아 가면 예, 이제 게이트웨이에서 직원 서비스까지의 전체 라인을 볼 수 있습니다. 마지막 1 분으로 돌아 가면 해당 라인이 |
그래서 만약 여러분이 이것을 보고 생각하신다면, "글쎄요, 제 서비스가 사라졌습니다. 그러면 여러분은 요청서를 보내거나 윈도우를 변경함으로써 시스템을 연습할 필요가 있을 것입니다.
자, 그럼 그것을 봅시다.
지난 10분 동안 돌아가면, 네, 이제 게이트에서 직원 서비스까지 전선이 보일 거예요.
마지막 1분으로 돌아가면, 그 줄은제자리에 있지 않습니다. 하지만 |
매우 쉽게 할 수 있습니다. 이제 다시 앱으로 |
전환하고 다음 새로 고침에서 API 게이트웨이에서 직원 서비스로 요청을 |
보내야하는 차량 중 하나를 |
클릭합니다. 한 번 새로 |
고침했습니다. 자, |
그것은 상황을 바꾸지 않았습니다. 다시 |
말하지만 시간이 |
걸립니다. 다음 |
새로 고침을 기다립니다. 새로 고침 할 때 여기에 새로 고침 아이콘이 |
표시됩니다. 흥미롭게도 |
그 새로 고침도 내가 요청한 이후 약 30 초 이내에 인식하지 못했습니다. 이제 |
조금 긴장합니다. 추가 새로 고침이 |
있습니다. 그리고 네, 실제로 그 데이터를 |
실제로 캡처했을 때 이미 그 선이 회색 선 |
세트로 돌아 갔는데 실제로 그 데이터가 그래프에 |
실제로 나타나기까지 1 분 조금 넘게 걸렸습니다. |
그러니 알아 두세요. 이 |
데모에서 레이아웃이 약간 원격으로 |
변경되고 있다는 것을 눈치 채 셨을 것입니다. 항상 아름답고 완벽하게 그려진 |
그래프를 구축 할 것이라고 기대할 수는 없습니다. 때로는 |
이러한 것들이 약간 |
지저분하게 보일 수 있으며 몇 가지 옵션이 있습니다. |
여기에는 세 가지 |
대체 레이아웃이 있으며 기본값은 여기입니다. 하지만 다른 |
하나를 클릭하면 |
어떻게 설명할지 모르겠습니다. 그리고 |
나는 확실히 이러한 레이아웃의 구현에 |
익숙하지 않습니다. 하지만 저는 항상 |
1 번 레이아웃이 좀 더 |
각진 것이고, |
좀 더 |
직선적 인 모서리라는 것을 |
알게되었습니다. |
그리고 레이아웃. |
두 번째, 음, 그냥 다르게 |
보입니다. 나는 그것을 |
설명하는 방법을 정말로 모른다. 세 |
가지 레이아웃으로 직접 실험하고 원하는 레이아웃으로 작업하십시오. |
균형에 대해 생각합니다. 기본 레이아웃은 일종의 왼쪽에서 오른쪽으로 |
배치하려고합니다. |
그것은 더 많은 나무 |
스타일입니다. 레이아웃 1과 2는 |
별 모양에 가깝다고 생각합니다. |
나는 종종 개인적으로 |
레이아웃 1을 선호한다고 생각하지만 |
그것은 전적으로 |
당신에게 달려 있습니다. 이것이 서비스 그래프입니다. |
그리고 아마도 제가 대부분의 시간을 |
키 알리에서 보내는 그래프 일 것입니다. 그래프를 떠나기 전에 |
분명히 |
실제 생활에서 |
이러한 그래프 중 일부는 매우 크고 복잡해질 수 |
있음을 언급해야합니다. 일반적으로 그렇게 나쁘지는 않지만 |
항상 |
네임 스페이스별로 특정 넷별로 필터링 할 수 있기 때문입니다. |
네임 스페이스에 항목이 너무 많으면 |
안됩니다. |
나는 현실세계에서 깨닫고 있지만, 많은 프로젝트들이 수백 가지 것들을 유명무실하게 채워넣고 있다.
한가지 유용한 팁은 만약 여러분이 특별히 복잡한 그래프를 가지고 있다면, 여러분은 항상 이 항목들 중 하나를 가지고 갈 수 있습니다. 저는 여기서 이 항목들이 어떤 것이든 상관 없이, 여러분이 어떤 항목을 두 번 클릭한다면, 그러면 뷰가 바뀌어서현실 세계에서는 많은 프로젝트가 수백 가지를 네임 스페이스에 넣습니다. 한 가지 유용한 팁은 특히 복잡한 그래프가있는 경우 언제든지 이러한 항목 중 하나를 선택할 수 있습니다. 여기에서 항목을 선택해도 상관 없습니다. 항목을 두 번 클릭하면보기 특정 개체에서 들어오는 경로와 나가는 |
경로와 함께 해당 항목 만 표시하도록 변경됩니다. 정리하는 데 정말 유용 할 |
수 있습니다. |
여기에서 언제든지 전체 그래프로 돌아갈 수 있습니다. 이제 서비스 |
그래프로서 이러한 각 삼각형은 일반 Kubernetes 서비스를 나타냅니다. 하지만 여기 |
드롭 다운에 몇 가지 대체 그래프가 있으며 그중 4 개가 있습니다. 이제 과정을 조금 더 진행할 때까지 모두 설명 할 수는 없습니다. 버전 dap 그래프에 대한 전체 설명을 제공하기 전에 트래픽 관리를 수행해야하지만 워크로드 그래프를 보여 드릴 수 있습니다. 조금 더 큰 것을 즉시 알 수 있습니다. |
처음에는 조금 더 복잡해 |
보입니다. 다른 레이아웃을 시도해보고 좀 더 깔끔한 |
것이 있는지 살펴 보겠습니다. 아마 그게 모두 최고라고 생각합니다. 이제 여기에있는 것은 여전히 서비스가있는 뷰입니다. 여기에 삼각형이 있습니다. 그런데 여기에 |
나는 그것이 아마도 가장 좋은 것이라고 생각한다.
자, 여기 보이는 것은 우리가 여전히 서비스를 가지고 있다는 것입니다.
여기 삼각형들이 있습니다.
참고로 여기엔서비스의 삼각형 그래프에 대한 |
범례 또는 키를 표시하는 버튼이 있습니다. |
그러나이 그래프에는 워크로드라고 부르는 것을 |
나타내는 원도 있습니다. 여러분은 그것들이 단지 부분이라고 생각할 수 있습니다. 이 |
다이어그램은 내 특정 시스템에서는 그다지 유용하지 않을 |
것입니다. |
실제로 모든 서비스에는 그 뒤에 포드가 있기 때문입니다. |
이 문제에 대해 더 자세히 설명해야 합니다. 서비스를 위한 여러 개의 팟을 가지고 있어도 하나의 팟만 볼 수 있고 하나의 워크로드만 볼 수 있습니다.
그 이유는 작업 부하가 특정 서비스의 모든 포드를 대표하기 때문입니다. 이 그래프는이것으로 더 나아가면 언급해야하므로 서비스에 대해 여러 포드가있는 경우 여전히 하나의 포드 만 표시되고 하나의 워크로드 만 표시됩니다. 워크로드가 특정 서비스에 대한 모든 포드를 나타 내기 때문입니다.이 그래프는 그다지 유용하지 않습니다. 훨씬 더 복잡하기 때문입니다. 기본적으로 모든 |
항목에 기본적으로 두 개의 항목이 있고 |
서비스가 |
있고 그다음에는 원하는 경우 |
기본 |
포드 컬렉션. |
하지만이 그래프로 할 수있는 추가 작업 중 다른 것으로는 할 수없는 것이 하나 이상 있습니다. 가장자리 레이블을 |
위해 여기에있는이 버튼으로 이동하면 응답 시간을 |
설정하는 매우 유용한 옵션이 있습니다. 이제 응답 |
시간은 특정 요청 |
세트에 대한 평균 응답 시간을 알려줍니다. 예를 들어 위치 추적기가 요청을 |
처리 할 때 평균 응답 |
시간이 237 밀리 초임을 알 수 있습니다. |
이제이 레이블은 서비스와 기본 워크로드 또는 기본 |
부분 사이에서만 위치에 있음을 알 수 있습니다. 따라서 |
응답 시간을 선택한 경우에도 서비스 그래프로 전환하면 |
아무것도 표시되지 않습니다. 따라서 이러한 응답 시간을 |
보려면 워크로드 그래프에 있는지 확인해야합니다. 시계를 |
보면 앱 그래프에서 |
그 그래프 버전에 대해 |
이야기하는 것을 |
연기 할 것 |
같습니다. |
과정의 트래픽 관리 |
섹션까지는 그래프가 자체적으로 생성됩니다. |
지금은 최소한 이러한 그래프와 방금 본 워크로드 |
그래프간에 큰 |
차이가 보이지 |
않을 것입니다. |
이 그래프에서 다음에 무엇을 잘해야 하는지, 어떤 물체든 마우스 오른쪽 단추로 클릭할 수 있습니다.
서비스 그래프에서 다시 찾아왔습니다.
플리트먼 직원 서비스를따라서 다음에 할 일은이 그래프 중 하나에서 객체를 마우스 오른쪽 버튼으로 클릭 할 수 있습니다. 그래서 저는 여기 서비스 그래프로 돌아 왔습니다. 그리고 Fleetman 직원 서비스 중 하나를 마우스 오른쪽 버튼으로 클릭하면 팝업 메뉴가 |
표시되고 서비스 세부 정보로 이동할 수 있습니다. |
이 특정 |
서비스가 나타내는 모든 포드 |
목록을 매우 유용하게 |
보여줍니다. |
또한 여기에는 요청 볼륨, 요청 기간, 시간 경과에 따른 요청 크기 |
및 응답 크기와 같은 항목을 보여주는 인바운드 메트릭 그래프도 있습니다. 이 |
모든 것이 매우 |
유용 할 수 있습니다. 이 |
측정 항목에 관심이 있으시다면 |
그라파 나를보고있을 가능성이 더 높을 것입니다. 잠시 후에 |
보여 드리겠습니다. 그래서 나는 |
거기에 너무 자세히 설명하지 않을 |
것입니다. 반대로 |
그래프로 돌아 가면 서비스 그래프 였고, 워크로드 |
그래프에 있으면 차이가 있습니다. 서비스를 마우스 오른쪽 버튼으로 클릭하면 |
트래픽 및 인바운드 |
메트릭에 대한 세부 정보를 볼 수 있습니다. |
하지만 워크로드를 마우스 오른쪽 버튼으로 클릭하면 다른 옵션이 |
표시됩니다. |
이 모든 |
옵션에 액세스 할 수 있습니다. 실제로 |
워크로드에 매우 유용하게 Show Details 링크를 통해 로그를 |
볼 수 있습니다. 이제 |
워크로드는 둘 이상의 부분이 될 수 |
있습니다. 따라서 특정 워크로드에 대한 모든 포드의 |
드롭 다운 목록이 여기에 있습니다. 이 |
시스템의 워크로드 당 하나의 포드 만 있습니다. |
그러나 물론 |
모든 포드에는 애플리케이션 컨테이너와 프록시라는 두 개의 |
컨테이너가 있습니다. |
따라서 프록시에 대한 로그도 볼 수 있습니다. 물론 |
이제 명령 줄에서이 작업을 수행 할 수 있습니다. 이것에 대해 특별히 특별한 것은 없습니다. |
그러나 비상 상황을 |
디버깅 할 때 유용하다는 것을 |
몇 번 발견했습니다. 그리고 |
명령 줄로 전환하지 않고이 사용자 인터페이스에 머물 수 |
있습니다. 그래서 |
아마도 당신에게 큰 문제는 아닙니다. 하지만 |
거기에 있다는 |
사실을 알게되어 기쁩니다. 로그는 |
나머지 |
kiali와 다르게 작동합니다. 자체 기간이 |
있으며 수동으로 새로 |
고쳐야합니다. |
그래서 그것을 명심하십시오. 자, |
나는 당신이 따라가는 방법을 모르겠습니다.이 특정 부분이 얼마나 수다 스러운지 모르겠습니다. 그래서 당신은 아무것도 |
보지 못할 수도 |
있습니다. |
거기에 많은 |
예외가 있습니다. |
순전히 방금 다시 시작했기 때문에 |
버전을 다시 방문해야한다고 생각합니다. 트래픽 관리 시스템에서 |
수행 할 해당 그래프, 실제로 몇 가지 기타 사항이 있습니다. 여기 표시 버튼 아래에서 유용 할 수 있습니다. 교통 애니메이션을 |
클릭 할 수 있습니다. 그러면 |
트래픽 흐름의 방향을 보여주는 큐 |
애니메이션이 제공됩니다. 서비스 그래프로 |
전환하면 작동하는 것을 |
볼 수 있습니다. |
똑같이, 이것은 |
화살표에서 방향을 볼 수 있기 |
때문에 약간의 눈 사탕 일 것입니다. 하지만 |
꽤 자주, 저는 이것을 |
켜고 싶습니다. 그것은 일이 일어나고있는 방향에 대해 더 강한 시각적 |
느낌을줍니다. |
라인 아래로 이동하는이 아이콘도 해당 연결을 |
따라가는 트래픽 양에 따라 변경됩니다. 또한 |
그 사이에있는 페이로드의 크기에 따라 작은 |
원이 더 |
커집니다. 이 데모에서는 그런 |
느낌이 들지 않지만, 정말 유용 할 수있는 시스템에서는 몇 가지를 |
놓쳤을 것입니다. |
하지만이 작업이 매우 직관적이라는 것을 알기를 바랍니다. |
문제가 발생하면 문서 오른쪽 상단에있는 아이콘을 따라 여기에있는 문서를 |
찾을 수 있습니다. |
문서가 훌륭하게 작성되었습니다. 마지막으로 |
다루고 싶은 것이 있습니다. 그리고 이것은 우리가 완전한 느낌을 얻기 위해 교통 관리 시스템을 |
수행하기 위해 정말로 필요한 것이지만, 나중에까지 떠나기에는 정말 너무 큽니다. 그래서 지금 |
할 것입니다. 그리고 그것은 |
당신이 그것을 발견하고 단지 시스템을 보는 것뿐만 아니라 무슨 일이 일어나고 있는지 관찰하는 |
것에 놀랄 것입니다. |
이 시스템의 구성을 크게 변경할 수도 있습니다. 실제로 |
kiali를 통해 시스템 아키텍처를 수정할 수 있습니다. 음, 그것은 큰 특징입니다. 그래서 |
저는 그 자체의 비디오가 확실히 필요하다고 생각합니다. 다음에 |
할게요 |