-
Notifications
You must be signed in to change notification settings - Fork 31
/
Copy pathuserdata.tpl
40 lines (28 loc) · 952 Bytes
/
userdata.tpl
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#! /bin/bash
set -eux
echo "### HARDENING DOCKER"
sed -i "s/1024:4096/65535:65535/g" "/etc/sysconfig/docker"
echo "### HARDENING EC2 INSTACE"
echo "ulimit -u unlimited" >> /etc/rc.local
echo "ulimit -n 1048576" >> /etc/rc.local
echo "vm.max_map_count=262144" >> /etc/sysctl.conf
echo "fs.file-max=65536" >> /etc/sysctl.conf
/sbin/sysctl -p /etc/sysctl.conf
echo "### INSTALL PACKAGES"
yum update -y
yum install -y amazon-efs-utils aws-cli
echo "### SETUP AGENT"
echo "ECS_CLUSTER=${tf_cluster_name}" >> /etc/ecs/ecs.config
echo "ECS_ENABLE_SPOT_INSTANCE_DRAINING=true" >> /etc/ecs/ecs.config
echo "### SETUP EFS"
EFS_DIR=/mnt/efs
EFS_ID=${tf_efs_id}
if [ -n "$EFS_ID" ]; then
mkdir -p $${EFS_DIR}
echo "$${EFS_ID}:/ $${EFS_DIR} efs tls,_netdev" >> /etc/fstab
for i in $(seq 1 20); do mount -a -t efs defaults && break || sleep 60; done
else
echo "EFS_ID is empty. Skipping EFS setup."
fi
echo "### EXTRA USERDATA"
${userdata_extra}