Início
K8s ConfigMap e Secret

Gerador de YAML para Kubernetes ConfigMap e Secret

Utilitário de desenvolvimento para geração de manifestos Kubernetes ConfigMap e Secret com codificação Base64, stringData, TLS, autenticação Docker e flags de recursos imutáveis.

Predefinições:
Configuração e Cargas Úteis
Metadados do Recurso Kubernetes
Itens de Carga Útil (5)
#1
#2
#3
#4
#5
Rótulos e Anotações
Rótulos (3)
Anotações (2)
apiVersion: v1
kind: ConfigMap
metadata:
  name: app-runtime-config
  namespace: production
  labels:
    app.kubernetes.io/name: "api-service"
    app.kubernetes.io/env: "production"
    app.kubernetes.io/managed-by: "gitops"
  annotations:
    reloader.stakater.com/auto: "true"
    description: "Primary web service application parameters"
immutable: true
data:
  APP_ENV: production
  LOG_LEVEL: info
  CACHE_TTL_SECONDS: "3600"
  FEATURE_ASYNC_ORDERS: "true"
  config.json: |
    {
      "rateLimit": {
        "requestsPerMinute": 1200,
        "burst": 50
      },
      "metrics": {
        "prometheusEnabled": true,
        "path": "/metrics",
        "port": 9090
      },
      "circuitBreaker": {
        "failureThreshold": 5,
        "resetTimeoutMs": 15000
      }
    }
Entradas de Dados
5 Keys
Limite de Memória etcd
1.5 KB / 1 MB
Conformidade de Segurança
Nota A+ (100%)

Criptografia 100% no Navegador

A codificação Base64 e o processamento de segredos ocorrem totalmente na memória do navegador sem envio a servidores.

Validação Nativa para Kubernetes

Garante conformidade com chaves DNS RFC 1123, padrões de certificados TLS e o limite de 1MB do etcd.

Integração Completa de Cargas de Trabalho

Exporta manifestos com volumeMounts, referências envFrom, geradores Kustomize e comandos da CLI kubectl.

Referência técnica e guia de arquitetura

K8S Configmap Secret Generator Referência para Desenvolvedores — Guia de referência

Utilitário de desenvolvimento para geração de manifestos Kubernetes ConfigMap e Secret com codificação Base64, stringData, TLS, autenticação Docker e flags de recursos imutáveis.

Parâmetros principais e controles

kind'ConfigMap' | 'Secret'

Especifica o esquema de recurso da API Kubernetes a ser gerado.

Padrão: 'ConfigMap'
secretEncoding'data' | 'stringData'

Define o formato do payload do Secret: Base64 pré-codificado ('data') ou texto simples ('stringData').

Padrão: 'data'
secretType'Opaque' | 'kubernetes.io/tls' | 'kubernetes.io/dockerconfigjson' | 'kubernetes.io/basic-auth' | 'kubernetes.io/ssh-auth'

Define a tipologia do Secret no Kubernetes e valida a presença das chaves obrigatórias.

Padrão: 'Opaque'
immutableboolean

Habilita a flag immutable (Kubernetes 1.19+) para prevenir mutações acidentais e reduzir requisições de watch no kube-apiserver.

Padrão: false
entriesKeyValEntry[]

Conjunto de entradas chave-valor contendo identificador, valor e flags de formato multilinha ou binário.

Padrão: []

Dicas profissionais e melhores práticas

Usar flag immutable no K8s

Declarar `immutable: true` em ConfigMaps e Secrets protege contra alterações indevidas em produção e elimina o polling de sincronização do kubelet, otimizando o kube-apiserver.

Preferir stringData em GitOps

Adote `stringData` ao construir manifestos versionados com ferramentas como SOPS, Sealed Secrets ou Kustomize; o kube-apiserver realiza a conversão para base64 automaticamente na admissão.

Tratar cadeias TLS e CA

