You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Current »



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

돌아온 걸 환영해

그리고 이전 비디오에서는 그냥 설정만 했습니다.

저는 여러분이 작업 시스템을 가동시키고 있거나 아니면 가만히 앉아서 이 비디오를 보는 것만으로도 행복하길 바랍니다.

마지막 영상 마지막에 제가 한마디 했는데 너무 의미 있는 것 같아요.

마지막 비디오를 놓쳤을 때를 대비해서 다시 한 번 말씀드리겠습니다. 쿠베르네츠 클러스터에 정확히 필요한 것이 무엇인지 말씀드리고 싶습니다. 앞으로 다가올 아이스티오 원격 측정의 혜택을 모두 얻기 위해서요? 글쎄요, 생각보다 간단할 수도 있어요.

우선, 모니터링하려는 모든 포드에서 사이드카 프록시를 실행해야 합니다.

자, 이제 확인하겠습니다. CTL에 모든 팟 안에 두 개의 용기가 있다는 것을 알 수 있도록 합니다.

그리고 두 번째 컨테이너는 사이드카 프록시입니다.

기억하십시오. 시스템의 모든 네임스페이스에 사이드카 주입 라벨을 부착할 필요는 없습니다. 이러한 프록시를 배포한 시스템의 어떤 부분에 기본 네임스페이스 전체를 모니터링할지는 사용자에게 달려 있습니다.

그래서 우리는 그 요구사항을 달성했습니다.

또 하나 요구 사항 원격 측정 작업을 가질 것이고, 달리기, 나는 여기서 뭐고 있다는 건 제어 비행기가 필요하니, 그건 정말 너무, 우리는 어떤 특정 istio yaml이 필요하지 않아 중요하다고 생각한다.배열

사용자 가이드, 블로그 게시물 등을 읽어보면 가상 서비스, 게이트웨이, 대상 규칙 등 상당히 복잡한 Istio 개념에 대해 즉시 알 수 있습니다.

제가 이것을 시작했을 때, 제가 하고 있던 다른 프로젝트는 단지 원격측정만을 원했습니다. 그들은 처음에는 분산추적을 하고 싶어했습니다. 그리고 나서 꽤 광범위하게 키알리를 사용하기 시작했습니다.

그리고 그들의 가장 큰 질문은, 음, 우리는 정말로 이스티오 게이트웨이를 설치하고 싶지 않다는 것이었습니다. 이미 존재하는 아키텍처에 설치하기에는 상당히 복잡한 일이었을 것입니다.

그리고 그들은 이것이 원격측정법을 사용할 수 없다는 것을 의미한다고 생각했습니다. 음, 저는 단지 우리가 어떠한 영리한 Istio 구성도 필요하지 않다는 것을 강조하기 위해 이 부분에 커다란 빨간 상자를 둘 것입니다.

트래픽 관리를 시작할 때는 가상 서비스와 게이트웨이가 필요합니다.

그 부분에 대해서는 자세히 다루도록 하겠습니다.

하지만 저는 이 부분에서 꽤 신중했습니다. 단지 여러분이 우리가 가야 할 좋은 점을 알고 있다고 말하려고요.

기존 아키텍처에서 특별히 현명한 작업을 수행할 필요가 없습니다. 바로 들어가서 사용자 인터페이스를 사용할 수 있습니다.

이제 추적 작업을 수행해야 하는 중요한 요구사항이 하나 있습니다.

이제 몇 가지 비디오 시간이 다가오고 있는 이 점에 대해 말씀드리고자 합니다. 추적의 모든 이점을 원하신다면 애플리케이션을 상당히 심각하게 변경해야 할 것 같습니다.

하지만 이 비디오는 키알리에 관한 것입니다.

자, 이제 시작해보죠.

그래서 키알리가 뭔지는 여러분 대부분이 키알리를 사용하던 워밍업 코너를 거치셨을 겁니다.

키알리의 좋은 점 중 하나는 사실 많은 학습이 필요하지 않다는 것입니다.

이제 키알리가 31,000번 항구에서 이용할 수 있도록 준비했습니다.

그것은 사실 표준이 아닙니다.

만약 내가 큐빅틀을 한다면 여기에 kiali 서비스가 있다는 것을 확인할 수 있는 SVC 대쉬 아이스티오 시스템을 얻을 것이다.

그리고 Yaml 파일을 노드 포트로 변경하기 위해 편집했습니다.

저는 31,000번 항만을 무작위로 선택했습니다.

다시 한 번, Istio 비디오를 설치하면, 제가 정확히 어떻게 하는지 보여드리겠습니다.

하지만 이것은 매우 간단한 수술입니다.

그곳에 가는 다른 방법들이 있다.

하지만 그게 가장 쉽다는 걸 알아.

그리고 이 비디오에서 제가 말하는 어려움은 제가 생각하기에 상황이 어렵거나 복잡하거나 잘못 구현되었다고 생각할 때 제가 보여주지 않는 모든 것을 보여드리고 있다는 것입니다.

하지만 나는 키알리에게 정말 솔직하고 키알리가 환상적이라고 말할 수 있어.

완벽한 균형은 정말 믿을 수 없을 정도로 강력합니다. 그것은 여러분이 문제를 진단하는 것을 매우 어렵게 만들 수 있습니다.

나는 준비운동 시간에 그것을 증명하려고 노력했다.

하지만 동시에, 사용하기는 꽤 간단합니다. 비디오로 영상을 찍기가 좀 어렵죠. 아시다시피, 한 시간 동안만 가지고 놀 수도 있고, 직접 사용하는 법을 배울 수도 있기 때문입니다.

그래서 만약 내가 키알리가 얼마나 멋진지에 대해 너무 과장한다면, 나는 상관하지 않는다.

그것은 제가 가지고 있는 가장 가치 있는 도구 중 하나입니다.

전면 대시보드에서 시작하여 시스템의 전반적인 상태에 대한 개요를 제공합니다.

네임스페이스별로 분할되므로 여기에 두 개의 네임스페이스만 있습니다. 하지만 시스템이 정상이면 한눈에 쉽게 확인할 수 있습니다.

