Хорошее объяснение, что такое событие в Kubernetes
, вы можете найти в статье Типы событий Kubernetes . Автор также упомянул о типах событий.
События Kubernetes - это тип ресурса в Kubernetes, который автоматически создается, когда у других ресурсов есть изменения состояния, ошибки или другие сообщения, которые должны транслироваться в систему. Хотя документации по событиям не так много, они являются бесценным ресурсом при отладке проблем в вашем кластере Kubernetes.
Вы можете описать не только pod
, deployment
или replicaset
но почти все ресурсы в кубернетах.
Примеры:
kubectl describe job pi -n test
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal SuccessfulCreate 12s job-controller Created pod: pi-5rgbz
kubectl describe node ubuntu
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Warning MissingClusterDNS 22h (x98 over 23h) kubelet, ubuntu-18 kubelet does not have ClusterDNS IP configured and cannot create Pod using "ClusterFirst" policy. Falling back to "Default" policy.
Normal Starting 22h kubelet, ubuntu-18 Starting kubelet.
Warning InvalidDiskCapacity 22h kubelet, ubuntu-18 invalid capacity 0 on image filesystem
Normal NodeHasSufficientMemory 22h kubelet, ubuntu-18 Node ubuntu-18 status is now: NodeHasSufficientMemory
Normal NodeHasSufficientPID 22h
Чтобы перечислить все события ресурсов, вы можете использовать $ kubectl get events --all-namespaces
$ kubectl get events --all-namespaces
NAMESPACE LAST SEEN TYPE REASON OBJECT MESSAGE
default 50m Normal Starting node/gke-cluster-1-default-pool-XXXXXXXXXXXXX Starting kubelet.
default 50m Normal NodeHasSufficientMemory node/gke-cluster-1-default-pool-XXXXXXXXXXXXX Node gke-cluster-1-default-pool-XXXXXXXXXXXXX status is now: NodeHasSufficientMemory
default 2m47s Normal SuccessfulCreate job/pi Created pod: pi-5rgbz
kube-system 50m Normal ScalingReplicaSet deployment/fluentd-gcp-scaler Scaled up replica set fluentd-gcp-scaler-6855f55bcc to 1
В столбце «Объект» укажите тип ресурса.
Если хотите более подробную информацию вы можете использовать -o wide
флаг - $ kubectl get events --all-namespaces -o wide
$ kubectl get events -o wide
LAST SEEN TYPE REASON OBJECT SUBOBJECT SOURCE MESSAGE
FIRST SEEN COUNT NAME
20m Normal Scheduled pod/hello-world-86d6c6f84d-8qz9d default-scheduler Successfully assigned default/hello-world-86d
6c6f84d-8qz9d to ubuntu-18
Возможно root причина.
Вначале мне не удалось создать развертывание без каких-либо событий I можно предположить, что вы установили --event-ttl
, что описано в документации Kube-apiserver .
--event-ttl duration Default: 1h0m0s
Количество времени для сохранения событий.
Также упоминалось в ветке Github .
Короче все события пропадут через 1 час если у вас установлен этот флаг.
Чтобы проверить, установлен ли у вас этот флаг в kube-apiserver
, вы можете проверить этот поток StackOverflow .
Если это не помогло, отредактируйте свой вопрос, указав информацию о конфигурации YAML, какую версию K8 вы используете, шаги по воспроизведению et c.