******************** [, ] Resources: MyVpcF9F0CA6F: Type: AWS::EC2::VPC Properties: CidrBlock: 10.0.0.0/16 EnableDnsHostnames: true EnableDnsSupport: true InstanceTenancy: default Tags: - Key: Name Value: dask-fargate/MyVpc Metadata: aws:cdk:path: dask-fargate/MyVpc/Resource MyVpcPublicSubnet1SubnetF6608456: Type: AWS::EC2::Subnet Properties: CidrBlock: 10.0.0.0/18 VpcId: Ref: MyVpcF9F0CA6F AvailabilityZone: Fn::Select: - 0 - Fn::GetAZs: "" MapPublicIpOnLaunch: true Tags: - Key: Name Value: dask-fargate/MyVpc/PublicSubnet1 - Key: aws-cdk:subnet-name Value: Public - Key: aws-cdk:subnet-type Value: Public Metadata: aws:cdk:path: dask-fargate/MyVpc/PublicSubnet1/Subnet MyVpcPublicSubnet1RouteTableC46AB2F4: Type: AWS::EC2::RouteTable Properties: VpcId: Ref: MyVpcF9F0CA6F Tags: - Key: Name Value: dask-fargate/MyVpc/PublicSubnet1 Metadata: aws:cdk:path: dask-fargate/MyVpc/PublicSubnet1/RouteTable MyVpcPublicSubnet1RouteTableAssociation2ECEE1CB: Type: AWS::EC2::SubnetRouteTableAssociation Properties: RouteTableId: Ref: MyVpcPublicSubnet1RouteTableC46AB2F4 SubnetId: Ref: MyVpcPublicSubnet1SubnetF6608456 Metadata: aws:cdk:path: dask-fargate/MyVpc/PublicSubnet1/RouteTableAssociation MyVpcPublicSubnet1DefaultRoute95FDF9EB: Type: AWS::EC2::Route Properties: RouteTableId: Ref: MyVpcPublicSubnet1RouteTableC46AB2F4 DestinationCidrBlock: 0.0.0.0/0 GatewayId: Ref: MyVpcIGW5C4A4F63 DependsOn: - MyVpcVPCGW488ACE0D Metadata: aws:cdk:path: dask-fargate/MyVpc/PublicSubnet1/DefaultRoute MyVpcPublicSubnet1EIP096967CB: Type: AWS::EC2::EIP Properties: Domain: vpc Metadata: aws:cdk:path: dask-fargate/MyVpc/PublicSubnet1/EIP MyVpcPublicSubnet1NATGatewayAD3400C1: Type: AWS::EC2::NatGateway Properties: AllocationId: Fn::GetAtt: - MyVpcPublicSubnet1EIP096967CB - AllocationId SubnetId: Ref: MyVpcPublicSubnet1SubnetF6608456 Tags: - Key: Name Value: dask-fargate/MyVpc/PublicSubnet1 Metadata: aws:cdk:path: dask-fargate/MyVpc/PublicSubnet1/NATGateway MyVpcPublicSubnet2Subnet492B6BFB: Type: AWS::EC2::Subnet Properties: CidrBlock: 10.0.64.0/18 VpcId: Ref: MyVpcF9F0CA6F AvailabilityZone: Fn::Select: - 1 - Fn::GetAZs: "" MapPublicIpOnLaunch: true Tags: - Key: Name Value: dask-fargate/MyVpc/PublicSubnet2 - Key: aws-cdk:subnet-name Value: Public - Key: aws-cdk:subnet-type Value: Public Metadata: aws:cdk:path: dask-fargate/MyVpc/PublicSubnet2/Subnet MyVpcPublicSubnet2RouteTable1DF17386: Type: AWS::EC2::RouteTable Properties: VpcId: Ref: MyVpcF9F0CA6F Tags: - Key: Name Value: dask-fargate/MyVpc/PublicSubnet2 Metadata: aws:cdk:path: dask-fargate/MyVpc/PublicSubnet2/RouteTable MyVpcPublicSubnet2RouteTableAssociation227DE78D: Type: AWS::EC2::SubnetRouteTableAssociation Properties: RouteTableId: Ref: MyVpcPublicSubnet2RouteTable1DF17386 SubnetId: Ref: MyVpcPublicSubnet2Subnet492B6BFB Metadata: aws:cdk:path: dask-fargate/MyVpc/PublicSubnet2/RouteTableAssociation MyVpcPublicSubnet2DefaultRoute052936F6: Type: AWS::EC2::Route Properties: RouteTableId: Ref: MyVpcPublicSubnet2RouteTable1DF17386 DestinationCidrBlock: 0.0.0.0/0 GatewayId: Ref: MyVpcIGW5C4A4F63 DependsOn: - MyVpcVPCGW488ACE0D Metadata: aws:cdk:path: dask-fargate/MyVpc/PublicSubnet2/DefaultRoute MyVpcPublicSubnet2EIP8CCBA239: Type: AWS::EC2::EIP Properties: Domain: vpc Metadata: aws:cdk:path: dask-fargate/MyVpc/PublicSubnet2/EIP MyVpcPublicSubnet2NATGateway91BFBEC9: Type: AWS::EC2::NatGateway Properties: AllocationId: Fn::GetAtt: - MyVpcPublicSubnet2EIP8CCBA239 - AllocationId SubnetId: Ref: MyVpcPublicSubnet2Subnet492B6BFB Tags: - Key: Name Value: dask-fargate/MyVpc/PublicSubnet2 Metadata: aws:cdk:path: dask-fargate/MyVpc/PublicSubnet2/NATGateway MyVpcPrivateSubnet1Subnet5057CF7E: Type: AWS::EC2::Subnet Properties: CidrBlock: 10.0.128.0/18 VpcId: Ref: MyVpcF9F0CA6F AvailabilityZone: Fn::Select: - 0 - Fn::GetAZs: "" MapPublicIpOnLaunch: false Tags: - Key: Name Value: dask-fargate/MyVpc/PrivateSubnet1 - Key: aws-cdk:subnet-name Value: Private - Key: aws-cdk:subnet-type Value: Private Metadata: aws:cdk:path: dask-fargate/MyVpc/PrivateSubnet1/Subnet MyVpcPrivateSubnet1RouteTable8819E6E2: Type: AWS::EC2::RouteTable Properties: VpcId: Ref: MyVpcF9F0CA6F Tags: - Key: Name Value: dask-fargate/MyVpc/PrivateSubnet1 Metadata: aws:cdk:path: dask-fargate/MyVpc/PrivateSubnet1/RouteTable MyVpcPrivateSubnet1RouteTableAssociation56D38C7E: Type: AWS::EC2::SubnetRouteTableAssociation Properties: RouteTableId: Ref: MyVpcPrivateSubnet1RouteTable8819E6E2 SubnetId: Ref: MyVpcPrivateSubnet1Subnet5057CF7E Metadata: aws:cdk:path: dask-fargate/MyVpc/PrivateSubnet1/RouteTableAssociation MyVpcPrivateSubnet1DefaultRouteA8CDE2FA: Type: AWS::EC2::Route Properties: RouteTableId: Ref: MyVpcPrivateSubnet1RouteTable8819E6E2 DestinationCidrBlock: 0.0.0.0/0 NatGatewayId: Ref: MyVpcPublicSubnet1NATGatewayAD3400C1 Metadata: aws:cdk:path: dask-fargate/MyVpc/PrivateSubnet1/DefaultRoute MyVpcPrivateSubnet2Subnet0040C983: Type: AWS::EC2::Subnet Properties: CidrBlock: 10.0.192.0/18 VpcId: Ref: MyVpcF9F0CA6F AvailabilityZone: Fn::Select: - 1 - Fn::GetAZs: "" MapPublicIpOnLaunch: false Tags: - Key: Name Value: dask-fargate/MyVpc/PrivateSubnet2 - Key: aws-cdk:subnet-name Value: Private - Key: aws-cdk:subnet-type Value: Private Metadata: aws:cdk:path: dask-fargate/MyVpc/PrivateSubnet2/Subnet MyVpcPrivateSubnet2RouteTableCEDCEECE: Type: AWS::EC2::RouteTable Properties: VpcId: Ref: MyVpcF9F0CA6F Tags: - Key: Name Value: dask-fargate/MyVpc/PrivateSubnet2 Metadata: aws:cdk:path: dask-fargate/MyVpc/PrivateSubnet2/RouteTable MyVpcPrivateSubnet2RouteTableAssociation86A610DA: Type: AWS::EC2::SubnetRouteTableAssociation Properties: RouteTableId: Ref: MyVpcPrivateSubnet2RouteTableCEDCEECE SubnetId: Ref: MyVpcPrivateSubnet2Subnet0040C983 Metadata: aws:cdk:path: dask-fargate/MyVpc/PrivateSubnet2/RouteTableAssociation MyVpcPrivateSubnet2DefaultRoute9CE96294: Type: AWS::EC2::Route Properties: RouteTableId: Ref: MyVpcPrivateSubnet2RouteTableCEDCEECE DestinationCidrBlock: 0.0.0.0/0 NatGatewayId: Ref: MyVpcPublicSubnet2NATGateway91BFBEC9 Metadata: aws:cdk:path: dask-fargate/MyVpc/PrivateSubnet2/DefaultRoute MyVpcIGW5C4A4F63: Type: AWS::EC2::InternetGateway Properties: Tags: - Key: Name Value: dask-fargate/MyVpc Metadata: aws:cdk:path: dask-fargate/MyVpc/IGW MyVpcVPCGW488ACE0D: Type: AWS::EC2::VPCGatewayAttachment Properties: VpcId: Ref: MyVpcF9F0CA6F InternetGatewayId: Ref: MyVpcIGW5C4A4F63 Metadata: aws:cdk:path: dask-fargate/MyVpc/VPCGW SlogGroup1493DE30: Type: AWS::Logs::LogGroup Properties: LogGroupName: SlogGroup RetentionInDays: 731 UpdateReplacePolicy: Retain DeletionPolicy: Retain Metadata: aws:cdk:path: dask-fargate/SlogGroup/Resource WlogGroup18A8F3C1: Type: AWS::Logs::LogGroup Properties: LogGroupName: WlogGroup RetentionInDays: 731 UpdateReplacePolicy: Retain DeletionPolicy: Retain Metadata: aws:cdk:path: dask-fargate/WlogGroup/Resource ECSExecutionRoleA044C6CA: Type: AWS::IAM::Role Properties: AssumeRolePolicyDocument: Statement: - Action: sts:AssumeRole Effect: Allow Principal: Service: Fn::Join: - "" - - ecs-tasks. - Ref: AWS::URLSuffix Version: "2012-10-17" Metadata: aws:cdk:path: dask-fargate/ECSExecutionRole/Resource ECSExecutionRoleDefaultPolicy91A8E3CE: Type: AWS::IAM::Policy Properties: PolicyDocument: Statement: - Action: - ecr:BatchCheckLayerAvailability - ecr:GetDownloadUrlForLayer - ecr:BatchGetImage Effect: Allow Resource: Fn::Join: - "" - - "arn:" - Ref: AWS::Partition - ":ecr:" - Ref: AWS::Region - ":" - Ref: AWS::AccountId - :repository/ - Fn::GetAtt: - taskDefinitionSchedulerMySchedulerImageAssetImageAdoptRepositoryCECF9A57 - RepositoryName - Action: ecr:GetAuthorizationToken Effect: Allow Resource: "*" - Action: - logs:CreateLogStream - logs:PutLogEvents Effect: Allow Resource: Fn::GetAtt: - SlogGroup1493DE30 - Arn - Action: - ecr:BatchCheckLayerAvailability - ecr:GetDownloadUrlForLayer - ecr:BatchGetImage Effect: Allow Resource: Fn::Join: - "" - - "arn:" - Ref: AWS::Partition - ":ecr:" - Ref: AWS::Region - ":" - Ref: AWS::AccountId - :repository/ - Fn::GetAtt: - taskDefinitionWorkerMyWorkerImageAssetImageAdoptRepositoryBF896596 - RepositoryName Version: "2012-10-17" PolicyName: ECSExecutionRoleDefaultPolicy91A8E3CE Roles: - Ref: ECSExecutionRoleA044C6CA Metadata: aws:cdk:path: dask-fargate/ECSExecutionRole/DefaultPolicy/Resource ECSExecutionPolicy30B4C38F: Type: AWS::IAM::Policy Properties: PolicyDocument: Statement: - Action: - ecr:BatchCheckLayerAvailability - ecr:GetDownloadUrlForLayer - ecr:BatchGetImage - ecr:GetAuthorizationToken - logs:CreateLogStream - logs:PutLogEvents - sagemaker:* Effect: Allow Resource: "*" Version: "2012-10-17" PolicyName: ECSExecutionPolicy Roles: - Ref: ECSExecutionRoleA044C6CA Metadata: aws:cdk:path: dask-fargate/ECSExecutionPolicy/Resource DaskCluster3EF020CE: Type: AWS::ECS::Cluster Properties: ClusterName: Fargate-Dask-Cluster Metadata: aws:cdk:path: dask-fargate/DaskCluster/Resource DaskClusterDefaultServiceDiscoveryNamespace30C3BAD1: Type: AWS::ServiceDiscovery::PrivateDnsNamespace Properties: Name: local-dask Vpc: Ref: MyVpcF9F0CA6F Metadata: aws:cdk:path: dask-fargate/DaskCluster/DefaultServiceDiscoveryNamespace/Resource taskDefinitionScheduler2F1AF045: Type: AWS::ECS::TaskDefinition Properties: ContainerDefinitions: - Command: - dask-scheduler Cpu: 1024 Essential: true Image: Fn::Join: - "" - - Fn::Select: - 4 - Fn::Split: - ":" - Fn::Join: - "" - - "arn:" - Ref: AWS::Partition - ":ecr:" - Ref: AWS::Region - ":" - Ref: AWS::AccountId - :repository/ - Fn::GetAtt: - taskDefinitionSchedulerMySchedulerImageAssetImageAdoptRepositoryCECF9A57 - RepositoryName - .dkr.ecr. - Fn::Select: - 3 - Fn::Split: - ":" - Fn::Join: - "" - - "arn:" - Ref: AWS::Partition - ":ecr:" - Ref: AWS::Region - ":" - Ref: AWS::AccountId - :repository/ - Fn::GetAtt: - taskDefinitionSchedulerMySchedulerImageAssetImageAdoptRepositoryCECF9A57 - RepositoryName - .amazonaws.com/ - Fn::GetAtt: - taskDefinitionSchedulerMySchedulerImageAssetImageAdoptRepositoryCECF9A57 - RepositoryName - "@sha256:" - Fn::Select: - 1 - Fn::Split: - "@sha256:" - Ref: taskDefinitionSchedulerMySchedulerImageAssetImageImageName1EEF85D5 Links: [] LogConfiguration: LogDriver: awslogs Options: awslogs-group: Ref: SlogGroup1493DE30 awslogs-stream-prefix: ecs awslogs-region: Ref: AWS::Region Memory: 2048 MemoryReservation: 2048 MountPoints: [] Name: MySchedulerImage PortMappings: [] Ulimits: [] VolumesFrom: [] Cpu: "1024" ExecutionRoleArn: Fn::GetAtt: - ECSExecutionRoleA044C6CA - Arn Family: Dask-Scheduler Memory: "2048" NetworkMode: awsvpc RequiresCompatibilities: - FARGATE TaskRoleArn: Fn::GetAtt: - ECSExecutionRoleA044C6CA - Arn Volumes: [] Metadata: aws:cdk:path: dask-fargate/taskDefinitionScheduler/Resource taskDefinitionSchedulerMySchedulerImageAssetImageAdoptRepositoryCECF9A57: Type: Custom::ECRAdoptedRepository Properties: ServiceToken: Fn::GetAtt: - AdoptEcrRepositorydbc60defc59544bcaa5c28c95d68f62c52BE89E9 - Arn RepositoryName: Fn::Select: - 0 - Fn::Split: - "@sha256:" - Ref: taskDefinitionSchedulerMySchedulerImageAssetImageImageName1EEF85D5 DependsOn: - AdoptEcrRepositorydbc60defc59544bcaa5c28c95d68f62cServiceRoleDefaultPolicy6BC8737C - AdoptEcrRepositorydbc60defc59544bcaa5c28c95d68f62cServiceRoleD788AA17 UpdateReplacePolicy: Delete DeletionPolicy: Delete Metadata: aws:cdk:path: dask-fargate/taskDefinitionScheduler/MySchedulerImage/AssetImage/AdoptRepository/Resource/Default AdoptEcrRepositorydbc60defc59544bcaa5c28c95d68f62cServiceRoleD788AA17: Type: AWS::IAM::Role Properties: AssumeRolePolicyDocument: Statement: - Action: sts:AssumeRole Effect: Allow Principal: Service: Fn::Join: - "" - - lambda. - Ref: AWS::URLSuffix Version: "2012-10-17" ManagedPolicyArns: - Fn::Join: - "" - - "arn:" - Ref: AWS::Partition - :iam::aws:policy/service-role/AWSLambdaBasicExecutionRole Metadata: aws:cdk:path: dask-fargate/AdoptEcrRepositorydbc60defc59544bcaa5c28c95d68f62c/ServiceRole/Resource AdoptEcrRepositorydbc60defc59544bcaa5c28c95d68f62cServiceRoleDefaultPolicy6BC8737C: Type: AWS::IAM::Policy Properties: PolicyDocument: Statement: - Action: - ecr:GetRepositoryPolicy - ecr:SetRepositoryPolicy - ecr:DeleteRepository - ecr:ListImages - ecr:BatchDeleteImage Effect: Allow Resource: Fn::Join: - "" - - "arn:" - Ref: AWS::Partition - ":ecr:" - Ref: AWS::Region - ":" - Ref: AWS::AccountId - :repository/ - Fn::Select: - 0 - Fn::Split: - "@sha256:" - Ref: taskDefinitionSchedulerMySchedulerImageAssetImageImageName1EEF85D5 - Action: - ecr:GetRepositoryPolicy - ecr:SetRepositoryPolicy - ecr:DeleteRepository - ecr:ListImages - ecr:BatchDeleteImage Effect: Allow Resource: Fn::Join: - "" - - "arn:" - Ref: AWS::Partition - ":ecr:" - Ref: AWS::Region - ":" - Ref: AWS::AccountId - :repository/ - Fn::Select: - 0 - Fn::Split: - "@sha256:" - Ref: taskDefinitionWorkerMyWorkerImageAssetImageImageName6EA10C1C Version: "2012-10-17" PolicyName: AdoptEcrRepositorydbc60defc59544bcaa5c28c95d68f62cServiceRoleDefaultPolicy6BC8737C Roles: - Ref: AdoptEcrRepositorydbc60defc59544bcaa5c28c95d68f62cServiceRoleD788AA17 Metadata: aws:cdk:path: dask-fargate/AdoptEcrRepositorydbc60defc59544bcaa5c28c95d68f62c/ServiceRole/DefaultPolicy/Resource AdoptEcrRepositorydbc60defc59544bcaa5c28c95d68f62c52BE89E9: Type: AWS::Lambda::Function Properties: Code: S3Bucket: Ref: AdoptEcrRepositorydbc60defc59544bcaa5c28c95d68f62cCodeS3Bucket92AB06B6 S3Key: Fn::Join: - "" - - Fn::Select: - 0 - Fn::Split: - "||" - Ref: AdoptEcrRepositorydbc60defc59544bcaa5c28c95d68f62cCodeS3VersionKey393B7276 - Fn::Select: - 1 - Fn::Split: - "||" - Ref: AdoptEcrRepositorydbc60defc59544bcaa5c28c95d68f62cCodeS3VersionKey393B7276 Handler: handler.handler Role: Fn::GetAtt: - AdoptEcrRepositorydbc60defc59544bcaa5c28c95d68f62cServiceRoleD788AA17 - Arn Runtime: nodejs8.10 Timeout: 300 DependsOn: - AdoptEcrRepositorydbc60defc59544bcaa5c28c95d68f62cServiceRoleDefaultPolicy6BC8737C - AdoptEcrRepositorydbc60defc59544bcaa5c28c95d68f62cServiceRoleD788AA17 Metadata: aws:cdk:path: dask-fargate/AdoptEcrRepositorydbc60defc59544bcaa5c28c95d68f62c/Resource aws:asset:path: asset.a65ac4beaa2b5a7b20eebf3b7c5c1c886b71428afa377e02dab0d10ab3be57e7 aws:asset:property: Code taskDefinitionWorkerA921838E: Type: AWS::ECS::TaskDefinition Properties: ContainerDefinitions: - Command: - dask-worker - dask-scheduler.local-dask:8786 - --memory-limit 1800MB - --worker-port 9000 - --nanny-port 9001 - --bokeh-port 9002 Cpu: 1024 Essential: true Image: Fn::Join: - "" - - Fn::Select: - 4 - Fn::Split: - ":" - Fn::Join: - "" - - "arn:" - Ref: AWS::Partition - ":ecr:" - Ref: AWS::Region - ":" - Ref: AWS::AccountId - :repository/ - Fn::GetAtt: - taskDefinitionWorkerMyWorkerImageAssetImageAdoptRepositoryBF896596 - RepositoryName - .dkr.ecr. - Fn::Select: - 3 - Fn::Split: - ":" - Fn::Join: - "" - - "arn:" - Ref: AWS::Partition - ":ecr:" - Ref: AWS::Region - ":" - Ref: AWS::AccountId - :repository/ - Fn::GetAtt: - taskDefinitionWorkerMyWorkerImageAssetImageAdoptRepositoryBF896596 - RepositoryName - .amazonaws.com/ - Fn::GetAtt: - taskDefinitionWorkerMyWorkerImageAssetImageAdoptRepositoryBF896596 - RepositoryName - "@sha256:" - Fn::Select: - 1 - Fn::Split: - "@sha256:" - Ref: taskDefinitionWorkerMyWorkerImageAssetImageImageName6EA10C1C Links: [] LogConfiguration: LogDriver: awslogs Options: awslogs-group: Ref: SlogGroup1493DE30 awslogs-stream-prefix: ecs awslogs-region: Ref: AWS::Region Memory: 2048 MemoryReservation: 2048 MountPoints: [] Name: MyWorkerImage PortMappings: [] Ulimits: [] VolumesFrom: [] Cpu: "1024" ExecutionRoleArn: Fn::GetAtt: - ECSExecutionRoleA044C6CA - Arn Family: Dask-Worker Memory: "2048" NetworkMode: awsvpc RequiresCompatibilities: - FARGATE TaskRoleArn: Fn::GetAtt: - ECSExecutionRoleA044C6CA - Arn Volumes: [] Metadata: aws:cdk:path: dask-fargate/taskDefinitionWorker/Resource taskDefinitionWorkerMyWorkerImageAssetImageAdoptRepositoryBF896596: Type: Custom::ECRAdoptedRepository Properties: ServiceToken: Fn::GetAtt: - AdoptEcrRepositorydbc60defc59544bcaa5c28c95d68f62c52BE89E9 - Arn RepositoryName: Fn::Select: - 0 - Fn::Split: - "@sha256:" - Ref: taskDefinitionWorkerMyWorkerImageAssetImageImageName6EA10C1C DependsOn: - AdoptEcrRepositorydbc60defc59544bcaa5c28c95d68f62cServiceRoleDefaultPolicy6BC8737C - AdoptEcrRepositorydbc60defc59544bcaa5c28c95d68f62cServiceRoleD788AA17 UpdateReplacePolicy: Delete DeletionPolicy: Delete Metadata: aws:cdk:path: dask-fargate/taskDefinitionWorker/MyWorkerImage/AssetImage/AdoptRepository/Resource/Default MySG94FE69A8: Type: AWS::EC2::SecurityGroup Properties: GroupDescription: Enable Scheduler ports access GroupName: DaskSecurityGroup SecurityGroupEgress: - CidrIp: 0.0.0.0/0 Description: Allow all outbound traffic by default IpProtocol: "-1" SecurityGroupIngress: - CidrIp: 0.0.0.0/0 Description: from 0.0.0.0/0:p1 FromPort: 8786 IpProtocol: tcp ToPort: 8789 - CidrIp: 0.0.0.0/0 Description: from 0.0.0.0/0:p2 FromPort: 9000 IpProtocol: tcp ToPort: 9002 VpcId: Ref: MyVpcF9F0CA6F Metadata: aws:cdk:path: dask-fargate/MySG/Resource DaskSchedulerService10C4F4A8: Type: AWS::ECS::Service Properties: TaskDefinition: Ref: taskDefinitionScheduler2F1AF045 Cluster: Ref: DaskCluster3EF020CE DeploymentConfiguration: MaximumPercent: 200 MinimumHealthyPercent: 100 DesiredCount: 1 LaunchType: FARGATE LoadBalancers: [] NetworkConfiguration: AwsvpcConfiguration: AssignPublicIp: ENABLED SecurityGroups: - Fn::GetAtt: - MySG94FE69A8 - GroupId Subnets: - Ref: MyVpcPrivateSubnet1Subnet5057CF7E - Ref: MyVpcPrivateSubnet2Subnet0040C983 ServiceName: Dask-Scheduler ServiceRegistries: - RegistryArn: Fn::GetAtt: - DaskSchedulerServiceCloudmapServiceE4FACA55 - Arn Metadata: aws:cdk:path: dask-fargate/DaskSchedulerService/Service DaskSchedulerServiceCloudmapServiceE4FACA55: Type: AWS::ServiceDiscovery::Service Properties: DnsConfig: DnsRecords: - TTL: 60 Type: A NamespaceId: Fn::GetAtt: - DaskClusterDefaultServiceDiscoveryNamespace30C3BAD1 - Id RoutingPolicy: MULTIVALUE HealthCheckCustomConfig: FailureThreshold: 10 Name: Dask-Scheduler NamespaceId: Fn::GetAtt: - DaskClusterDefaultServiceDiscoveryNamespace30C3BAD1 - Id Metadata: aws:cdk:path: dask-fargate/DaskSchedulerService/CloudmapService/Resource DaskWorkerService14F1D300: Type: AWS::ECS::Service Properties: TaskDefinition: Ref: taskDefinitionWorkerA921838E Cluster: Ref: DaskCluster3EF020CE DeploymentConfiguration: MaximumPercent: 200 MinimumHealthyPercent: 100 DesiredCount: 1 LaunchType: FARGATE LoadBalancers: [] NetworkConfiguration: AwsvpcConfiguration: AssignPublicIp: ENABLED SecurityGroups: - Fn::GetAtt: - MySG94FE69A8 - GroupId Subnets: - Ref: MyVpcPrivateSubnet1Subnet5057CF7E - Ref: MyVpcPrivateSubnet2Subnet0040C983 ServiceName: Dask-Worker ServiceRegistries: - RegistryArn: Fn::GetAtt: - DaskWorkerServiceCloudmapServiceD8D70A13 - Arn Metadata: aws:cdk:path: dask-fargate/DaskWorkerService/Service DaskWorkerServiceCloudmapServiceD8D70A13: Type: AWS::ServiceDiscovery::Service Properties: DnsConfig: DnsRecords: - TTL: 60 Type: A NamespaceId: Fn::GetAtt: - DaskClusterDefaultServiceDiscoveryNamespace30C3BAD1 - Id RoutingPolicy: MULTIVALUE HealthCheckCustomConfig: FailureThreshold: 10 Name: Dask-Worker NamespaceId: Fn::GetAtt: - DaskClusterDefaultServiceDiscoveryNamespace30C3BAD1 - Id Metadata: aws:cdk:path: dask-fargate/DaskWorkerService/CloudmapService/Resource notebookAccessRoleFF9FFE8C: Type: AWS::IAM::Role Properties: AssumeRolePolicyDocument: Statement: - Action: sts:AssumeRole Effect: Allow Principal: Service: Fn::Join: - "" - - sagemaker. - Ref: AWS::URLSuffix Version: "2012-10-17" Metadata: aws:cdk:path: dask-fargate/notebookAccessRole/Resource notebookAccessPolicyFF100858: Type: AWS::IAM::Policy Properties: PolicyDocument: Statement: - Action: - s3:* - ecs:* Effect: Allow Resource: "*" Version: "2012-10-17" PolicyName: notebookAccessPolicy Roles: - Ref: notebookAccessRoleFF9FFE8C Metadata: aws:cdk:path: dask-fargate/notebookAccessPolicy/Resource DaskNotebook: Type: AWS::SageMaker::NotebookInstance Properties: InstanceType: ml.t2.medium RoleArn: Fn::GetAtt: - notebookAccessRoleFF9FFE8C - Arn DirectInternetAccess: Enabled NotebookInstanceName: DaskNotebook RootAccess: Enabled SecurityGroupIds: - Fn::GetAtt: - MySG94FE69A8 - GroupId SubnetId: Ref: MyVpcPrivateSubnet1Subnet5057CF7E VolumeSizeInGB: 5 Metadata: aws:cdk:path: dask-fargate/DaskNotebook CDKMetadata: Type: AWS::CDK::Metadata Properties: Modules: aws-cdk=1.18.0,@aws-cdk/assets=1.0.0,@aws-cdk/aws-apigateway=1.0.0,@aws-cdk/aws-applicationautoscaling=1.0.0,@aws-cdk/aws-autoscaling=1.0.0,@aws-cdk/aws-autoscaling-common=1.0.0,@aws-cdk/aws-autoscaling-hooktargets=1.0.0,@aws-cdk/aws-certificatemanager=1.0.0,@aws-cdk/aws-cloudformation=1.0.0,@aws-cdk/aws-cloudfront=1.0.0,@aws-cdk/aws-cloudwatch=1.0.0,@aws-cdk/aws-codebuild=1.0.0,@aws-cdk/aws-codecommit=1.0.0,@aws-cdk/aws-codepipeline=1.0.0,@aws-cdk/aws-ec2=1.0.0,@aws-cdk/aws-ecr=1.0.0,@aws-cdk/aws-ecr-assets=1.0.0,@aws-cdk/aws-ecs=1.0.0,@aws-cdk/aws-ecs-patterns=1.0.0,@aws-cdk/aws-elasticloadbalancing=1.0.0,@aws-cdk/aws-elasticloadbalancingv2=1.0.0,@aws-cdk/aws-events=1.0.0,@aws-cdk/aws-events-targets=1.0.0,@aws-cdk/aws-iam=1.0.0,@aws-cdk/aws-kms=1.0.0,@aws-cdk/aws-lambda=1.0.0,@aws-cdk/aws-logs=1.0.0,@aws-cdk/aws-route53=1.0.0,@aws-cdk/aws-route53-targets=1.0.0,@aws-cdk/aws-s3=1.0.0,@aws-cdk/aws-s3-assets=1.0.0,@aws-cdk/aws-sagemaker=1.0.0,@aws-cdk/aws-secretsmanager=1.0.0,@aws-cdk/aws-servicediscovery=1.0.0,@aws-cdk/aws-sns=1.0.0,@aws-cdk/aws-sns-subscriptions=1.0.0,@aws-cdk/aws-sqs=1.0.0,@aws-cdk/aws-ssm=1.0.0,@aws-cdk/aws-stepfunctions=1.0.0,@aws-cdk/core=1.0.0,@aws-cdk/custom-resources=1.0.0,@aws-cdk/cx-api=1.0.0,@aws-cdk/region-info=1.0.0,jsii-runtime=Python/3.6.5 Condition: CDKMetadataAvailable Parameters: taskDefinitionSchedulerMySchedulerImageAssetImageImageName1EEF85D5: Type: String Description: ECR repository name and tag asset "dask-fargate/taskDefinitionScheduler/MySchedulerImage/AssetImage" AdoptEcrRepositorydbc60defc59544bcaa5c28c95d68f62cCodeS3Bucket92AB06B6: Type: String Description: S3 bucket for asset "dask-fargate/AdoptEcrRepositorydbc60defc59544bcaa5c28c95d68f62c/Code" AdoptEcrRepositorydbc60defc59544bcaa5c28c95d68f62cCodeS3VersionKey393B7276: Type: String Description: S3 key for asset version "dask-fargate/AdoptEcrRepositorydbc60defc59544bcaa5c28c95d68f62c/Code" AdoptEcrRepositorydbc60defc59544bcaa5c28c95d68f62cCodeArtifactHash8BCBAA49: Type: String Description: Artifact hash for asset "dask-fargate/AdoptEcrRepositorydbc60defc59544bcaa5c28c95d68f62c/Code" taskDefinitionWorkerMyWorkerImageAssetImageImageName6EA10C1C: Type: String Description: ECR repository name and tag asset "dask-fargate/taskDefinitionWorker/MyWorkerImage/AssetImage" Conditions: CDKMetadataAvailable: Fn::Or: - Fn::Or: - Fn::Equals: - Ref: AWS::Region - ap-east-1 - Fn::Equals: - Ref: AWS::Region - ap-northeast-1 - Fn::Equals: - Ref: AWS::Region - ap-northeast-2 - Fn::Equals: - Ref: AWS::Region - ap-south-1 - Fn::Equals: - Ref: AWS::Region - ap-southeast-1 - Fn::Equals: - Ref: AWS::Region - ap-southeast-2 - Fn::Equals: - Ref: AWS::Region - ca-central-1 - Fn::Equals: - Ref: AWS::Region - cn-north-1 - Fn::Equals: - Ref: AWS::Region - cn-northwest-1 - Fn::Equals: - Ref: AWS::Region - eu-central-1 - Fn::Or: - Fn::Equals: - Ref: AWS::Region - eu-north-1 - Fn::Equals: - Ref: AWS::Region - eu-west-1 - Fn::Equals: - Ref: AWS::Region - eu-west-2 - Fn::Equals: - Ref: AWS::Region - eu-west-3 - Fn::Equals: - Ref: AWS::Region - me-south-1 - Fn::Equals: - Ref: AWS::Region - sa-east-1 - Fn::Equals: - Ref: AWS::Region - us-east-1 - Fn::Equals: - Ref: AWS::Region - us-east-2 - Fn::Equals: - Ref: AWS::Region - us-west-1 - Fn::Equals: - Ref: AWS::Region - us-west-2