@Generated(value="jsii-pacmak/1.67.0 (build 2c027f5)", date="2022-09-19T20:26:38.811Z") @Stability(value=Stable) public interface NetworkLoadBalancedServiceBaseProps extends software.amazon.jsii.JsiiSerializable
Example:
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import software.amazon.awscdk.*;
import software.amazon.awscdk.services.ec2.*;
import software.amazon.awscdk.services.ecs.*;
import software.amazon.awscdk.services.ecs.patterns.*;
import software.amazon.awscdk.services.elasticloadbalancingv2.*;
import software.amazon.awscdk.services.iam.*;
import software.amazon.awscdk.services.route53.*;
import software.amazon.awscdk.services.servicediscovery.*;
Cluster cluster;
ContainerDefinition containerDefinition;
ContainerImage containerImage;
HostedZone hostedZone;
LogDriver logDriver;
INamespace namespace;
NetworkLoadBalancer networkLoadBalancer;
Role role;
Secret secret;
Vpc vpc;
NetworkLoadBalancedServiceBaseProps networkLoadBalancedServiceBaseProps = NetworkLoadBalancedServiceBaseProps.builder()
.capacityProviderStrategies(List.of(CapacityProviderStrategy.builder()
.capacityProvider("capacityProvider")
// the properties below are optional
.base(123)
.weight(123)
.build()))
.circuitBreaker(DeploymentCircuitBreaker.builder()
.rollback(false)
.build())
.cloudMapOptions(CloudMapOptions.builder()
.cloudMapNamespace(namespace)
.container(containerDefinition)
.containerPort(123)
.dnsRecordType(DnsRecordType.A)
.dnsTtl(Duration.minutes(30))
.failureThreshold(123)
.name("name")
.build())
.cluster(cluster)
.deploymentController(DeploymentController.builder()
.type(DeploymentControllerType.ECS)
.build())
.desiredCount(123)
.domainName("domainName")
.domainZone(hostedZone)
.enableECSManagedTags(false)
.enableExecuteCommand(false)
.healthCheckGracePeriod(Duration.minutes(30))
.listenerPort(123)
.loadBalancer(networkLoadBalancer)
.maxHealthyPercent(123)
.minHealthyPercent(123)
.propagateTags(PropagatedTagSource.SERVICE)
.publicLoadBalancer(false)
.recordType(NetworkLoadBalancedServiceRecordType.ALIAS)
.serviceName("serviceName")
.taskImageOptions(NetworkLoadBalancedTaskImageOptions.builder()
.image(containerImage)
// the properties below are optional
.containerName("containerName")
.containerPort(123)
.dockerLabels(Map.of(
"dockerLabelsKey", "dockerLabels"))
.enableLogging(false)
.environment(Map.of(
"environmentKey", "environment"))
.executionRole(role)
.family("family")
.logDriver(logDriver)
.secrets(Map.of(
"secretsKey", secret))
.taskRole(role)
.build())
.vpc(vpc)
.build();
| Modifier and Type | Interface and Description |
|---|---|
static class |
NetworkLoadBalancedServiceBaseProps.Builder
A builder for
NetworkLoadBalancedServiceBaseProps |
static class |
NetworkLoadBalancedServiceBaseProps.Jsii$Proxy
An implementation for
NetworkLoadBalancedServiceBaseProps |
| Modifier and Type | Method and Description |
|---|---|
static NetworkLoadBalancedServiceBaseProps.Builder |
builder() |
default List<CapacityProviderStrategy> |
getCapacityProviderStrategies()
A list of Capacity Provider strategies used to place a service.
|
default DeploymentCircuitBreaker |
getCircuitBreaker()
Whether to enable the deployment circuit breaker.
|
default CloudMapOptions |
getCloudMapOptions()
The options for configuring an Amazon ECS service to use service discovery.
|
default ICluster |
getCluster()
The name of the cluster that hosts the service.
|
default DeploymentController |
getDeploymentController()
Specifies which deployment controller to use for the service.
|
default Number |
getDesiredCount()
The desired number of instantiations of the task definition to keep running on the service.
|
default String |
getDomainName()
The domain name for the service, e.g.
|
default IHostedZone |
getDomainZone()
The Route53 hosted zone for the domain, e.g.
|
default Boolean |
getEnableECSManagedTags()
Specifies whether to enable Amazon ECS managed tags for the tasks within the service.
|
default Boolean |
getEnableExecuteCommand()
Whether ECS Exec should be enabled.
|
default Duration |
getHealthCheckGracePeriod()
The period of time, in seconds, that the Amazon ECS service scheduler ignores unhealthy Elastic Load Balancing target health checks after a task has first started.
|
default Number |
getListenerPort()
Listener port of the network load balancer that will serve traffic to the service.
|
default INetworkLoadBalancer |
getLoadBalancer()
The network load balancer that will serve traffic to the service.
|
default Number |
getMaxHealthyPercent()
The maximum number of tasks, specified as a percentage of the Amazon ECS service's DesiredCount value, that can run in a service during a deployment.
|
default Number |
getMinHealthyPercent()
The minimum number of tasks, specified as a percentage of the Amazon ECS service's DesiredCount value, that must continue to run and remain healthy during a deployment.
|
default PropagatedTagSource |
getPropagateTags()
Specifies whether to propagate the tags from the task definition or the service to the tasks in the service.
|
default Boolean |
getPublicLoadBalancer()
Determines whether the Load Balancer will be internet-facing.
|
default NetworkLoadBalancedServiceRecordType |
getRecordType()
Specifies whether the Route53 record should be a CNAME, an A record using the Alias feature or no record at all.
|
default String |
getServiceName()
The name of the service.
|
default NetworkLoadBalancedTaskImageOptions |
getTaskImageOptions()
The properties required to create a new task definition.
|
default IVpc |
getVpc()
The VPC where the container instances will be launched or the elastic network interfaces (ENIs) will be deployed.
|
@Stability(value=Stable) @Nullable default List<CapacityProviderStrategy> getCapacityProviderStrategies()
Default: - undefined
@Stability(value=Stable) @Nullable default DeploymentCircuitBreaker getCircuitBreaker()
If this property is defined, circuit breaker will be implicitly enabled.
Default: - disabled
@Stability(value=Stable) @Nullable default CloudMapOptions getCloudMapOptions()
Default: - AWS Cloud Map service discovery is not enabled.
@Stability(value=Stable) @Nullable default ICluster getCluster()
If a cluster is specified, the vpc construct should be omitted. Alternatively, you can omit both cluster and vpc.
Default: - create a new cluster; if both cluster and vpc are omitted, a new VPC will be created for you.
@Stability(value=Stable) @Nullable default DeploymentController getDeploymentController()
For more information, see Amazon ECS Deployment Types
Default: - Rolling update (ECS)
@Stability(value=Stable) @Nullable default Number getDesiredCount()
The minimum value is 1
Default: - If the feature flag, ECS_REMOVE_DEFAULT_DESIRED_COUNT is false, the default is 1; if true, the default is 1 for all new services and uses the existing services desired count when updating an existing service.
@Stability(value=Stable) @Nullable default String getDomainName()
Default: - No domain name.
@Stability(value=Stable) @Nullable default IHostedZone getDomainZone()
Default: - No Route53 hosted domain zone.
@Stability(value=Stable) @Nullable default Boolean getEnableECSManagedTags()
For more information, see Tagging Your Amazon ECS Resources
Default: false
@Stability(value=Stable) @Nullable default Boolean getEnableExecuteCommand()
Default: - false
@Stability(value=Stable) @Nullable default Duration getHealthCheckGracePeriod()
Default: - defaults to 60 seconds if at least one load balancer is in-use and it is not already set
@Stability(value=Stable) @Nullable default Number getListenerPort()
Default: 80
@Stability(value=Stable) @Nullable default INetworkLoadBalancer getLoadBalancer()
If the load balancer has been imported, the vpc attribute must be specified in the call to fromNetworkLoadBalancerAttributes().
[disable-awslint:ref-via-interface]
Default: - a new load balancer will be created.
@Stability(value=Stable) @Nullable default Number getMaxHealthyPercent()
Default: - 100 if daemon, otherwise 200
@Stability(value=Stable) @Nullable default Number getMinHealthyPercent()
Default: - 0 if daemon, otherwise 50
@Stability(value=Stable) @Nullable default PropagatedTagSource getPropagateTags()
Tags can only be propagated to the tasks within the service during service creation.
Default: - none
@Stability(value=Stable) @Nullable default Boolean getPublicLoadBalancer()
Default: true
@Stability(value=Stable) @Nullable default NetworkLoadBalancedServiceRecordType getRecordType()
This is useful if you need to work with DNS systems that do not support alias records.
Default: NetworkLoadBalancedServiceRecordType.ALIAS
@Stability(value=Stable) @Nullable default String getServiceName()
Default: - CloudFormation-generated name.
@Stability(value=Stable) @Nullable default NetworkLoadBalancedTaskImageOptions getTaskImageOptions()
One of taskImageOptions or taskDefinition must be specified.
Default: - none
@Stability(value=Stable) @Nullable default IVpc getVpc()
If a vpc is specified, the cluster construct should be omitted. Alternatively, you can omit both vpc and cluster.
Default: - uses the VPC defined in the cluster or creates a new VPC.
@Stability(value=Stable) static NetworkLoadBalancedServiceBaseProps.Builder builder()
Copyright © 2022. All rights reserved.