Topik ini menjelaskan peristiwa Container Service for Kubernetes (ACK) yang dapat diterbitkan ke EventBridge.
Catatan Penggunaan
Peristiwa ACK berasal dari dua sumber berikut:
Application Real-Time Monitoring Service (ARMS)
Anda harus menginstal komponen ARMS Prometheus di kluster Kubernetes. Untuk informasi lebih lanjut, lihat Aktifkan Managed Service for Prometheus.
Peristiwa ini bertipe cs:k8s:K8s-event-via-arms dan tidak diklasifikasikan ke dalam tipe tertentu.
Node Problem Detector (NPD)
Anda harus menginstal komponen ack-node-problem-detector di kluster Kubernetes dan mengonfigurasi EventBridge sebagai sink. Untuk informasi lebih lanjut, lihat Instal komponen NPD.
Peristiwa ini diklasifikasikan berdasarkan tipe sumber daya. Sebagai contoh, peristiwa bertipe cs:k8s:PodRelatedEvent adalah peristiwa terkait pod.
Peristiwa
Tabel berikut menjelaskan ACK peristiwa yang dapat diterbitkan ke EventBridge.
Peristiwa | Nilai parameter tipe |
Peristiwa ACK terkait ConfigMap | cs:k8s:ConfigMapRelatedEvent |
Peristiwa ACK terkait CRON job | cs:k8s:CronJobRelatedEvent |
Peristiwa ACK terkait DaemonSet | cs:k8s:DaemonSetRelatedEvent |
Peristiwa ACK terkait Deployment | cs:k8s:DeploymentRelatedEvent |
Peristiwa ACK terkait Ingress | cs:k8s:IngressRelatedEvent |
Peristiwa ACK terkait job | cs:k8s:JobRelatedEvent |
cs:k8s:k8s-event-via-arms | |
Peristiwa ACK terkait namespace | cs:k8s:NamespaceRelatedEvent |
Peristiwa ACK terkait node | cs:k8s:NodeRelatedEvent |
Peristiwa ACK terkait persistent volume claim (PVC) | cs:k8s:PersistentVolumeClaimRelatedEvent |
Peristiwa ACK terkait persistent volume (PV) | cs:k8s:PersistentVolumeRelatedEvent |
cs:k8s:PodRelatedEvent | |
Peristiwa ACK terkait ReplicaSet | cs:k8s:ReplicaSetRelatedEvent |
Peristiwa ACK terkait ReplicationController | cs:k8s:ReplicationControllerRelatedEvent |
Peristiwa ACK terkait StatefulSet | cs:k8s:StatefulSetRelatedEvent |
Operasi dilakukan pada sumber daya | cs:ActionTrail:AliyunServiceEvent |
Operasi API dipanggil | cs:ActionTrail:ApiCall |
Operasi dilakukan di konsol | cs:ActionTrail:ConsoleOperation |
Pemberitahuan menunjukkan bahwa log perubahan sumber daya telah dikirimkan | cs:Config:ConfigurationItemChangeNotification |
Pemberitahuan menunjukkan bahwa sumber daya dievaluasi sebagai tidak sesuai telah dikirimkan | cs:Config:NonCompliantNotification |
Untuk informasi lebih lanjut tentang parameter yang didefinisikan dalam spesifikasi CloudEvents, lihat Ikhtisar.
Tabel sebelumnya hanya mencakup peristiwa ACK yang sering terjadi. Anda dapat menggunakan aturan kustom untuk mencocokkan peristiwa yang tidak dijelaskan dalam tabel tersebut. Anda juga dapat memfilter dan melihat semua peristiwa.
Tipe peristiwa ACK dinamai dalam format cs:k8s:{Nama tipe sumber daya}RelatedEvent. Sebagai contoh, untuk peristiwa ACK terkait pod, nilai parameter tipe adalah cs:k8s:PodRelatedEvent.
Peristiwa ACK yang dikumpulkan oleh ARMS
Kode sampel berikut menunjukkan peristiwa ACK yang dikumpulkan oleh ARMS dan diterima oleh 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":"Gagal membuat sandbox pod",
"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"
}Tabel berikut menjelaskan parameter dalam bidang data.
Parameter | Tipe | Contoh | Deskripsi |
reason | String | FailedCreatePodSandBox | Alasan mengapa peristiwa ACK dilaporkan. |
involvedObject | Struct | Objek yang terlibat dalam peristiwa. | |
uid | String | e0a7e4b6-5331-487f-bb0a-e69647a9**** | ID unik sumber daya. |
apiVersion | String | v1 | Nomor versi API. |
kind | String | Pod | Tipe sumber daya. |
resourceVersion | String | 40326010 | Nomor versi sumber daya. |
namespace | String | kube-system | Namespace tempat sumber daya berada. |
name | String | alicloud-application-controller-798784bf49-v88hc | Nama sumber daya. |
count | Integer | 1 | Jumlah total kemunculan peristiwa. |
source | Struct | Sumber daya yang mendeteksi peristiwa. | |
component | String | kubelet | Tipe sumber peristiwa yang ditentukan oleh parameter source. |
host | String | cn-hangzhou.192.168.XX.XX | ID unik sumber peristiwa yang ditentukan oleh parameter source. |
message | String | Gagal membuat sandbox pod | Deskripsi peristiwa. |
type | String | Warning | Tingkat keparahan peristiwa. Nilai valid:
|
firstTimestamp | Timestamp | 2020-11-19T21:04:41Z | Waktu kemunculan pertama peristiwa. |
lastTimestamp | Timestamp | 2020-11-19T21:04:41Z | Waktu kemunculan terakhir peristiwa. |
Peristiwa ACK terkait pod
Kode sampel berikut menunjukkan peristiwa ACK terkait pod yang diterima oleh 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"
}Tabel berikut menjelaskan parameter dalam bidang data.
Parameter | Tipe | Contoh | Deskripsi |
reason | String | BackOff | Alasan mengapa peristiwa ACK terkait pod terjadi. |
metadata | Struct | Metadata peristiwa. | |
uid | String | 0a2d6413-ea4a-414b-a813-aa9b6a17**** | ID unik peristiwa di kluster Kubernetes. |
resourceVersion | Integer | 1163710 | Nomor versi peristiwa. Nomor versi bertambah secara berurutan setiap kali peristiwa dimodifikasi. |
creationTimestamp | Timestamp | 2021-01-08T07:11:52Z | Timestamp ketika peristiwa pertama kali dibuat. |
name | String | oom-test | Nama peristiwa. |
namespace | String | default | Namespace tempat peristiwa berada. |
involvedObject | Struct | Objek yang terlibat dalam peristiwa. | |
uid | String | 3438fea9-1e54-4f71-aec5-6e874136**** | ID unik sumber daya. |
apiVersion | String | v1 | Nomor versi API. |
kind | String | Pod | Tipe sumber daya. |
resourceVersion | String | 40326010 | Nomor versi sumber daya. |
namespace | String | default | Namespace tempat sumber daya berada. |
name | String | oom-test-85b6c9494b-hpllq | Nama sumber daya. |
reportingInstance | String | N/A | Instansi yang memulai peristiwa. |
count | Integer | 197 | Jumlah total kemunculan peristiwa. |
source | Struct | Sumber daya yang mendeteksi peristiwa. | |
component | String | kubelet | Tipe sumber peristiwa yang ditentukan oleh parameter source. |
host | String | cn-hangzhou.172.16.XX.XX | ID unik sumber peristiwa yang ditentukan oleh parameter source. |
message | String | Back-off restarting failed container | Deskripsi peristiwa. |
type | String | Warning | Tingkat keparahan peristiwa. Nilai valid:
|
reportingComponent | String | N/A | Komponen yang memulai peristiwa. |
firstTimestamp | Timestamp | 2021-01-08T07:11:52Z | Waktu kemunculan pertama peristiwa. |
lastTimestamp | Timestamp | 2021-01-08T07:56:41Z | Waktu kemunculan terakhir peristiwa. |
Instal komponen NPD
Masuk ke konsol ACK.
Di panel navigasi sebelah kiri, pilih .
Di halaman Marketplace, klik tab App Catalog. Di kotak pencarian, masukkan ack-node-problem-detector dan klik ikon
.Klik kartu ack-node-problem-detector. Di halaman detail komponen, klik Deploy.
Di panel Deploy, atur parameter yang diperlukan dan klik OK.
Di langkah Basic Information, pilih kluster dan namespace, lalu klik Next.
Di langkah Parameters, ubah nilai enabled menjadi true untuk eventbridge di parameter Sink di editor kode.