Можно ли наблюдать за всеми событиями в кластере Kubernetes с помощью Python API?

Используя Python API kubernetes<вы должны указать события для просмотра? Можно ли смотреть все события в кластере

1 ответ

Да.

Я почти уверен, что есть библиотека Python, которая уже реализует это, но в моем случае я реализую ее с помощью команды: --watch-only

Например: kubectl get pods --watch-only > -> покажет только изменения в модулях. Создание процесса Python, который собирает информацию из, вызовет только новые изменения.

Из того, что я понимаю, вы ищете это.

import kubernetes as k8s

core_api = k8s.client.CoreV1Api()
watcher = k8s.watch.Watch()
stream = watcher.stream(core_api.list_event_for_all_namespaces, timeout_seconds=5)
for raw_event in stream:
    logging.info("Kubernetes Event: %s %s" % (raw_event['type'],raw_event['object'].metadata.name))

Я не тестировал фрагмент, но он должен работать.

Другие вопросы по тегам