-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathelk.sh
183 lines (146 loc) · 3.77 KB
/
elk.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
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
# EK_VERSION=elasticsearch-5.3.0
# LS_VERSION=logstash-5.3.0
# KIBANA_VERSION=kibana-6.3.0
# REDIS_VERSION=redis-4.0.10
computer="";
_HOME="~/elk";
case "`uname`" in
CYGWIN*) computer="Cygwin" _HOME=~/elk;;
Darwin*) computer="Darwin" _HOME=~/elk;;
(*Linux*) computer="Linux" _HOME=/opt;;
esac
echo "HOME:"$_HOME
_elksetup(){
#cd $EL_HOME
if [ ! -d "elasticsearch-5.3.0" ]; then
if [[ ! -f "elasticsearch-5.3.0.tar.gz" ]]; then
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.3.0.tar.gz
fi
tar -xf elasticsearch-5.3.0.tar.gz
_sed
fi
if [ ! -d "logstash-5.3.0" ]; then
if [[ ! -f "logstash-5.3.0.tar.gz" ]]; then
wget https://artifacts.elastic.co/downloads/logstash/logstash-5.3.0.tar.gz
fi
tar -xf logstash-5.3.0.tar.gz
fi
if [ ! -d "kibana-6.3.0" ]; then
if [[ ! -f "kibana-6.3.0-linux-x86_64.tar.gz" ]]; then
wget https://artifacts.elastic.co/downloads/kibana/kibana-6.3.0-linux-x86_64.tar.gz
fi
tar -xf kibana-6.3.0-linux-x86_64.tar.gz
fi
if [ ! -d "redis-4.0.10" ]; then
if [[ ! -f "redis-4.0.10.tar.gz" ]]; then
wget http://download.redis.io/releases/redis-4.0.10.tar.gz
fi
tar -xf redis-4.0.10.tar.gz
cd redis-4.0.10
make
#daemon
sed -i 's/daemonize no/daemonize yes/' $_HOME/redis-4.0.10/redis.conf
sed -i 's/# requirepass foobared/requirepass wyy/' $_HOME/redis-4.0.10/redis.conf
fi
}
_sed(){
sed -i 's/-Xms2g/-Xms1g/' $_HOME/elasticsearch-5.3.0/config/jvm.options
sed -i 's/-Xmx2g/-Xms1g/' $_HOME/elasticsearch-5.3.0/config/jvm.options
}
_ruby(){
echo "ruby"
#安装ruby
#gem install protoc
#gem install ruby-protocol-buffers
}
_test(){
echo "Test"
#sed -i 's/# requirepass foobared/requirepass wyy/' $_HOME/redis-4.0.10/redis.conf
}
_sec(){
cd $_HOME
groupadd elsearch
useradd elsearch -g elsearch -p elasticsearch-5.3.0
chown -R elsearch:elsearch elasticsearch-5.3.0
}
if [[ $1 = "sec" ]]; then
_sec
fi
if [[ $1 = "git" ]]; then
git clone https://github.com/arafat5549/elk.git
fi
if [[ $1 = "ruby" ]]; then
_ruby
#sed -i 's/daemonize no/daemonize yes/' $_HOME/redis-4.0.10/redis.conf
fi
if [[ $1 = "setup" ]]; then
#cd $_HOME
_elksetup
fi
if [[ $1 = "state" ]]; then
psid=$(ps aux | grep elasticsearch-5.3.0 | awk '$11!="grep"{print $0}')
psid2=$(ps aux | grep logstash-5.3.0 | awk '$11!="grep"{print $0}')
psid3=$(ps aux | grep redis | awk '$11!="grep"{print $0}')
echo $psid
echo $psid2
echo $psid3
if [[ $2 = "kill" ]]; then
if [[ $psid != "" ]]; then
echo "kill es"
kill -9 $psid
fi
if [[ $psid2 != "" ]]; then
echo "kill logstash"
kill -9 $psid2
fi
if [[ $psid3 != "" ]]; then
echo "kill redis"
kill -9 $psid3
fi
fi
fi
_es(){
cd $_HOME
psid=$(ps aux | grep elasticsearch-5.3.0 | awk '$11!="grep"{print $2}')
if [[ $psid != "" ]]; then
echo "es is running"
kill -9 $psid
fi
./elasticsearch-5.3.0/bin/elasticsearch -d
}
_kibana(){
cd $_HOME
case "$1" in
sense)
./kibana-6.3.0-linux-x86_64/bin.kibana plugin --install elastic/sense
;;
run)
./kibana-6.3.0-linux-x86_64/bin.kibana
;;
esac
}
# if [[ $1 = "es" ]]; then
# _es
# fi
case "$1" in
es) _es ;;
kibana) _kibana $2 ;;
esac
if [[ $1 = "run" ]]; then
#_es
cd $_HOME
psid3=$(ps aux | grep redis | awk '$11!="grep"{print $2}')
if [[ $psid3 != "" ]]; then
echo "redis is running"
kill -9 $psid3
fi
./redis-4.0.10/src/redis-server $_HOME/redis-4.0.10/redis.conf
psid2=$(ps aux | grep logstash-5.3.0 | awk '$11!="grep"{print $2}')
if [[ $psid2 != "" ]]; then
echo "logstash is running"
kill -9 $psid2
fi
#./logstash-5.3.0/bin/logstash -f ~/elk/conf/logstash.conf
nohup ./logstash-5.3.0/bin/logstash -f ~/elk/conf/logstash.conf &> /dev/null
#echo $psid,$psid2,$psid3
fi