天天看點

Open-Falcon install script(Open-Falcon監控一鍵安裝腳本)

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

<code>#!/bin/bash</code>

<code>#This is Open-Falcon install script</code>

<code>#Data is 2018/1/10</code>

<code>#Editer Zhanxing </code>

<code>#本腳本使用Red 7和CentOS 7系統安裝Open-Falcon</code>

<code>install_preparation()</code>

<code>{</code>

<code>yum </code><code>install</code> <code>-y wget vim</code>

<code>yum </code><code>install</code> <code>-y git  pip epel-release golang  redis </code>

<code>python get-pip.py</code>

<code>pip </code><code>install</code> <code>gunicorn</code>

<code>systemctl start redis</code>

<code>systemctl </code><code>enable</code> <code>redis</code>

<code>systemctl stop firewalld</code>

<code>systemctl disable firewalld</code>

<code>sed</code> <code>-i </code><code>"s/SELINUX=enforcing/SELINUX=disabled/"</code>  <code>/etc/selinux/config</code>

<code>setenforce 0 </code>

<code>}</code>

<code>install_mysql()</code>

<code>wget -P </code><code>/tmp</code> <code>http:</code><code>//repo</code><code>.mysql.com</code><code>/mysql-community-release-el7-5</code><code>.noarch.rpm</code>

<code>    </code><code>if</code> <code>[ $? -</code><code>eq</code> <code>0 ]; </code><code>then</code>

<code>        </code><code>echo</code> <code>"mysql yum源下載下傳成功"</code>

<code>    </code><code>else</code>

<code>        </code><code>echo</code> <code>"mysql yum源下載下傳失敗"</code>

<code>        </code><code>exit</code>

<code>    </code><code>fi</code>

<code>rpm -ivh </code><code>/tmp/mysql-community-release-el7-5</code><code>.noarch.rpm</code>

<code>yum </code><code>install</code> <code>mysql-server -y</code>

<code>        </code><code>echo</code> <code>"mysql 安裝成功"</code>

<code>        </code><code>echo</code> <code>"mysql 安裝失敗"</code>

<code>systemctl start mysql</code>

<code>systemctl </code><code>enable</code> <code>mysql</code>

<code>echo</code> <code>"自行設定MySQL密碼,友善記錄"</code>

<code>read</code> <code>-p </code><code>"please input mysql password:"</code><code>pwd</code>

<code>mysqladmin -u root password </code><code>"$pwd"</code>

<code>export</code> <code>GOROOT=</code><code>/usr/lib/golang</code>

<code>export</code> <code>GOPATH=</code><code>/home</code>

<code>mkdir</code> <code>-p $GOPATH</code><code>/src/github</code><code>.com</code><code>/open-falcon</code>

<code>cd</code> <code>$GOPATH</code><code>/src/github</code><code>.com</code><code>/open-falcon</code>

<code>git clone https:</code><code>//github</code><code>.com</code><code>/open-falcon/falcon-plus</code><code>.git</code>

<code>        </code><code>echo</code> <code>"git源碼成功"</code>

<code>        </code><code>echo</code> <code>"git源碼失敗"</code>

<code>cd</code> <code>$GOPATH</code><code>/src/github</code><code>.com</code><code>/open-falcon/falcon-plus/scripts/mysql/db_schema/</code>

<code>#mysql -u root -p123.com  &lt; /home/src/github.com/open-falcon/falcon-plus/scripts/mysql/db_schema/1_uic-db-schema.sql</code>

<code>mysql -h 127.0.0.1 -u root -p$</code><code>pwd</code> <code>&lt; 1_uic-db-schema.sql</code>

<code>mysql -h 127.0.0.1 -u root -p$</code><code>pwd</code> <code>&lt; 2_portal-db-schema.sql</code>

<code>mysql -h 127.0.0.1 -u root -p$</code><code>pwd</code> <code>&lt; 3_dashboard-db-schema.sql</code>

<code>mysql -h 127.0.0.1 -u root -p$</code><code>pwd</code> <code>&lt; 4_graph-db-schema.sql</code>

<code>mysql -h 127.0.0.1 -u root -p$</code><code>pwd</code> <code>&lt; 5_alarms-db-schema.sql</code>

<code>cd</code> <code>$GOPATH</code><code>/src/github</code><code>.com</code><code>/open-falcon/falcon-plus/</code>

<code>go get github.com</code><code>/open-falcon/rrdlite</code>

<code>make</code> <code>all</code>

<code>make</code> <code>pack</code>

<code>install_after()</code>

<code>export</code> <code>WORKSPACE= </code>

<code>mkdir</code> <code>-p $WORKSPACE</code>

<code>tar</code> <code>-xzvf *.</code><code>tar</code><code>.gz -C $WORKSPACE</code>

<code>sed</code> <code>-i </code><code>'s/root:/root:$pwd/g'</code> <code>/home/work/aggregator/config/cfg</code><code>.json</code>