자, 만약 여러분이 이 단계에서 건강하지 않다고 생각하신다면, 당황하지 마세요. 그것은 여러분이 아주 빨리 여기 와서 우리가 이 시스템을 막 시작했다는 사실일 수도 있습니다.

시스템이 워밍업되고 마이크로서비스가 서로 말을 걸기 시작하는 동안 시작 단계에서 HTTP 오류가 발생했을 수 있습니다.


그래서 이 선들이 회색으로 칠해지고 있는 것입니다.

영상에서 얼마나 잘 보이실지 모르겠습니다. 여기 이 버튼으로 확대하거나 마우스 휠을 사용할 수 있습니다.

여기 이 줄은 회색입니다.

즉, 마지막 순간에 이 두 서비스 사이에 트래픽이 없다는 뜻입니다.

그보다 조금 일찍 차가 막히긴 했지만요.

이제 향후 새로 고침이 이루어지며, 결국 만료됩니다.

그 선을 뺄 거예요.

그러니 조심하세요.

다시 말씀드리지만, 지난 10분 동안 이 서비스와 저 서비스 사이에 교통량이 있었기 때문에, 지금 이 줄이 녹색으로 되어 있는 것을 보실 수 있을까요?

이것이 얼마나 역동적인지 알 수 있기 때문에 이것이 유용합니다.

마지막 순간으로 돌아가면 회색으로 돼 있어

하지만 이제 시스템으로 바꾸면, 저는 그냥 임의의 차량을 클릭해서 키알리로 돌아갈 것입니다.

이제 저는 다음 번 갱신을 기다리고 있습니다.

좋은 일은 기대하지 마, 거기서 새로워진 일이 있었어.

그걸 보시면 아시겠지만 사실 그 선은 여전히 회색입니다.

따라서 변경사항이 즉시 수집될 것으로 예상하지 마십시오. 원격 측정 데이터가 전파되는 데 시간이 걸립니다.

그래서 나는 완벽한 시간을 위해 충만하고 있다.

다음 15초 업데이트입니다. 이제 녹색 줄이 채워져 라이브 트래픽이 있었으므로 시간이 좀 걸릴 것입니다. 하지만 지금 10분 정도 대화를 계속하고 다른 작업을 수행하지 않으면 해당 서비스와 서비스 간에 트래픽이 더 이상 발생하지 않을 경우 이 줄은 회색으로 바뀝니다.이 1분 창은 만료되었습니다.

비디오 편집기를 돌려서 1분간의 창문을 지나도록 하겠습니다.

네, 새로 고침이 415초 정도 지났지만 좀 더 기다리면 녹화를 중단하고 백그라운드에서 실행 중인 상태로 두면 두 서비스 간에 트래픽이 없으면 해당 회선이 완전히 제거됩니다.

네, 확인할 수 있습니다. 녹음을 중단하고 5분 동안 기다렸습니다.

그리고 5분이 지나면, 키알리는 두 서비스 사이의 트래픽이 이제 오래된 것으로 판단합니다.

API 게이트웨이에서 직원 서비스로 전화가 왔었다는 사실을 기억하십시오.

이제 다이어그램에서 완전히 제거되었습니다.

키알리에 대해 주목하는 것은 매우 중요합니다. 그러면 시스템 아키텍처의 정적 그림을 보여 주는 것이 아니라, 여기에 지정한 창에서 트래픽을 보내고 받는 시스템의 일부만 보여 줍니다. 추가로 5분 정도 유예됩니다.

그래서 만약 여러분이 이것을 보고 제 서비스가 사라졌다고 생각한다면, 여러분은 요청을 보내거나 창을 바꾸면서 시스템을 연습해야 할 수도 있습니다.

자, 그럼, 그것을 봅시다.

지난 10분 동안 돌아가보면 알 것 같아, 그래, 이제 직원용 복도에서 직원용 복도로 가는 전선이 보이네.

마지막 1분으로 돌아가면, 그 선은 제 위치에 있지 않습니다.

하지만 매우 쉽게 할 수 있습니다. 다시 앱으로 전환하고, 다음 번 새로 고침 시 API 게이트웨이에서 직원 서비스로 요청을 보냈어야 하는 차량 중 하나를 클릭하겠습니다.

한 가지 새로 고침이 있었습니다.

자, 그렇다고 해서 달라지진 않았어요.

다시 말하지만, 시간이 좀 걸립니다.

다음 번 새로 고침을 기다리자.

새로 고침할 때 새로 고침 아이콘이 나타납니다.

흥미롭게도, 제가 요청을 한 이후로 약 30초 안에 그 리프레쉬도 받아들여지지 않았습니다.

지금 약간 긴장하고 있어요.

새로 고침이 하나 더 있습니다.

네, 실제로 데이터를 캡처했을 때 이미 이 선은 회색 선으로 돌아갔습니다. 이 데이터가 그래프에 나타나기까지 1분 조금 넘게 걸렸습니다.

그러니까 잘 알아두세요.

이러한 데모에서 레이아웃이 약간 원격으로 변경되고 있다는 것을 알 수 있을 것입니다. 항상 아름답고 완벽하게 그려진 그래프를 만들 것이라고 기대할 수는 없습니다.

가끔 이런 것들이 좀 지저분해 보일 수도 있습니다. 몇 가지 선택사항이 있습니다.

여기에는 세 개의 대체 레이아웃이 있으며 기본값은 여기에 있는 레이아웃입니다.

하지만 다른 하나를 클릭하면, 이것들을 어떻게 설명해야 할지 잘 모르겠어요.

그리고 저는 이러한 배치의 구현에 대해 잘 알지 못합니다.

하지만 저는 항상 레이아웃 1번이 좀 더 각도가 있고, 좀 더 직선적인 것을 발견합니다.

그리고 배치도.


2번, 음, 그냥 달라보여요.

나는 그것을 어떻게 설명해야 할지 잘 모르겠다.

세 가지 레이아웃으로 직접 실험하고 원하는 레이아웃으로 작업하세요.

