Almost Every infrastructure decision I endorse or regret after 4 years
8 days ago
- #Infrastructure
- #Kubernetes
- #AWS
- Endorsed AWS over Google Cloud for better support and stability.
- EKS is recommended unless cost-saving is a priority.
- Regret using EKS managed addons due to customization limitations; switched to Helm charts.
- RDS is endorsed for critical data management.
- Redis ElastiCache is praised for its versatility and performance.
- ECR is preferred over quay.io for stability and integration benefits.
- AWS VPN is endorsed for its simplicity and integration with Okta.
- AWS premium support is regretted due to high costs.
- Control Tower Account Factory for Terraform (AFT) is endorsed for account automation.
- Automating post-mortem processes with a Slack bot is endorsed.
- PagerDuty's incident templates are endorsed for incident management.
- Regular PagerDuty ticket reviews are endorsed to manage alert fatigue.
- Monthly cost tracking meetings are endorsed for SaaS cost management.
- Regret managing post-mortems in DataDog or PagerDuty due to customization issues.
- Regret not using Function as a Service (FaaS) more for CPU workloads.
- GitOps is endorsed for infrastructure management despite some complexity.
- Prioritizing team efficiency over external demands is endorsed.
- Regret multiple applications sharing a database due to maintenance issues.
- Regret not adopting an identity platform like Okta earlier.
- Notion is endorsed for documentation management.
- Slack is endorsed with recommendations for better communication practices.
- Linear is preferred over JIRA for its simplicity and efficiency.
- No regrets about not using Terraform Cloud due to cost; using Atlantis instead.
- GitHub Actions for CI/CD is endorsed with some reservations about self-hosted runners.
- Regret using DataDog due to high costs, especially for Kubernetes and AI workloads.
- PagerDuty is endorsed for incident management.
- Schema migration by diff is endorsed with some reservations.
- Ubuntu is endorsed for dev servers for its support and package availability.
- AppSmith is endorsed for internal tool UIs despite some limitations.
- Helm v3 is endorsed for Kubernetes deployments despite some complexities.
- Helm charts in ECR (OCI) are endorsed for lifecycle management.
- Bazel is mentioned with uncertainty about its necessity for Go services.
- Regret not adopting OpenTelemetry earlier for metrics and tracing.
- Renovatebot is endorsed over Dependabot for dependency updates despite complexity.
- Kubernetes is endorsed for service hosting with a note on its complexity.
- Buying own IPs is endorsed for whitelisting needs.
- Flux for Kubernetes GitOps is endorsed with no regrets.
- Karpenter is strongly endorsed for node management in EKS.
- Regret using SealedSecrets for Kubernetes secret management.
- ExternalSecrets is endorsed for syncing AWS secrets to Kubernetes.
- ExternalDNS is endorsed for DNS management.
- Cert-manager is endorsed for SSL certificate management.
- Regret using Bottlerocket for EKS due to debugging difficulties.
- Terraform is endorsed over CloudFormation for infrastructure as code.
- No regrets about not using code-ish IaC solutions like Pulumi or CDK.
- No regrets about not using a network mesh like Istio or Linkerd.
- Nginx is endorsed for EKS ingress for its stability.
- Homebrew is endorsed for distributing company scripts and binaries.
- Go is endorsed for service development for its ease of use and performance.