Overview
The ECS Fargate based solution launches a high-performance and highly available Jenkins environment on Amazon ECS. It leverages the scalability and elasticity of ECS to ensure optimal resource utilization and allows horizontal scaling of Jenkins tasks based on workload demand, ensuring efficient resource utilization and reducing processing time. Additionally, the use of Amazon EFS as the shared file system enables quick access and provides high-performance storage for Jenkins data. The solution deploys Jenkins tasks across multiple availability zones, providing fault tolerance and continuous availability. Users will have a seamless experience accessing Jenkins through a Route53 domain. Realtime monitoring and troubleshooting are enabled through CloudWatch Logs. Deployment and Configuration of the solution is made easy through a CloudFormation template. Usage intrusions are provided in detail to help deploy the solution. Note: The solution will not work with your existing EC2/ECS clusters. The solution requires you to launch the CloudFormation Template that will create all the resources required for the solution.
Highlights
- Highly available & scalable Jenkins environment on AWS
- EFS based storage
- Cost effective and very minimal effort to deploy & maintain
Details
Features and programs
Financing for AWS Marketplace purchases
Pricing
Dimension | Description | Cost/unit/hour |
---|---|---|
Hours | Container Hours | $0.10 |
Vendor refund policy
At the moment, we do not offer refunds. Please reach out to support@bizcloudexperts.com for more info.
How can we make this page better?
Legal
Vendor terms and conditions
Content disclaimer
Delivery details
ECS Jenkins CFT
- Amazon ECS
Container image
Containers are lightweight, portable execution environments that wrap server application software in a filesystem that includes everything it needs to run. Container applications run on supported container runtimes and orchestration services, such as Amazon Elastic Container Service (Amazon ECS) or Amazon Elastic Kubernetes Service (Amazon EKS). Both eliminate the need for you to install and operate your own container orchestration software by managing and scheduling containers on a scalable cluster of virtual machines.
Version release notes
Added Android sdk tools:
"platform-tools" "platforms;android-30" "build-tools;30.0.3"
Added Gradle GRADLE_VERSION 7.2
Additional details
Usage instructions
Pre-requisites to launch the CloudFormation template:
- VPC with 2 public and 2 private subnets in different AZs
- VPC should have DNS host names and DNS resolution enabled
- Route 53 endpoint to access the Jenkins URL
Note: The solution will not work with your existing EC2/ECS clusters. The solution requires you to launch the CloudFormation Template that will create all the resources required for the solution.
Follow the below procedure:
- Click on the Cloud Formation Wizard link below to navigate to the CloudFormation screen with the template already populated. Hit next.
- On the parameter screen, below are the details of each parameter to be supplied to the CloudFormation: Environment: The Environment name (e.g. dev, test, prod) EcsTaskExecRoleName: Name of the ECS Task Execution IAM Role EcsTaskRoleName: Name of the ECS Task IAM Role AlbSGName: Name of the ALB Security Group EfsSGName: Name of the Efs Security Group JenkinsMasterSGName: Name of the Jenkins Master Security Group JenkinsAgentSGName: Name of the Jenkins Agent Security Group VpcId: ID of the VPC where the resources will be created. PrivateSubnetIdA: The Private subnet ID where the EfsMountTargetA will be created in availability zone a PrivateSubnetIdB: The Private subnet ID where the EfsMountTargetB will be created in availability zone b LbPublicSubnetIdA: The Public subnet ID used for Load Balancer in availability zone a LbPublicSubnetIdB: The Public subnet ID used for Load Balancer in availability zone b EfsFileSystemName: Name of the EFS file system. EfsAccessPointName: Name of the EFS access point JenkinsMasterCWLogGroupName: Name of the cloudwatch log group for Jenkins master JenkinsAgentCWLogGroupName: Name of the cloudwatch log group for Jenkins agents EcsClusterName: Name of the ECS cluster. AlbLogsBucketName: Name of the S3 Bucket to store Load Balancer access logs MasterTaskDefinitionName: Name of the ECS Master task definition AgentTaskDefinitionName: Name of the ECS Agent task definition Cpu: The CPU units to allocate for the task (in MB). Defaults to 2048 MB Memory: The memory units to allocate for the task (in MB). Defaults to 4096 MB DomainName: Name of the Domain used to access the Jenkins Interface HostedZoneId: The Hosted zone ID from Route53 AlbTargetGroupName: Name of the Load Balancer Target Group ApplicationLBName: Name of the Application Load Balancer PrivateDnsName: Private DNS name to be used in CloudMap service DiscoveryServiceName: Name of the CloudMap Service EcsServiceDesiredCount: Desired Count of Ecs Service. Defaults to 0 EcsServiceHealthCheckGracePeriodSeconds: HealthCheckGracePeriodSeconds of Ecs Service. Defaults to 300 seconds VpcCidr: The VPC CIDR range to restrict the JNLP security group ingress rule Region: Region where the Cloudwatch Log Groups are Created
- Click launch to deploy the solution.
- Once the CloudFormation is created successfully, access the Jenkins solution through the Route53 endpoint that you have configured
Support
Vendor support
Reach out to support@bizcloudexperts.com to help configure and deploy the solution or create customizations around the solution like users Single Sign On (SSO) etc.
AWS infrastructure support
AWS Support is a one-on-one, fast-response support channel that is staffed 24x7x365 with experienced and technical support engineers. The service helps customers of all sizes and technical abilities to successfully utilize the products and features provided by Amazon Web Services.
Similar products
