forked from archetana/cmbcluster
-
Notifications
You must be signed in to change notification settings - Fork 3
Open
Labels
awsAmazon Web Services relatedAmazon Web Services relatedinfrastructureInfrastructure and deployment issuesInfrastructure and deployment issues
Description
User Story
As a DevOps engineer, I want AWS EKS deployment scripts so that I can deploy CMBCluster on Amazon Web Services with the same functionality as the current GCP deployment.
Description
Create comprehensive AWS EKS deployment scripts that mirror the functionality of the existing GCP deployment, including cluster setup, networking, storage, and application deployment.
Current GCP Implementation Analysis
Based on scripts/setup-cluster.sh analysis:
- GKE Cluster: Private cluster with VPC, subnets, NAT gateway
- Storage: Cloud Storage buckets for database and user data
- Networking: Custom VPC with secondary ranges for pods/services
- Registry: Artifact Registry for container images
- Security: IAM service accounts, firewall rules
- Monitoring: Ingress controller, cert-manager
AWS Equivalent Services
- EKS (Elastic Kubernetes Service) → GKE
- S3 (Simple Storage Service) → Cloud Storage
- ECR (Elastic Container Registry) → Artifact Registry
- VPC (Virtual Private Cloud) → VPC
- IAM → Cloud IAM
- ALB/NLB → Google Load Balancer
Technical Requirements
Create AWS deployment scripts with:
- EKS cluster creation with private nodes
- VPC and subnet configuration
- S3 buckets for database and user storage
- ECR repository setup
- IAM roles and service accounts
- ALB Ingress Controller installation
- cert-manager for SSL certificates
- Workload Identity equivalent (IRSA - IAM Roles for Service Accounts)
Scripts to Create
-
scripts/aws/setup-cluster.sh- EKS cluster creation
- VPC and networking setup
- S3 bucket creation
- ECR repository setup
- IAM configuration
-
scripts/aws/deploy.sh- Helm chart deployment with AWS values
- Application deployment to EKS
- DNS and ingress configuration
-
scripts/aws/cleanup.sh- Resource cleanup and tear-down
- S3 bucket management
- EKS cluster deletion
Acceptance Criteria
- EKS cluster deploys successfully with proper networking
- S3 buckets are created and configured correctly
- ECR repository stores container images
- IAM roles provide appropriate permissions
- ALB Ingress Controller functions properly
- cert-manager issues SSL certificates
- CMBCluster application deploys and runs on EKS
- User environments can be created and accessed
- Storage mounting works with S3
- All scripts are well-documented and tested
Key Differences from GCP
- Authentication: IRSA instead of Workload Identity
- Storage: S3 instead of Cloud Storage
- Networking: ALB instead of Google Load Balancer
- Registry: ECR instead of Artifact Registry
- DNS: Route 53 integration options
Configuration Parameters
- AWS region and availability zones
- EKS cluster version and node groups
- VPC CIDR blocks and subnet ranges
- S3 bucket naming and policies
- ECR repository configuration
- IAM role definitions
Testing Requirements
- Functional testing of complete deployment
- Validation of all AWS services integration
- Comparison with GCP deployment features
- Documentation of any feature differences
- Performance testing on EKS
Related to
Epic #22 - Multi-Cloud Support
Definition of Done
- Complete AWS deployment scripts are functional
- CMBCluster deploys successfully on EKS
- Feature parity with GCP deployment is achieved
- Documentation covers AWS deployment process
- Scripts are tested and validated
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
awsAmazon Web Services relatedAmazon Web Services relatedinfrastructureInfrastructure and deployment issuesInfrastructure and deployment issues