WEBVTT

1
00:00.240 --> 00:02.220
I also think it'd be super effective

2
00:02.220 --> 00:04.650
and useful at this point to take a look

3
00:04.650 --> 00:07.290
at some of the details here at the NSX manager,

4
00:07.290 --> 00:09.390
which is acting as the centralized control plane

5
00:09.390 --> 00:11.520
for the entire operation of NSX.

6
00:11.520 --> 00:12.930
So the NSX manager is acting

7
00:12.930 --> 00:14.340
as the centralized control plane,

8
00:14.340 --> 00:16.860
it's also acting as the management plane.

9
00:16.860 --> 00:19.710
So you and I log in, we connect to the NSX manager,

10
00:19.710 --> 00:21.450
we specify what we want to have happen,

11
00:21.450 --> 00:23.310
and then the NSX manager communicates

12
00:23.310 --> 00:26.730
with the transport nodes to make it happen and vice versa.

13
00:26.730 --> 00:28.917
The transport nodes are also communicating information

14
00:28.917 --> 00:31.920
back to the NSX manager as well.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

14
00:28.917 --> 00:31.920
back to the NSX manager as well.

15
00:31.920 --> 00:33.900
And you might think, well, what does the NSX manager

16
00:33.900 --> 00:36.480
need to know about an ESXi host that set up

17
00:36.480 --> 00:38.160
as a host transport node?

18
00:38.160 --> 00:40.560
Well, if we launched a VM on ESXi-A, for example,

19
00:40.560 --> 00:43.470
we connect it to a segment, there's all kinds of activity

20
00:43.470 --> 00:44.610
that this VM is gonna be doing.

21
00:44.610 --> 00:48.060
Things like ARPing, looking for other layer two addresses,

22
00:48.060 --> 00:50.670
maybe this VM, we'll call it VMA,

23
00:50.670 --> 00:52.470
is looking for the layer two address

24
00:52.470 --> 00:56.070
of this VM, VMC and stuff that ARP request comes in.

25
00:56.070 --> 00:58.560
Initially, that ARP request is gonna have to be sent

26
00:58.560 --> 01:00.390
over the tunnel to ESXi-B,
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

26
00:58.560 --> 01:00.390
over the tunnel to ESXi-B,

27
01:00.390 --> 01:03.120
and then this VM can go ahead and respond to it.

28
01:03.120 --> 01:05.760
But how does ESXi know that it should send that traffic

29
01:05.760 --> 01:08.580
over the tunnel for flooding of that initial ARP request?

30
01:08.580 --> 01:11.370
The answer is the NSX manager has information

31
01:11.370 --> 01:14.790
about exactly which ESXi hosts are participating

32
01:14.790 --> 01:18.060
and also which VMs are connected to which segments,

33
01:18.060 --> 01:19.890
and the cool thing is if we have lots of clients,

34
01:19.890 --> 01:21.540
we probably don't want all that traffic

35
01:21.540 --> 01:23.040
to have to go across the tunnel.

36
01:23.040 --> 01:26.010
So if we have ARP tables that are being built

37
01:26.010 --> 01:28.320
and the control plane knows about it,

38
01:28.320 --> 01:31.380
it can actually share that information with other ESXi hosts
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

38
01:28.320 --> 01:31.380
it can actually share that information with other ESXi hosts

39
01:31.380 --> 01:32.730
so that in the future, for example,

40
01:32.730 --> 01:35.100
another VM right here that's also connected,

41
01:35.100 --> 01:36.237
if it's doing an ARP request

42
01:36.237 --> 01:39.180
and ESXi-A already knows about the information

43
01:39.180 --> 01:42.060
on that same segment about what that address is,

44
01:42.060 --> 01:44.190
the actual ESXi host can respond back

45
01:44.190 --> 01:46.410
and that traffic won't have to go across the network.

46
01:46.410 --> 01:48.780
So the NSX manager has the responsibility

47
01:48.780 --> 01:51.300
of a centralized control plane for NSX.

48
01:51.300 --> 01:54.060
It's also the management plane and then the data plane,

49
01:54.060 --> 01:55.620
the actual forwarding of traffic

50
01:55.620 --> 01:57.750
is being done by our transport nodes.

51
01:57.750 --> 02:01.260
In this example, we have two ESXi host transport nodes
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

51
01:57.750 --> 02:01.260
In this example, we have two ESXi host transport nodes

52
02:01.260 --> 02:03.300
and those are responsible for the data plane.

53
02:03.300 --> 02:06.240
For example, moving the traffic between VMA,

54
02:06.240 --> 02:08.550
who's trying to communicate with VMC.

