feat: Add ECS/Fargate deployment for LogGuardian (Issue #91)#146
Open
Sarlynoel020 wants to merge 7 commits intomainfrom
Open
feat: Add ECS/Fargate deployment for LogGuardian (Issue #91)#146Sarlynoel020 wants to merge 7 commits intomainfrom
Sarlynoel020 wants to merge 7 commits intomainfrom
Conversation
- Deploy LogGuardian container to ECS/Fargate in dev account - Terraform infrastructure for cluster, task definition, IAM roles - Cost-optimized with Fargate Spot (80/20 split) - CloudWatch logging integration - Public subnet architecture (no NAT Gateway, saves /mo) Infrastructure deployed: - ECS Cluster: logguardian-dev - Task Definition: logguardian-dev:2 - IAM Task Role: Config/Logs/CloudWatch permissions - IAM Execution Role: ECS agent permissions - Security Group: Egress-only for AWS API access - CloudWatch Log Group: /ecs/logguardian (30-day retention) Testing: - Dry-run execution: PASS (exit code 0) - Found 2 non-compliant log groups - Execution time: 245-310ms - Container authentication: PASS (ECS task role) - AWS Config integration: PASS Cost: ~/month Account: 769392325486 (zsoftly dev logguardian) Region: ca-central-1 Closes #91
…with local values in EventBridge configuration
…d networking configurations
…onment-based naming and lifecycle postconditions
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
🎯 Overview
Deploys LogGuardian to ECS/Fargate in the dev account (769392325486) for automated CloudWatch log compliance enforcement.
📦 What's Changed
Infrastructure (Terraform)
logguardian-devwith Fargate Spot capacity provider (80/20 split)logguardian-devwith 256 CPU / 512 MB memory/ecs/logguardianwith 30-day retentionContainer Image
769392325486.dkr.ecr.ca-central-1.amazonaws.com/logguardian:latest✅ Testing Evidence
Dry-Run Execution
{ "status": "completed", "mode": "dry-run", "config_rule_name": "cloudwatch-log-group-encrypted", "total_processed": 2, "success_count": 2, "failure_count": 0, "duration": "245ms", "exit_code": 0 }Resources Found:
/aws/ecs/containerinsights/logguardian-dev/performance(would apply encryption)/ecs/logguardian(would apply encryption)Error Handling Validation
Authentication & Integration
📁 Files Added
💰 Cost Impact
Monthly Recurring:
Savings:
🏗️ Architecture Decisions
Fargate Spot (80% allocation)
Public Subnets
Resource Sizing
🔒 Security Considerations
IAM Least Privilege
Network Security
Secrets Management
📋 Deployment Instructions
Prerequisites
cloudwatch-log-group-encryptedDeploy
cd terraform/environments/dev terraform init terraform plan terraform applyVerify
🔜 Next Steps (After Merge)
--dry-runflag🐛 Known Limitations
✅ Pre-Merge Checklist