将 syslog 消息转发到远程服务器

Google Cloud VMware Engine 提供将 syslog 消息发送到远程 syslog 服务器的选项。此配置允许您使用远程日志记录和监控系统整理和处理 syslog 消息。

准备工作

本文档中的步骤假定您已完成以下操作:

  • 如果要按名称引用远程 syslog 主机,请完成以下步骤:

转发日志

转发日志的方法取决于要转发日志的管理设备。

  • 对于 vCenter 和 ESXi 日志(包括 NSX-T Distributed Firewall (DFW) 日志),请使用 VMware Engine
  • 对于 NSX-T Manager 和 NSX-T Edge 虚拟机,请使用 NSX-T 设备

使用 VMware Engine 转发日志

如需使用 Google Cloud 控制台、Google Cloud CLI 或 VMware Engine API 配置 ESXi 或 vCenter 以将日志转发到 syslog 服务器,请执行以下操作:

控制台

如需使用 Google Cloud 控制台将 ESXi 或 vCenter 日志转发到 Syslog 服务器,请执行以下操作:

  1. 访问 Google Cloud 控制台
  2. 在主导航栏中,点击私有云
  3. 选择 Syslog 标签页。
  4. 点击创建来源。系统会显示用于创建服务器日志记录的子任务。

gcloud

如需配置 ESXi 或 vCenter 以使用 Google Cloud CLI 将日志转发到 Syslog 服务器,请使用 gcloud vmware private-clouds logging-servers create 命令

gcloud vmware private-clouds logging-servers create LOGGING_SERVER_ID \
  --project=PROJECT_ID \
  --hostname="HOST_NAME" \
  --port="PORT" \
  --source-type="SOURCE_TYPE" \
  --protocol="PROTOCOL" \
  --private-cloud=PRIVATE_CLOUD_ID \
  --location=ZONE

请替换以下内容:

  • LOGGING_SERVER_ID:此请求的日志记录服务器 ID。
  • PROJECT_ID:此请求的项目。
  • HOST_NAME:此请求的 IP 地址或完全限定域名。
  • PORT:此请求的端口号。
  • SOURCE_TYPE:此请求的来源类型,即 ESXi 或 vCenter。
  • PROTOCOL:此请求的协议(UDP 或 TCP)。
  • PRIVATE_CLOUD_ID:此请求的私有云 ID。
  • ZONE:此请求对应的区域。

API

如需配置 ESXi 或 vCenter 以使用 VMware Engine API 将日志转发到 syslog 服务器,请发出 POST 请求:

    GET "https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/privateClouds/PRIVATE_CLOUD_ID/loggingServers?logging_server_id=LOGGING_SERVER_ID" -d '{
      "hostname": "HOST_NAME",
      "port": "PORT",
      "sourceType": "SOURCE_TYPE",
      "protocol": "PROTOCOL"
    }'

请替换以下内容:

  • PROJECT_ID:此请求的项目。
  • ZONE:此请求对应的区域。
  • PRIVATE_CLOUD_ID:此请求的私有云 ID。
  • LOGGING_SERVER_ID:此请求的日志记录服务器 ID。
  • HOST_NAME:此请求的 IP 地址或完全限定域名。
  • PORT:此请求的端口号。
  • SOURCE_TYPE:此请求的来源类型,即 ESXi 或 VCSA。
  • PROTOCOL:此请求的协议(UDP 或 TCP)。

使用 NSX-T 设备转发日志

该过程因您要转发 NSX-T Manager 还是 NSX-T Edge 虚拟机日志而异。

NSX-T 管理器