55
02:08.550 --> 02:10.350
Another element that's committed back and forth

56
02:10.350 --> 02:11.700
are MAC address tables.

57
02:11.700 --> 02:13.620
So that way, if we have like six computers over here

58
02:13.620 --> 02:16.620
on ESXi-A all connected to segment 10,

59
02:16.620 --> 02:18.120
I'll put that here in yellow,

60
02:18.120 --> 02:20.370
and let's also imagine we have two or three VMs

61
02:20.370 --> 02:22.850
also connected to this segment that are being hosted here

62
02:22.850 --> 02:26.220
on ESXi-B, so I'll draw that connectivity in as well.

63
02:26.220 --> 02:28.680
In a switch environment, the switch would be responsible,

64
02:28.680 --> 02:30.870
or the combination of switches if there's trunking involved,
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

64
02:28.680 --> 02:30.870
or the combination of switches if there's trunking involved,

65
02:30.870 --> 02:34.050
or connectivity between the VLANs here on these switches,

66
02:34.050 --> 02:35.970
they would maintain MAC address tables

67
02:35.970 --> 02:38.730
of which ports are associated with which MAC addresses.

68
02:38.730 --> 02:41.520
So in NSX, if we have six over here

69
02:41.520 --> 02:42.990
and three over here all connected

70
02:42.990 --> 02:44.610
to the same overlay segment,

71
02:44.610 --> 02:46.950
all that information about the MAC addresses

72
02:46.950 --> 02:50.820
and how they're reachable is maintained by the NSX manager,

73
02:50.820 --> 02:52.320
and the NSX manager can also make sure

74
02:52.320 --> 02:55.260
that each of the ESXi hosts connected to that segment,

75
02:55.260 --> 02:56.850
that they also have that information,

76
02:56.850 --> 02:59.670
and that's an example of the local control plane

77
02:59.670 --> 03:01.889
on our ESXi host transport nodes,
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

77
02:59.670 --> 03:01.889
on our ESXi host transport nodes,

78
03:01.889 --> 03:03.690
so they have that information.

79
03:03.690 --> 03:06.300
So the benefit is if we're doing forwarding here

80
03:06.300 --> 03:09.870
between VMs on segment 10, ESXi-A has all the information

81
03:09.870 --> 03:12.630
it needs to know to make that forwarding decision locally,

82
03:12.630 --> 03:15.240
and if it needs to forward traffic over to ESXi-B,

83
03:15.240 --> 03:16.320
it can go ahead and forward that

84
03:16.320 --> 03:18.360
through the tunnel over to ESXi-B.

85
03:18.360 --> 03:20.940
So let me clean that up just a little bit.

86
03:20.940 --> 03:23.370
So I think it'd be super valuable to take a peek

87
03:23.370 --> 03:25.020
at the information about this segment.

88
03:25.020 --> 03:27.060
Currently we have no VMs that are connected

89
03:27.060 --> 03:28.950
to any of the segments, and let's take a peek

90
03:28.950 --> 03:31.290
at this initial state at the information
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

90
03:28.950 --> 03:31.290
at this initial state at the information

91
03:31.290 --> 03:33.870
about that segment that ESXi-A has

92
03:33.870 --> 03:36.570
and compare that to the centralized control plane down here,

93
03:36.570 --> 03:39.120
the NSX manager, to compare and contrast

94
03:39.120 --> 03:41.430
what they both know about this segment.

95
03:41.430 --> 03:42.660
And to do that, I'm gonna go ahead

96
03:42.660 --> 03:44.430
and open up a terminal emulator

97
03:44.430 --> 03:47.850
and let's log in with SSH over to ESXi,

98
03:47.850 --> 03:49.860
which is our host transport node,

99
03:49.860 --> 03:51.480
and we'll have a separate screen opened up

100
03:51.480 --> 03:53.370
over to our NSX manager.

101
03:53.370 --> 03:56.010
All right, so here's our connection over to the NSX manager

102
03:56.010 --> 03:58.740
and let's go over to ESXi-A,

103
03:58.740 --> 04:01.380
and it says the remote system refused the connection
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

103
03:58.740 --> 04:01.380
and it says the remote system refused the connection

104
04:01.380 --> 04:03.420
and that's because SSH isn't enabled.

105
04:03.420 --> 04:04.650
Let's fix that real quick.

106
04:04.650 --> 04:05.970
So here in the vSphere client,

107
04:05.970 --> 04:07.980
let's go to the host and clusters view.

108
04:07.980 --> 04:09.840
Let's go to ESXi-A.

109
04:09.840 --> 04:11.460
We'll click on configure,