균형을 맞추면, 제 말은, 기본 배치는 좌에서 우로 배치하려고 노력한다는 것입니다.

나무 스타일에 가까운 곳은 어디인가?

레이아웃 1과 2에 비해, 저는 별의 형성에 조금 더 가깝다고 생각합니다.

종종 개인적으로 배치하는 것을 선호하지만, 그건 전적으로 당신에게 달려 있습니다.

이것이 서비스 그래프입니다.

아마 제가 대부분의 시간을 키알리에서 보내는 그래프일 겁니다.

그래프를 떠나기 전에, 분명히, 현실에서, 이 그래프들 중 일부는 매우 크고 복잡해질 수 있습니다.

보통 그렇게 나쁘지는 않지만, 이름공간으로 항상 특정 네트를 기준으로 필터링할 수 있기 때문입니다.

네임스페이스에 항목이 너무 많으면 안 됩니다.

비록 현실세계에서 깨달았지만, 많은 프로젝트들이 명사공간에 수백가지를 쑤셔넣고 있다.

한 가지 유용한 팁은 여러분이 특별히 복잡한 그래프를 가지고 있다면, 이 항목들 중 어느 것이든 언제든지 가져갈 수 있다는 것입니다. 저는 어떤 항목이든 상관 없습니다. 어떤 항목이든 두 번 클릭하면 특정 객체에서 들어오는 경로와 나가는 경로를 함께 표시하도록 뷰가 변경됩니다.

그래서 그것은 물건들을 치우는 데 정말 유용할 수 있습니다.

그리고 언제든지 전체 그래프를 다시 볼 수 있습니다.

서비스 그래프로서, 이 삼각형들은 일반적인 쿠베르네테스 서비스를 나타냅니다.

하지만 여기 드롭다운에 몇 가지 다른 그래프가 있습니다. 네 가지 그래프가 있습니다.

이제 이 과정을 조금 더 진행하기 전까지는 이 모든 것을 설명할 수 없습니다. 버전 댑 그래프에 대한 자세한 설명을 드리기 전에 트래픽 관리를 좀 해야 합니다. 하지만 작업량 그래프를 보여드릴 수 있습니다. 그러면 조금 더 크다는 것을 알게 될 것입니다.

첫눈에 좀 더 복잡해 보이는데요.

다른 배치를 시도해보고 좀 더 깨끗한 것을 얻을 수 있는지 봅시다.

그게 가장 좋은 것 같아요

현재 우리가 가지고 있는 것은 우리가 여전히 서비스를 가지고 있는 관점입니다.

이것이 바로 삼각형들입니다.

그런데 여기 서비스 삼각형의 그래프에서 범례나 키를 볼 수 있는 버튼이 있습니다.

하지만 이 그래프에는 작업 부하를 나타내는 동그라미가 있습니다. 이러한 동그라미가 바로 부품이라고 할 수 있습니다.

이 다이어그램은 특정 시스템에서 유용하지 않을 수 있습니다. 모든 서비스에는 팟이 있기 때문입니다.

이 문제에 대해 더 자세히 설명해야 합니다. 서비스를 위한 여러 개의 팟을 가지고 있어도 하나의 팟만 볼 수 있고 하나의 워크로드만 볼 수 있습니다.

그 이유는 작업 부하가 특정 서비스의 모든 포드를 대표하기 때문입니다. 이 그래프는 훨씬 더 복잡하기 때문입니다. 모든 것에 대해 기본적으로 두 개의 항목이 있고, 서비스가 있으며, 그리고 원하는 경우 포드의 기본 컬렉션이기 때문입니다.

하지만 이 그래프에서 할 수 있는 최소한 다른 그래프로는 할 수 없는 것이 하나 더 있습니다.

가장자리 레이블을 보려면 이 단추를 클릭하십시오. 응답 시간을 설정할 수 있는 매우 유용한 옵션이 있습니다.

이제 응답 시간이 특정 요청 집합에 대한 평균 응답 시간을 알려줍니다.

예를 들어 위치 추적기가 요청을 처리할 때 평균 응답 시간은 237밀리초입니다.

이제 이 라벨은 서비스와 기본 워크로드 또는 기본 부품 사이에서만 사용됩니다.

따라서 이러한 이유로 서비스 그래프로 전환하면 응답 시간이 선택된 상태에서도 아무것도 표시되지 않습니다.

따라서 이러한 응답 시간을 확인하려면 작업량 그래프에서 작업을 수행해야 합니다.

시계를 보니, 앱 그래프에서 그래프가 나온 버전에 대해 말하는 것을 연기할 것 같아요.

코스의 트래픽 관리 섹션이 그래프가 실제로 나타나는 지점까지입니다.

적어도 지금은 이러한 그래프와 방금 본 워크로드 그래프 간에 큰 차이를 보이지 않습니다.

이 그래프에서 다음에 무엇을 잘해야 하는지, 어떤 물체든 마우스 오른쪽 단추로 클릭할 수 있습니다.

서비스 그래프에서 다시 찾아왔습니다.

플리트먼 직원 서비스를 마우스 오른쪽 버튼으로 클릭하면 팝업 메뉴가 나타납니다. 서비스에 대한 세부 정보를 볼 수 있습니다.

이렇게 하면 이 특정 서비스로 대표되는 모든 포드 목록이 매우 유용하게 표시됩니다.

여기에 인바운드 메트릭 그래프도 있습니다. 요청 볼륨, 요청 기간, 시간 경과에 따른 요청 크기, 응답 크기 등을 보여 줍니다.

그래서 그 모든 것이 매우 유용할 수 있습니다.

이 메트릭스에 관심이 있으시다면 아마 그라파나를 보시게 될 것입니다. 잠시 후에 보여드리겠습니다.

그래서 나는 거기서 너무 자세히 설명하지 않을 거야.


반대로, 그래프로 돌아가면 서비스 그래프가 됩니다. 작업량 그래프 위에 있으면 차이가 있습니다.

