Команда Puzl Cloud выложила в опенсорс KubeSDK — Python-клиент для работы с Kubernetes API. Основная идея: сделать типизированный async-first клиент с минимумом зависимостей, который удобно использовать в продакшене и при работе с несколькими кластерами одновременно.
Чем отличается от официального kubernetes-client/python:
🔘 Полностью асинхронный из коробки (не как обёртка поверх sync-кода)
🔘 Все методы и модели типизированы — IDE нормально автокомплитит
🔘 Встроенный генератор моделей: скармливаешь ему Kubernetes API — получаешь dataclasses для всех ресурсов, включая CRD
🔘 Единый интерфейс для core-ресурсов и custom resources
🔘 Заточен под высокую нагрузку и мульти-кластерные сценарии
Есть альтернативы — kubernetes_asyncio, kr8s, lightkube — но у каждой свои компромиссы. kubernetes_asyncio генерируется из OpenAPI и тоже async, но не такой developer-friendly. kr8s поддерживает и sync, и async, но там другой подход к моделям.
Код в репо, установка
@zen_of_python
Чем отличается от официального kubernetes-client/python:
Есть альтернативы — kubernetes_asyncio, kr8s, lightkube — но у каждой свои компромиссы. kubernetes_asyncio генерируется из OpenAPI и тоже async, но не такой developer-friendly. kr8s поддерживает и sync, и async, но там другой подход к моделям.
Код в репо, установка
pip install kubesdk[cli].@zen_of_python
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2