110
04:11.460 --> 04:14.220
and we'll go down to services.

111
04:14.220 --> 04:17.370
Click on services, and then make sure that we're allowing,

112
04:17.370 --> 04:19.410
at least for now, SSH access.

113
04:19.410 --> 04:22.050
So I'll click on start and it is now running.

114
04:22.050 --> 04:22.890
Fantastic.

115
04:22.890 --> 04:24.690
Let's go back to our terminal emulator.

116
04:24.690 --> 04:25.860
So here in our terminal emulator,

117
04:25.860 --> 04:27.450
I'll go ahead and press enter.

118
04:27.450 --> 04:30.660
So for the logins, I logged into the NSX manager as admin,
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

118
04:27.450 --> 04:30.660
So for the logins, I logged into the NSX manager as admin,

119
04:30.660 --> 04:33.930
and over here at the ESXi host, I've logged in as root,

120
04:33.930 --> 04:36.390
and I'm also in this terminal emulator called secure CRT.

121
04:36.390 --> 04:38.220
I'm gonna open up a little window at the bottom,

122
04:38.220 --> 04:40.500
so if I need to do similar commands on both

123
04:40.500 --> 04:42.120
at the same time, I can.

124
04:42.120 --> 04:43.920
So to do that, I'm gonna click here on view

125
04:43.920 --> 04:45.945
and the menu for secure CRT,

126
04:45.945 --> 04:48.273
and I'm gonna ask it to show me the command window,

127
04:48.273 --> 04:50.400
which is right here at the bottom.

128
04:50.400 --> 04:51.750
So down here in the command window,

129
04:51.750 --> 04:53.310
if I right click and then hover

130
04:53.310 --> 04:56.100
where it says send commands to, I'm gonna say all sessions.

131
04:56.100 --> 04:58.170
So now if I effectively is pressing enter

132
04:58.170 --> 05:00.450
on both console windows simultaneously.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

132
04:58.170 --> 05:00.450
on both console windows simultaneously.

133
05:00.450 --> 05:02.910
So over here on the left, on the ESX host side,

134
05:02.910 --> 05:06.000
lemme go ahead and move into NSXCLI

135
05:06.000 --> 05:08.340
by typing in NSXCLI,

136
05:08.340 --> 05:10.980
which gives us effectively the command line interface

137
05:10.980 --> 05:12.630
for the NSX stuff.

138
05:12.630 --> 05:14.310
Now press enter a few times,

139
05:14.310 --> 05:16.050
and there is context sensitive help

140
05:16.050 --> 05:17.460
on both of these interfaces.

141
05:17.460 --> 05:19.650
So if we did, for example, a get space

142
05:19.650 --> 05:21.420
and then press question mark,

143
05:21.420 --> 05:24.840
it's gonna show us a list of the next possible options,

144
05:24.840 --> 05:26.730
and one of those options is logical switches.

145
05:26.730 --> 05:29.910
So over here on this side, if we did a get space

146
05:29.910 --> 05:31.861
and a question mark, you'll notice over here,
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

146
05:29.910 --> 05:31.861
and a question mark, you'll notice over here,

147
05:31.861 --> 05:34.320
even though the commands are not all identical,

148
05:34.320 --> 05:36.057
we also here have the option if we scroll up

149
05:36.057 --> 05:39.660
of the option of getting a list of the logical switches.

150
05:39.660 --> 05:41.370
So at the command line at the very bottom,

151
05:41.370 --> 05:44.790
I'm gonna do a get logical switches and press enter.

152
05:44.790 --> 05:46.890
So this is interesting, on the ESXi host,

153
05:46.890 --> 05:50.250
this is prior to connecting any VMs to that segment,

154
05:50.250 --> 05:52.087
the ESXi host A, it's saying, you know what?

155
05:52.087 --> 05:55.770
As far as logical switches within NSX, I got nothing.

156
05:55.770 --> 05:56.670
Now, why is that?

157
05:56.670 --> 05:58.440
If we scroll to the right, nothing's there.

158
05:58.440 --> 05:59.280
So why is that?

159
05:59.280 --> 06:01.050
It's because this ESXi host,
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

159
05:59.280 --> 06:01.050
It's because this ESXi host,

160
06:01.050 --> 06:03.750
even though it could have VMs that are connected

161
06:03.750 --> 06:06.480
to that logical segment, it doesn't and as a result,

162
06:06.480 --> 06:08.340
its control plane doesn't have to worry about

163
06:08.340 --> 06:11.910
knowing about or working with that logical segment.

164
06:11.910 --> 06:13.080
So think of a segment

