WEBVTT

1
00:00.000 --> 00:03.720
So it's about five minutes since we finished the last video.

2
00:03.720 --> 00:05.480
And it looks like it's ready to go.

3
00:05.480 --> 00:09.040
So here with the applications tab selected here at the controller,

4
00:09.040 --> 00:11.840
at the controller interface, with dashboard selected,

5
00:11.840 --> 00:14.480
it's showing the web servers 192.5.

6
00:14.480 --> 00:15.760
That's the virtual service.

7
00:15.760 --> 00:19.360
And it shows a really healthy score right there of 100.

8
00:19.360 --> 00:21.760
And if we click here on pools on the left-hand side,

9
00:21.760 --> 00:24.600
it's showing us that we have three out of three available.

10
00:24.600 --> 00:28.400
So to test this virtual service that we just made,

11
00:28.400 --> 00:31.480
if we click around logs, we shouldn't be able to see too much
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

11
00:28.400 --> 00:31.480
if we click around logs, we shouldn't be able to see too much

12
00:31.480 --> 00:34.400
yet because even though we told logging to be on,

13
00:34.400 --> 00:36.200
we haven't had any requests from clients.

14
00:36.200 --> 00:38.680
So let's put a little virtual machine over here

15
00:38.680 --> 00:41.000
on the 192.1 state 1 network.

16
00:41.000 --> 00:45.680
And then we'll connect or attempt to connect to 192.1 state 1.5.

17
00:45.680 --> 00:48.680
And what should happen is the service engine that's

18
00:48.680 --> 00:51.920
in charge of the data plane for that virtual IP address

19
00:51.920 --> 00:54.920
should receive that request and then act as a proxy

20
00:54.920 --> 00:56.840
over to one of the available servers.

21
00:56.840 --> 00:59.600
In fact, let's also just verify which of these service

22
00:59.600 --> 01:00.600
engines it is.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

22
00:59.600 --> 01:00.600
engines it is.

23
01:00.600 --> 01:02.440
We can hover right here on the name.

24
01:02.440 --> 01:05.840
And this is showing us right here the name of the server.

25
01:05.840 --> 01:08.040
Let me move this graphic out of the way a little bit.

26
01:08.040 --> 01:09.120
And let's hover once again.

27
01:09.120 --> 01:12.560
So it's the one ending in Q-H-Y-P-N.

28
01:12.560 --> 01:14.920
So that's the service engine that's actually

29
01:14.920 --> 01:18.120
doing the data plane work for us or will be when we connect.

30
01:18.120 --> 01:19.400
Also, what would be interesting to see

31
01:19.400 --> 01:21.320
is if we went to that VM, we would

32
01:21.320 --> 01:23.760
see it has now three interfaces.

33
01:23.760 --> 01:25.640
One interface is connected to the management network,

34
01:25.640 --> 01:27.000
the 1060 network.

35
01:27.000 --> 01:30.160
One's going to be connected to the 192.1 state 1 network.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

35
01:27.000 --> 01:30.160
One's going to be connected to the 192.1 state 1 network.

36
01:30.160 --> 01:32.520
And another interface is going to be connected over here

37
01:32.520 --> 01:35.120
to the VLAN 51050 network.

38
01:35.120 --> 01:37.560
And we can confirm that just by going over to vCenter

39
01:37.560 --> 01:39.080
for a moment and taking a look.

40
01:39.080 --> 01:40.440
So here in the vSphere client, here

41
01:40.440 --> 01:44.240
is that specific service engine, the one ending in YPN

42
01:44.240 --> 01:45.000
right there.

43
01:45.000 --> 01:48.280
And if we right clicked on it and then we went to edit settings,

44
01:48.280 --> 01:50.560
here we could verify that its management interface is

45
01:50.560 --> 01:53.680
on VLAN 6, that it has one interface in VLAN 5.

46
01:53.680 --> 01:56.320
And then another interface here on the 192 network.