서비스를 마우스 오른쪽 버튼으로 클릭하면 세부 트래픽 및 인바운드 메트릭을 볼 수 있습니다.

하지만 워크로드를 마우스 오른쪽 버튼으로 클릭하면 다른 옵션을 사용할 수 있습니다.

이 모든 옵션에도 액세스할 수 있습니다.

실제로 Show Details 링크를 통해 워크로드에 매우 유용하게 로그를 확인할 수 있습니다.

이제 워크로드는 하나 이상의 부분이 될 수 있습니다.

특정 워크로드에 대한 모든 포드의 드롭다운 목록이 여기에 표시됩니다.

이 시스템에는 워크로드당 하나의 포드만 있습니다.

하지만 기억하세요, 물론, 우리의 모든 포드에는 애플리케이션 컨테이너와 프록시가 들어 있습니다.

따라서 프록시에 대한 로그도 확인할 수 있습니다.

물론 명령행에서 이 작업을 수행할 수 있습니다.

이것에 대해 특별히 특별한 것은 없습니다.

하지만 긴급 상황을 디버깅할 때 유용하다는 것을 몇 번 알게 되었습니다.

그리고 명령줄로 전환하지 않고 이 사용자 인터페이스를 유지할 수 있습니다.

그래서 당신에게 별일 없을지도 몰라요.

하지만 그것이 거기 있다는 것을 알게 되어 정말 기쁘다.

로그가 나머지 키알리와는 다르게 작동한다는 점에 유의하십시오.

기간은 고유하며 수동으로 새로 고쳐야 합니다.

명심하세요.

자, 여러분이 따라가고 있다면 저는 이 부분이 얼마나 수다스러운지 모릅니다.

그래서 여러분은 아무것도 볼 수 없을지도 모릅니다.

여기에는 많은 예외가 있습니다. 제가 방금 다시 시작했기 때문에 아직 그래프 버전을 다시 살펴봐야 합니다. 트래픽 관리 시스템에서 수행할 작업 그래프는 몇 가지 기타 사항만 있습니다. 여기 디스플레이 버튼에서 유용하게 사용할 수 있습니다. 트래픽 애니메이션을 클릭하면 됩니다.

그러면 교통 흐름의 방향을 보여주는 큐 애니메이션을 볼 수 있을 겁니다. 서비스 그래프로 전환하면 거기서도 작동하는 것을 보실 수 있을 겁니다.

마찬가지로, 이것은 약간의 아이 캔디일 수도 있습니다. 왜냐하면 화살표로 방향을 볼 수 있기 때문입니다.

하지만 종종, 저는 이것을 착용하고 싶습니다. 그것은 저에게 일이 일어나는 방향에 대해 더 강한 시각적 느낌을 줍니다.

라인을 따라 이동하는 이 아이콘도 해당 연결을 따라 이동하는 트래픽 양에 따라 변경됩니다.

그리고 또한, 그것은 작은 원들을 더 크게 만들 것입니다, 그들 사이의 페이로드의 크기에 따라서 말이죠.

우리는 이 데모에 대한 느낌을 제대로 받지 못하고 있습니다. 하지만 여러분의 시스템이 정말 유용할지 모르지만, 틀림없이 많은 것들을 놓쳤을 것입니다.

하지만 저는 여러분이 이것을 다루는 데 꽤 직관적이기를 바랍니다.

그리고 만약 어떤 문제가 발생한다면, 여기 오른쪽 상단에 있는 아이콘을 따라 문서화할 수 있는 문서를 저는 그 문서가 아주 잘 쓰여져 있다는 것을 알았습니다.

마지막으로 한 가지만 더 말씀드리겠습니다.

그리고 이것은 우리가 충분한 감각을 얻기 위해 교통 관리 시스템을 정말로 필요로 하는 것입니다. 하지만 그것은 너무 커서 나중에 떠날 수 없습니다.

그래서 지금 하려고 합니다.

그리고 여러분은 시스템을 보는 것뿐만 아니라 무슨 일이 일어나고 있는지 관찰하는 것뿐만 아니라 그것을 발견하는 것에 놀랄지도 모릅니다.

이 시스템의 구성을 크게 변경할 수도 있습니다.

실제로 Kali를 통해 시스템 아키텍처를 수정할 수 있습니다.

음, 그건 큰 특징이에요.


그래서 나는 그것이 확실히 그것의 비디오를 필요로 한다고 생각한다.

다음 번에는 그렇게 할 테니까 잘 돌아오세요.

그리고 이전 비디오에서는 그냥 설정만 했습니다.

저는 여러분이 작업 시스템을 가동시키고 있거나 아니면 가만히 앉아서 이 비디오를 보는 것만으로도 행복하길 바랍니다.

마지막 영상 마지막에 제가 한마디 했는데 너무 의미 있는 것 같아요.

마지막 비디오를 놓쳤을 때를 대비해서 다시 한 번 말씀드리겠습니다. 쿠베르네츠 클러스터에 정확히 필요한 것이 무엇인지 말씀드리고 싶습니다. 앞으로 다가올 아이스티오 원격 측정의 혜택을 모두 얻기 위해서요? 글쎄요, 생각보다 간단할 수도 있어요.

우선, 모니터링하려는 모든 포드에서 사이드카 프록시를 실행해야 합니다.

자, 이제 확인하겠습니다. CTL에 모든 팟 안에 두 개의 용기가 있다는 것을 알 수 있도록 합니다.

그리고 두 번째 컨테이너는 사이드카 프록시입니다.

기억하십시오. 시스템의 모든 네임스페이스에 사이드카 주입 라벨을 부착할 필요는 없습니다. 이러한 프록시를 배포한 시스템의 어떤 부분에 기본 네임스페이스 전체를 모니터링할지는 사용자에게 달려 있습니다.

그래서 우리는 그 요구사항을 달성했습니다.

원격 측정 시스템이 작동하기 위한 또 다른 요구사항은 제어기를 가동해야 한다는 것입니다. 제가 여기서 유도하는 것은 매우 중요하다고 생각합니다. 우리는 특정한 특정 구성도 필요하지 않습니다.