如需在 VMware Engine 私有云中配置 NSX-T Manager 以将日志转发到远程 Syslog 服务器,请执行以下操作:

  1. 登录私有云中的 NSX-T 设备。请参阅访问管理设备
  2. 依次前往 System > Fabric > Profiles > Node Profiles
  3. 如需从所有 NSX 节点转发日志,请选择 All NSX Nodes。否则,请仅选择您要从中发送日志的节点。
  4. Syslog 服务器 (Syslog Servers) 部分,点击添加
  5. FQDN 或 IP 地址 (FQDN or IP Address) 字段中,输入远程 syslog 主机的 IP 地址。
  6. 端口字段中,输入远程 syslog 服务器侦听的端口号。
  7. Protocol 字段中,选择通信协议。
  8. 日志级别字段中,选择要转发的日志的级别。
  9. 点击添加

NSX-T Edge 虚拟机

如需在 VMware Engine 私有云中配置 NSX-T Edge 虚拟机以将日志转发到远程 Syslog 服务器,请与 Cloud Customer Care 联系。

管理 VMware Engine 上的日志记录服务器

以下步骤介绍了如何描述、列出、修改或删除日志记录服务器。

描述日志记录服务器

您可以使用 Google Cloud 控制台、Google Cloud CLI 或 VMware Engine API 获取日志记录服务器的说明,具体操作步骤如下:

控制台

如需使用 Google Cloud 控制台获取已配置日志记录服务器的说明,请执行以下操作:

  1. 访问 Google Cloud 控制台
  2. 在主导航栏中,点击私有云
  3. 选择 Syslog 标签页。Syslog 表中列出了日志记录服务器详细信息。

gcloud

如需使用 Google Cloud CLI 获取已配置日志记录服务器的说明,请使用 gcloud vmware private-clouds logging-servers describe 命令

gcloud vmware private-clouds logging-servers describe LOGGING_SERVER_ID \
  --project=PROJECT_ID \
  --private-cloud=PRIVATE_CLOUD_ID \
  --location=ZONE

请替换以下内容:

  • LOGGING_SERVER_ID:此请求的日志记录服务器 ID。
  • PROJECT_ID:此请求的项目。
  • PRIVATE_CLOUD_ID:此请求的私有云 ID。
  • ZONE:此请求对应的区域。

API

如需使用 VMware Engine API 获取已配置日志记录服务器的说明,请发出以下请求:

     GET "https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/privateClouds/PRIVATE_CLOUD_ID/loggingServers/LOGGING_SERVER_ID"
  

请替换以下内容:

  • PROJECT_ID:此请求的项目。
  • ZONE:此请求对应的区域。
  • PRIVATE_CLOUD_ID:此请求的私有云 ID。
  • LOGGING_SERVER_ID:此请求的日志记录服务器 ID。

列出日志记录服务器

您可以使用 Google Cloud 控制台、Google Cloud CLI 或 VMware Engine API 获取日志记录服务器列表,具体操作步骤如下:

控制台

如需使用 Google Cloud 控制台获取已配置的日志记录服务器列表,请执行以下操作:

  1. 访问 Google Cloud 控制台
  2. 在主导航栏中,点击私有云
  3. 选择 Syslog 标签页。Syslog 表中会列出所有已配置的日志记录服务器。

gcloud

如需使用 Google Cloud CLI 获取已配置的日志记录服务器的列表,请使用 gcloud vmware private-clouds logging-servers list 命令

gcloud vmware private-clouds logging-servers list \
  --project=PROJECT_ID \
  --private-cloud=PRIVATE_CLOUD_ID \
  --location=ZONE

请替换以下内容:

  • PROJECT_ID:此请求的项目。
  • PRIVATE_CLOUD_ID:此请求的私有云 ID。
  • ZONE:此请求对应的区域。

API

如需使用 VMware Engine API 获取已配置的日志记录服务器列表,请发出以下请求:

     GET "https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/privateClouds/PRIVATE_CLOUD_ID/loggingServers/"
  

请替换以下内容:

  • PROJECT_ID:此请求的项目。
  • ZONE:此请求对应的区域。
  • PRIVATE_CLOUD_ID:此请求的私有云 ID。

修改日志记录服务器

如果您要使用 Google Cloud 控制台、Google Cloud CLI 或 VMware Engine API 更新日志记录服务器,请执行以下操作:

控制台