47
01:56.320 --> 01:58.480
And it shows us connected to all three.

48
01:58.480 --> 02:01.120
And the entity that did that magic of carving out
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

48
01:58.480 --> 02:01.120
And the entity that did that magic of carving out

49
02:01.120 --> 02:03.440
all those interfaces and configuring them

50
02:03.440 --> 02:06.260
was the instructions from the controller

51
02:06.260 --> 02:08.880
who specified exactly what that service engine needed

52
02:08.880 --> 02:11.680
so it could do the proxying and the load balancing

53
02:11.680 --> 02:14.760
between clients who are requesting the IP address here at .5

54
02:14.760 --> 02:16.640
and the servers on the back end over here.

55
02:16.640 --> 02:18.680
And then we went back to infrastructure

56
02:18.680 --> 02:20.920
and we went down to cloud resources

57
02:20.920 --> 02:22.520
and clicked on our service engines.

58
02:22.520 --> 02:25.000
Here it's showing nothing because it's using the default cloud.

59
02:25.000 --> 02:27.720
So if we selected our cloud, NSX cloud 4,

60
02:27.720 --> 02:29.040
here are two service engines.

61
02:29.040 --> 02:30.920
Now these numbers are very likely going
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

61
02:29.040 --> 02:30.920
Now these numbers are very likely going

62
02:30.920 --> 02:33.400
to be better and better over time

63
02:33.400 --> 02:34.400
because they just came up.

64
02:34.400 --> 02:37.240
In fact, that one just changed from a 50 to a 67.

65
02:37.240 --> 02:40.040
We could also say, please display the last 30 minutes.

66
02:40.040 --> 02:42.440
So the longer that these service engines are up

67
02:42.440 --> 02:44.760
and don't have any problems, the better and better

68
02:44.760 --> 02:47.120
the health scores are going to be over time.

69
02:47.120 --> 02:48.320
All right, so it's time to test.

70
02:48.320 --> 02:51.160
Let's bring up a little VM over here on this 192.168.1

71
02:51.160 --> 02:51.840
network.

72
02:51.840 --> 02:54.360
And here is that VM right here.

73
02:54.360 --> 02:58.400
The first thing I want to do is just verify its IP address.

74
02:58.400 --> 03:02.040
So here on this computer, we'll do an IPA for address,
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

74
02:58.400 --> 03:02.040
So here on this computer, we'll do an IPA for address,

75
03:02.040 --> 03:09.040
press center and its IP address is right there 192.168.1.123.

76
03:09.040 --> 03:10.880
So we should be on the same subnet

77
03:10.880 --> 03:12.520
as that little virtual IP address.

78
03:12.520 --> 03:13.800
Let's go ahead and give it a shot.

79
03:13.800 --> 03:15.200
We'll open up a browser.

80
03:15.200 --> 03:20.480
And then here in the browser, let's go to 192.168.1.5

81
03:20.480 --> 03:21.640
and press enter.

82
03:21.640 --> 03:25.400
So that's going to default to HTTP and look at that server A.

83
03:25.400 --> 03:30.320
So each of the servers I put .51, its default homepage
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

83
03:25.400 --> 03:30.320
So each of the servers I put .51, its default homepage

84
03:30.320 --> 03:33.920
has a server A message and 52 has server B.

85
03:33.920 --> 03:35.920
And the one at .53 says server C.

86
03:35.920 --> 03:40.000
So if we are to do a control shift R, which is a refresh,

87
03:40.000 --> 03:41.920
because we set the pool to round Robin,

88
03:41.920 --> 03:43.840
that should cycle through all three.

89
03:43.840 --> 03:46.720
And if we do a control shift R again to refresh,

90
03:46.720 --> 03:48.920
that is working like a champ.

91
03:48.920 --> 03:51.440
So I'm just doing a control shift R, R, R.

92
03:51.440 --> 03:52.760
And that is just doing a refresh

