A reference collection of production-style raw Kubernetes YAML manifests, organized by resource type. Useful as a learning reference or a starting point for any new service.
kubernetes-manifests/
├── namespaces/ # Environment namespaces (dev, qa, production)
├── deployments/ # Application Deployments with probes & resource limits
├── services/ # ClusterIP Services
├── ingress/ # TLS-enabled Ingress routing
├── configmaps/ # Non-sensitive app configuration
├── secrets/ # Example Secret structure (placeholders only)
├── hpa/ # HorizontalPodAutoscaler definitions
├── pdb/ # PodDisruptionBudgets for safe node maintenance
└── networkpolicies/ # Default-deny + explicit allow rules
Apply in this order so dependencies exist before resources that reference them:
kubectl apply -f namespaces/
kubectl apply -f configmaps/
kubectl apply -f secrets/ # edit placeholder values first!
kubectl apply -f deployments/
kubectl apply -f services/
kubectl apply -f ingress/
kubectl apply -f hpa/
kubectl apply -f pdb/
kubectl apply -f networkpolicies/secrets/app-secret-example.yamlcontains placeholder values (REPLACE_ME) — never commit real secrets to Git. Use Sealed Secrets, External Secrets Operator, or HashiCorp Vault in any real environment.- Update the
image:references indeployments/to point to your own container registry.
Pramod Ramesh Belal — AWS DevOps Engineer LinkedIn · pramodbelal29@gmail.com