사용자 가이드, 블로그 게시물 등을 읽어보면 가상 서비스, 게이트웨이, 대상 규칙 등 상당히 복잡한 Istio 개념에 대해 즉시 알 수 있습니다.

제가 이것을 시작했을 때, 제가 하고 있던 다른 프로젝트는 단지 원격측정만을 원했습니다. 그들은 처음에는 분산추적을 하고 싶어했습니다. 그리고 나서 꽤 광범위하게 키알리를 사용하기 시작했습니다.

그리고 그들의 가장 큰 질문은, 음, 우리는 정말로 이스티오 게이트웨이를 설치하고 싶지 않다는 것이었습니다. 이미 존재하는 아키텍처에 설치하기에는 상당히 복잡한 일이었을 것입니다.

그리고 그들은 이것이 원격측정법을 사용할 수 없다는 것을 의미한다고 생각했습니다. 음, 저는 단지 우리가 어떠한 영리한 Istio 구성도 필요하지 않다는 것을 강조하기 위해 이 부분에 커다란 빨간 상자를 둘 것입니다.

트래픽 관리를 시작할 때는 가상 서비스와 게이트웨이가 필요합니다.

그 부분에 대해서는 자세히 다루도록 하겠습니다.

하지만 저는 이 부분에서 꽤 신중했습니다. 단지 여러분이 우리가 가야 할 좋은 점을 알고 있다고 말하려고요.

기존 아키텍처에서 특별히 현명한 작업을 수행할 필요가 없습니다. 바로 들어가서 사용자 인터페이스를 사용할 수 있습니다.

이제 추적 작업을 수행해야 하는 중요한 요구사항이 하나 있습니다.

이제 몇 가지 비디오 시간이 다가오고 있는 이 점에 대해 말씀드리고자 합니다. 추적의 모든 이점을 원하신다면 애플리케이션을 상당히 심각하게 변경해야 할 것 같습니다.

하지만 이 비디오는 키알리에 관한 것입니다.


자, 이제 시작해보죠.

그래서 키알리가 뭔지는 여러분 대부분이 키알리를 사용하던 워밍업 코너를 거치셨을 겁니다.

키알리의 좋은 점 중 하나는 사실 많은 학습이 필요하지 않다는 것입니다.

이제 키알리가 31,000번 항구에서 이용할 수 있도록 준비했습니다.

그것은 사실 표준이 아닙니다.

만약 내가 큐빅틀을 한다면 여기에 kiali 서비스가 있다는 것을 확인할 수 있는 SVC 대쉬 아이스티오 시스템을 얻을 것이다.

그리고 Yaml 파일을 노드 포트로 변경하기 위해 편집했습니다.

저는 31,000번 항만을 무작위로 선택했습니다.

다시 한 번, Istio 비디오를 설치하면, 제가 정확히 어떻게 하는지 보여드리겠습니다.

하지만 이것은 매우 간단한 수술입니다.

그곳에 가는 다른 방법들이 있다.

하지만 그게 가장 쉽다는 걸 알아.

그리고 이 비디오에서 제가 말하는 어려움은 제가 생각하기에 상황이 어렵거나 복잡하거나 잘못 구현되었다고 생각할 때 제가 보여주지 않는 모든 것을 보여드리고 있다는 것입니다.

하지만 나는 키알리에게 정말 솔직하고 키알리가 환상적이라고 말할 수 있어.

완벽한 균형은 정말 믿을 수 없을 정도로 강력합니다. 그것은 여러분이 문제를 진단하는 것을 매우 어렵게 만들 수 있습니다.

나는 준비운동 시간에 그것을 증명하려고 노력했다.

하지만 동시에, 사용하기는 꽤 간단합니다. 비디오로 영상을 찍기가 좀 어렵죠. 아시다시피, 한 시간 동안만 가지고 놀 수도 있고, 직접 사용하는 법을 배울 수도 있기 때문입니다.

그래서 만약 내가 키알리가 얼마나 멋진지에 대해 너무 과장한다면, 나는 상관하지 않는다.

그것은 제가 가지고 있는 가장 가치 있는 도구 중 하나입니다.

전면 대시보드에서 시작하여 시스템의 전반적인 상태에 대한 개요를 제공합니다.

네임스페이스별로 분할되므로 여기에 두 개의 네임스페이스만 있습니다. 하지만 시스템이 정상이면 한눈에 쉽게 확인할 수 있습니다.

자, 만약 여러분이 이 단계에서 건강하지 않다고 생각하신다면, 당황하지 마세요. 그것은 여러분이 아주 빨리 여기 와서 우리가 이 시스템을 막 시작했다는 사실일 수도 있습니다.

시스템이 워밍업되고 마이크로서비스가 서로 말을 걸기 시작하는 동안 시작 단계에서 HTTP 오류가 발생했을 수 있습니다.

키알리의 중요한 측면은 매우 역동적인 것입니다. 특정 스냅샷의 상태만을 보여주는 것이 아닙니다.

오른쪽 위가 너무 중요해요.

이것은 나에게 이것이 마지막 1분 동안의 건강을 보여주고 있고 15초마다 새로워질 것이라는 것을 말해주고 있다.

예를 들어, 이걸 지난 30분으로 되돌리면, 네, 완벽합니다.

그게 바로 내가 보고 싶었던 거야. 걱정스러워 보일지도 몰라.

경고가 들어오고 있습니다.

이제 우리는 6개 중 6개가 애플리케이션이라고 부르는 반면, 이것들은 실제로 포드입니다. 이것은 6개 중 4개가 일종의 질병을 보이고 있다는 것을 보여줍니다.

제가 말씀드린 것처럼, 그것은 전혀 걱정할 것이 없습니다. 단지 시작 시기에 있었던 일입니다.

30분만 기다리면 녹색이 됩니다.

그래서 이 시기에 대해 좀 전략적으로 설정하게 될 것입니다.

예를 들어, 제가 방금 차량을 선택한 것처럼 시스템에 요청을 했고, 그렇게 함으로써 문제가 발생했다는 것을 알 수 있습니다.

