1.0.3 • Published 2 years ago

@daysmart/cdk-ecs-nlb v1.0.3

Weekly downloads
-
License
-
Repository
-
Last release
2 years ago

Welcome to the Open Source Construct for CdkEcsNlb, which provisions application/network level resources for ecs services!

This CDK Construct Library (CdkEcsNlb) creates an ecs service task definition, two target groups, and a complete NetworkLoadBalancedFargateService or NetworkLoadBalancedEc2Service (see documentation). This construct defines an interface (CdkEcsNlbProps) with the following properties that can be passed in:

  • vpcId: string => The string of the vpc id used for the ecs cluster and resources (ex. vpc-76594053)
  • stage: string => The environment of the service to be created (ex. devtest)
  • appName: string => The name of the desired ecs service (ex. api2)
  • repositoryName: string => The name of an existing ecr repository (ex. api2)
  • clusterName: string => The name of the existing cluster which your load balanced service will run inside (ex. dev-cluster3)
  • securityGroupId: string => The string of the security group id used for the ecs cluster and resources (ex. sg-h6k7d5v3)
  • taskDefinitionArn: string => The arn of an existing ecs task definition that will be used to provision the containers in the ecs service (ex. arn:aws:ecs:us-west-2:123456789012:task-definition/hello_world:8)
  • healthCheckPath: string => A valid uri path that can be pinged for target group health checks on the ecs service (ex. /HealthCheck/testpath)
  • (optional) tag: string => A n optional tag that can specify a particular docker image to use from the provided ecr repository (ex. dev)
  • certificateArn: string => The arn of an existing acm certificate which will be used in the https load balancer listener created (ex. arn:aws:iam::674907216843:certificate/56hf4-nyi6984df-w85ntf74)
  • (optional) serviceDnsRecord: string => An optional parameter for a route 53 dns record, if one already exists that you want to use for the ecs service (required if hostedZoneDomainName specified) (ex. test-ecs-service.google.com)
  • (optional) hostedZoneDomainName: string => The optional name of the dns record's hosted zone name (required if serviceDnsRecord specified) (ex. google.com)
  • (optional) isFargate: string => The optional input that should be set as "true" if you want the ecs service to run on the fargate platform
  • (optional) targetGroupPort: string => The optional input for specifying the port that the target group in the service will use
  • (optional) healthCheckHealthyThreshold: string => The optional input for specifying the number of successful health checks required before a target can be resolved as healthy
  • (optional) healthCheckUnhealthyThreshold: string => The optional input for specifying the number of unsuccessful health checks before a target is resolved as unhealthy
  • (optional) healthCheckInterval: string => The optional input in seconds of how often health checks should be performed
  • healthCheckProtocol: "https" | "tcp" => Whether the protocol used for the health check is over https or tcp
  • (optional) healthyHttpCodes: string => The optional input for specifying the range of http codes that can be returned and considered healthy for the health check
  • (optional) healthCheckTimeout: string => The optional input for how long health checks should wait before timing out in seconds
  • (optional) containerPort: string => The optional input for what port on the container should be hit by the load balancer

Useful commands

  • npm run build compile typescript to js
  • npm run watch watch for changes and compile
1.0.2

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago

1.0.3

2 years ago

0.1.12

3 years ago

0.1.10

3 years ago

0.1.11

3 years ago

0.1.8

3 years ago

0.1.7

3 years ago

0.1.9

3 years ago

0.1.4

3 years ago

0.1.3

3 years ago

0.1.6

3 years ago

0.1.5

3 years ago

0.1.2

3 years ago

0.1.1

3 years ago

0.1.0

3 years ago