如果您要使用 Google Cloud 控制台更新已配置的日志记录服务器,请执行以下操作:

  1. 访问 Google Cloud 控制台
  2. 在主导航栏中,点击私有云
  3. 选择 Syslog 标签页。
  4. 点击行尾的更多 图标,然后选择修改
  5. 在日志记录服务器修改窗口中进行更新。

gcloud

如需使用 Google Cloud CLI 更新已配置的日志记录服务器,请使用 gcloud vmware private-clouds logging-servers update 命令

gcloud vmware private-clouds logging-servers update LOGGING_SERVER_ID \
  --project=PROJECT_ID \
  --hostname="HOST_NAME" \
  --port="PORT" \
  --source-type="SOURCE_TYPE" \
  --protocol="PROTOCOL" \
  --private-cloud=PRIVATE_CLOUD_ID \
  --location=ZONE

请替换以下内容:

  • LOGGING_SERVER_ID:此请求的日志记录服务器 ID。
    • PROJECT_ID:此请求的项目。
    • HOST_NAME:此请求的 IP 地址或完全限定域名。
    • PORT:此请求的端口号。
    • SOURCE_TYPE:此请求的来源类型,即 ESXi 或 VCSA。
    • PROTOCOL:此请求的协议(UDP 或 TCP)。
    • PRIVATE_CLOUD_ID:此请求的私有云 ID。
    • ZONE:此请求对应的区域。

API

如需使用 VMware Engine API 更新已配置的日志记录服务器,请发出 PATCH 请求:

     PATCH "https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/privateClouds/PRIVATE_CLOUD_ID/loggingServers/LOGGING_SERVER_ID?updateMask=hostname,sourceType,protocol,port" -d '{
        "hostname": "HOST_NAME",
        "port": "PORT",
        "sourceType": "SOURCE_TYPE",
        "protocol": "PROTOCOL"
     }'
  

请替换以下内容:

  • PROJECT_ID:此请求的项目。
  • ZONE:此请求对应的区域。
  • PRIVATE_CLOUD_ID:此请求的私有云 ID。
  • LOGGING_SERVER_ID:此请求的日志记录服务器 ID。
  • HOST_NAME:此请求的 IP 地址或完全限定域名。
  • PORT:此请求的端口号。
  • SOURCE_TYPE:此请求的来源类型,即 ESXi 或 VCSA。
  • PROTOCOL:此请求的协议(UDP 或 TCP)。

删除日志记录服务器

如需使用 Google Cloud 控制台、Google Cloud CLI 或 VMware Engine API 删除日志记录服务器,请执行以下操作:

控制台

如需使用 Google Cloud 控制台删除已配置的日志记录服务器,请执行以下操作:

  1. 访问 Google Cloud 控制台
  2. 在主导航栏中,点击私有云
  3. 选择 Syslog 标签页。
  4. 点击行末尾的更多图标,然后选择删除

gcloud

如需使用 Google Cloud CLI 删除已配置的日志记录服务器,请使用 gcloud vmware private-clouds logging-servers delete 命令

gcloud vmware private-clouds logging-servers delete LOGGING_SERVER_ID \
  --project=PROJECT_ID \
  --private-cloud=PRIVATE_CLOUD_ID \
  --location=ZONE

请替换以下内容:

  • LOGGING_SERVER_ID:此请求的日志记录服务器 ID。
  • PROJECT_ID:此请求的项目。
  • PRIVATE_CLOUD_ID:此请求的私有云 ID。
  • ZONE:此请求对应的区域。

API

如需使用 VMware Engine API 删除已配置的日志记录服务器,请发出 DELETE 请求:

     GET "https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/privateClouds/PRIVATE_CLOUD_ID/loggingServers/NETWORK_ID"
  

请替换以下内容:

  • PROJECT_ID:此请求的项目。
  • ZONE:此请求对应的区域。
  • PRIVATE_CLOUD_ID:此请求的私有云 ID。
  • NETWORK_ID:此请求的网络 ID。