그리고 여러분은 여기 있는 여러분의 시간대가 실제로 그 사건을 포착할 수 있도록 절대적으로 조심하기를 원합니다.

마지막 순간에 맞춰놓으면.


자, 당신이 여기 구멍을 뚫기 시작할 때쯤, 당신은 결함이 제거되었다는 것을 알게 될 것이다.

그러니 주의하세요. 아마 첫 번째 통화항은 그래프일 겁니다.

여기서 그래프 링크를 클릭하면 여기에 아무것도 표시되지 않는 경우 네임스페이스로 이동해야 할 수 있습니다.

네임스페이스를 선택하지 않은 경우 여기에 이 경고가 표시되지만 네임스페이스 선택기로 이동하여 보려는 네임스페이스를 선택하라는 메시지가 표시됩니다.

그리고 여러분이 얻게 될 기본 그래프는 버전 앱 그래프라고 생각합니다.

잠시 후에 다시 말씀드리겠습니다.

하지만 이해하기 쉬운 것은 아마도 여기 서비스 그래프일 것입니다.

이 삼각형으로 보여드리는 것은 여러분이 사용하는 표준 쿠베르네테스 야멜의 모든 서비스입니다.

여긴 특별한 ISTIO가 없어

그리고 이러한 서비스 간에 발생한 트래픽을 기반으로 이들 서비스가 어떻게 연결되어 있는지 보여 줍니다.

몇 분 전에 클릭했을 때 다시 클릭하지 않을 것임을 기억하십니까?

하지만 몇 분 전에, 저는 여기 있는 이 차량들 중 하나를 클릭했습니다.

다시 한 번 말씀드리지만, 이 시스템의 내부 작동을 알 필요는 없습니다.

그러나 이 서비스는 Fleetman API 게이트웨이인 이 서비스의 호출에 의해 구현됩니다.

그리고 바로 플리트맨 직원 서비스라고 불리는 이 서비스로 이어집니다.

1분도 더 전에 그랬어요.

그래서 이 선들이 회색으로 칠해지고 있는 것입니다.

영상에서 얼마나 잘 보이실지 모르겠습니다. 여기 이 버튼으로 확대하거나 마우스 휠을 사용할 수 있습니다.

여기 이 줄은 회색입니다.

즉, 마지막 순간에 이 두 서비스 사이에 트래픽이 없다는 뜻입니다.

그보다 조금 일찍 차가 막히긴 했지만요.

이제 향후 새로 고침이 이루어지며, 결국 만료됩니다.

그 선을 뺄 거예요.

그러니 조심하세요.

다시 말씀드리지만, 지난 10분 동안 이 서비스와 저 서비스 사이에 교통량이 있었기 때문에, 지금 이 줄이 녹색으로 되어 있는 것을 보실 수 있을까요?

이것이 얼마나 역동적인지 알 수 있기 때문에 이것이 유용합니다.

마지막 순간으로 돌아가면 회색으로 돼 있어

하지만 이제 시스템으로 바꾸면, 저는 그냥 임의의 차량을 클릭해서 키알리로 돌아갈 것입니다.

이제 저는 다음 번 갱신을 기다리고 있습니다.

좋은 일은 기대하지 마, 거기서 새로워진 일이 있었어.

그걸 보시면 아시겠지만 사실 그 선은 여전히 회색입니다.

따라서 변경사항이 즉시 수집될 것으로 예상하지 마십시오. 원격 측정 데이터가 전파되는 데 시간이 걸립니다.

그래서 나는 완벽한 시간을 위해 충만하고 있다.

다음 15초 업데이트입니다. 이제 녹색 줄이 채워져 라이브 트래픽이 있었으므로 시간이 좀 걸릴 것입니다. 하지만 지금 10분 정도 대화를 계속하고 다른 작업을 수행하지 않으면 해당 서비스와 서비스 간에 트래픽이 더 이상 발생하지 않을 경우 이 줄은 회색으로 바뀝니다.이 1분 창은 만료되었습니다.

비디오 편집기를 돌려서 1분간의 창문을 지나도록 하겠습니다.

네, 새로 고침이 415초 정도 지났지만 좀 더 기다리면 녹화를 중단하고 백그라운드에서 실행 중인 상태로 두면 두 서비스 간에 트래픽이 없으면 해당 회선이 완전히 제거됩니다.

네, 확인할 수 있습니다. 녹음을 중단하고 5분 동안 기다렸습니다.

그리고 5분이 지나면, 키알리는 두 서비스 사이의 트래픽이 이제 오래된 것으로 판단합니다.


API 게이트웨이에서 직원 서비스로 전화가 왔었다는 것을 기억하십시오.

이제 이 도표는 완전히 삭제되었습니다.

Kiali에 대해 알아두는 것이 매우 중요합니다. 시스템 아키텍처의 정적 그림을 보여주는 것이 아니라, 여기에 지정한 윈도우에서 트래픽을 보내고 받는 시스템 부분만 보여 주는 것입니다. 5분간의 추가 유예 기간을 가지고 말이죠.

그래서 만약 여러분이 이것을 보고 생각하신다면, "글쎄요, 제 서비스가 사라졌습니다. 그러면 여러분은 요청서를 보내거나 윈도우를 변경함으로써 시스템을 연습할 필요가 있을 것입니다.

자, 그럼 그것을 봅시다.

지난 10분 동안 돌아가면, 네, 이제 게이트에서 직원 서비스까지 전선이 보일 거예요.

마지막 1분으로 돌아가면, 그 줄은 제자리에 있지 않습니다.

하지만 아주 쉽게 할 수 있습니다. 다시 앱으로 전환해 보겠습니다. 다음 업데이트 시 API 게이트웨이에서 직원 서비스로 요청을 보냈어야 하는 차량 중 하나를 클릭하겠습니다.

새로 고침이 하나 있었어요.

자, 그렇다고 상황이 달라지지는 않았습니다.

다시, 시간이 좀 걸립니다.

다음 번 기분 전환을 기다리죠.

