Hello and welcome back.
In this video we will go through the solution for application trouble shooting
so in this quest we have six questions and there is an architecture diagram associated with each question
which is quite similar in nature and for each test the application is read applied in a different namespace
with the specific issue which prevents the app tab to be opened properly for the application configured.
So our goal is to correct whatever is wrong with the deployment.
The servers depart and make sure that the web application works properly so to start off let's click
on the app tab.
And as you can see by default it's in a failed state.
So for the first question we will have to figure out what exactly is wrong and try to fix it.
So let's straight to the question troubleshooting test 1 a simple app is deployed in the alpha namespace
it's a two tier application it must display green that page on success click on the app tab at the top
of your terminal to view your application it is currently field troubleshoot and fix the issue.
So we have already seen that in our case it's displaying a red coloured team here and a bit of statement
that it's filled and you can see the environmental variables that is being used here and the exact nature
of the failure.
So here it says that it's not able to connect to the My School so or on the name of the DV holes which
is my sequel hyphen service on board 3 3 0 6 and if we check the architecture diagram we can see that
there is a mikes equal pod which exposes the port.
3 3 0 6 and there is a service which was of plus IP and exposing the 3 3 0 6 again and that is consumed
by the thereby Python my sequel.
Which runs on board 80 80 and this is the one which the user is accessing using Node port 3 0 0 8 1.
So let's check the alpha namespace and list all the components which is inside this namespace.
So let's go back to the terminal and we can do this by running the command cube CTO hyphen and how far
and get all to the show you the port the deployment the replica set and these services so let's go back
to the architecture diagram.
The part should be my sequel the service name should be my sequel service the deployment name should
be there are by then my sequel and that exposes where Python's service so here the port has my sequel.
There was a deployment there as apart from the deployment.
The service name here is called My sequel whereas it should be called my sequel hyphen service.
And if you go back to the app the variable used for the B horses my sequel hyphen service.
So straight away we can see that the name here is incorrect.
So to fix the scenario we can recreate the service with the correct name so to do this first I'll export
the contents of the current my sequel service to.
Yeah no definition file.
Call my sequel hyphen service knock em now alt delete the service called my sequel.
And I will recreate it using the definition far before that.
Let me rename the service to my sequel hyphen service.
So now if I run the same command again cube C2 hyphen then Alpha get all it shows that the service has
been re created
so now let's rephrase the speech and see if it works and you're getting a green theme right now and
it's successful.
So let's change the result.
So that was correct.
Let's go to the second question.
So for the second question we have a very similar architecture diagram as that of the first question
but we can see that the application has now deployed in the beta namespace.
And just as before we had to make sure that the display is providing green where patients are for red.
So let's refresh the app tab.
And as you can see it's gone back to its field state.
And in this case we can see that the error is connection refused.
So we'll again go back to the terminal and check the competence of the beta namespace
a huge deal my friend and Lena get all.
In this case you can see that the mice equal services correct too.
The problem is with something else let's quickly check the service which is created and thus namespace
so.
We check the service here we can see that the mice equal service has the target endpoint as 1880 and
now if we go back to the architecture diagram this is incorrect because the target endpoint should be
3 3 0 6.
So as before we have to recreate the service but now in the beta namespace so as before.
Let us export the current service into a general definition file
real again.
Delete the my sequel servers and recreate it after editing the Live Nation file.
So here I'm going to change the target put 2 3 3 0 6.
Let's now recreate the service.
Now if Iran describe again a should should the target put as 3 3 0 6.
Let to see if that would and we caught up rain.
Team
let's seek the solution that has failed so let's wait for the question 3 And scenario number 3 to load
up so for the troubleshooting shooting scenario 3 the same two tier application has now deployed on
the gamma namespace and the rest of the question are similar for the other two questions.
And we have the exact same architecture.
So let's go back and refresh the application
and then this case looks like it's not even loading up.
So then again there is something wrong with the service as you can see if I refresh it.
The application as not loading.
So let's go and check the deployments and the objects created in the game on him space as before cube
CTO in Gama.
Again all
in here.
Before this my sequel.
Exactly as before.
There is a web app my sequel pod and a deployment created and let's inspect these services.
Before that we can also inspect the endpoints for these services and the first thing that you will see
here is that the my sequel service does not have an end point and this is supposed to point to the Y
sequel pod.
So let's check what's wrong with the heart as well as the service.
So Cube CTO get service Y sequel reference service pay phone n no ammo.
Now if you look here the port is correct the target port is correct.
There is a selector here by the name of sequel 0 0 0 0 1.
Let's see if this matches what is provided in the port definition for my sequel.
If you go here the label is name is equal to my sequel.
So that is incorrect.
Which is why you see no end points created for the mice equal service.
So to fix this we can delete the current service or my sequel service and I can use imperative command
cube CTO iPhone in the nano expos poured my sequel for never name was equal to my sequel service.
From here on cube CTO hyphen n Gama kit in points we see that we have one single endpoint for the my
sequel service.
So now if we try to refresh this we should get a successful screen.
That's sick and that is complete as well.
So let's not wait for scenario number 4.
For scenario number 4 we have the exact same architecture with one exception.
We now have the environment variables as part of the architecture diagram here.
So the DP whose should be my sequel hyphen service db user should be root and DV password should be
password spelled as P as W R D.
The rest of the question is the same as before except for the fact that the objects are deployed in
the Delta namespace
Let's reload the application tab and see what the error is here.
The environment variables are VB on the score hostess my sequel service there's no database said the
db user the sequel user DV password as B is w arty and it says that access is denied for the sequel
user fee.
Compare that with the architecture diagram you can see that the db user should be a route not equal
user.
So the first thing that we have to change is the.
And one went really well.
So now let's see where is the set
so when we're not describe on the deployment forum where about Python mice equal we can see that the
DV user which is set as an environment variable is equal user.
So this is what we need to change
as usual.
Let's get a poor definition file or in this case a deployment definition using your CTO hyphen and Delta
get deployment up I from my sequel national animal country daring to fight
we can now delete the deployment web app I see in the tower namespace
let's edit the file here and update the correct TB user name it should be ruled
let's recreate the deployment.
As you can see the new port has been recreated and the old port with the incorrect db user is terminating
so if you reload the browser we should get a successful screen.
Let's move on to question number 5
so for Scenario Number 5 we have the exact same architecture but again we have a new namespace called
Epsilon do the same thing as before and reload the browser.
In year he can see that the access has again denied for a user sequel user using password as yes.
So let's go back and check the deployment
in this case we have to change the namespace to Epsilon
let's quickly check the deployment for web app for my sequel and the Epsilon namespace and the orienting
in the db user is set to sequel user.
So let's exploit this and rewrite the verb GMO quickly update the animal file.
Before a value should be rude
Let's delete the deployment
and tree created
as before we have the new port which is running and let's see if that fixes this looks like we still
have an error.
Although we achieve the db user to root let's say what else could be wrong.
Let's describe the part of my sequel in the Epsilon namespace
here.
If you see the my sequel root password which is used as an environmental variable for my sequel container
we can see that the password has said incorrectly the password should be password spelled as P as W
R D and this is something which is described in the architecture diagram as well.
So in this case we'll have to recreate this pod
it's updated but first let's create a poor definition file
here.
Let's update the value decree expelling
Let's delete the current.
My sequel pod and recreate it.
As you can see the why sequel part is in our running state.
So let's refresh the screen.
Now that that's fixed let's move on to the next question.
So for this final question we have to do the same exercise one more time and the application is now
deployed in the z namespace
so in this case we are not even reaching the application on board 3 0 0 8 1 which is the node board
used by the users to access the application
so this gives us a clue on what we need to check.
So if we go back to the architecture diagram we can see that the web service which listens on board
1880 on for the target board is exposed as a node put on 3 0 8 1.
So let's check the status of the service in the 0 namespace for the web service and if you look here
the node board is wrong.
It should be treasonous 0 8 1 and not treasonous 0 8 8.
So let's update the service
and here we're going to change the node put 2 3 0 0 8 1.
Let's delete the current service and we've created
now they no put us updated
and still.
Now we got a radar screen.
So it is loading up properly but looks like there are other fields that we need to fix.
So here the db user is again set to equal user so the access is denied.
So let's make sure that that's corrected as well.
Now let's inspect both the deployment as well as the my sequel pod.
So in this case the deployment is incorrect.
We have to change the value for the db user too rude and let's recreate it.
Let's also check the in my sequel part and see if anything else needs to be changed here.
And as you can see the password is still incorrect.
So let's change it to be as W R D.
And let's now recreate the port as well.
And now we've got everything in our running state
so let's rephrase the screen.
And now you caught us a school application.
Let's check and we have successfully completed this practice test.
Thank you for joining me in this lecture.
See you on the next one.