全部產品
Search
文件中心

:Container Service事件

更新時間:Sep 04, 2024

本文介紹Container Service作為事件來源發布到事件匯流排EventBridge的事件類型。

注意事項

Container Service事件來自以下兩部分:

  • ARMS

  • NPD

    • 您需要在K8s叢集安裝NPD(ack-node-problem-detector),並配置Sink事件匯流排EventBridge。具體操作,請參見安裝NPD

    • 這類事件按資源類型分類,例如PodRelatedEvent表示所有Pod相關的事件。

事件類型

Container Service支援發布到事件匯流排EventBridge的事件類型如下所示。

事件類型

type參數值

ConfigMap相關的K8s事件

cs:k8s:ConfigMapRelatedEvent

CronJob相關的K8s事件

cs:k8s:CronJobRelatedEvent

DaemonSet相關的K8s事件

cs:k8s:DaemonSetRelatedEvent

Deployment相關的K8s事件

cs:k8s:DeploymentRelatedEvent

Ingress相關的K8s事件

cs:k8s:IngressRelatedEvent

Job相關的K8s事件

cs:k8s:JobRelatedEvent

通過ARMS採集的K8s事件

cs:k8s:k8s-event-via-arms

Namespace相關的K8s事件

cs:k8s:NamespaceRelatedEvent

Node相關的K8s事件

cs:k8s:NodeRelatedEvent

PersistentVolumeClaim相關的K8s事件

cs:k8s:PersistentVolumeClaimRelatedEvent

PersistentVolume相關的K8s事件

cs:k8s:PersistentVolumeRelatedEvent

Pod相關的K8s事件

cs:k8s:PodRelatedEvent

ReplicaSet相關的K8s事件

cs:k8s:ReplicaSetRelatedEvent

ReplicationController相關的K8s事件

cs:k8s:ReplicationControllerRelatedEvent

StatefulSet相關的K8s事件

cs:k8s:StatefulSetRelatedEvent

阿里雲平台對資源執行的操作事件

cs:ActionTrail:AliyunServiceEvent

API調用

cs:ActionTrail:ApiCall

控制台的操作事件

cs:ActionTrail:ConsoleOperation

資源變更投遞

cs:Config:ConfigurationItemChangeNotification

資源評估不合規通知

cs:Config:NonCompliantNotification

CloudEvents規範中定義的參數解釋,請參見事件概述

重要

上述事件類型列表只包含高頻事件類型,並沒有列舉所有的K8s事件類型。您可以通過自訂規則來匹配上述列表中沒有的事件,也可以通過過濾所有的事件類型來獲得所有的事件類型。

Container Service事件type命名規範為cs:k8s:{資源類型名稱}RelatedEvent,例如Pod相關的K8s事件的type參數值為cs:k8s:PodRelatedEvent。

通過ARMS採集的K8s事件

通過應用即時監控服務ARMS採集的K8s事件,事件匯流排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"
}

data欄位包含的參數解釋如下表所示。

參數

類型

樣本值

描述

reason

String

FailedCreatePodSandBox

K8s上報事件的原因。

involvedObject

Struct

上報事件涉及的對象。

uid

String

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

資源的唯一ID。

apiVersion

String

v1

API版本。

kind

String

Pod

資源類型。

resourceVersion

String

40326010

資源版本。

namespace

String

kube-system

資源所在的命名空間。

name

String

alicloud-application-controller-798784bf49-v88hc

資源名稱。

count

Integer

1

事件發生的總次數。

source

Struct

發現這個事件的資源。

component

String

kubelet

source資源類型。

host

String

cn-hangzhou.192.168.XX.XX

source資源的唯一標識。

message

String

Failed to create pod sandbox

事件的摘要。

type

String

Warning

事件等級。

取值說明如下:

  • Warning

  • Normal

firstTimestamp

Timestamp

2020-11-19T21:04:41Z

事件第一次發生的時間。

lastTimestamp

Timestamp

2020-11-19T21:04:41Z

事件最近一次發生的時間。

Pod相關的K8s事件

Pod相關的K8s事件,事件匯流排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"
}

data欄位包含的參數解釋如下表所示。

參數

類型

樣本值

描述

reason

String

BackOff

Pod相關的K8s事件產生的原因。

metadata

Struct

事件的中繼資料。

uid

String

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

每個事件在K8s叢集中的唯一ID。

resourceVersion

Integer

1163710

事件的版本。每次事件修改後會遞增。

creationTimestamp

Timestamp

2021-01-08T07:11:52Z

事件第一次建立的時間戳記。

name

String

oom-test

事件的名稱。

namespace

String

default

事件歸屬的命名空間。

involvedObject

Struct

事件涉及的對象。

uid

String

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

資源的唯一ID。

apiVersion

String

v1

API版本。

kind

String

Pod

資源類型。

resourceVersion

String

40326010

資源版本。

namespace

String

default

資源所在的命名空間。

name

String

oom-test-85b6c9494b-hpllq

資源名稱。

reportingInstance

String

發起事件的執行個體。

count

Integer

197

事件發生的總次數。

source

Struct

發現這個事件的資源。

component

String

kubelet

source資源類型。

host

String

cn-hangzhou.172.16.XX.XX

source資源的唯一標識。

message

String

Back-off restarting failed container

事件的摘要。

type

String

Warning

事件等級。

取值說明如下:

  • Warning

  • Normal

reportingComponent

String

發起事件的組件。

firstTimestamp

Timestamp

2021-01-08T07:11:52Z

事件第一次發生的時間。

lastTimestamp

Timestamp

2021-01-08T07:56:41Z

事件最近一次發生的時間。

安裝NPD

  1. 登入Container Service管理主控台

  2. 在左側導覽列,選擇市場 > 應用市場

  3. 應用市場頁面,單擊應用目錄頁簽,在搜尋欄文字框中,輸入應用程式名稱ack-node-problem-detector,然後單擊search表徵圖。

  4. 單擊ack-node-problem-detector卡片,然後單擊一鍵部署

  5. 建立面板,完成以下配置,然後單擊確定

    • 基本資料設定精靈,選擇已建立的叢集命名空間,然後單擊下一步

    • 參數配置設定精靈,在參數代碼輸入框中修改參數Sinkeventbridgeenabled值為true