Plataforma gratuita e open source para criar sua própria nuvem no Kubernetes, com uma REST API para clusters, bancos de dados, VMs e balanceadores de carga.
kr8s-org/kr8s
Uma biblioteca cliente Python para Kubernetes com API inspirada no kubectl e interfaces síncrona e assíncronas (asyncio/trio).
- Estrelas
- 1,001
- Forks
- 71
- Issues abertas
- 49
- Último commit
- há 6 dias
O que é?
kr8s é uma biblioteca cliente Python para Kubernetes. Sua API é inspirada no kubectl, então desenvolvedores que já conhecem comandos como get, scale, label, cordon e exec encontram métodos equivalentes em classes como Pod, Deployment, Node e outras, sem precisar aprender um novo vocabulário.
A biblioteca adota padrões sensatos para autenticação e configuração do cliente e mantém os clientes em cache, para que os objetos da API não precisem ser passados entre funções. O código é escrito manualmente, em vez de ser gerado a partir de especificações Swagger, o que mantém o código-fonte legível. A biblioteca oferece tanto uma API síncrona padrão quanto uma API assíncrona compatível com asyncio e trio.
Além das operações básicas de CRUD, kr8s inclui auxiliares para tarefas comuns, como executar comandos em pods, encaminhar portas em uma thread em segundo plano e gerar definições simples de Pod a partir de argumentos nomeados. O projeto lista suporte a várias versões do Python e a versões recentes do Kubernetes.
Recursos principais
- 01Os nomes e a semântica dos métodos seguem o kubectl, facilitando o aprendizado.
- 02Oferece APIs síncrona e assíncrona compatíveis com asyncio e trio.
- 03Mantém clientes em cache para que os objetos da API possam ser reutilizados sem passar os clientes entre funções.
- 04Inclui auxiliares para executar comandos em pods, encaminhar portas e bloquear o agendamento de nós.
- 05Usa código escrito manualmente, em vez de código cliente gerado pelo Swagger.
Casos de uso
- Escrever automações em Python para escalar deployments ou adicionar labels a pods em um cluster.
- Criar controllers ou serviços baseados em asyncio que se comuniquem com a API do Kubernetes.
- Substituir scripts shell que chamam o kubectl por código Python tipado.
Início rápido
- 1
Instale a biblioteca do PyPI
pip install kr8s - 2
Liste todos os nomes de nós do seu cluster
Antes de usar
- É necessário ter acesso a um cluster Kubernetes para realizar qualquer operação útil.
Tópicos
Perguntas frequentes
- O que é kr8s?
- Uma biblioteca cliente Python para Kubernetes com API inspirada no kubectl e interfaces síncrona e assíncronas (asyncio/trio). kr8s é uma biblioteca cliente Python para Kubernetes. Sua API é inspirada no kubectl, então desenvolvedores que já conhecem comandos como get, scale, label, cordon e exec encontram métodos equivalentes em classes como Pod, Deployment, Node e outras, sem precisar aprender um novo vocabulário.
- kr8s é gratuito? Qual é a licença?
- kr8s é open source sob a licença BSD-3-Clause. Confira os termos da licença antes de usá-lo em produtos comerciais.
- kr8s ainda é mantido?
- Manutenção ativa. O último commit de kr8s foi em 14 de out. de 2026.
- Para que posso usar kr8s?
- Escrever automações em Python para escalar deployments ou adicionar labels a pods em um cluster. Criar controllers ou serviços baseados em asyncio que se comuniquem com a API do Kubernetes. Substituir scripts shell que chamam o kubectl por código Python tipado.
- Como instalar kr8s?
- Instale a biblioteca do PyPI: pip install kr8s Liste todos os nomes de nós do seu cluster
- Onde consigo kr8s?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/kr8s-org/kr8s
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Cliente desktop de Kubernetes feito com Tauri e Rust, que lê seu kubeconfig e calcula o status como o kubectl.
Framework web Python para criar APIs com type hints padrão, validação automática, documentação OpenAPI e alto desempenho.
Um framework de testes para Python que facilita a criação de testes simples e também dá conta de testes funcionais complexos para aplicações e bibliotecas.
Gerenciador moderno de pacotes e dependências Python que gerencia venvs, lockfiles e builds com base nos metadados PEP 621 e PEP 517.
Sistema open source de gestão de estoque com controle de materiais, rastreamento de peças, API REST e sistema de plugins, desenvolvido em Python e Django.