From 819f4f54bdf72135aa999e43fe3df801aaacb480 Mon Sep 17 00:00:00 2001 From: rpoluri <38321430+rpoluri@users.noreply.github.com> Date: Wed, 16 Mar 2022 13:43:43 -0500 Subject: [PATCH] Feature/file limits (#104) * configure fargate task ulimits * increase ecs task file limit * add nproc limits Co-authored-by: Raj Poluri --- CHANGELOG.md | 3 + templates/waggledance.json | 122 ++++++++++++++++++++----------------- 2 files changed, 70 insertions(+), 55 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 15a4ee2..cdc10b6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,9 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). +## [3.4.2] - 2022-03-16 +- Configure ECS task file limits. + ## [3.4.1] - 2022-01-11 - Add k8s internal service with client affinity, for usecases than cannot use headless service and seamlessly failover to new waggle-dance instances. diff --git a/templates/waggledance.json b/templates/waggledance.json index 285798c..38885e4 100644 --- a/templates/waggledance.json +++ b/templates/waggledance.json @@ -1,59 +1,71 @@ [ { - "name": "waggledance", - "image": "${docker_image}:${docker_version}", - ${docker_auth} - "essential": true, - "logConfiguration": { - "logDriver": "awslogs", - "options": { - "awslogs-group": "${loggroup}", - "awslogs-region": "${region}", - "awslogs-stream-prefix": "/" - } - }, - "portMappings": [ - { - "containerPort": 48869, - "hostPort": 48869 - } - ], - "environment":[ - { - "name": "HEAPSIZE", - "value": "${heapsize}" - }, - { - "name": "LOGLEVEL", - "value": "${loglevel}" - }, - { - "name": "SERVER_YAML", - "value": "${server_yaml}" - }, - { - "name": "FEDERATION_YAML", - "value": "${federation_yaml}" - }, - { - "name": "HIVE_SITE_XML", - "value": "${hive_site_xml}" - }, - { - "name": "BASTION_SSH_KEY_ARN", - "value": "${bastion_ssh_key_arn}" - }, - { - "name": "LOG4J_FORMAT_MSG_NO_LOOKUPS", - "value": "true" - } - ], - "healthCheck": { - "command": ["CMD-SHELL", "curl -f http://localhost:18000/actuator/health || exit 1"], - "interval": 5, - "retries": 3, - "startPeriod": 60, - "timeout": 5 - } + "name": "waggledance", + "image": "${docker_image}:${docker_version}", + ${docker_auth} + "essential": true, + "logConfiguration": { + "logDriver": "awslogs", + "options": { + "awslogs-group": "${loggroup}", + "awslogs-region": "${region}", + "awslogs-stream-prefix": "/" + } + }, + "portMappings": [ + { + "containerPort": 48869, + "hostPort": 48869 + } + ], + "environment":[ + { + "name": "HEAPSIZE", + "value": "${heapsize}" + }, + { + "name": "LOGLEVEL", + "value": "${loglevel}" + }, + { + "name": "SERVER_YAML", + "value": "${server_yaml}" + }, + { + "name": "FEDERATION_YAML", + "value": "${federation_yaml}" + }, + { + "name": "HIVE_SITE_XML", + "value": "${hive_site_xml}" + }, + { + "name": "BASTION_SSH_KEY_ARN", + "value": "${bastion_ssh_key_arn}" + }, + { + "name": "LOG4J_FORMAT_MSG_NO_LOOKUPS", + "value": "true" + } + ], + "healthCheck": { + "command": ["CMD-SHELL", "curl -f http://localhost:18000/actuator/health || exit 1"], + "interval": 5, + "retries": 3, + "startPeriod": 60, + "timeout": 5 + }, + "ulimits": [ + { + "name": "nofile", + "softLimit": 65536, + "hardLimit": 65536 + }, + { + "name": "nproc", + "softLimit": 65536, + "hardLimit": 65536 + } + ] } ]