@@ -11,23 +11,24 @@ export ZABBIX_TEMPLATE_NAME='PostgresPro'
11
11
# install mamonsu
12
12
cp -a /var/tmp /root/mamonsu && pushd /root/mamonsu
13
13
yum install -y tar make rpm-build python3-devel python3-setuptools
14
+
14
15
make rpm && yum install -y mamonsu* .rpm
15
16
16
17
# install postgres
17
- yum install -y https://download.postgresql.org/pub/repos/yum/9.5 /redhat/rhel-6 -x86_64/pgdg-redhat-repo-42.0-11.noarch.rpm
18
- yum install -y postgresql95 -server postgresql95 -contrib
19
- su postgres -c ' /usr/pgsql-9.5 /bin/initdb -D /var/lib/pgsql/9.5 /data'
20
- su postgres -c ' /usr/pgsql-9.5 /bin/pg_ctl start -w -D /var/lib/pgsql/9.5 /data'
18
+ yum install -y https://download.postgresql.org/pub/repos/yum/10 /redhat/rhel-7 -x86_64/pgdg-redhat-repo-42.0-11.noarch.rpm
19
+ yum install -y postgresql10 -server postgresql10 -contrib
20
+ su postgres -c ' /usr/pgsql-10 /bin/initdb -D /var/lib/pgsql/10 /data'
21
+ su postgres -c ' /usr/pgsql-10 /bin/pg_ctl start -w -D /var/lib/pgsql/10 /data'
21
22
22
23
# mamonsu tune
23
- echo " shared_preload_libraries = '\"\$ libdir/pg_stat_statements\" '" > /var/lib/pgsql/9.5 /data/postgresql.auto.conf
24
- su postgres -c ' /usr/pgsql-9.5 /bin/pg_ctl restart -w -D /var/lib/pgsql/9.5 /data'
24
+ echo " shared_preload_libraries = '\"\$ libdir/pg_stat_statements\" '" > /var/lib/pgsql/10 /data/postgresql.auto.conf
25
+ su postgres -c ' /usr/pgsql-10 /bin/pg_ctl restart -w -D /var/lib/pgsql/10 /data'
25
26
mamonsu tune
26
- su postgres -c ' /usr/pgsql-9.5 /bin/pg_ctl restart -w -D /var/lib/pgsql/9.5 /data'
27
- grep " shared_preload_libraries \= '\"\$ libdir/pg_stat_statements\" , pg_buffercache'" /var/lib/pgsql/9.5 /data/postgresql.auto.conf || (cat /var/lib/pgsql/9.5 /data/postgresql.auto.conf && exit 1)
27
+ su postgres -c ' /usr/pgsql-10 /bin/pg_ctl restart -w -D /var/lib/pgsql/10 /data'
28
+ grep " shared_preload_libraries \= '\"\$ libdir/pg_stat_statements\" , pg_buffercache'" /var/lib/pgsql/10 /data/postgresql.auto.conf || (cat /var/lib/pgsql/10 /data/postgresql.auto.conf && exit 1)
28
29
29
30
# mamonsu report
30
- (mamonsu report | grep version | grep ' PostgreSQL 9.5 ' ) || exit 2
31
+ (mamonsu report | grep version | grep ' PostgreSQL 10 ' ) || exit 2
31
32
32
33
# export config
33
34
cat << EOF > /etc/mamonsu/plugins/def_conf_test.py
@@ -49,7 +50,7 @@ grep external_plugin_config /tmp/config || exit 3
49
50
sed -i ' s|.*max_checkpoint_by_wal_in_hour =.*|max_checkpoint_by_wal_in_hour = 5555555555555|g' /tmp/config
50
51
51
52
# write zabbix template
52
- mamonsu export template $ZABBIX_TEMPLATE -t $ZABBIX_TEMPLATE_NAME -c /tmp/config --old-zabbix
53
+ mamonsu export template $ZABBIX_TEMPLATE -t $ZABBIX_TEMPLATE_NAME -c /tmp/config
53
54
grep 5555555555555 /tmp/template.xml || exit 4
54
55
grep ' pgsql\.uptime\[\]' /tmp/template.xml || exit 4
55
56
grep ' system\.disk\.all_read' /tmp/template.xml || exit 4
@@ -72,15 +73,26 @@ mamonsu export config /tmp/config -a /etc/mamonsu/plugins -c /etc/mamonsu/agent.
72
73
grep external_plugin_config2 /tmp/config || exit 5
73
74
74
75
# install zabbix
75
- yum install -y http://repo.zabbix.com/zabbix/2.4/rhel/6/x86_64/zabbix-release-2.4-1.el6.noarch.rpm
76
- yum install -y zabbix-server-pgsql zabbix-web-pgsql
76
+ rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
77
+ yum clean all
78
+ yum install -y zabbix-server-pgsql zabbix-agent
79
+ yum install -y centos-release-scl
80
+
81
+ sed -i ' s/enabled=0/enabled=1/g' /etc/yum.repos.d/zabbix.repo
82
+
83
+ cat /etc/yum.repos.d/zabbix.repo
84
+
85
+ yum install -y zabbix-web-pgsql-scl zabbix-apache-conf-scl
86
+
87
+ sed -i " s,;date.timezone =,date.timezone = 'US/Eastern'," /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf
88
+
89
+ sed -i " s|; php_value[date.timezone] = Europe/Riga'|php_value[date.timezone] = Europe/Riga'|g" /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf
77
90
78
- sed -i " s,;date.timezone =,date.timezone = 'US/Eastern'," /etc/php.ini
79
91
su postgres -c ' createdb zabbix'
80
92
su postgres -c ' createuser -a -d -E zabbix'
81
- psql -1 -f $TESTDIR /zabbix_sql/schema.sql -U zabbix -d zabbix
82
- psql -1 -f $TESTDIR /zabbix_sql/images .sql -U zabbix -d zabbix
83
- psql -1 -f $TESTDIR /zabbix_sql/data.sql -U zabbix -d zabbix
93
+
94
+ psql -1 -f $TESTDIR /zabbix_sql/create .sql -U zabbix -d zabbix
95
+
84
96
cat << EOF > /etc/zabbix/zabbix_server.conf
85
97
AlertScriptsPath=/usr/lib/zabbix/alertscripts
86
98
ExternalScripts=/usr/lib/zabbix/externalscripts
@@ -109,26 +121,29 @@ global \$DB;
109
121
?>
110
122
EOF
111
123
cp /usr/share/zabbix/conf/zabbix.conf.php /etc/zabbix/web/zabbix.conf.php
112
- /etc/init.d/zabbix-server start
113
- /etc/init.d/httpd start
114
124
115
- # export template to zabbix
125
+ /usr/sbin/zabbix_server -c /etc/zabbix/zabbix_server.conf
126
+ /usr/sbin/httpd -D FOREGROUND&
127
+ /opt/rh/rh-php72/root/usr/sbin/php-fpm --nodaemonize&
128
+
129
+
130
+ # # export template to zabbix
116
131
mamonsu zabbix template export $ZABBIX_TEMPLATE
117
132
template_id=$( mamonsu zabbix template id $ZABBIX_TEMPLATE_NAME )
118
133
hostgroup_id=$( mamonsu zabbix hostgroup id ' Linux servers' )
119
134
mamonsu zabbix host create $ZABBIX_CLIENT_HOST $hostgroup_id $template_id 127.0.0.1
120
-
135
+ #
121
136
su postgres -c ' createdb mamonsu'
122
- su postgres -c " /usr/pgsql-9.5 /bin/psql -Atc \" CREATE USER mamonsu WITH password 'supersecret'\" "
123
- cat << EOF > /var/lib/pgsql/9.5 /data/pg_hba.conf
137
+ su postgres -c " /usr/pgsql-10 /bin/psql -Atc \" CREATE USER mamonsu WITH password 'supersecret'\" "
138
+ cat << EOF > /var/lib/pgsql/10 /data/pg_hba.conf
124
139
local all all trust
125
140
host zabbix zabbix 127.0.0.1/32 trust
126
141
host zabbix zabbix ::1/128 trust
127
142
host all all 127.0.0.1/32 md5
128
143
EOF
129
- su postgres -c ' /usr/pgsql-9.5 /bin/pg_ctl reload -D /var/lib/pgsql/9.5 /data'
144
+ su postgres -c ' /usr/pgsql-10 /bin/pg_ctl reload -D /var/lib/pgsql/10 /data'
130
145
131
- # start mamonsu and sleep
146
+ # # start mamonsu and sleep
132
147
cat << EOF > /etc/mamonsu/agent.conf
133
148
[postgres]
134
149
host = 127.0.0.1
@@ -155,28 +170,29 @@ file = /var/log/mamonsu/agent.log
155
170
level = DEBUG
156
171
EOF
157
172
mamonsu bootstrap -U postgres mamonsu -M mamonsu
158
- /etc/init.d/mamonsu start
173
+ # #/etc/init.d/mamonsu start
174
+ /usr/bin/mamonsu -a /etc/mamonsu/plugins -c /etc/mamonsu/agent.conf&
159
175
sleep 125
160
176
161
- # check external plugin is worked
177
+ # # check external plugin is worked
162
178
file /tmp/extenal_plugin_is_called || exit 6
163
-
164
- # check metric from agent
179
+ #
180
+ # # check metric from agent
165
181
mamonsu agent -c /etc/mamonsu/agent.conf version
166
182
mamonsu agent metric-get system.disk.all_read[] -c /etc/mamonsu/agent.conf
167
183
mamonsu agent -c /etc/mamonsu/agent.conf metric-list | grep system
168
184
169
- # metric log
185
+ # # metric log
170
186
grep utilization /tmp/localhost.log || exit 7
171
187
grep ' pgsql\.uptime' /tmp/localhost.log || exit 7
172
188
173
- # error in zabbix server
189
+ # # error in zabbix server
174
190
(mamonsu zabbix item error $ZABBIX_CLIENT_HOST | grep ZBX_NOTSUPPORTED) && exit 8
175
-
176
- # other metric in zabbix server
191
+ #
192
+ # # other metric in zabbix server
177
193
(mamonsu zabbix item lastvalue $ZABBIX_CLIENT_HOST | grep uptime) || exit 9
178
-
179
- # all plugin alive, exclude pg_wait_sampling
194
+ #
195
+ # # all plugin alive, exclude pg_wait_sampling
180
196
(grep -v ' PGWAITSAMPLING' /var/log/mamonsu/agent.log | grep -i ' catch error' ) && exit 10
181
-
197
+ #
182
198
exit 0
0 commit comments