93
03:52.760 --> 03:55.280
and going through all those servers on the back end.

94
03:55.280 --> 03:58.160
Where if I just did a refresh right here, for example,

95
03:58.160 --> 04:00.880
and again, it's just pulling now from the cache.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

95
03:58.160 --> 04:00.880
and again, it's just pulling now from the cache.

96
04:00.880 --> 04:05.080
And then if I did a F5, that also is just pulling

97
04:05.080 --> 04:05.920
from the cache.

98
04:05.920 --> 04:07.880
So I'm gonna be careful about making sure

99
04:07.880 --> 04:11.640
that I'm doing a full new request and control shift R

100
04:11.640 --> 04:14.120
is a great way of getting that job done.

101
04:14.120 --> 04:16.320
All right, so now we set some traffic through.

102
04:16.320 --> 04:19.760
Let's go ahead and minimize our client right there.

103
04:19.760 --> 04:21.520
And let's click on our virtual service.

104
04:21.520 --> 04:23.240
So we click on our virtual service.

105
04:23.240 --> 04:25.360
And once again, we get hover over the name right up here.

106
04:25.360 --> 04:26.760
And it'll just tell us all the details

107
04:26.760 --> 04:29.720
about the virtual IP address, the service port,

108
04:29.720 --> 04:30.560
whether it's Chup or not,
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

108
04:29.720 --> 04:30.560
whether it's Chup or not,

109
04:30.560 --> 04:32.320
which service engine is supporting it.

110
04:32.320 --> 04:34.640
And also what the profiles associated

111
04:34.640 --> 04:36.320
with this virtual service are.

112
04:36.320 --> 04:38.560
There's also options of scaling out and scaling in.

113
04:38.560 --> 04:40.440
So if we clicked here on scale out,

114
04:40.440 --> 04:41.400
for this virtual IP address,

115
04:41.400 --> 04:43.160
we could say I wanna create a new service engine,

116
04:43.160 --> 04:48.160
or we could scale out to the other existing service engine,

117
04:48.160 --> 04:49.680
which already has been deployed.

118
04:49.680 --> 04:51.720
However, for our one little virtual IP address

119
04:51.720 --> 04:53.000
that one virtual service,

120
04:53.000 --> 04:54.920
having one service engine is enough.

121
04:54.920 --> 04:57.080
So I'm gonna go ahead and cancel that.

122
04:57.080 --> 04:58.440
And because we enabled logging,

123
04:58.440 --> 05:01.280
if we clicked here on logs for this virtual service,
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

123
04:58.440 --> 05:01.280
if we clicked here on logs for this virtual service,

124
05:01.280 --> 05:03.600
and this is the new log view that I opted into.

125
05:03.600 --> 05:05.600
So I'm gonna go ahead and close that.

126
05:05.600 --> 05:08.440
Here is showing me just the significant logs by default.

127
05:08.440 --> 05:09.520
And I could also say, you know what?

128
05:09.520 --> 05:11.520
I wanna see the non-significant,

129
05:11.520 --> 05:13.600
as well as the significant by clicking

130
05:13.600 --> 05:15.640
that additional checkbox right there.

131
05:15.640 --> 05:17.800
And that's giving us a bunch more detail

132
05:17.800 --> 05:19.800
regarding the load balance that's going on.

133
05:19.800 --> 05:21.600
So if we grab one of these 200 messages,

134
05:21.600 --> 05:23.600
in fact, let me collapse the left-hand side.

135
05:23.600 --> 05:24.960
So if we wanted to see the details here

136
05:24.960 --> 05:27.120
for this log entry, we'll click on the eyeball.

137
05:27.120 --> 05:29.440
So here in the output, it has three tabs.

138
05:29.440 --> 05:30.440
One is for summary.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

138
05:29.440 --> 05:30.440
One is for summary.

139
05:30.440 --> 05:32.720
It just jumps down to that part of the output.

