将 syslog 消息转发到远程服务器
Google Cloud VMware Engine 提供将 syslog 消息发送到远程 syslog 服务器的选项。此配置允许您使用远程日志记录和监控系统整理和处理 syslog 消息。
准备工作
本文档中的步骤假定您已完成以下操作:
如果要按名称引用远程 syslog 主机,请完成以下步骤:
- 对于标准 VMware Engine 网络,请配置 DNS 绑定。
- 对于旧版 VMware Engine 网络,请配置条件 DNS 转发规则。
转发日志
转发日志的方法取决于您要转发日志的管理设备。
- 对于 vCenter 和 ESXi 日志(包括 NSX-T 分布式防火墙 (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 服务器,请执行以下操作:
- 访问 Google Cloud 控制台。
- 在主导航栏中,点击私有云。
- 选择 Syslog 标签页。
- 点击创建来源。此时将显示用于记录服务器创建日志的子任务。
gcloud
如需使用 Google Cloud CLI 配置 ESXi 或 vCenter,将日志转发到 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 服务器,请执行以下操作:
- 登录您的私有云中的 NSX-T 设备。请参阅访问管理设备
- 依次转到系统 > Fabric > 配置文件 > 节点配置文件。
- 如需从所有 NSX 节点转发日志,请选择 All NSX Nodes。否则,请仅选择您要从中发送日志的节点。
- 在 Syslog 服务器 (Syslog Servers) 部分,点击添加。
- 在 FQDN 或 IP 地址 (FQDN or IP Address) 字段中,输入远程 syslog 主机的 IP 地址。
- 在端口字段中,输入远程 syslog 服务器侦听的端口号。
- 在 Protocol 字段中,选择通信协议。
- 在日志级别字段中,选择要转发的日志的级别。
- 点击添加。
NSX-T Edge 虚拟机
如需在 VMware Engine 私有云中配置 NSX-T Edge 虚拟机,以将日志转发到远程 Syslog 服务器,请与 Cloud Customer Care 团队联系。
管理 VMware Engine 上的日志记录服务器
以下过程介绍了如何描述、列出、修改或删除日志记录服务器。
描述日志记录服务器
您可以使用 Google Cloud 控制台、Google Cloud CLI 或 VMware Engine API 获取日志记录服务器的说明,具体操作步骤如下:
控制台
如需使用 Google Cloud 控制台获取已配置的日志记录服务器的说明,请执行以下操作:
- 访问 Google Cloud 控制台。
- 在主导航栏中,点击私有云。
- 选择 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 控制台获取已配置的日志记录服务器的列表,请执行以下操作:
- 访问 Google Cloud 控制台。
- 在主导航栏中,点击私有云。
- 选择 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 控制台更新已配置的日志记录服务器,请执行以下操作:
- 访问 Google Cloud 控制台。
- 在主导航栏中,点击私有云。
- 选择 Syslog 标签页。
- 点击行末尾的更多 图标,然后选择修改。
- 在日志记录服务器修改窗口中进行更新。
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 控制台删除已配置的日志记录服务器,请执行以下操作:
- 访问 Google Cloud 控制台。
- 在主导航栏中,点击私有云。
- 选择 Syslog 标签页。
- 点击行末尾的更多 图标,然后选择删除。
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。