Para secrets `kubernetes.io/tls`, una o certificado do servidor e a cadeia intermediária no arquivo `tls.crt` com quebras de linha padrão Unix (LF) para evitar erros de handshake no Ingress.

Problemas comuns e solução de problemas

Falha na decodificação Base64 dentro de Pods por caracteres CR

Remova quebras de linha no formato Windows (`\r\n`) antes de realizar a codificação Base64. Caracteres residuais de retorno de carro corrompem o parse de arquivos dentro de containers Linux.

Rejeição de nomenclatura de subdomínio DNS RFC 1123

Certifique-se de que os nomes dos recursos usem apenas caracteres alfanuméricos minúsculos, '-' ou '.', iniciando e terminando com caractere alfanumérico. Letras maiúsculas e underscores não são suportados.

Perguntas frequentes (FAQ)

Qual a diferença prática entre data e stringData em Secrets do Kubernetes?▼

O campo `data` exige valores previamente codificados em Base64, enquanto `stringData` recebe texto não codificado em UTF-8. Durante a admissão, o kube-apiserver codifica os valores de `stringData` para Base64 e os armazena em `data`, descartando `stringData` do etcd.

Por que marcar ConfigMaps e Secrets como immutable: true em ambientes produtivos?▼

Ao configurar recursos como imutáveis, o kubelet cessa a verificação periódica de alterações nos volumes montados, o que reduz substancialmente o uso de rede e CPU no control plane de clusters com milhares de pods.

Como as credenciais são organizadas em kubernetes.io/dockerconfigjson?▼

O Secret requer uma chave única `.dockerconfigjson` cujo valor é um JSON codificado em Base64 com a estrutura `{"auths":{"<registry-url>":{"username":"...","password":"...","auth":"base64(user:pass)"}}}`.

A geração client-side desta ferramenta expõe credenciais na rede?▼

Não. Toda a codificação Base64, estruturação de schemas e renderização de manifestos ocorrem exclusivamente no motor JavaScript do navegador. Nenhuma chave privada ou credencial é enviada para servidores externos.

Ferramentas e utilitários relacionados

Todas as ferramentas →
Guia do Desenvolvedor do Gerador de HorizontalPodAutoscaler (HPA v2) do KubernetesDesenvolvimento

Crie manifestos YAML de HPA v2 com metas de utilização de CPU e memória, métricas personalizadas e políticas de estabilização de escala vertical e horizontal.

Abrir ferramenta→
Gerador e Otimizador de Configuração de Produção Redis (redis.conf)Desenvolvimento

Gere arquivos redis.conf ajustados para produção com políticas maxmemory, persistência RDB/AOF, vinculação de rede restrita e autenticação ACL robusta.

Abrir ferramenta→
Guia do Desenvolvedor: Otimizador e Gerador de Hardware para PostgreSQL (postgresql.conf)Desenvolvimento

Calcule e gere configurações otimizadas do postgresql.conf com base no hardware disponível (shared_buffers, work_mem, effective_cache_size, max_connections).

Abrir ferramenta→
Backup diário de banco de dadosDesenvolvimento

Crie e estruture unidades de temporizador systemd e serviços complementares prontos para produção com agendamento OnCalendar, intervalos OnBootSec, execução Persistent e atrasos aleatórios.

Abrir ferramenta→
Guia do Desenvolvedor do Gerador de Configuração TypeScript (tsconfig.json)Desenvolvimento

Gere configurações tsconfig.json modernas e robustas para Next.js, Node.js, Vite ou bibliotecas com modo estrito, aliases de caminho e resolução de módulos.

Abrir ferramenta→
Guia do Desenvolvedor: Gerador de DDL CREATE TABLE de JSON para ClickHouseDesenvolvimento

Converta documentos JSON de amostra em DDL SQL do ClickHouse com engine MergeTree, tipos UInt/Int/Float/String/DateTime e mapeamento de colunas Array/Nested.

Abrir ferramenta→