새로 고침 아이콘이 새로 고쳐지면 여기에 나타납니다.

흥미롭게도, 제가 그 요청을 한 이후로 약 30초 안에 그 리프레쉬가 잡히지 않았습니다.

이제 좀 긴장되네요.

새로 고침이 하나 더 있어요.

네, 실제로 데이터를 캡처할 때쯤에는 이미 그 선이 회색 선 집합으로 돌아갔는데, 그 데이터가 그래프에 나타나는데 1분 남짓 걸렸습니다.

자, 그것을 알아두세요.

이 데모에서는 레이아웃이 약간 원격으로 변경된다는 것을 알 수 있습니다. 항상 완벽하게 그려진 아름다운 그래프를 만들지는 못할 것입니다.

때로는 이런 것들이 약간 지저분해 보일 수도 있습니다. 몇 가지 옵션이 있습니다.

여기서는 세 가지 다른 레이아웃을 사용할 수 있습니다. 기본값은 여기에 있는 레이아웃입니다.

하지만 다른 것을 클릭하면, 어떻게 설명해야 할지 잘 모르겠어요.

그리고 저는 이러한 레이아웃의 구현에 대해 잘 알지 못합니다.

하지만 저는 항상 레이아웃 1번이 좀 더 각이 세고, 약간 더 직선적인 것을 발견합니다.

레이아웃도요.

두번째, 음, 그냥 다르게 보일 뿐이죠.

나는 그것을 어떻게 설명해야 할지 잘 모르겠다.

세 개의 레이아웃을 직접 실험하고 원하는 레이아웃으로 작업하십시오.

제 생각에는 균형을 잡으면, 제 말은, 기본 레이아웃은 왼쪽에서 오른쪽으로 어떤 것을 배치하려고 노력한다고 생각합니다.

어디에 그것이 더 나무 스타일인가.

레이아웃 1과 2는 별의 형성에 가깝다고 생각합니다.

저는 종종 개인적으로 하나를 배치하는 것을 선호한다고 생각하지만, 그건 전적으로 여러분에게 달려 있습니다.

이것이 서비스 그래프입니다.

아마 제가 대부분의 시간을 키알리에서 보내는 그래프일 겁니다.

그래프를 떠나기 전에, 분명히, 실제 생활에서, 이 그래프들 중 일부는 매우 크고 복잡해질 수 있습니다.

일반적으로 그렇게 나쁘지는 않지만, 네임스페이스로 항상 특정 네트를 기준으로 필터링할 수 있기 때문입니다.

네임스페이스에는 항목이 너무 많으면 안 됩니다.

나는 현실세계에서 깨닫고 있지만, 많은 프로젝트들이 수백 가지 것들을 유명무실하게 채워넣고 있다.

한가지 유용한 팁은 만약 여러분이 특별히 복잡한 그래프를 가지고 있다면, 여러분은 항상 이 항목들 중 하나를 가지고 갈 수 있습니다. 저는 여기서 이 항목들이 어떤 것이든 상관 없이, 여러분이 어떤 항목을 두 번 클릭한다면, 그러면 뷰가 바뀌어서 특정 개체에서 들어오는 경로와 나가는 경로를 함께 보여줄 것입니다.

그래서 그것은 청소하는데 정말 유용할 수 있습니다.

여기서 항상 전체 그래프로 돌아갈 수 있습니다.

이제 서비스 그래프로, 이 삼각형들은 각각 일반적인 쿠버네티스 서비스를 나타냅니다.

하지만 여기 드롭다운에 있는 다른 그래프가 있습니다. 4개가 있습니다.

이제 좀 더 자세한 설명을 드릴 수는 없지만, 버전 그래프에 대한 자세한 설명을 드리기 전에 트래픽 관리를 해야 합니다. 하지만 워크로드 그래프를 보여드릴 수는 있습니다. 그러면 조금 더 크다는 것을 바로 알 수 있습니다.

첫눈에 좀 더 복잡해 보이는군요.

다른 레이아웃을 시도해보고 좀 더 깔끔한 것을 얻을 수 있는지 알아보자.

나는 그것이 아마도 가장 좋은 것이라고 생각한다.

자, 여기 보이는 것은 우리가 여전히 서비스를 가지고 있다는 것입니다.

여기 삼각형들이 있습니다.

참고로 여기엔 서비스의 삼각형 그래프에 대한 범례나 키를 보여드릴 수 있는 버튼이 있습니다.

하지만 이 그래프에는 동그라미가 있는데, 이른바 워크로드라고 부르는 것을 나타냅니다. 이런 것들이 단지 부품이었다고 생각할 수 있습니다.

이 도표는 제 시스템에서 그리 유용하지 않을 수도 있습니다. 왜냐하면 모든 서비스에는 포드가 있기 때문입니다.


이 문제에 대해 더 자세히 설명해야 합니다. 서비스를 위한 여러 개의 팟을 가지고 있어도 하나의 팟만 볼 수 있고 하나의 워크로드만 볼 수 있습니다.

그 이유는 작업 부하가 특정 서비스의 모든 포드를 대표하기 때문입니다. 이 그래프는 훨씬 더 복잡하기 때문입니다. 모든 것에 대해 기본적으로 두 개의 항목이 있고, 서비스가 있으며, 그리고 원하는 경우 포드의 기본 컬렉션이기 때문입니다.

하지만 이 그래프에서 할 수 있는 최소한 다른 그래프로는 할 수 없는 것이 하나 더 있습니다.

가장자리 레이블을 보려면 이 단추를 클릭하십시오. 응답 시간을 설정할 수 있는 매우 유용한 옵션이 있습니다.

이제 응답 시간이 특정 요청 집합에 대한 평균 응답 시간을 알려줍니다.

예를 들어 위치 추적기가 요청을 처리할 때 평균 응답 시간은 237밀리초입니다.

이제 이 라벨은 서비스와 기본 워크로드 또는 기본 부품 사이에서만 사용됩니다.

따라서 이러한 이유로 서비스 그래프로 전환하면 응답 시간이 선택된 상태에서도 아무것도 표시되지 않습니다.