140
05:32.720 --> 05:35.240
There's another tab for application,

141
05:35.240 --> 05:37.160
and another tab for header detail.

142
05:37.160 --> 05:39.480
So if we go back to the summary and scroll all the way up,

143
05:39.480 --> 05:42.280
here's the graphical representation of what happens.

144
05:42.280 --> 05:43.960
So the client made a request.

145
05:43.960 --> 05:45.800
The round trip time was one millisecond

146
05:45.800 --> 05:48.160
between the client and the load balancer.

147
05:48.160 --> 05:50.120
And then between the load balancer and the server,

148
05:50.120 --> 05:51.560
it was two milliseconds.

149
05:51.560 --> 05:54.640
And here shows that the app was really quick to respond.

150
05:54.640 --> 05:57.480
Then if we scroll down, here's the original IP address.

151
05:57.480 --> 06:01.200
So there's the IP address of our client at .123,
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

151
05:57.480 --> 06:01.200
So there's the IP address of our client at .123,

152
06:01.200 --> 06:03.240
going to the virtual IP address that we set up

153
06:03.240 --> 06:05.200
as part of the virtual service.

154
06:05.200 --> 06:07.240
And that was proxy from our service engine

155
06:07.240 --> 06:08.760
over to the actual server.

156
06:08.760 --> 06:11.440
And for this transaction here, it was at .51.

157
06:11.440 --> 06:13.600
And there's the service engine that did the work.

158
06:13.600 --> 06:15.640
And then if you scroll down, here's the summary.

159
06:15.640 --> 06:18.520
Including the browser of the client was using Firefox

160
06:18.520 --> 06:20.800
and the user agent associated with that browser,

161
06:20.800 --> 06:22.000
has timestamps.

162
06:22.000 --> 06:25.160
If we scroll down, it was a HTTP get request.

163
06:25.160 --> 06:26.360
And if we scroll down further,

164
06:26.360 --> 06:29.080
because we said to go ahead and include header logging,

165
06:29.080 --> 06:30.840
it has details about the headers as well.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

165
06:29.080 --> 06:30.840
it has details about the headers as well.

166
06:30.840 --> 06:32.360
And if we do it side by side comparison,

167
06:32.360 --> 06:34.720
it looks like most of the content was sent over

168
06:34.720 --> 06:36.200
the way it was sent from the client.

169
06:36.200 --> 06:38.040
And if we scroll down, it has the response.

170
06:38.040 --> 06:41.080
This is the response from the server back to the load balancer,

171
06:41.080 --> 06:43.600
and then from the load balancer back to the client.

172
06:43.600 --> 06:45.840
So let me go ahead and close that.

173
06:45.840 --> 06:47.640
And let me expand the left hand side again

174
06:47.640 --> 06:49.000
and go back to the dashboard.

175
06:49.000 --> 06:51.680
So now that we have configured and verified

176
06:51.680 --> 06:55.400
a virtual service with a virtual IP address over here,

177
06:55.400 --> 06:56.800
let's do it again.

178
06:56.800 --> 07:00.160
But this time a virtual IP address that's out here.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

178
06:56.800 --> 07:00.160
But this time a virtual IP address that's out here.

179
07:00.160 --> 07:01.640
And this could represent where we have

180
07:01.640 --> 07:05.440
a routable global address that's in DNS for some service.

181
07:05.440 --> 07:07.200
The client hits that IP address.

182
07:07.200 --> 07:10.200
And that's really being responded to by our load balancer

183
07:10.200 --> 07:13.240
who's then feeding it down to one of our respective servers

184
07:13.240 --> 07:14.120
on the back end.

185
07:14.120 --> 07:15.760
So to implement this, let's implement this

186
07:15.760 --> 07:17.440
as a separate virtual service.

187
07:17.440 --> 07:19.680
And we'll do that in the very next video.

188
07:19.680 --> 07:22.080
And I'll see you there in just a moment.
