134 lines
2.1 KiB
Markdown
134 lines
2.1 KiB
Markdown
# 🚀 Quick Start Guide
|
|
|
|
## 5-Minute Setup
|
|
|
|
### Step 1: Clone Repository
|
|
```bash
|
|
git clone http://git.thedevops.dev/admin/k3s-gitops.git
|
|
cd k3s-gitops/terraform/aws-infrastructure
|
|
```
|
|
|
|
### Step 2: Configure AWS
|
|
```bash
|
|
export AWS_ACCESS_KEY_ID="your-key"
|
|
export AWS_SECRET_ACCESS_KEY="your-secret"
|
|
export AWS_DEFAULT_REGION="us-east-1"
|
|
```
|
|
|
|
### Step 3: Create Configuration
|
|
```bash
|
|
cp environments/dev.tfvars terraform.tfvars
|
|
vim terraform.tfvars
|
|
```
|
|
|
|
**Required variables:**
|
|
```hcl
|
|
project_name = "myapp"
|
|
environment = "dev"
|
|
db_username = "admin"
|
|
db_password = "SecurePassword123!"
|
|
```
|
|
|
|
### Step 4: Deploy
|
|
```bash
|
|
terraform init
|
|
terraform plan
|
|
terraform apply
|
|
```
|
|
|
|
**Deployment time:** 15-20 minutes
|
|
**Cost:** ~$50-100/month (dev)
|
|
|
|
---
|
|
|
|
## Post-Deployment
|
|
|
|
### Get ALB DNS
|
|
```bash
|
|
terraform output alb_dns_name
|
|
```
|
|
|
|
### Test Application
|
|
```bash
|
|
curl http://$(terraform output -raw alb_dns_name)/health
|
|
```
|
|
|
|
### View All Outputs
|
|
```bash
|
|
terraform output
|
|
terraform output -json > outputs.json
|
|
```
|
|
|
|
---
|
|
|
|
## Common Tasks
|
|
|
|
### Update Infrastructure
|
|
```bash
|
|
vim terraform.tfvars # Make changes
|
|
terraform plan
|
|
terraform apply
|
|
```
|
|
|
|
### Scale Application
|
|
```bash
|
|
# Edit terraform.tfvars
|
|
asg_desired_capacity = 5
|
|
|
|
terraform apply
|
|
```
|
|
|
|
### View Logs
|
|
```bash
|
|
# CloudWatch Console
|
|
open https://console.aws.amazon.com/cloudwatch
|
|
|
|
# Or AWS CLI
|
|
aws logs tail /aws/ec2/dev/system --follow
|
|
```
|
|
|
|
---
|
|
|
|
## Cleanup
|
|
|
|
### Development
|
|
```bash
|
|
terraform destroy -var-file="environments/dev.tfvars"
|
|
```
|
|
|
|
### Production (⚠️ Dangerous)
|
|
```bash
|
|
# Create backup first!
|
|
terraform destroy -var-file="environments/production.tfvars"
|
|
```
|
|
|
|
---
|
|
|
|
## Troubleshooting
|
|
|
|
**Issue:** "Error creating VPC"
|
|
**Solution:** Check AWS limits
|
|
|
|
**Issue:** "Insufficient permissions"
|
|
**Solution:** Ensure IAM user has required permissions
|
|
|
|
**Issue:** "State lock timeout"
|
|
**Solution:** `terraform force-unlock <LOCK_ID>`
|
|
|
|
---
|
|
|
|
## Next Steps
|
|
|
|
1. Read [README.md](../README.md)
|
|
2. Review security best practices
|
|
3. Setup CI/CD pipeline
|
|
4. Configure monitoring
|
|
|
|
---
|
|
|
|
## Getting Help
|
|
|
|
- Issues: http://git.thedevops.dev/admin/k3s-gitops/issues
|
|
- Slack: #infrastructure
|
|
- Email: devops@example.com
|