Cloud Native Logging
Add-on Overview
The Cloud Native Logging add-on (log-agent) is developed based on Fluent Bit and OpenTelemetry for collecting logs and Kubernetes events. This add-on supports CRD-based log collection policies. It collects and forwards standard output logs, container file logs, node logs, and Kubernetes event logs in a cluster based on configured policies. It also reports Kubernetes events to AOM for configuring event alarms. By default, all abnormal events and some normal events are reported.
Add-on Parameters
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
basic |
No |
object |
Basic configuration parameters, which do not need to be specified |
flavor |
Yes |
Table 2 object |
Flavor parameters |
custom |
Yes |
Table 3 object |
Custom parameters |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
description |
No |
String |
Add-on description |
name |
Yes |
String |
Add-on specification name. The value is fixed at Single-instance. |
replicas |
Yes |
String |
Number of otel-collector component instances. The default value is 1. |
resources |
Yes |
resources object |
Container resource (CPU and memory) quotas |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
caCert |
Yes |
String |
Specifies a client certificate, which is encrypted using Base64. This parameter is optional during installation. It is generated by the CCE add-on center and used for two-way authentication between components and webhook requests. Domain name to be issued: *.monitoring.svc. |
serverCert |
Yes |
String |
Specifies a server certificate, which is encrypted using Base64. This parameter is optional during installation. It is generated by CCE add-ons and used for two-way authentication between components and webhook requests. Domain name to be issued: *.monitoring.svc. |
serverKey |
Yes |
String |
Specifies the private key of a server, which is encrypted using Base64. This parameter is optional during installation. It is generated by CCE add-ons and used for two-way authentication between components and webhook requests. Domain name to be issued: *.monitoring.svc. |
accessKey |
No |
String |
Specifies the access key ID of a user, which is used to request AOM and LTS APIs. If this parameter is left blank, a temporary AK/SK is used. |
secretKey |
No |
String |
Specifies the access key of a user, which is used to request AOM and LTS APIs. If this parameter is left blank, a temporary AK/SK is used. |
createDefaultStdout |
No |
Bool |
Specifies whether to create the default policy for collecting container standard output logs and reporting them to LTS. This parameter is valid only after it is specified during the add-on installation. The default value is false. |
createDefaultEvent |
No |
Bool |
Specifies whether to create the default policy for collecting Kubernetes events and reporting them to LTS. This parameter is valid only after it is specified during the add-on installation. The default value is false. |
multiAZEnabled |
No |
Bool |
Specifies whether to deploy the add-on pods in multiple AZs. The default value is false. If this parameter is set to true, cross-AZ deployment is forcibly performed. If this parameter is set to false, cross-AZ deployment is preferred. |
cluster_category |
No |
String |
The value is fixed at CCE. |
ltsAccessEndpoint |
No |
String |
Specifies the address for reporting logs to LTS. If this parameter is left blank, the address specified in basic is used. |
ltsEndpoint |
No |
String |
Specifies the address of the LTS APIs. If this parameter is left blank, the address specified in basic is used. |
aomEndpoint |
No |
String |
Specifies the address for reporting events to AOM. If this parameter is left blank, the address specified in basic is used. |
projectID |
Yes |
String |
Specifies the ID of the project to which the current CCE cluster belongs. This parameter is optional during installation. |
clusterID |
Yes |
String |
Specifies the ID of the current CCE cluster. This parameter is optional during installation. |
clusterName |
Yes |
String |
Specifies the name of the current CCE cluster. |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
limitsCpu |
Yes |
String |
CPU size limit (unit: m) |
limitsMem |
Yes |
String |
Memory size limit (unit: Mi) |
name |
Yes |
String |
Component name. Options: fluent-bit: component for collecting node logs cop-logs: generates soft links for collected files on each node. log-operator: generates fluent-bit and otel-collector configurations. otel-collector: reports collected logs and events to AOM and LTS. |
requestsCpu |
Yes |
String |
Requested CPU size (unit: m) |
requestsMem |
Yes |
String |
Requested memory size (unit: Mi) |
Example Request
{ "kind": "Addon", "apiVersion": "v3", "metadata": { "annotations": { "addon.install/type": "install" } }, "spec": { "clusterID": "ccbe7bdf-4**9-3**b-b**4-0********78", "version": "1.4.4", "addonTemplateName": "log-agent", "values": { "basic": { "aomEndpoint": "https://***", "iam_url": "***", "ltsAccessEndpoint": "https://***:8102", "ltsEndpoint": "https://***", "region": "***", "swr_addr": "***", "swr_user": "***", "rbac_enabled": true, "cluster_version": "v1.25" }, "flavor": { "description": "Recommanded when the number of logs per second does not exceed 5000.", "name": "Low", "replicas": 1, "resources": [ { "limitsCpu": "500m", "limitsMem": "500Mi", "name": "fluent-bit", "requestsCpu": "100m", "requestsMem": "200Mi" }, { "limitsCpu": 1, "limitsMem": "500Mi", "name": "cop-logs", "requestsCpu": "100m", "requestsMem": "100Mi" }, { "limitsCpu": "500m", "limitsMem": "500Mi", "name": "log-operator", "requestsCpu": "100m", "requestsMem": "100Mi" }, { "limitsCpu": 1, "limitsMem": "2Gi", "name": "otel-collector", "requestsCpu": "200m", "requestsMem": "1Gi" } ], "category": [ "CCE", "Turbo" ] }, "custom": { "accessKey": "", "aomEndpoint": "https://***", "aomPrivateEndpointIP": "", "caCert": "", "clusterID": "", "clusterName": "clusterName", "cluster_category": "CCE", "createAudit": false, "createDefaultEvent": false, "createDefaultEventToAOM": true, "createDefaultStdout": false, "createKubeApiserver": false, "createKubeControllerManager": false, "createKubeScheduler": false, "ltsAccessEndpoint": "https://***:8102", "ltsAuditStreamID": "", "ltsEndpoint": "https://***", "ltsEventStreamID": "", "ltsGroupID": "", "ltsKubeApiserverStreamID": "", "ltsKubeControllerManagerStreamID": "", "ltsKubeSchedulerStreamID": "", "ltsLogReportDomain": "", "ltsPrivateEndpointIP": "", "ltsStdoutStreamID": "", "multiAZEnabled": false, "paasakskEnable": true, "projectID": "", "secretKey": "", "securityToken": "", "serverCert": "", "serverKey": "" } } } }
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot