All Products
Search
Document Center

:ACK events

Last Updated:Aug 28, 2024

This topic describes the Container Service for Kubernetes (ACK) events that can be published to EventBridge.

Usage notes

ACK events are from the following two event sources:

  • Application Real-Time Monitoring Service (ARMS)

    • You must install the ARMS Prometheus component in Kubernetes clusters. For more information, see Step 1: Enable Managed Service for Prometheus.

    • These events are of the cs:k8s:K8s-event-via-arms type and are not classified into specific types.

  • Node Problem Detector (NPD)

    • You must install the ack-node-problem-detector component in Kubernetes clusters and configure EventBridge as a sink. For more information, see Install the NPD component.

    • These events are classified by resource type. For example, events of the cs:k8s:PodRelatedEvent type are events related to pods.

Events

The following table describes the ACK events that can be published to EventBridge.

Event

Value of the type parameter

ACK event related to a ConfigMap

cs:k8s:ConfigMapRelatedEvent

ACK event related to a CRON job

cs:k8s:CronJobRelatedEvent

ACK event related to a DaemonSet

cs:k8s:DaemonSetRelatedEvent

ACK event related to a Deployment

cs:k8s:DeploymentRelatedEvent

ACK event related to an Ingress

cs:k8s:IngressRelatedEvent

ACK event related to a job

cs:k8s:JobRelatedEvent

ACK events collected by ARMS

cs:k8s:k8s-event-via-arms

ACK event related to a namespace

cs:k8s:NamespaceRelatedEvent

ACK event related to a node

cs:k8s:NodeRelatedEvent

ACK event related to a persistent volume claim (PVC)

cs:k8s:PersistentVolumeClaimRelatedEvent

ACK event related to a persistent volume (PV)

cs:k8s:PersistentVolumeRelatedEvent

ACK event related to a pod

cs:k8s:PodRelatedEvent

ACK event related to a ReplicaSet

cs:k8s:ReplicaSetRelatedEvent

ACK event related to a ReplicationController

cs:k8s:ReplicationControllerRelatedEvent

ACK event related to a StatefulSet

cs:k8s:StatefulSetRelatedEvent

An operation is performed on a resource

cs:ActionTrail:AliyunServiceEvent

An API operation is called

cs:ActionTrail:ApiCall

An operation is performed in the console

cs:ActionTrail:ConsoleOperation

Notifications indicating that resource change logs are delivered

cs:Config:ConfigurationItemChangeNotification

Notifications indicating that a resource is evaluated as non-compliant are delivered

cs:Config:NonCompliantNotification

For more information about the parameters defined in the CloudEvents specification, see Overview.

Important

The preceding table describes only frequent ACK events. You can use a custom rule to match the events that are not described in the preceding table. You can also filter and view all the events.

The types of ACK events are named in the format of cs:k8s:{Resource type name}RelatedEvent. For example, for ACK events related to pods, the value of the type parameter is cs:k8s:PodRelatedEvent.

ACK events collected by ARMS

The following sample code shows an ACK event collected by ARMS and received by EventBridge:

{
    "id":"4cf9678d-dfec-4d6e-9fd1-a9a2d205****",
    "source":"acs.cs",
    "time":"2020-11-19T21:04:41+08:00",
    "data":{
        "reason":"FailedCreatePodSandBox",
        "involvedObject":{
            "uid":"e0a7e4b6-5331-487f-bb0a-e69647a9****",
            "apiVersion":"v1",
            "kind":"Pod",
            "resourceVersion":"40326010",
            "namespace":"kube-system",
            "name":"alicloud-application-controller-798784bf49-v88hc"
        },
        "count":1,
        "source":{
            "component":"kubelet",
            "host":"cn-hangzhou.192.168.XX.XX"
        },
        "message":"Failed to create pod sandbox",
        "type":"Warning",
        "firstTimestamp":"2020-11-19T21:04:41Z",
        "lastTimestamp":"2020-11-19T21:04:41Z"
    },
    "specversion":"1.0",
    "datacontenttype":"application/json",
    "type":"cs:k8s:K8s-event-via-arms",
    "aliyunaccountid":"123456789098****",
    "aliyuneventbusname":"default",
    "aliyunpublishtime":"2020-11-19T21:04:42Z",
    "aliyunregionid":"cn-hangzhou",
    "aliyunpublishaddr":"172.25.XX.XX"
}

The following table describes the parameters in the data field.

Parameter

Type

Example

Description

reason

String

FailedCreatePodSandBox

The reason why the ACK event was reported.

involvedObject

Struct

The object involved in the event.

uid

String

e0a7e4b6-5331-487f-bb0a-e69647a9****

The unique ID of the resource.

apiVersion

String

v1

The version number of the API.

kind

String

Pod

The type of the resource.

resourceVersion

String

40326010

The version number of the resource.

namespace

String

kube-system

The namespace in which the resource resides.

