Bagaimana saya tahu kapan / jika / mengapa sebuah wadah di sebuah kubernetes restart?

30

Saya memiliki kluster kubernetes simpul tunggal di mesin wadah google untuk bermain-main dengan.

Dua kali sekarang, sebuah situs web pribadi kecil yang saya host di dalamnya telah offline selama beberapa menit. Ketika saya melihat log kontainer, saya melihat urutan startup normal baru saja selesai, jadi saya berasumsi kontainer mati (atau terbunuh?) Dan restart.

Bagaimana saya bisa mengetahui bagaimana & mengapa hal ini terjadi?

Apakah ada cara untuk mendapatkan peringatan setiap kali sebuah wadah mulai / berhenti secara tidak terduga?

Marc Hughes
sumber

Jawaban:

38

Anda dapat melihat log mulai ulang terakhir dari suatu wadah menggunakan:

log kubectl podname -c berisi nama pengguna --previous

Seperti dijelaskan oleh Sreekanth, kubectl mendapatkan pod akan menunjukkan jumlah restart, tetapi Anda juga dapat menjalankan

kubectl menjelaskan podname pod

Dan itu akan menunjukkan kepada Anda acara yang dikirim oleh kubelet ke apiserver tentang peristiwa daur hidup pod.

Anda juga dapat menulis pesan terakhir ke / dev / termination-log, dan ini akan muncul seperti yang dijelaskan dalam dokumen .

berbunyi bip
sumber
10

Di samping jawaban sebelumnya, perintah lain yang membantu saya menemukan kesalahan adalah:

kubectl get event [--namespace=my-namespace]

Ini daftar acara dari Pods, Jobs, Nodes juga

Maximiliano De Lorenzo
sumber
8

kubectl get pods akan benar-benar daftar me-restart kontainer dan juga perintah menggambarkan dapat membantu karena daftar semua peristiwa yang terkait dengan pod.

Probe hidup dan probe kesiapan dapat dikonfigurasi untuk penanganan penanganan yang lebih baik di sini

Selain itu kait dapat dikonfigurasikan untuk dikonsumsi dalam wadah pada titik-titik tertentu dalam siklus hidup cek kontainer di sini

Sreekanth Pothanis
sumber
Harap perluas tautan ke jawabannya. Kalau tidak -1. :)
Konrad Gajewski