Бесплатная платформа с открытым исходным кодом для создания собственного облака на Kubernetes с REST API для кластеров, баз данных, виртуальных машин и балансировщиков нагрузки.
kr8s-org/kr8s
Клиентская библиотека Python для Kubernetes с API, построенным по образцу kubectl, и синхронным и асинхронным интерфейсами (asyncio/trio).
- Звёзды
- 1,001
- Форки
- 71
- Открытые issues
- 49
- Последний коммит
- 6 дней назад
Что это?
kr8s — клиентская библиотека Python для Kubernetes. Её API построен по образцу kubectl, поэтому разработчики, знакомые с командами get, scale, label, cordon и exec, найдут аналогичные методы у классов Pod, Deployment, Node и других объектов — без необходимости осваивать новую терминологию.
Библиотека предлагает разумные настройки по умолчанию для аутентификации и конфигурации клиента, а также кэширует клиентов, поэтому объекты API не нужно передавать между функциями. Код написан вручную, а не сгенерирован из спецификаций Swagger, благодаря чему исходники остаются понятными. Доступны стандартный синхронный API и асинхронный API для asyncio и trio.
Помимо базовых операций CRUD, kr8s включает вспомогательные средства для распространённых задач: выполнения команд в pod, проброса портов в фоновой нити и создания простых описаний Pod из именованных аргументов. В проекте заявлена поддержка нескольких версий Python и недавних выпусков Kubernetes.
Ключевые возможности
- 01Названия и семантика методов соответствуют kubectl, поэтому библиотеку легко освоить.
- 02Поддерживаются синхронный и асинхронный API, совместимые с asyncio и trio.
- 03Клиенты кэшируются, поэтому объекты API можно повторно использовать, не передавая клиент между вызовами.
- 04Есть вспомогательные средства для выполнения команд в pod, проброса портов и перевода узла в режим cordon.
- 05Код написан вручную, а не сгенерирован из Swagger.
Сценарии использования
- Написание автоматизации на Python для масштабирования Deployment или добавления меток pod в кластере.
- Создание контроллеров или сервисов на asyncio, взаимодействующих с Kubernetes API.
- Замена shell-скриптов, запускающих kubectl, типизированным кодом на Python.
Быстрый старт
- 1
Установите библиотеку из PyPI
pip install kr8s - 2
Выведите список имен всех узлов в кластере
Что важно знать
- Для выполнения полезных действий необходим доступ к кластеру Kubernetes.
Темы
Частые вопросы
- Что такое kr8s?
- Клиентская библиотека Python для Kubernetes с API, построенным по образцу kubectl, и синхронным и асинхронным интерфейсами (asyncio/trio). kr8s — клиентская библиотека Python для Kubernetes. Её API построен по образцу kubectl, поэтому разработчики, знакомые с командами get, scale, label, cordon и exec, найдут аналогичные методы у классов Pod, Deployment, Node и других объектов — без необходимости осваивать новую терминологию.
- kr8s можно использовать бесплатно? Какая у него лицензия?
- kr8s распространяется с открытым исходным кодом под лицензией BSD-3-Clause. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- kr8s всё ещё поддерживается?
- Активно поддерживается. Последний коммит в kr8s — 14 окт. 2026 г..
- Для чего можно использовать kr8s?
- Написание автоматизации на Python для масштабирования Deployment или добавления меток pod в кластере. Создание контроллеров или сервисов на asyncio, взаимодействующих с Kubernetes API. Замена shell-скриптов, запускающих kubectl, типизированным кодом на Python.
- Как установить kr8s?
- Установите библиотеку из PyPI: pip install kr8s Выведите список имен всех узлов в кластере
- Где скачать kr8s?
- Исходный код и инструкции по установке — на GitHub: https://github.com/kr8s-org/kr8s
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Настольный клиент Kubernetes на Tauri и Rust: читает kubeconfig и определяет статус так же, как kubectl.
Python-фреймворк для создания API со стандартными аннотациями типов, автоматической валидацией, документацией OpenAPI и высокой производительностью.
Фреймворк для тестирования Python: помогает писать небольшие тесты и подходит для сложного функционального тестирования приложений и библиотек.
Современный менеджер пакетов и зависимостей Python для управления venv, lockfile и сборками на основе метаданных PEP 621 и PEP 517.
Система управления запасами с открытым исходным кодом: контроль складских остатков, учёт деталей, REST API и система плагинов на Python и Django.