-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathTeam_3_install_kafka.sh
97 lines (83 loc) · 3.96 KB
/
Team_3_install_kafka.sh
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
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
#!/bin/bash
start_dir=$(pwd)
sudo echo "Starting Kafka installation"
cd
sudo apt-get update -y
sudo apt-get upgrade -y
# Delete previous zookeeper files and installations
sudo rm -rf kafka*
if [ -d "/usr/local/kafka" ]; then
echo "Deleting previous Kafka files and installations"
sudo rm -rf /usr/local/kafka
fi
# Download Kafka
echo "Downloading Kafka binaries"
wget https://downloads.apache.org/kafka/3.4.0/kafka_2.12-3.4.0.tgz
# Extract Kafka
echo "Decompressing tar archive for Kafka"
tar -xf kafka_2.12-3.4.0.tgz
sudo mv kafka_2.12-3.4.0 /usr/local/kafka
# Setting up zookeeper.service
echo "Setting up zookeeper.service"
if [ -f "/etc/systemd/system/zookeeper.service" ]; then
sudo rm /etc/systemd/system/zookeeper.service
fi
sudo touch /etc/systemd/system/zookeeper.service
sudo chmod 777 /etc/systemd/system/zookeeper.service
sudo echo "[Unit]" >> /etc/systemd/system/zookeeper.service
sudo echo "Description=Apache Zookeeper server" >> /etc/systemd/system/zookeeper.service
sudo echo "Documentation=http://zookeeper.apache.org" >> /etc/systemd/system/zookeeper.service
sudo echo "Requires=network.target remote-fs.target" >> /etc/systemd/system/zookeeper.service
sudo echo "After=network.target remote-fs.target" >> /etc/systemd/system/zookeeper.service
sudo echo "" >> /etc/systemd/system/zookeeper.service
sudo echo "[Service]" >> /etc/systemd/system/zookeeper.service
sudo echo "Type=simple" >> /etc/systemd/system/zookeeper.service
sudo echo "ExecStart=/usr/local/kafka/bin/zookeeper-server-start.sh /usr/local/kafka/config/zookeeper.properties" >> /etc/systemd/system/zookeeper.service
sudo echo "ExecStop=/usr/local/kafka/bin/zookeeper-server-stop.sh" >> /etc/systemd/system/zookeeper.service
sudo echo "Restart=on-abnormal" >> /etc/systemd/system/zookeeper.service
sudo echo "" >> /etc/systemd/system/zookeeper.service
sudo echo "[Install]" >> /etc/systemd/system/zookeeper.service
sudo echo "WantedBy=multi-user.target" >> /etc/systemd/system/zookeeper.service
sudo echo "" >> /etc/systemd/system/zookeeper.service
# Setting up kafka.service
echo "Setting up kafka.service"
if [ -f "/etc/systemd/system/kafka.service" ]; then
sudo rm /etc/systemd/system/kafka.service
fi
sudo touch /etc/systemd/system/kafka.service
sudo chmod 777 /etc/systemd/system/kafka.service
sudo echo "[Unit]" >> /etc/systemd/system/kafka.service
sudo echo "Description=Apache Kafka Server" >> /etc/systemd/system/kafka.service
sudo echo "Documentation=http://kafka.apache.org/documentation.html" >> /etc/systemd/system/kafka.service
sudo echo "Requires=zookeeper.service" >> /etc/systemd/system/kafka.service
sudo echo "" >> /etc/systemd/system/kafka.service
sudo echo "[Service]" >> /etc/systemd/system/kafka.service
sudo echo "Type=simple" >> /etc/systemd/system/kafka.service
sudo echo "Environment="JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64"" >> /etc/systemd/system/kafka.service
sudo echo "ExecStart=/usr/local/kafka/bin/kafka-server-start.sh /usr/local/kafka/config/server.properties" >> /etc/systemd/system/kafka.service
sudo echo "ExecStop=/usr/local/kafka/bin/kafka-server-stop.sh" >> /etc/systemd/system/kafka.service
sudo echo "" >> /etc/systemd/system/kafka.service
sudo echo "[Install]" >> /etc/systemd/system/kafka.service
sudo echo "WantedBy=multi-user.target" >> /etc/systemd/system/kafka.service
sudo echo "" >> /etc/systemd/system/kafka.service
echo "Successfully created services"
sudo chown -R $USER:$USER /usr/local/kafka
sudo systemctl daemon-reload
# Start zookeeper and kafka
sudo systemctl start zookeeper
sudo systemctl start kafka
sleep 5
echo "---------------"
sudo systemctl is-active --quiet kafka
if [ $? -eq 0 ]; then
echo "Kafka has been successfully installed and started"
else
echo "Error in starting Kafka. Check logs at /usr/local/kafka/logs"
fi
echo "---------------"
echo ""
echo "If you wish to stop Kafka, run the following commands"
echo "sudo systemctl stop kafka"
echo "To check the status of Kafka, run the following command"
echo "sudo systemctl status kafka"
cd $start_dir