<code>sed</code> <code>-i </code><code>'s/root:/root:$pwd/g'</code> <code>/home/work/graph/config/cfg</code><code>.json</code>

<code>sed</code> <code>-i </code><code>'s/root:/root:$pwd/g'</code> <code>/home/work/hbs/config/cfg</code><code>.json</code>

<code>sed</code> <code>-i </code><code>'s/root:/root:$pwd/g'</code> <code>/home/work/nodata/config/cfg</code><code>.json</code>

<code>sed</code> <code>-i </code><code>'s/root:/root:$pwd/g'</code> <code>/home/work/api/config/cfg</code><code>.json</code>

<code>sed</code> <code>-i </code><code>'s/root:/root:$pwd/g'</code> <code>/home/work/alarm/config/cfg</code><code>.json</code>

<code>cd</code> <code>$WORKSPACE</code>

<code>.</code><code>/open-falcon</code> <code>start</code>

<code>        </code><code>echo</code> <code>"open-falcon啟動成功"</code>

<code>        </code><code>echo</code> <code>"open-falcon啟動失敗"</code>

<code>install_before()</code>

<code>export</code> <code>FRONTSPACE=</code><code>/home/front/open-falcon</code>

<code>mkdir</code> <code>-p $FRONTSPACE</code>

<code>cd</code> <code>$FRONTSPACE</code>

<code>git clone https:</code><code>//github</code><code>.com</code><code>/open-falcon/dashboard</code><code>.git</code>

<code>        </code><code>echo</code> <code>"git 前端代碼成功"</code>

<code>        </code><code>echo</code> <code>"git 前端代碼失敗"</code>

<code>    </code> 

<code>yum </code><code>install</code> <code>-y python-virtualenv python-devel openldap-devel mysql-devel</code>

<code>yum groupinstall </code><code>"Development tools"</code> <code>-y</code>

<code>cd</code> <code>$FRONTSPACE</code><code>/dashboard/</code>

<code>virtualenv .</code><code>/env</code>

<code>.</code><code>/env/bin/pip</code> <code>install</code> <code>-r pip_requirements.txt</code>

<code>bash</code> <code>control start</code>

<code>        </code><code>echo</code> <code>"dashboard啟動成功"</code>

<code>        </code><code>echo</code> <code>"dashboard啟動失敗"</code>

<code>#檢測網絡</code>

<code>ping</code> <code>-c 1 -t 1 www.baidu.com &gt;</code><code>/dev/null</code> <code>2&gt;&amp;1</code>

<code>if</code> <code>[[ \$? == 2 ]]; </code><code>then</code>

<code>    </code><code>echo</code> <code>"nameserver 114.114.114.114</code>

<code>nameserver 8.8.8.8" &gt; </code><code>/etc/resolv</code><code>.conf</code>

<code>fi</code>

<code>if</code> <code>[[ $? == 2 ]]; </code><code>then</code>

<code>    </code><code>echo</code> <code>"Network problems,Please check!"</code>

<code>    </code><code>exit</code>

<code>#更換阿裡YUM源和fedora的epel倉庫</code>

<code>yum </code><code>install</code> <code>wget vim net-tools -y</code>

<code>mv</code> <code>/etc/yum</code><code>.repos.d</code><code>/CentOS-Base</code><code>.repo </code><code>/etc/yum</code><code>.repos.d</code><code>/CentOS-Base</code><code>.repo.bak</code>

<code>wget -O </code><code>/etc/yum</code><code>.repos.d</code><code>/CentOS-Base</code><code>.repo http:</code><code>//mirrors</code><code>.aliyun.com</code><code>/repo/Centos-7</code><code>.repo</code>

<code>yum clean all</code>

<code>yum makecache</code>

<code>yum </code><code>install</code> <code>-y epel-release</code>

<code>#開始安裝</code>

<code>echo</code> <code>"1 安裝準備環境"</code>

<code>echo</code> <code>"2 安裝MySQL"</code>

<code>echo</code> <code>"3 安裝後端元件"</code>

<code>echo</code> <code>"4 安裝前端元件"</code>

<code>echo</code> <code>"5 單機組合安裝"</code>

<code>echo</code> <code>"輸入您需要安裝的元件編号[1-5]"</code>

<code>read</code> <code>aNum</code>

<code>case</code>  <code>$aNum </code><code>in</code>

<code>    </code><code>1) </code>

<code>    </code><code>install_preparation</code>

<code>    </code><code>;;</code>

<code>    </code><code>2) </code>

<code>    </code><code>install_mysql</code>

<code>    </code><code>3) </code>

<code>    </code><code>install_after</code>

<code>    </code><code>4) </code>

<code>    </code><code>install_before</code>

<code>    </code><code>5) </code>

<code>    </code><code>install_preparation </code>

<code>    </code><code>echo</code> <code>"安裝完成,請通過http://IP:8081進行通路"</code>

<code>esac</code>

本文轉自 Bill_Xing 51CTO部落格,原文連結:http://blog.51cto.com/zhanx/2061307