165
06:13.080 --> 06:15.840
like a logical layer two broadcast domain,

166
06:15.840 --> 06:18.990
here it's being referred to as a logical switch.

167
06:18.990 --> 06:21.930
But over here at the manager on the right hand side,

168
06:21.930 --> 06:24.450
it does know about one logical switch,

169
06:24.450 --> 06:27.465
and that's this VNI, this virtual network identifier,

170
06:27.465 --> 06:31.317
of 68608 with a very, very long UUID,
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

170
06:27.465 --> 06:31.317
of 68608 with a very, very long UUID,

171
06:31.317 --> 06:33.720
and if we scroll to the right a little bit more,

172
06:33.720 --> 06:36.360
it's also showing us the name of that segment.

173
06:36.360 --> 06:39.600
And again, host A doesn't really need to know about that yet

174
06:39.600 --> 06:41.940
or have anything regarding the control plane for it yet

175
06:41.940 --> 06:44.160
because it has nothing connected to it.

176
06:44.160 --> 06:45.450
So over here on the right,

177
06:45.450 --> 06:48.240
let's go ahead and do a get logical switch,

178
06:48.240 --> 06:50.730
and I'm gonna scroll up and grab that VNI.

179
06:50.730 --> 06:53.100
So we can either put in the VNI number

180
06:53.100 --> 06:55.530
or we could put this really, really long UUID,

181
06:55.530 --> 06:56.363
either way is great.

182
06:56.363 --> 06:58.017
So I'm gonna go ahead and just copy and paste the VNI,

183
06:58.017 --> 07:00.690
the virtual network identifier space
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

183
06:58.017 --> 07:00.690
the virtual network identifier space

184
07:00.690 --> 07:01.950
and then I'll do a question mark,

185
07:01.950 --> 07:03.630
and now we could ask for information

186
07:03.630 --> 07:07.320
regarding the ARP table associated with that virtual network

187
07:07.320 --> 07:09.120
or the MAC table associated

188
07:09.120 --> 07:10.560
with that virtual network segment

189
07:10.560 --> 07:13.448
or the transport node table, which if we had ESXi-A

190
07:13.448 --> 07:17.820
and ESXi-B, that both had VMs connected to that segment,

191
07:17.820 --> 07:18.750
they should show up.

192
07:18.750 --> 07:20.520
So let's do a few examples of this

193
07:20.520 --> 07:22.380
prior to bringing on any VMs.

194
07:22.380 --> 07:24.180
So let's go ahead and do an ARP table.

195
07:24.180 --> 07:26.910
Press enter and currently the command worked,

196
07:26.910 --> 07:27.780
but there's nothing there.

197
07:27.780 --> 07:29.190
There's nothing in the ARP table

198
07:29.190 --> 07:33.300
for that logical layer two segment because we have no VMs.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

198
07:29.190 --> 07:33.300
for that logical layer two segment because we have no VMs.

199
07:33.300 --> 07:35.820
So we hit the up arrow key and we swapped out ARP table

200
07:35.820 --> 07:38.430
with mac table, same thing.

201
07:38.430 --> 07:40.470
Nothing's gonna be there because we have no VMs

202
07:40.470 --> 07:43.110
connected to that layer two segment.

203
07:43.110 --> 07:44.948
And if we use the command get logical-switch

204
07:44.948 --> 07:47.010
and the same VNI number again,

205
07:47.010 --> 07:48.780
and let's use this option here, transport node table.

206
07:48.780 --> 07:50.850
So I'll copy paste that, press enter,

207
07:50.850 --> 07:52.530
and that's also coming back empty.

208
07:52.530 --> 07:55.140
And the reason that there's no host transport nodes

209
07:55.140 --> 07:58.740
associated with that segment is because neither

210
07:58.740 --> 08:00.990
of our ESXi hosts, A or B,
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

210
07:58.740 --> 08:00.990
of our ESXi hosts, A or B,

211
08:00.990 --> 08:02.640
which are both host transport nodes,

212
08:02.640 --> 08:05.460
neither of them have any need for that information.

213
08:05.460 --> 08:07.620
Neither of them have VMs that are connected

214
08:07.620 --> 08:10.200
to that logical segment called Segment 10.

215
08:10.200 --> 08:12.390
So if you're ready for something cool, here it is.

216
08:12.390 --> 08:13.950
In the next video, we'll go ahead

217
08:13.950 --> 08:15.750
and bring up a couple of VMs,

218
08:15.750 --> 08:20.400
one on ESXi-A, one on ESXi-B, we'll power 'em up.

219
08:20.400 --> 08:22.950
So I'll see you in the next video in just a moment.
