Когда я запускаю kubectl -n abc-namespace describe pod my-pod-zl6m6, я получаю много информации о модуле вместе с событиями в конце.
Есть ли способ вывести только события модуля с помощью команд kubectl describe или kubectl get?

Почему бы не отображать все события и grep для имени вашего пода:
kubectl get events --all-namespaces | grep -i $podname
Конечно, это более чистое решение. О переключателе --field-selector узнал только сейчас.
вы даже не могли использовать grep для имени пода, потому что оно не печатается с помощью команды kubectl get events
Вы можете использовать команду event для kubectl.
Чтобы отфильтровать конкретный модуль, вы можете использовать селектор полей:
kubectl get event --namespace abc-namespace --field-selector involvedObject.name=my-pod-zl6m6
Чтобы увидеть, какие поля возможны, вы можете использовать kubectl describe для любого события.
У меня это не работает. Получаю: Error: unknown flag: --field-selector
В официальной документации field-selector упоминается с 1.12. Я не смог найти никаких подсказок с тех пор, когда это поддерживается (нашел несколько билетов с 2015 года). Поэтому проверьте свою версию kubectl и вывод справки, чтобы увидеть, что возможно с вашей версией kubectl.
Ага. у меня более старая версия. :(
@toddcscar, вы все еще можете использовать более обновленную версию kubectl со старой версией сервера: например, это будет работать на kubectl v1.14 против v1.11 API
@toddcscar вы использовали get или describe? Это случилось со мной, потому что я сначала пробовал с describe, и в этой команде нет такой опции
Вы можете описать свой модуль, а затем ввести количество строк после событий. Вы можете добавить часы, если хотите их контролировать.
watch "kubectl describe pod my-pod-zl6m6 | grep -A20 Events"
Благодарность ! я могу получить события HPA с этим.
Если вам нужны только сообщения о событиях в кратком и четком виде, @mszalbachответ самый лучший.
Но если вы хотите, чтобы все События со всеми их элементами отображались полностью, вы можете запустить:
kubectl describe event [POD_NAME] --namespace [POD's_NAMESPACE]
kubectl get events --output json для проверки структуры данных.$ kubectl get events --output json
{
"apiVersion": "v1",
"items": [
{
"apiVersion": "v1",
"count": 259,
"eventTime": null,
"firstTimestamp": "2020-04-15T12:00:46Z",
"involvedObject": { <------ **this**
"apiVersion": "v1",
"fieldPath": "spec.containers{liveness}",
"kind": "Pod",
"name": "liveness-exec", <------ **this**
"namespace": "default",
"resourceVersion": "725991",
"uid": "3f497636-e601-48bc-aec8-72b3edec3d95"
},
...
kubectl get events --field-selector involvedObject.name=[...].Этот ответ относится к @ mszalbach's.
Спасибо за дополнительный контекст того, как понимать поля --field-selector ... :)
Хотя это дает результаты, я бы предпочел тот, у которого есть переключатель
field-selector:)