Skip to content

Commit d353685

Browse files
brmdiasclaude
andcommitted
Add Helm Chart deployment guide for EKS
Enhance the EKS deployment documentation with a comprehensive production deployment section using Helm charts. This addition provides: - Production-ready deployment approach with high availability - Integration with AWS services (RDS, S3, Route53, ACM) - Quick start guide with installation steps - Helm-specific uninstall instructions - Reference to detailed Helm chart documentation This complements the existing basic deployment guide by offering an enterprise-grade option for production environments. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
1 parent e8721cc commit d353685

File tree

1 file changed

+85
-1
lines changed

1 file changed

+85
-1
lines changed

docs/learning/howto/how2-terra-rd-eks.md

Lines changed: 85 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -154,9 +154,85 @@ The deployment should look as follows in `k9`:<br>
154154
Rundeck is available via the service's external URL.<br>
155155

156156
![](/assets/img/terra-eks5.png)
157+
158+
## Production Deployment with Helm Chart
159+
160+
For production environments, using a Helm chart provides a more robust and maintainable deployment approach compared to raw manifest files. The PagerDuty Runbook Automation Helm chart offers:
161+
162+
- **High Availability:** Multiple replicas with session affinity and load balancing
163+
- **Production-Ready Configuration:** Integration with RDS, S3, Route53, and ACM
164+
- **Security:** Proper secrets management and ACL configuration
165+
- **Scalability:** Resource limits, auto-scaling capabilities, and cluster configuration
166+
- **Maintainability:** Version control, easy upgrades, and rollback capabilities
167+
168+
### Quick Start with Helm
169+
170+
#### Prerequisites
171+
- **Helm 3.x** installed ([Installation Guide](https://helm.sh/docs/intro/install/))
172+
- AWS infrastructure:
173+
- AWS Load Balancer Controller
174+
- ExternalDNS
175+
- RDS Database (MySQL/MariaDB)
176+
- S3 Bucket for logs
177+
- Route53 Hosted Zone
178+
- ACM Certificate
179+
180+
#### Installation Steps
181+
182+
1. **Create namespace and database secret:**
183+
```bash
184+
kubectl create namespace rundeck
185+
kubectl create secret generic database-password \
186+
--from-literal=password='YOUR_DATABASE_PASSWORD' \
187+
--namespace=rundeck
188+
```
189+
190+
2. **Prepare configuration files:**
191+
- `admin-role.aclpolicy` - Admin ACL permissions
192+
- `realm.properties` - Local user accounts
193+
194+
3. **Customize values.yaml** with your environment settings:
195+
- Ingress host and ACM certificate ARN
196+
- RDS database endpoint
197+
- S3 bucket for logs
198+
- LDAP/AD configuration (if applicable)
199+
200+
4. **Install the Helm chart:**
201+
```bash
202+
# Clone the docker-zoo repository
203+
git clone https://github.com/rundeck/docker-zoo.git
204+
cd docker-zoo/kubernetes/helm
205+
206+
# Install the chart
207+
helm install rundeckpro ./rundeckpro \
208+
--namespace=rundeck \
209+
--set-file aclFile=./admin-role.aclpolicy \
210+
--set-file realm=./realm.properties \
211+
--values values.yaml
212+
```
213+
214+
5. **Verify the deployment:**
215+
```bash
216+
kubectl get pods -n rundeck
217+
kubectl get ingress -n rundeck
218+
```
219+
220+
### Full Documentation
221+
222+
For complete Helm chart documentation, including:
223+
- Architecture overview
224+
- Detailed prerequisites and AWS infrastructure setup
225+
- All configuration options
226+
- LDAP/AD integration
227+
- Production vs. development configurations
228+
- Troubleshooting guide
229+
- Security best practices
230+
231+
Visit the [Runbook Automation Helm Chart README](https://github.com/rundeck/docker-zoo/tree/master/kubernetes/helm/rundeckpro).
232+
157233
### Uninstalling
158234

159-
#### To uninstall the Rundeck deployment use:
235+
#### To uninstall the basic Rundeck deployment use:
160236

161237
```
162238
kubectl delete deployment rundeck-deployment
@@ -168,6 +244,14 @@ kubectl delete deployment rundeck-deployment
168244
kubectl delete service rundeck-svc
169245
```
170246

247+
#### To uninstall a Helm-based deployment:
248+
249+
```
250+
helm uninstall rundeckpro --namespace=rundeck
251+
```
252+
253+
**Note:** The Helm uninstall command removes all Kubernetes resources (deployments, services, ingress, secrets) but does NOT delete the RDS database, S3 bucket, or Route53 records.
254+
171255
## Resources
172256
* AWS EKS [Introduction](https://aws.amazon.com/eks/)<br>
173257
* AWS CLI [Documentation](https://aws.amazon.com/cli/)<br>

0 commit comments

Comments
 (0)