Hello OpenEMR Community!
I’m excited to share a project I’ve been working on for several months: OpenEMR on EKS with Auto Mode - a complete, production-ready deployment solution for running OpenEMR on AWS.
What This Solves
Many healthcare organizations want to use OpenEMR but struggle with:
- Complex deployment and infrastructure management
- Scaling issues during peak hours
- Disaster recovery and backup strategies
- Security and compliance requirements
- High operational overhead
This solution addresses all of these challenges with a single, comprehensive deployment.
Key Features
Streamlined Deployment
- Complete infrastructure and application deployment in ~60 minutes
- No Kubernetes expertise required - AWS EKS Auto Mode handles all node management
- Includes everything: SSL certificates, monitoring, backups, security policies
Enterprise-Ready from Day One
- High Availability: Multi-AZ deployment with automatic failover
- Auto-scaling: Scales from small clinics to large hospitals automatically
- Disaster Recovery: Cross-region backup and restore capabilities built-in
- Security: WAFv2, 6 KMS encryption keys, network policies, RBAC, Pod Security Standards
- Compliance: Extensive app and audit logs, VPC flow logs, CloudTrail integration
Cost-Optimized
- Small clinic: ~$385/month
- Mid-size practice: ~$816/month
- Large hospital: ~$2,636/month
- Automatic scaling means you only pay for what you use
Comprehensive Monitoring
- CloudWatch integration included by default
- Optional Prometheus/Grafana stack with one-command installation
- Distributed tracing with Jaeger
- Log aggregation with Loki
Technical Architecture
Infrastructure Stack:
- Compute: EKS with Auto Mode (Kubernetes 1.33, Bottlerocket OS)
- Database: Aurora Serverless V2 (MySQL 8.0)
- Cache: Valkey Serverless (Redis-compatible)
- Storage: EFS with encryption
- Security: WAFv2, KMS, Private subnets
What’s Included:
- Complete Terraform modules (modular structure)
- All Kubernetes manifests
- 15+ operational scripts (backup, restore, SSL management, security, etc.)
- Comprehensive documentation
- Troubleshooting guides
Documentation Highlights
The repository includes extensive documentation:
- Step-by-step deployment guide
- Architecture deep-dive
- Cost analysis and optimization strategies
- Backup and disaster recovery procedures
- Troubleshooting guide
- Security best practices including jumpbox architecture
How This Complements Existing OpenEMR Deployments
This isn’t meant to replace existing deployment methods but to provide another option for organizations that:
- Want to leverage AWS cloud services
- Need enterprise-grade infrastructure
- Require automatic scaling and high availability
- Want managed infrastructure without operational overhead
Links
GitHub Repository: GitHub - Jmevorach/openemr-on-eks: Run OpenEMR on EKS!
Quick Start:
bash
# Clone the repository
git clone https://github.com/Jmevorach/openemr-on-eks
cd openemr-on-eks
# Deploy infrastructure (Terraform)
cd terraform
terraform init
terraform apply
# Deploy OpenEMR (Kubernetes)
cd ../k8s
./deploy.sh
Feedback Welcome!
I’d love to hear from the community:
- What features would you like to see added?
- Any issues or questions about the deployment?
- Ideas for making this even more accessible?
I’m also happy to transfer this project to the official OpenEMR organization if that would benefit the community - just let me know!
Acknowledgments
Thanks to the entire OpenEMR community for building such amazing software. This deployment solution is my contribution back to help make OpenEMR even more accessible to healthcare organizations worldwide.
Special thanks to those who’ve already started testing and providing feedback in the Slack channels!