使用软件 iSCSI 配置网络连接时,请考虑以下几种最佳做法。
软件 iSCSI 端口绑定
您可以将 ESXi 主机上的软件 iSCSI 启动器绑定到单个或多个 VMkernel 端口,以便 iSCSI 流量仅通过绑定端口。配置端口绑定后,iSCSI 启动器将创建从所有绑定端口到所有配置目标门户的 iSCSI 会话。
VMkernel 端口 | 目标门户 | iSCSI 会话 |
---|---|---|
2 个绑定的 VMkernel 端口 | 2 个目标门户 | 4 个会话 (2 x 2) |
4 个绑定的 VMkernel 端口 | 1 个目标门户 | 4 个会话 (4 x 1) |
2 个绑定的 VMkernel 端口 | 4 个目标门户 | 8 个会话 (2 x 4) |
无端口绑定
如果不使用端口绑定,ESXi 网络连接层会根据其路由表选择最佳 VMkernel 端口。主机通过该端口使用目标门户创建 iSCSI 会话。若无端口绑定,只能为每个目标门户创建一个会话。
VMkernel 端口 | 目标门户 | iSCSI 会话 |
---|---|---|
2 个未绑定的 VMkernel 端口 | 2 个目标门户 | 2 个会话 |
4 个未绑定的 VMkernel 端口 | 1 个目标门户 | 1 个会话 |
2 个未绑定的 VMkernel 端口 | 4 个目标门户 | 4 个会话 |
软件 iSCSI 多路径
示例 1. 含单个网络门户的 iSCSI 目标的多个路径
如果您的目标只有一个网络门户,则可通过在 ESXi 主机上添加多个 VMkernel 端口并将其绑定到 iSCSI 启动器,创建多个指向该目标的路径。
在此示例中,所有启动器端口和目标门户均在同一子网中配置。该目标可通过所有绑定端口访问。您有四个 VMkernel 端口和一个目标门户,因此总共创建了四个路径。
若无端口绑定,只会创建一个路径。
示例 2.含不同子网中的 VMkernel 端口的多个路径
通过在不同的 IP 子网上配置多个端口和目标门户,即可创建多个路径。通过将启动器和目标端口保留在不同的子网中,您可以强制 ESXi 创建经过特定端口的路径。在此配置中,并不使用端口绑定,因为端口绑定要求所有启动器和目标端口位于同一子网上。
ESXi 在连接到控制器 A 和控制器 B 的端口 0 时选择 vmk1,因为所有这三个端口均位于同一子网上。同样地,在连接到控制器 A 和控制器 B 的端口 1 时选择 vmk2。您可以在此配置中使用网卡绑定。
路径 | 描述 |
---|---|
路径 1 | vmk1 和控制器 A 的端口 0 |
路径 2 | vmk1 和控制器 B 的端口 0 |
路径 3 | vmk2 和控制器 A 的端口 1 |
路径 4 | vmk2 和控制器 B 的端口 2 |
使用软件 iSCSI 路由
您可以使用 esxcli 命令为 iSCSI 流量添加静态路由。配置静态路由后,不同子网中的启动器和目标端口可以相互通信。
示例 1. 使用具有端口绑定的静态路由
在此示例中,您将所有绑定的 VMkernel 端口保留在一个子网 (N1) 中,并在另一个子网 (N2) 中配置所有目标门户。然后,可以为目标子网 (N2) 添加静态路由。
使用以下命令:
# esxcli network ip route ipv4 add -gateway 192.168.1.253 -network 10.115.179.0/24
示例 2.使用静态路由创建多个路径
在此示例中,使用不同的子网时将使用静态路由。不能在此配置中使用端口绑定。
您在独立子网 192.168.1.0 和 192.168.2.0 中配置 vmk1 和 vmk2。此外,目标门户也位于独立子网 10.115.155.0 和 10.155.179.0 中。
可以从 vmk1 为 10.115.155.0 添加静态路由。请确保网关可从 vmk1 进行访问。
# esxcli network ip route ipv4 add -gateway 192.168.1.253 -network 10.115.155.0/24
然后从 vmk2 为 10.115.179.0 添加静态路由。请确保网关可从 vmk2 进行访问。
# esxcli network ip route ipv4 add -gateway 192.168.2.253 -network 10.115.179.0/24
使用控制器 A 的端口 0 进行连接时,将使用 vmk1。
使用控制器 B 的端口 0 进行连接时,将使用 vmk2。
示例 3.每个 VMkernel 端口使用一个单独的网关进行路由
从 vSphere 6.5 开始,您可以为每个 VMkernel 端口配置一个单独网关。如果使用 DHCP 获取 VMkernel 端口的 IP 配置,还可使用 DHCP 获取网关信息。
要查看每个 VMkernel 端口的网关信息,请使用以下命令:
通过每个 VMkernel 端口的单独网关,您可使用端口绑定访问不同子网中的目标。