天天看点

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