-
Notifications
You must be signed in to change notification settings - Fork 0
/
template.json
76 lines (65 loc) · 2.55 KB
/
template.json
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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
{
"variables": {
"aws_access_key": "",
"aws_secret_key": "",
"kafka_uid": "2006"
},
"builders": [{
"type": "amazon-ebs",
"access_key": "{{user `aws_access_key`}}",
"secret_key": "{{user `aws_secret_key`}}",
"ssh_username": "{{user `aws_ssh_username`}}",
"region": "eu-west-1",
"source_ami_filter": {
"filters": {
"virtualization-type": "hvm", "name": "ubuntu/images/*ubuntu-xenial-16.04-amd64-server-*",
"root-device-type": "ebs"
},
"owners": ["099720109477"],
"most_recent": true
},
"instance_type": "t2.micro",
"ssh_username": "ubuntu",
"ami_name": "kafka-broker {{timestamp}}"
}],
"provisioners": [{
"type": "shell",
"inline_shebang": "/bin/bash -e",
"environment_vars": ["DEBIAN_FRONTEND=noninteractive"],
"inline": [
"unset HISTFILE",
"history -cw",
"echo ===> Waiting for EC2 Instance boot",
"timeout 180 /bin/bash -c 'until stat /var/lib/cloud/instance/boot-finished &>/dev/null; do echo waiting...; sleep 6; done'",
"echo === Configuring System Settings ===",
"echo 'dash dash/sh boolean false' | sudo debconf-set-selections",
"sudo dpkg-reconfigure -f noninteractive dash",
"sudo update-locale LC_CTYPE=en_US.UTF-8",
"echo 'export TZ=:/etc/localtime' | sudo tee /etc/profile.d/tz.sh > /dev/null",
"echo ===> Installing OpenJDK 8",
"sudo apt-get -qq update",
"sudo apt-get purge openjdk-\\*",
"sudo apt-get -o Dpkg::Options::=\"--force-overwrite\" -y -qq install openjdk-8-jdk",
"echo ===> Installing Kafka Broker",
"mkdir -p ~/Downloads",
"wget \"https://www-eu.apache.org/dist/kafka/2.0.0/kafka_2.11-2.0.0.tgz\" -O ~/Downloads/kafka.tgz",
"sudo mkdir -p /opt/kafka",
"sudo tar -xvzf ~/Downloads/kafka.tgz --directory /opt/kafka --strip-components 1",
"echo ===> System Cleanup",
"sudo apt-get -y -qq --purge autoremove",
"sudo apt-get autoclean",
"sudo apt-get clean",
"sudo rm -f /root/.bash_history",
"sudo rm -f /home/ubuntu/.bash_history",
"sudo rm -f /var/log/wtmp",
"sudo rm -f /var/log/btmp",
"sudo rm -rf /var/log/installer",
"sudo rm -rf /var/lib/cloud/instances",
"sudo rm -rf /tmp/* /var/tmp/* /tmp/.*-unix",
"sudo find /var/cache -type f -delete",
"sudo find /var/log -type f | while read f; do echo -n '' | sudo tee $f > /dev/null; done;",
"sudo find /var/lib/apt/lists -not -name lock -type f -delete",
"sudo sync"
]
}]
}