Ferramenta gratuita

YAML do Kubernetes para diagrama

Cole seus manifestos do Kubernetes ou a saída de kubectl -o yaml e veja seus namespaces, Ingress, Services, Deployments e as conexões entre eles como um diagrama. Não é preciso ter conta para testar.

Resultado de exemplo

Diagrama de exemplo desenhado a partir de um exemplo de Kubernetes

Tem um docker-compose.yml? Experimente a ferramenta de Docker Compose

Como funciona

  1. Cole ou solte seu YAML

    Manifestos escritos à mão, a saída de kubectl get -o yaml ou a saída renderizada do Helm. Vários recursos separados por --- funcionam, assim como kind: List.

  2. Veja o diagrama

    Namespaces viram molduras. Ingress, Services, workloads, ConfigMaps, Secrets e volumes são posicionados e conectados do jeito que o YAML os liga.

  3. Abra no Archboard

    Salve como um novo diagrama para reorganizar, anotar, compartilhar um link ou exportar em SVG e PNG. Para se cadastrar basta uma conta Google ou GitHub.

Tipos de recurso compatíveis

Estes 37 tipos de recurso são desenhados com o próprio nó:

Workloads

  • Pod
  • Deployment
  • StatefulSet
  • DaemonSet
  • ReplicaSet
  • Job
  • CronJob
  • Node

Rede

  • Service
  • Ingress
  • IngressClass
  • Gateway
  • HTTPRoute
  • GRPCRoute
  • TCPRoute
  • TLSRoute
  • UDPRoute
  • NetworkPolicy

Configuração e segredos

  • ConfigMap
  • Secret

Armazenamento e escalonamento

  • PersistentVolumeClaim
  • PersistentVolume
  • StorageClass
  • HorizontalPodAutoscaler
  • VerticalPodAutoscaler

Acesso (RBAC)

  • ServiceAccount
  • Role
  • ClusterRole
  • RoleBinding
  • ClusterRoleBinding

Políticas

  • PodDisruptionBudget
  • ResourceQuota
  • LimitRange
  • MutatingWebhookConfiguration
  • ValidatingWebhookConfiguration

Extensões

  • CustomResourceDefinition

Agrupamento

  • Namespace

Um Namespace é desenhado como uma moldura em volta de tudo o que está dentro dele.

Qualquer outro tipo (um Certificate do cert-manager, um Rollout do Argo, qualquer recurso personalizado) é desenhado como um cartão de recurso personalizado com o tipo e o grupo de API, dentro do namespace. Só ficam de fora os recursos que o cluster ou o Helm criam automaticamente (Events, contas de serviço padrão, kube-root-ca.crt, registros de release do Helm), e o resultado mostra quantos são.

O que o diagrama mostra e o que não mostra

Mostra

  • Namespaces como molduras, com os recursos dentro
  • Regras de Ingress ligadas aos Services para onde encaminham
  • Services ligados aos workloads que os seletores de labels encontram
  • ConfigMaps, Secrets e PersistentVolumeClaims ligados aos workloads que os usam ou montam
  • HorizontalPodAutoscalers ligados ao que escalam, e NetworkPolicies aos workloads que selecionam
  • ServiceAccounts ligadas aos workloads que rodam com elas, e RoleBindings aos seus Roles e ServiceAccounts
  • Gateways da Gateway API ligados às suas rotas, e rotas aos seus Services de backend
  • CustomResourceDefinitions ligadas aos recursos personalizados que definem

Não mostra

  • Quais serviços chamam uns aos outros em tempo de execução: o YAML descreve como os recursos estão ligados, não o tráfego real
  • Dados de Secrets e valores de variáveis de ambiente (só os nomes são lidos)
  • O estado ao vivo do cluster, como status, eventos ou uso de recursos
  • A saída em tabela de kubectl get (rode o comando com -o yaml)

Perguntas

Posso colar a saída do kubectl?

Sim, em YAML: rode kubectl get com -o yaml (por exemplo, kubectl get deploy,svc,ingress -n shop -o yaml) e cole o resultado. Campos que o Kubernetes adiciona, como status, uid e carimbos de data e hora, são ignorados. A saída em tabela padrão não é aceita.

Funciona com charts do Helm?

Renderize o chart antes com helm template e cole a saída. Templates não renderizados, que ainda têm marcadores de Go template, não podem ser lidos como YAML.

O que acontece quando abro o diagrama no Archboard?

O diagrama que você vê (formas, nomes e conexões) é salvo como um novo diagrama no seu espaço de trabalho, onde dá para reorganizar, adicionar notas, compartilhar ou exportar. É um ponto de partida: mudanças posteriores no YAML não atualizam o diagrama.

A ferramenta é gratuita?

Sim. Colar YAML e ver o diagrama não exige conta. Para abrir no Archboard, basta uma conta gratuita.

Abra um canvas em um minuto

Entre com Google ou GitHub. Grátis para um assento. Faça upgrade quando a equipe entrar.