NSX 项目中已创建对象生成的日志消息会将项目(租户)上下文包含在一个标签中,此标签将附加到每条日志消息上。此类标签与在项目创建期间定义的唯一短日志标识符相匹配。

例如,在项目的 Tier-1 网关上运行的集中式服务的 Edge syslog 中生成的日志消息包含项目上下文。

默认情况下,在项目使用的 Tier-0/VRF 网关上运行的集中式服务的 Edge syslog 中生成的日志消息不包含项目上下文。原因是 Tier-0/VRF 网关归默认空间所有,并且不属于任何项目。将 Tier-0/VRF 网关分配给项目(如 A)时,不会阻止您将同一个 Tier-0/VRF 网关分配给系统中的其他项目(如 B、C 和 D)。这是 NSX 的默认行为。

NSX 4.1.2 开始,系统支持将 Tier-0/VRF 网关专用于单个项目,且仅用于日志记录目的。当 Tier-0/VRF 网关专用于某个项目时,此 Tier-0/VRF 网关上集中式服务的日志消息将包含 Edge syslog 中的项目上下文。请记住,专用于某个项目(如 A)的 Tier-0/VRF 网关仍可由系统中的其他项目(如 B、C 和 D)使用。但是,使用同一 Tier-0/VRF 网关的项目 B、C 和 D 的上下文不会存储在 Edge syslog 中,除非这些项目具有尚未专用于系统中任何其他项目的其他专用 Tier-0/VRF 网关。

要将 Tier-0/VRF 网关专用于某个项目,企业管理员必须使用 project API 在项目配置中配置 dedicated_resources 参数。目前,仅 API 支持此功能。NSX Manager UI 不支持将 Tier-0/VRF 网关专用于某个项目。

以下验证适用于在项目中专用 Tier-0/VRF 网关:
  • 要将 Tier-0/VRF 网关专用于项目,必须将该网关分配给项目。例如,如果已将 Tier-0 网关 X 和 Y 分配给某个项目,则无法将 Tier-0 网关 Z 专用于此项目。要将 Z 专用于此项目,必须先将其分配给该项目。
  • Tier-0/VRF 网关只能专用于单个项目。但是,一个项目可以有多个专用于该项目的 Tier-0/VRF 网关。例如,假设项目 A 分配了两个 Tier-0 网关 X 和 Y。可以将 Tier-0 网关 X 和 Y 专用于项目 A。但是,X 和 Y 不能专用于系统中的任何其他项目。但是,X 和 Y 可以由系统中的其他项目使用。
  • 从项目中移除 dedicated_resources 配置时,或在删除项目时,专用于此项目的 Tier-0/VRF 网关可以专用于系统中的任何其他项目。例如,假定您已将 Tier-0 网关 X 分配给项目 A 和项目 B,并将 X 配置为项目 A 中的专用资源。如果需要,您可以稍后从项目 A 中移除 dedicated_resources 配置,并将 X 作为专用资源添加到项目 B 中。
示例

假设您已创建两个名为 SalesFinance 的项目,如下图所示。Sales 项目的短日志标识符为 salespro,Finance 项目的短日志标识符为 finanpro。您已配置了 dedicated_resources 参数,以将 T0-Sales 网关专用于 Sales 项目,并将 T0-Fin 网关专用于 Finance 项目。两个 Tier-0 网关在同一 Edge 集群上运行。


周围文本对该图进行了说明。

Edge syslog 中 Tier-0 服务的日志消息将包含以下字符串,可帮助您确定项目上下文:

org="default" proj="salespro"
org="default" proj="finanpro" 

例如,假设您同时在 T0-SalesT0-Fin 网关上启用了 BGP 路由。Edge syslog 中这两个 Tier-0 网关的日志消息将具有项目上下文,如下所示:

nsx-edge> 2023-06-27T03:31:38.717Z Edge NSX 6 ROUTING [nsx comp="nsx edge" subcomp="rcpm" s2comp="rcpm-db" level="INFO" org="default" proj="salespro"] BGP update request: Bgp Config
nsx-edge> 2023-06-27T03:31:39.717Z Edge NSX 6 ROUTING [nsx comp="nsx edge" subcomp="rcpm" s2comp="rcpm-db" level="INFO" org="default" proj="finanpro"] BGP update request: Bgp Config

将 Tier-0/VRF 网关专用于项目的 API 工作流

例如,假设您已创建一个名为 Sales 的项目,并为该项目分配了两个名为 T0Sales1T0Sales2 的 Tier-0 网关。您想要将 T0Sales1 专用于此项目。为此,必须使用 project API,并将 T0Sales1 网关的路径添加到 Sales 项目的 dedicated_resources 配置中。

过程
  1. 通过运行以下 GET API 来检索当前项目配置:
    GET https://<nsx-mgr>/policy/api/v1/orgs/default/projects/Sales
  2. 复制 GET API 的响应负载,并将其粘贴到文本编辑器中。
  3. 在响应负载中,将 T0Sales1 网关的路径添加到 dedicated_resources 配置中,如下所示:
    "tier_0s": [
       "/infra/tier-0s/T0Sales1",
       "/infra/tier-0s/T0Sales2"
    ],
    "dedicated_resources": {
       "tier_0s": ["/infra/tier-0s/T0Sales1"]
    }

    要了解有关 project API 中的 dedicated_resources 参数的更多信息,请参见 NSX API 指南

  4. 将更新后的完整负载粘贴到以下 PATCH API 的请求正文中:
    PATCH https://<nsx-mgr>/policy/api/v1/orgs/default/projects/Sales

    成功运行此 API 后,Sales 项目会配置为将 T0Sales1 用作默认 Tier-0 网关。在此专用网关上运行的 Tier-0 服务的日志消息现在会将 Sales 项目的上下文包含在 Edge syslog 中。