따라서 이러한 응답 시간을 확인하려면 작업량 그래프에서 작업을 수행해야 합니다.

시계를 보니, 앱 그래프에서 그래프가 나온 버전에 대해 말하는 것을 연기할 것 같아요.

코스의 트래픽 관리 섹션이 그래프가 실제로 나타나는 지점까지입니다.

적어도 지금은 이러한 그래프와 방금 본 워크로드 그래프 간에 큰 차이를 보이지 않습니다.

이 그래프에서 다음에 무엇을 잘해야 하는지, 어떤 물체든 마우스 오른쪽 단추로 클릭할 수 있습니다.

서비스 그래프에서 다시 찾아왔습니다.

플리트먼 직원 서비스를 마우스 오른쪽 버튼으로 클릭하면 팝업 메뉴가 나타납니다. 서비스에 대한 세부 정보를 볼 수 있습니다.

이렇게 하면 이 특정 서비스로 대표되는 모든 포드 목록이 매우 유용하게 표시됩니다.

여기에 인바운드 메트릭 그래프도 있습니다. 요청 볼륨, 요청 기간, 시간 경과에 따른 요청 크기, 응답 크기 등을 보여 줍니다.

그래서 그 모든 것이 매우 유용할 수 있습니다.

이 메트릭스에 관심이 있으시다면 아마 그라파나를 보시게 될 것입니다. 잠시 후에 보여드리겠습니다.

그래서 나는 거기서 너무 자세히 설명하지 않을 거야.

반대로, 그래프에서 다시 보면 서비스 그래프, 워크로드 그래프에서 보면 차이가 있습니다.

서비스를 마우스 오른쪽 버튼으로 클릭하면 자세한 트래픽 및 인바운드 메트릭을 볼 수 있습니다.

그러나 워크로드를 마우스 오른쪽 버튼으로 클릭하면 다른 옵션이 나타납니다.

그리고 저는 이 모든 옵션들에 접근할 수 있습니다.

실제로 워크로드의 경우 매우 유용한 세부 정보 표시 링크를 통해 로그를 확인할 수 있습니다.

이제 작업 부하는 둘 이상의 부분이 될 수 있음을 기억하십시오.

특정 워크로드에 대한 모든 포드의 드롭다운 목록을 볼 수 있습니다.

이 시스템에는 워크로드당 하나의 포드만 있습니다.

하지만 물론, 우리의 모든 포드는 두 개의 컨테이너를 가지고 있습니다. 애플리케이션 컨테이너와 프록시를 말이죠.


따라서 프록시에 대한 로그도 볼 수 있습니다.

물론 명령행에서 이 작업을 수행할 수 있습니다.

특별히 특별한 것은 없습니다.

하지만 몇 번이고 제가 비상 상황을 디버깅할 때 유용하다는 것을 알았습니다.

그리고 나는 명령행으로 전환하지 않고 이 사용자 인터페이스 안에 머물 수 있다.

그래서 당신에게는 별거 아닐지도 몰라요.

하지만 확실히 거기에 있다는 것을 알게 되어 기뻐요.

로그는 키알리의 나머지 부분과는 다르게 작동합니다.

자체 기간이 있으므로 수동으로 새로 고쳐야 합니다.

그러니 명심하세요.

자, 만약 여러분이 따라가고 있다면, 저는 이 부분이 얼마나 수다스러운지 모릅니다.

그래서 아무것도 보이지 않을 수도 있다.

이 안에 많은 예외들이 있습니다. 제가 생각하기엔 제가 방금 다시 시작했기 때문에 우리는 여전히 이 버전을 재방문해야 합니다. 교통 관리 시스템에서 우리가 할 그래프입니다. 단지 몇 가지 다른 것들만 있으면, 여기 디스플레이 버튼 아래에서 유용하게 사용할 수 있습니다. 교통 애니메이션을 클릭하시면 됩니다.

그러면 교통 흐름의 방향을 보여주는 큐 애니메이션을 보실 수 있습니다. 서비스 그래프로 바꾸면 거기서 작동하는 것을 보실 수 있습니다.

마찬가지로, 이것은 아마도 작은 눈사탕일 것입니다. 왜냐하면 화살표에서 방향을 볼 수 있기 때문입니다.

하지만 종종, 저는 이것을 입고 싶어합니다. 이것은 저에게 어떤 일이 일어나고 있는지 더 강한 시각적 느낌을 줍니다.

선을 따라 이동하는 이 아이콘도 해당 연결을 따라 이동하는 트래픽 양에 따라 변경됩니다.

또한, 작은 원들 사이의 페이로드 크기에 따라 작은 원들을 더 크게 만들 것입니다.

이 데모에서는 그런 점을 제대로 인식하지 못하지만, 실제로 유용한 시스템에서는 몇 가지를 놓치게 될 것입니다.

하지만 저는 여러분이 이것을 사용하기 매우 직관적이기를 바랍니다.

그리고 만약 어떤 문제가 발생한다면, 여기 오른쪽 상단에 있는 아이콘을 따라 문서를 만들 수 있습니다. 저는 그 문서가 아주 잘 작성된다는 것을 발견했습니다.

마지막으로 한 가지만 더 말씀드리겠습니다.

그리고 이것은 우리가 교통 관리 시스템을 충분히 느낄 수 있도록 해야 할 필요가 있는 것입니다. 하지만 그것은 나중에 떠나기에는 너무 큽니다.

그래서 지금 하려고 합니다.

그리고 그것은 여러분이 단지 시스템을 보는 것뿐만 아니라 무슨 일이 일어나고 있는지 관찰하는 것뿐만 아니라 그것을 발견하는 것에 놀랄지도 모른다는 것입니다.

또한 이 시스템의 구성을 크게 변경할 수도 있습니다.

실제로 키알리를 통해 시스템 아키텍처를 수정할 수 있습니다.

음, 그것은 큰 특징입니다.

그래서 나는 그것이 확실히 그것의 비디오를 필요로 한다고 생각한다.

다음에 하죠.


  • No labels