name

String

alicloud-application-controller-798784bf49-v88hc

The name of the resource.

count

Integer

1

The total number of occurrences of the event.

source

Struct

The resource that detects the event.

component

String

kubelet

The type of the event source that the source parameter specifies.

host

String

cn-hangzhou.192.168.XX.XX

The unique ID of the event source that the source parameter specifies.

message

String

Failed to create pod sandbox

The description of the event.

type

String

Warning

The severity of the event.

Valid values:

  • Warning

  • Normal

firstTimestamp

Timestamp

2020-11-19T21:04:41Z

The time of the first occurrence of the event.

lastTimestamp

Timestamp

2020-11-19T21:04:41Z

The time of the last occurrence of the event.

ACK event related to a pod

The following sample code shows an ACK event related to a pod and received by EventBridge:

{
    "datacontenttype":"application/json",
    "aliyunaccountid":"123456789098****",
    "data":{
        "reason":"BackOff",
        "metadata":{
            "uid":"0a2d6413-ea4a-414b-a813-aa9b6a17****",
            "resourceVersion":"1163710",
            "creationTimestamp":"2021-01-08T07:11:52Z",
            "name":"oom-test",
            "namespace":"default"
        },
        "involvedObject":{
            "uid":"3438fea9-1e54-4f71-aec5-6e874136****",
            "apiVersion":"v1",
            "kind":"Pod",
            "resourceVersion":"425592514",
            "name":"oom-test-85b",
            "namespace":"default"
        },
        "reportingInstance":"",
        "count":197,
        "source":{
            "component":"kubelet",
            "host":"cn-hangzhou.172.16.XX.XX"
        },
        "message":"Back-off restarting failed container",
        "type":"Warning",
        "reportingComponent":"",
        "firstTimestamp":"2021-01-08T07:11:52Z",
        "lastTimestamp":"2021-01-08T07:56:41Z"
    },
    "subject":"acs:cs:cn-hangzhou:123456789098****:abc/apis/v1/namespaces/default/pods/oom-test-85b",
    "source":"acs.cs",
    "type":"cs:k8s:PodRelatedEvent",
    "aliyunpublishtime":"2021-01-18T09:43:58.785Z",
    "specversion":"1.0",
    "aliyuneventbusname":"default",
    "id":"af182bae-16b8-4327-bb3a-a972de72****",
    "time":"2021-01-08T15:57:00+08:00",
    "aliyunregionid":"cn-hangzhou",
    "aliyunpublishaddr":"172.25.XX.XX"
}

The following table describes the parameters in the data field.

Parameter

Type

Example

Description

reason

String

BackOff

The reason why the ACK event related to a pod occurred.

metadata

Struct

The metadata of the event.

uid

String

0a2d6413-ea4a-414b-a813-aa9b6a17****

The unique ID of the event in the Kubernetes cluster.

resourceVersion

Integer

1163710

The version number of the event. The version number sequentially increases each time the event is modified.

creationTimestamp

Timestamp

2021-01-08T07:11:52Z

The timestamp when the event was created for the first time.

name

String

oom-test

The name of the event.

namespace

String

default

The namespace to which the event belongs.

involvedObject

Struct

The object involved in the event.

uid

String

3438fea9-1e54-4f71-aec5-6e874136****

The unique ID of the resource.

apiVersion

String

v1

The version number of the API.

kind

String

Pod

The type of the resource.

resourceVersion

String

40326010

The version number of the resource.

namespace

String

default

The namespace in which the resource resides.

name

String

oom-test-85b6c9494b-hpllq

The name of the resource.

reportingInstance

String

N/A

The instance that initiated the event.

count

Integer

197

The total number of occurrences of the event.

source

Struct

The resource that detects the event.

component

String

kubelet

The type of the event source that the source parameter specifies.

host

String

cn-hangzhou.172.16.XX.XX

The unique ID of the event source that the source parameter specifies.

message

String

Back-off restarting failed container

The description of the event.

type

String

Warning

The severity of the event.

Valid values:

  • Warning

  • Normal

reportingComponent

String

N/A

The component that initiated the event.

firstTimestamp

Timestamp

2021-01-08T07:11:52Z

The time of the first occurrence of the event.

lastTimestamp

Timestamp

2021-01-08T07:56:41Z

The time of the last occurrence of the event.

Install the NPD component

  1. Log on to the ACK console.

  2. In the left-side navigation pane, choose Marketplace > Marketplace.

  3. On the Marketplace page, click the App Catalog tab. In the search box, enter ack-node-problem-detector and click the search icon.

  4. Click the ack-node-problem-detector card. On the component details page, click Deploy.

  5. In the Deploy panel, configure the parameters and click OK.

    • In the Basic Information step, select a cluster and a namespace, and then click Next.

    • In the Parameters step, change the value of enabled to true for eventbridge in the Sink parameter in the code editor.