本页面介绍了如何为代理网络负载均衡器配置和使用 Cloud Logging 和 Cloud Monitoring。
监控资源
下表指定了负载均衡器的资源名称。
区域级外部代理网络负载均衡器 区域级内部代理网络负载均衡器 跨区域内部代理网络负载均衡器 全球外部代理网络负载均衡器 |
传统代理网络负载均衡器 | |
---|---|---|
Logging 受监控的资源类型 | “代理网络负载均衡器规则”l4_proxy_rule |
“全球外部代理网络负载均衡器规则”tcp_ssl_proxy_rule |
Monitoring 受监控的资源类型 | “代理网络负载均衡器规则”l4_proxy_rule |
“全球外部代理网络负载均衡器规则”tcp_ssl_proxy_rule |
用于代理网络负载均衡器的日志记录
日志提供了对负载均衡器进行问题排查和监控的有用信息。系统会汇总每个连接的日志,可让您深入了解每个连接如何路由到服务后端。
使用日志无需额外费用。但是,根据您导入日志的方式,您需要按 Cloud Logging、BigQuery 或 Pub/Sub 的标准价格付费。此外,启用日志不会影响负载均衡器的性能。
日志采样和收集
系统会对离开和进入负载均衡器后端虚拟机 (VM) 实例的连接进行采样。然后,系统会处理这些采样的连接以生成日志。您可以根据 logConfig.sampleRate 参数控制系统以日志条目形式发出的连接的比例。当 logConfig.sampleRate
为 1.0
(100%) 时,表示系统会为所有连接生成日志并写入 Cloud Logging。
为新的后端服务启用日志记录功能
gcloud
使用 gcloud compute backend-services create
命令。
对于区域级外部代理网络负载均衡器和区域级内部代理网络负载均衡器,请使用以下命令:
gcloud compute backend-services create BACKEND_SERVICE \ --region=REGION \ --enable-logging \ --logging-sample-rate=SAMPLE_RATE
对于全球外部代理网络负载均衡器、传统代理网络负载均衡器或跨区域内部代理网络负载均衡器:
gcloud compute backend-services create BACKEND_SERVICE \ --global \ --enable-logging \ --logging-sample-rate=SAMPLE_RATE
替换以下内容:
BACKEND_SERVICE
:后端服务的名称。REGION
:要创建的后端服务的区域。SAMPLE_RATE
:只有在为此后端服务启用日志记录功能时,才能指定此字段。该字段的值必须介于
0.0 to 1.0
之间,其中0.0
表示未报告任何日志,1.0
表示记录所有连接。如果启用日志记录功能,但将采样率设置为0.0
,则相当于停用日志记录功能。默认值为1.0
。
API
向 regionBackendServices.insert
方法发出 POST
请求:
对于区域级内部代理网络负载均衡器:
{ "name": "BACKEND_SERVICE", "loadBalancingScheme": "INTERNAL_MANAGED", "logConfig": { "enable": true, "sampleRate": SAMPLE_RATE } }
对于区域级外部代理网络负载均衡器:
{ "name": "BACKEND_SERVICE", "loadBalancingScheme": "EXTERNAL_MANAGED", "logConfig": { "enable": true, "sampleRate": SAMPLE_RATE } }
对于全球外部代理网络负载均衡器,请使用以下命令:
向 backendServices.insert
方法发出 POST
请求:
{ "name": "BACKEND_SERVICE", "loadBalancingScheme": "EXTERNAL_MANAGED", "logConfig": { "enable": true, "sampleRate": SAMPLE_RATE } }
对于传统代理网络负载均衡器:
向 backendServices.insert
方法发出 POST
请求:
{ "name": "BACKEND_SERVICE", "loadBalancingScheme": "EXTERNAL", "logConfig": { "enable": true, "sampleRate": SAMPLE_RATE } }
对于跨区域内部代理网络负载均衡器:
向 backendServices.insert
方法发出 POST
请求:
{ "name": "BACKEND_SERVICE", "loadBalancingScheme": "INTERNAL_MANAGED", "logConfig": { "enable": true, "sampleRate": SAMPLE_RATE } }
请替换以下内容:
BACKEND_SERVICE
:后端服务的名称。SAMPLE_RATE
:只有在为此后端服务启用日志记录功能时,才能指定此字段。该字段的值必须介于
0.0 to 1.0
之间,其中0.0
表示未报告任何日志,1.0
表示记录所有连接。如果启用日志记录功能,但将采样率设置为0.0
,则相当于停用日志记录功能。默认值为1.0
。
为现有后端服务启用日志记录功能
gcloud
使用 gcloud
compute backend-services update
命令。
对于区域级外部代理网络负载均衡器和区域级内部代理网络负载均衡器,请使用以下命令:
gcloud compute backend-services update BACKEND_SERVICE \ --region=REGION \ --enable-logging \ --logging-sample-rate=SAMPLE_RATE
对于全球外部代理网络负载均衡器、传统代理网络负载均衡器或跨区域内部代理网络负载均衡器:
gcloud compute backend-services update BACKEND_SERVICE \ --global \ --enable-logging \ --logging-sample-rate=SAMPLE_RATE
替换以下内容:
BACKEND_SERVICE
:后端服务的名称。REGION
:要创建的后端服务的区域。SAMPLE_RATE
:只有在为此后端服务启用日志记录功能时,才能指定此字段。该字段的值必须介于
0.0 to 1.0
之间,其中0.0
表示未报告任何日志,1.0
表示记录所有连接。如果启用日志记录功能,但将采样率设置为0.0
,则相当于停用日志记录功能。默认值为1.0
。
API
向 regionBackendServices/patch
方法发出 PATCH
请求:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/backendServices/BACKEND_SERVICE
对于区域级内部代理网络负载均衡器:
{ "name": "BACKEND_SERVICE", "loadBalancingScheme": "INTERNAL_MANAGED", "logConfig": { "enable": true, "sampleRate": SAMPLE_RATE } }
对于区域级外部代理网络负载均衡器:
{ "name": "BACKEND_SERVICE", "loadBalancingScheme": "EXTERNAL_MANAGED", "logConfig": { "enable": true, "sampleRate": SAMPLE_RATE } }
对于全球外部代理网络负载均衡器,请使用以下命令:
向 backendServices/patch
方法发出 PATCH
请求:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE { "name": "BACKEND_SERVICE", "loadBalancingScheme": "EXTERNAL_MANAGED", "logConfig": { "enable": true, "sampleRate": SAMPLE_RATE } }
对于传统代理网络负载均衡器:
向 backendServices/patch
方法发出 PATCH
请求:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE { "name": "BACKEND_SERVICE", "loadBalancingScheme": "EXTERNAL", "logConfig": { "enable": true, "sampleRate": SAMPLE_RATE } }
对于跨区域内部代理网络负载均衡器:
向 backendServices/patch
方法发出 PATCH
请求:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE { "name": "BACKEND_SERVICE", "loadBalancingScheme": "INTERNAL_MANAGED", "logConfig": { "enable": true, "sampleRate": SAMPLE_RATE } }
请替换以下内容:
PROJECT_ID
:您的项目的名称。BACKEND_SERVICE
:后端服务的名称。SAMPLE_RATE
:只有在为此后端服务启用日志记录功能时,才能指定此字段。
该字段的值必须介于
0.0 to 1.0
之间,其中0.0
表示未报告任何日志,1.0
表示记录所有连接。如果启用日志记录功能,但将采样率设置为0.0
,则相当于停用日志记录功能。默认值为1.0
。
为现有后端服务启用日志记录功能
gcloud
使用 gcloud compute backend-services update
命令。
对于区域级外部代理网络负载均衡器和区域级内部代理网络负载均衡器,请使用以下命令:
gcloud compute backend-services update BACKEND_SERVICE \ --region=REGION \ --no-enable-logging
对于全球外部代理网络负载均衡器、传统代理网络负载均衡器或跨区域内部代理网络负载均衡器:
gcloud compute backend-services update BACKEND_SERVICE \ --global \ --no-enable-logging
替换以下内容:
BACKEND_SERVICE
:后端服务的名称。REGION
:后端服务的区域。
API
对于区域级外部代理网络负载均衡器和区域级内部代理网络负载均衡器,请使用以下命令:
向 regionBackendServices/patch
方法发出 PATCH
请求:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/backendServices/BACKEND_SERVICE { "logConfig": { "enable": false } }
对于全球外部代理网络负载均衡器、传统代理网络负载均衡器或跨区域内部代理网络负载均衡器:
向 backendServices/patch
方法发出 PATCH
请求:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE { "logConfig": { "enable": false } }
请替换以下内容:
PROJECT_ID
:您的项目的名称。REGION
:后端服务的区域。BACKEND_SERVICE
:后端服务的名称。
查看日志
如果日志注入到 Cloud Logging 中,并且未通过日志路由器接收器排除,则您可以使用 Cloud Logging API 和 Google Cloud CLI 读取日志。
如需查看所有日志,请完成以下步骤。
控制台
在 Google Cloud 控制台中,转到日志浏览器页面。
选择代理网络负载均衡器规则资源类型。
选择 loadbalancing.googleapis.com/connections 日志名称。
控制台查询
在 Google Cloud 控制台中,转到日志浏览器页面。
点击显示查询切换开关。
将以下内容粘贴到查询字段中。
resource.type="LOG_RESOURCE_TYPE" logName="projects/PROJECT_ID/logs/loadbalancing.googleapis.com/connections"
点击运行查询。
替换以下内容:
LOG_RESOURCE_TYPE
:设置为l4_proxy_rule
或tcp_ssl_proxy_rule
的日志记录受监的控资源类型。PROJECT_ID
:您的项目的名称。
查看特定后端服务的日志
如需查看特定后端服务的日志,请完成以下步骤。
控制台查询
在 Google Cloud 控制台中,转到日志浏览器页面。
点击显示查询切换开关。
将以下内容粘贴到查询字段中。
resource.type="LOG_RESOURCE_TYPE" logName="projects/PROJECT_ID/logs/loadbalancing.googleapis.com/connections" resource.labels.backend_service_name="BACKEND_SERVICE_NAME"
点击运行查询。
替换以下内容:
LOG_RESOURCE_TYPE
:设置为l4_proxy_rule
或tcp_ssl_proxy_rule
的日志记录受监的控资源类型。PROJECT_ID
:您的项目的名称。BACKEND_SERVICE_NAME
:后端服务的名称。
查看后端实例组的日志
如需查看特定后端实例组的日志,请完成以下步骤。
控制台查询
在 Google Cloud 控制台中,转到日志浏览器页面。
点击显示查询切换开关。
将以下内容粘贴到查询字段中。
resource.type="LOG_RESOURCE_TYPE" logName="projects/PROJECT_ID/logs/loadbalancing.googleapis.com/connections" resource.labels.backend_group_name="BACKEND_GROUP_NAME"
点击运行查询。
替换以下内容:
LOG_RESOURCE_TYPE
:设置为l4_proxy_rule
或tcp_ssl_proxy_rule
的日志记录受监的控资源类型。PROJECT_ID
:您的项目的名称。BACKEND_GROUP_NAME
:实例组的名称。
记录的内容
日志条目包含对监控和调试流量有用的信息。日志记录包含必填字段,这些字段是每个日志记录的默认字段。
字段 | 字段格式 | 字段类型:必填或可选 | 说明 |
---|---|---|---|
severity timestamp receiveTimestamp insertID logName |
LogEntry | 必填 | 日志条目中描述的常规字段。 |
resource | MonitoredResource | 必填 | MonitoredResource 是与日志条目关联的资源类型。 MonitoredResourceDescriptor 使用类型名称和一组标签来描述 |
jsonPayload | 对象 (结构体格式) | 必填 | 以 JSON 对象表示的日志条目载荷。JSON 对象包含以下字段:
|
日志字段
日志记录包含必填字段,这些字段是每个日志记录的默认字段。
某些日志字段在给定字段中包含多段数据,即这些日志字段采用多字段格式。例如,connection
字段采用 IpConnection
格式,它在单个字段中包含来源 IP 地址和目的地 IP 地址、端口以及协议。以下记录格式表介绍了这些采用多字段格式的日志字段。
下表列出了资源 l4_proxy_rule 的所有必填日志字段。
字段 | 字段格式 | 说明 |
---|---|---|
连接 | IpConnection | 描述此连接的 5 元组。 |
startTime | 字符串 | 负载均衡器接受来自客户端的连接时的时间戳(RFC 3339 日期字符串格式)。 |
endTime | 字符串 | 客户端或后端终结连接时的时间戳(RFC 3339 日期字符串格式)。 |
bytesSent | int64 | 从服务器发送到客户端的字节数。 |
bytesReceived | int64 | 服务器从客户端接收的字节数。 |
IpConnection 字段格式
字段 | 类型 | 说明 |
---|---|---|
clientIp | 字符串 | 客户端 IP 地址 |
clientPort | int32 | 客户端端口。仅针对 TCP 和 UDP 连接设置。 |
serverIp | 字符串 | 服务器 IP 地址(转发规则 IP 地址) |
serverPort | int32 | 服务器端口。仅针对 TCP 和 UDP 连接设置。 |
protocol | int32 | IANA 协议编号 |
proxyStatus 错误字段
proxyStatus
字段包含一个字符串,用于指定负载均衡器返回错误的原因。proxyStatus
字段包含两个部分:proxyStatus error
和 proxyStatus details
。本部分介绍了 proxyStatus error
字段支持的字符串。
proxyStatus 错误字段适用于以下负载均衡器:
- 全局外部代理网络负载均衡器
- 区域级外部代理网络负载均衡器
- 跨区域内部代理网络负载均衡器
- 区域级内部代理网络负载均衡器
proxyStatus 错误 | 说明 | 通用的附带响应代码 |
---|---|---|
destination_unavailable
|
负载均衡器认为后端不可用。例如,最近尝试与后端通信失败,或者健康检查可能导致失败。 | 500、503 |
connection_timeout
|
负载均衡器尝试打开与后端的连接时超时。 | 504 |
connection_terminated
|
在收到完整响应之前,负载均衡器与后端的连接已终结。 在出现以下任一情况时,系统会返回此
|
0、502、503 |
connection_refused
|
负载均衡器与后端的连接被拒绝。 | 502、503 |
connection_limit_reached
|
负载均衡器配置为限制其与后端的连接数,并且超出了该限制。 在出现以下任一情况时,系统会返回此
|
502、503 |
destination_not_found
|
负载均衡器无法确定要用于此请求的适当后端。例如,可能未配置后端。 | 500、404 |
dns_error
|
负载均衡器在尝试查找后端主机名的 IP 地址时遇到 DNS 错误。 | 502、503 |
proxy_configuration_error
|
负载均衡器遇到内部错误。 | 500 |
proxy_internal_error
|
负载均衡器遇到内部错误。 | 0、500、502 |
proxy_internal_response
|
负载均衡器在未尝试连接到后端的情况下生成响应。 | 任何响应代码,具体取决于问题类型。例如,410 响应代码表示后端因欠费而不可用。
|
tls_protocol_error
|
负载均衡器在 TLS 握手期间遇到 TLS 错误。 | 0 |
tls_certificate_error
|
负载均衡器在验证服务器提供的证书时遇到错误。 | 0 |
tls_alert_received
|
负载均衡器在 TLS 握手期间遇到严重 TLS 提醒。 | 0 |
proxyStatus 详细信息字段
proxyStatus
字段包含一个字符串,用于指定负载均衡器返回错误的原因。proxyStatus
字段包含两个部分:proxyStatus error
和 proxyStatus details
。proxyStatus details
字段为可选字段,仅在提供更多信息时才会显示。本部分介绍了 proxyStatus details
字段支持的字符串。
proxyStatus 详细信息字段适用于以下负载均衡器:
- 全局外部代理网络负载均衡器
- 区域级外部代理网络负载均衡器
- 区域级内部代理网络负载均衡器
- 跨区域内部代理网络负载均衡器
proxyStatus 详细信息 | 说明 | 通用的附带响应代码 |
---|---|---|
client_disconnected_before_any_response
|
在负载均衡器发送任何响应之前,与客户端的连接已中断。 | 0 |
backend_connection_closed
|
后端意外关闭与负载均衡器的连接。如果负载均衡器正在向另一个实体(例如 TCP 超时短于负载均衡器 10 分钟 [600 秒] 超时的第三方应用)发送流量,可能会发生这种情况。 | 502 |
failed_to_connect_to_backend
|
负载均衡器无法连接到后端。此失败包括连接阶段的超时。 | 503 |
failed_to_pick_backend
|
负载均衡器无法挑选运转状况良好的后端来处理请求。 | 502 |
handled_by_identity_aware_proxy
|
此响应由 Identity-Aware Proxy (IAP) 在允许访问之前验证客户端身份期间生成。 | 200、302、400、401、403、500、502 |
request_overall_timeout
|
超出总请求超时时间。 | 408、503、504 |
tls_version_not_supported
|
系统可以识别 TLS 协议版本,但不支持该版本。该错误会导致 TLS 连接关闭。 | 0 |
unknown_psk_identity
|
如果需要建立 PSK 密钥,但客户端未提供可接受的 PSK 身份,则服务器会发送此错误。该错误会导致 TLS 连接关闭。 | 0 |
no_application_protocol
|
当客户端“application_layer_protocol_negotiation”扩展仅通告服务器不支持的协议时,服务器会发送此错误。请参阅 TLS 应用层协议协商扩展。该错误会导致 TLS 连接关闭。 | 0 |
no_certificate
|
未找到任何证书。该错误会导致 TLS 连接关闭。 | 0 |
bad_certificate
|
证书无效,或者包含无法验证的签名。该错误会导致 TLS 连接关闭。 | 0 |
unsupported_certificate
|
证书的类型不受支持。该错误会导致 TLS 连接关闭。 | 0 |
certificate_revoked
|
证书签名者已撤消该证书。该错误会导致 TLS 连接关闭。 | 0 |
certificate_expired
|
证书已过期或无效。该错误会导致 TLS 连接关闭。 | 0 |
certificate_unknown
|
处理证书时出现了一些未指定的问题,导致证书不可接受。该错误会导致 TLS 连接关闭。 | 0 |
unknown_ca
|
收到了有效的证书链或部分链,但证书未被接受,因为找不到 CA 证书或者无法与已知的信任锚匹配。该错误会导致 TLS 连接关闭。 | 0 |
unexpected_message
|
不当消息,例如收到了错误的握手消息或过早的应用数据。该错误会导致 TLS 连接关闭。 | 0 |
bad_record_mac
|
收到了无法去保护的记录。该错误会导致 TLS 连接关闭。 | 0 |
record_overflow
|
收到了长度超过 214+256 字节的 TLSCiphertext 记录,或者记录解密为长度超过 214 字节(或某个其他协商的限制)的 TLSPlaintext 记录。该错误会导致 TLS 连接关闭。
|
0 |
handshake_failure
|
在提供可用选项的情况下,无法协商可接受的一组安全参数。该错误会导致 TLS 连接关闭。 | 0 |
illegal_parameter
|
握手中的字段不正确或与其他字段不一致。该错误会导致 TLS 连接关闭。 | 0 |
access_denied
|
已收到有效的证书或 PSK,但应用访问权限控制时,客户端未继续协商。该错误会导致 TLS 连接关闭。 | 0 |
decode_error
|
由于某些字段超出了指定范围或消息长度不正确,因此无法对消息进行解码。该错误会导致 TLS 连接关闭。 | 0 |
decrypt_error
|
握手(非记录层)加密操作失败,包括无法正确验证签名,或者无法正确验证已完成的消息或 PSK Binder。该错误会导致 TLS 连接关闭。 | 0 |
insufficient_security
|
由于服务器需要的参数比客户端支持的参数更安全,因此协商失败。该错误会导致 TLS 连接关闭。 | 0 |
inappropriate_fallback
|
服务器在响应来自客户端的无效连接重试尝试时发送此错误。该错误会导致 TLS 连接关闭。 | 0 |
user_cancelled
|
用户由于与协议失败无关的某种原因而取消握手。该错误会导致 TLS 连接关闭。 | 0 |
missing_extension
|
由接收握手消息的端点发送此错误,该消息不包含必须为提供的 TLS 版本或其他协商参数发送的扩展。该错误会导致 TLS 连接关闭。 | 0 |
unsupported_extension
|
由接收任何握手消息的端点发送此错误,该消息包含已知被禁止纳入给定握手消息中的扩展,或者包含并非第一次在相应 ClientHello 或 CertificateRequest 中提供的 ServerHello 或 Certificate 中的任何扩展。
该错误会导致 TLS 连接关闭。
|
0 |
unrecognized_name
|
当不存在可以由客户端通过“server_name”扩展提供的名称来标识的服务器时,服务器会发送此错误。请参阅 TLS 扩展定义。 | 0 |
bad_certificate_status_response
|
当服务器通过“status_request”扩展提供无效或不可接受的 OCSP 响应时,客户端会发送此错误。请参阅 TLS 扩展定义。 该错误会导致 TLS 连接关闭。 | 0 |
load_balancer_configured_resource_limits_reached
|
负载均衡器达到了配置的资源限制,例如连接数上限。 | 400、500、503 |
失败的 TLS 连接日志条目
如果在选择任何后端之前客户端与负载均衡器之间的 TLS 连接失败,则日志条目会记录错误。您可以为后端服务配置不同的日志采样率。TLS 连接失败时,失败的 TLS 连接日志采样率是任何后端服务的最高采样率。例如,如果您对两个后端服务将日志记录采样率配置为 0.3
和 0.5
,则失败的 TLS 连接日志采样率为 0.5
。
您可以通过检查以下日志条目详细信息来识别失败的 TLS 连接:
- proxyStatus 错误类型为
tls_alert_received
、tls_certificate_error
、tls_protocol_error
或connection_terminated
。 - 没有后端信息。
以下示例显示了包含 proxyStatus error
字段的 TLS 日志条目:
json_payload: { @type: "type.googleapis.com/google.cloud.loadbalancing.type.LoadBalancerLogEntry" proxyStatus: "error="tls_alert_received"; details="server_to_client: handshake_failure"" log_name: "projects/529254013417/logs/mockservice.googleapis.com%20name" } http_request { latency { nanos: 12412000 } protocol: "HTTP/1.0" remote_ip: "127.0.0.2" } resource { type: "mock_internal_http_lb_rule" labels { backend_name: "" backend_scope: "" backend_scope_type: "UNKNOWN" backend_target_name: "" backend_target_type: "UNKNOWN" backend_type: "UNKNOWN" forwarding_rule_name: "l7-ilb-https-forwarding-rule-dev" matched_url_path_rule: "UNKNOWN" network_name: "lb-network" region: "REGION" target_proxy_name: "l7-ilb-https-proxy-dev" url_map_name: "" } } timestamp: "2023-08-15T16:49:30.850785Z"
资源标签
下表列出了资源类型 l4_proxy_rule
的资源标签。
字段 | 类型 | 说明 |
---|---|---|
network_name | 字符串 | 负载均衡器的 VPC 网络名称。 |
project_id | 字符串 | 与相应资源关联的 Google Cloud 项目的标识符。 |
区域 | 字符串 | 在其中定义了负载均衡器的区域。 |
target_proxy_name | 字符串 | 转发规则引用的目标代理对象的名称。 |
forwarding_rule_name | 字符串 | 转发规则对象的名称。 |
loadbalancing_scheme_name | 字符串 | 负载均衡器的转发规则和后端服务的一个属性,指示负载均衡器是可用于内部流量还是外部流量。 |
backend_target_name | 字符串 | 为处理请求而选择的后端的名称。 |
backend_target_type | 字符串 | 后端目标的类型 (BACKEND_SERVICE / UNKNOWN) 。 |
backend_name | 字符串 | 后端实例组或网络端点组 (NEG) 的名称。 |
backend_type | 字符串 | 后端类型,可以是实例组或 NEG,或者未知。 当 backend_type 为 |
backend_scope | 字符串 | 后端的范围,可以是可用区名称或区域名称。如果 backend_name 未知,该字段可能为 UNKNOWN 。 |
backend_scope_type | 字符串 | 后端的范围 (REGION/ZONE )。如果 backend_name 未知,该字段可能为 UNKNOWN 。 |
监控
代理网络负载均衡器会将监控数据导出到 Cloud Monitoring。
监控指标可用于执行以下操作:
- 评估负载均衡器的配置、使用情况和性能。
- 排查问题。
- 提高资源利用率并改善用户体验。
除了 Monitoring 中的预定义信息中心以外,您还可以使用 Cloud Monitoring API 创建自定义信息中心、设置提醒和查询指标。
查看 Monitoring 信息中心
在 Google Cloud 控制台中,前往 Monitoring 页面。
如果导航窗格中出现资源,请选择资源,然后选择 Google Cloud 负载均衡器。否则,选择信息中心,然后选择名为 Google Cloud 负载均衡器的信息中心。
点击您的负载均衡器的名称。
在左侧窗格中,您可以看到此负载均衡器的各种详细信息。 在右侧窗格中,您可以看到时间序列图表。如需查看具体的细分信息,请点击细分信息。
指标报告频率和保留
每隔 1 分钟,系统就会将负载均衡器的指标批量导出到 Monitoring 中。监控数据会保留六 (6) 周。 指标基于采样的流量(采样率是动态的,且无法调整)。
默认情况下,信息中心可按 1H(1 小时)、6H(6 小时)、1D(1 天)、1W(1 周)和 6W(6 周)时间间隔提供数据分析。您可以在 6 周到 1 分钟的时间间隔内手动请求执行分析。
传统代理网络负载均衡器的指标
传统代理网络负载均衡器的以下指标会报告给 Monitoring。
指标 | 名称 | 说明 |
---|---|---|
入站流量 | tcp_ssl_proxy/ingress_bytes_count |
通过 Google Front End (GFE) 从外部端点发送到已配置的后端的字节数(以每秒字节数为单位)。 |
出站流量 | tcp_ssl_proxy/egress_bytes_count |
通过 GFE 从已配置的后端发送到外部端点的字节数(以每秒字节数为单位)。 |
打开的连接数 | tcp_ssl_proxy/open_connections |
在给定的采样时间点打开的连接数。采样间隔时间为一分钟。 |
每秒新的连接数 | tcp_ssl_proxy/new_connections |
创建的连接数(客户端成功连接到后端)。计算粒度是每分钟,但是图表会调整为显示每秒的值。如需了解详情,请参阅 Monitoring 文档。 |
每秒关闭的连接数 | tcp_ssl_proxy/closed_connections |
已关闭的连接数。计算粒度是每分钟,但是图表会调整为显示每秒的值。如需了解详情,请参阅 Monitoring 文档。 |
前端 RTT | tcp_ssl_proxy/frontend_tcp_rtt |
为客户端和 GFE 之间的每个连接测量得到的平滑往返时间 (RTT) 分布(通过 GFE 的 TCP 栈测量,每次应用层字节从 GFE 传递到客户端时)。 平滑 RTT 是一种算法,用于处理 RTT 测量中可能发生的变体和异常。 |
其他负载均衡器的指标
区域级内部代理网络负载均衡器、区域级外部代理网络负载均衡器、跨区域内部代理网络负载均衡器和全球外部代理网络负载均衡器的以下指标会报告给 Monitoring。
指标 | 名称 | 说明 |
---|---|---|
入站流量 | l4_proxy/ingress_bytes_count |
使用代理从客户端发送到后端虚拟机的字节数。每 60 秒采样一次。采样后,数据在最长 210 秒的时间内不会显示。 |
出站流量 | l4_proxy/egress_bytes_count |
使用代理从后端虚拟机发送到客户端的字节数。每 60 秒采样一次。采样后,数据在最长 210 秒的时间内不会显示。 |
每秒关闭的连接数 | l4_proxy/tcp/closed_connections_count |
使用 TCP RST 或 TCP FIN 消息终结的连接数。每 60 秒采样一次。采样后,数据在最长 210 秒的时间内不会显示。 |
过滤指标的维度
系统会为每个负载均衡器汇总指标。指标可以进一步细分为以下几个维度。
属性 | 说明 |
---|---|
后端范围 | 发起连接的实例组的范围(区域或地区)。 |
后端区域 | 如果实例组为可用区级实例组,则指为连接提供服务的实例组所在的可用区。 |
后端地区 | 如果实例组为区域级实例组,则指为连接提供服务的实例组所在的区域。 |
代理所在的洲 | 终结了用户 TCP/SSL 连接的 GFE 所在的大洲,例如 America 、Europe 、Asia 。
|
实例组 | 接收用户连接的实例组的名称。 |
转发规则 | 用于连接到 GFE 的转发规则的名称。 |
客户所在的国家/地区 | 用户所在国家/地区的名称。 |
后续步骤
- 如需了解 SSL 政策的工作原理,请参阅 SSL 政策概览。
- 如需了解外部代理网络负载均衡器的工作原理,请参阅外部代理网络负载均衡器概览。
- 如需了解内部代理网络负载均衡器的工作原理,请参阅内部代理网络负载均衡器概览。