nginx 安装
1: pcre perl 函数库
安装过程中发现错误:configure: error: no acceptable C compiler found in $PATH 需要安装 GCC
解压后 注意权限, ./configure 然后 make 编译下 最后安装 make install
2:安装 openssl (如果需要ssl的支持 不需要可以跳过)
3: /configure make make install
zabbix 学习:
1:构成
zabbix_agent 客户端守护进程,搜集客户端数据 如 cpu 负载
zabbix_get 排错检查
zabbix_server zabbix 守护进程 一般两个角色,server agent(监控自己)
zabbix_proxy 代理 数据中转站
zabbix_sender 使用脚本后 提交数据
zabbix_java_gateway(可选)
2:安装
1:php 支持 修改配置适应于 zabbix
/usr/local/php-7.0.13/etc/php.ini
/home/user/php.ini
/etc/php.ini
2:snmp mysql curl 支持
3:创建账户和用户组
4:初始化数据库 zabbix server 与 proxy 需要数据 proxy 需要导入一个sql server 需要导入3个
导入mysql 数据
5:配置 zabbix 配置文件 --with-mysql=/usr/bin/mysql_config
编译 ./configure --prefix=/usr/local/zabbix --with-net-snmp --with-libcurl --enable-server --enable-agent --enable-proxy
编译报错:zabbix error: MySQL library not found --with-mysql=/usr/local/mysql/bin/mysql_config 需要指定mysql_config
编译报错:configure: error: Not found mysqlclient library 需要安装 mysql-devel库
6: 升级 php 高于5.4 rpm -qa | grep -i php 找到安装包后 删除 rpm -e --nodeps ****
然后安装 ./configure --prefix=编译目录 make make-test make-install ok
最后配置环境变量 /ect/profile 注意 source /etc/profile 生效
./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2
7: mysql 安装
rpm 安装,注意 安装服务端位置在 /usr/share/mysql 内 启动文件位置在 /usr/bin/mysqld_safe 数据文件 /var/lib/mysql 日志:/var/log/mysqld.log
启动后 开始安装客户端 安装完客户端后 文件在 ls /usr/bin/mysql* 这里都是
登录的时候也在这里登录,开始报错为:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
/var/run/mysqld/mysqld.pid
如果没法启动的话 可能是root没权限 需要my.cnf 添加 user=root
8:注意 前期php 安装的时候没有添加 mysql支持,需要再次添加编译
9:再次编译 ./configure --prefix=/usr/local/zabbix --enable-server --with-mysql --with-net-snmp --with-libcurl --with-libxml2 --enable-agent 这是最基本的编译内容。。
成功
10:现在mysql 添加用户 GRANT USAGE ON *.* TO 'user01'@'localhost' IDENTIFIED BY '123456' WITH GRANT OPTION;
创建数据库:create database zabbix;
赋权:grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix1234';
update user set host='%' where user = 'root'; 允许远程登录数据库
如果报错: ERROR 1062 (23000): Duplicate entry '%-root' for key 'PRIMARY' 查看下 select host from user where user = 'root'; 是否有 %
有的话 刷新下flush privileges;
ok
11:开始配置 zabbix
启动zabbix 注意这里三个地方的 zabbix_server.conf 都需要更换相同的部分 然后启动ok
11.1 配置和数据库的连接 导入mysql数据
11.2 安装zabbix客户端部分 注意 客户端的配置文件更改 在 zabbix_agent.conf 中
cp /root/zabbix-2.0.5/misc/init.d/Fedora/core/zabbix_agentd /etc/init.d/
vim /usr/local/zabbix/etc/zabbix_agentd.conf
Server=192.168.1.140 //配置zabbix服务器的IP地址
Hostname=linux_server1 //配置主机名
PidFile=/var/tmp/zabbix_agentd.pid //指定pid路径
LogFile=/var/log/zabbix/zabbix_agentd.log 指定日志
完事后在 编译后的目录启动 测试 10050 端口启动成功
11.3 zabbix管理网站配置:
拷贝前端文件:
cp -rp /data/guo/libtools/zabbix-3.0.1/frontends/php/* /data/guo/monitor.ttlsa.com/zabbix/
vim /usr/local/nginx
1.5.8/conf/vhost/monitor.ttlsa.com.conf
server {
listen 80;
server_name monitor.ttlsa.com;
access_log /data/logs/nginx/monitor.ttlsa.com.access.log main;
index index.html index.php index.html;
root /data/site/monitor.ttlsa.com;
location /
{
try_files $uri $uri/ /index.php?$args;
}
location ~ ^(.+.php)(.*)$ {
fastcgi_split_path_info ^(.+.php)(.*)$;
include fastcgi.conf;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param PATH_INFO $fastcgi_path_info;
}
}
浏览器打开 http://monitor.ttlsa.com/zabbix
出现问题:无法访问 403错误 http://134.32.51.46/zabbix
重新修改:
10.拷贝zabbixserver端跟agent端的启动脚本,并设置执行权限
cp misc/init.d/tru64/zabbix_agentd /etc/init.d/
cp misc/init.d/tru64/zabbix_server /etc/init.d/
chmod +x /etc/init.d/zabbix_*
11.将zabbix的页面文件copy到指定目录(跟apache配置的相同即可)
mkdir /var/www/html/zabbix
cp -a frontends/php/* /var/www/html/zabbix/
chown -R apache.apache /var/www/html/zabbix/
12.配置php文件(/etc/php.ini),适应zabbix安装所需的参数
vim /etc/php.ini
date.timezone = Asia/Shanghai
max_execution_time = 300
max_input_time = 300
post_max_size = 32M
memory_limit = 128M
mbstring.func_overload = 2
13.(可选)配置apache文件,定义安装访问zabbix的虚拟主机
vim /etc/httpd/conf/httpd.conf
ServerName 127.0.0.1
<VirtualHost *:80>
DocumentRoot "/var/www/html"
ServerName 192.168.106.1
</VirtualHost>
14.配置zabbix server端的文件,定义数据库的IP、用户名、密码
vim /etc/zabbix/zabbix_server.conf
DBHost=127.0.0.1
DBName= zabbix
DBUser=zabbixuser
DBPassword=zabbixpass
StartPollers=30 #开启多线程数,一般不要超过30个
StartTrappers=20 #trapper线程数
StartPingers=10 #fping线程数
StartDiscoverers=120
MaxHousekeeperDelete=5000
CacheSize=1024M #用来保存监控数据的缓存数,根据监控主机的数量适当调整
StartDBSyncers=8 #数据库同步时间
HistoryCacheSize=1024M
TrendCacheSize=128M #总趋势缓存大小
HistoryTextCacheSize=512M
AlertScriptsPath=/etc/zabbix/alertscripts
LogSlowQueries=1000
15.启动apache服务跟zabbix服务
/etc/init.d/httpd start
/etc/init.d/zabbix_server start
访问网页 http://host/zabbix/setup.php 无法访问 注意了 这里访问的话端口默认是80 是httpd.conf 内的 listener端口 如果修改的话必须一致
可以访问 但是php 没有配置解析,无法进入欢迎界面 仅仅是php代码
apache没有添加对应的php类型,所以不支持php的脚本解析
注意: nginx.conf 中 root /data/www/zabbix这样就是你把zabbix的web放在/data/www/zabbix这里 别忘了拷贝 zabbix安装目录的php到这里
日志存在目录
目前依然是 403问题 测试 index.html 赋权 都试过了不管用 并且 selinux dis状态
发现问题: PHP-FPM 没有安装,这个是nginx 对 php 文件的解释器
中间需要安装 libmcrypt mcrypy mhash三个插件
现在报错:Don't know how to define struct flock on this system, set --enable-opcache=no 去掉
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/php_config/ --with-bz2 --with-curl --enable-ftp --enable-sockets --disable-ipv6 --with-gd --with-jpeg-dir=/usr/local --with-png-dir=/usr/local --with-freetype-dir=/usr/local --enable-gd-native-ttf --with-iconv-dir=/usr/local --enable-mbstring --enable-calendar --with-gettext --with-libxml-dir=/usr/local --with-zlib --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-mysql=mysqlnd --enable-dom --enable-xml --enable-fpm --with-libdir=lib64
经常出现 403 错误 注意这个权限 chmod -R 755 /etc/zabbix/web 这里的目录 必须和 nginx 里的 server 中的root指定目录对应上才可以 其中 server_name 可以使用ip
*********************************************************至此 安装完毕
后面一直出现一种错误,web页面无法next,查询原因,是php.ini 文件导致,重新安装php
#cp /tmp/php-5.6.11/php.ini-production /etc/php.ini
vi /etc/php.ini
打开php.ini配置文件,修改或添加以下参数为如下值,否则ZABBIX安装时会验证不过去。
max_execution_time = 300
memory_limit =256M //最低要求为128M,如果需要频繁调用API,这里建议设置大一些,可以根据httpd进程的 负载做适当调整
post_max_size = 16M
max_input_time = 300
date.timezone = PRC
session.auto_start = 0
mbstring.func_overload = 2
#cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
#设置 php-fpm开机启动
# cp /tmp/php-5.6.11/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
# chmod +x /etc/init.d/php-fpm
# chkconfig --add php-fpm
# chkconfig php-fpm on
# service php-fpm start
经过修改后 发现bcmath 模块未安装
重新编译安装php 添加 --enable-bcmath
安装bcmath扩展:
cd php-5.6.20/ext/bcmath/ (php源码包目录,不是安装后的路径)
phpize
./configure --with-php-config=/usr/local/php-5.6.20/bin/php-config
make && make install
指定你自己的路径 修改php.ini 文件 最后面添加 contension=bcmath.so
有关中文问题 修改 vim locales.inc.php ‘zh_CN‘ => [‘name‘ => _(‘Chinese (zh_CN)‘), ‘display‘ => false], 的false改成true
重启 php 搞定
接下来就是解决语言和 编码,搞定
1: pcre perl 函数库
安装过程中发现错误:configure: error: no acceptable C compiler found in $PATH 需要安装 GCC
解压后 注意权限, ./configure 然后 make 编译下 最后安装 make install
2:安装 openssl (如果需要ssl的支持 不需要可以跳过)
3: /configure make make install
zabbix 学习:
1:构成
zabbix_agent 客户端守护进程,搜集客户端数据 如 cpu 负载
zabbix_get 排错检查
zabbix_server zabbix 守护进程 一般两个角色,server agent(监控自己)
zabbix_proxy 代理 数据中转站
zabbix_sender 使用脚本后 提交数据
zabbix_java_gateway(可选)
2:安装
1:php 支持 修改配置适应于 zabbix
/usr/local/php-7.0.13/etc/php.ini
/home/user/php.ini
/etc/php.ini
2:snmp mysql curl 支持
3:创建账户和用户组
4:初始化数据库 zabbix server 与 proxy 需要数据 proxy 需要导入一个sql server 需要导入3个
导入mysql 数据
5:配置 zabbix 配置文件 --with-mysql=/usr/bin/mysql_config
编译 ./configure --prefix=/usr/local/zabbix --with-net-snmp --with-libcurl --enable-server --enable-agent --enable-proxy
编译报错:zabbix error: MySQL library not found --with-mysql=/usr/local/mysql/bin/mysql_config 需要指定mysql_config
编译报错:configure: error: Not found mysqlclient library 需要安装 mysql-devel库
6: 升级 php 高于5.4 rpm -qa | grep -i php 找到安装包后 删除 rpm -e --nodeps ****
然后安装 ./configure --prefix=编译目录 make make-test make-install ok
最后配置环境变量 /ect/profile 注意 source /etc/profile 生效
./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2
7: mysql 安装
rpm 安装,注意 安装服务端位置在 /usr/share/mysql 内 启动文件位置在 /usr/bin/mysqld_safe 数据文件 /var/lib/mysql 日志:/var/log/mysqld.log
启动后 开始安装客户端 安装完客户端后 文件在 ls /usr/bin/mysql* 这里都是
登录的时候也在这里登录,开始报错为:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
/var/run/mysqld/mysqld.pid
如果没法启动的话 可能是root没权限 需要my.cnf 添加 user=root
8:注意 前期php 安装的时候没有添加 mysql支持,需要再次添加编译
9:再次编译 ./configure --prefix=/usr/local/zabbix --enable-server --with-mysql --with-net-snmp --with-libcurl --with-libxml2 --enable-agent 这是最基本的编译内容。。
成功
10:现在mysql 添加用户 GRANT USAGE ON *.* TO 'user01'@'localhost' IDENTIFIED BY '123456' WITH GRANT OPTION;
创建数据库:create database zabbix;
赋权:grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix1234';
update user set host='%' where user = 'root'; 允许远程登录数据库
如果报错: ERROR 1062 (23000): Duplicate entry '%-root' for key 'PRIMARY' 查看下 select host from user where user = 'root'; 是否有 %
有的话 刷新下flush privileges;
ok
11:开始配置 zabbix
启动zabbix 注意这里三个地方的 zabbix_server.conf 都需要更换相同的部分 然后启动ok
11.1 配置和数据库的连接 导入mysql数据
11.2 安装zabbix客户端部分 注意 客户端的配置文件更改 在 zabbix_agent.conf 中
cp /root/zabbix-2.0.5/misc/init.d/Fedora/core/zabbix_agentd /etc/init.d/
vim /usr/local/zabbix/etc/zabbix_agentd.conf
Server=192.168.1.140 //配置zabbix服务器的IP地址
Hostname=linux_server1 //配置主机名
PidFile=/var/tmp/zabbix_agentd.pid //指定pid路径
LogFile=/var/log/zabbix/zabbix_agentd.log 指定日志
完事后在 编译后的目录启动 测试 10050 端口启动成功
11.3 zabbix管理网站配置:
拷贝前端文件:
cp -rp /data/guo/libtools/zabbix-3.0.1/frontends/php/* /data/guo/monitor.ttlsa.com/zabbix/
vim /usr/local/nginx
1.5.8/conf/vhost/monitor.ttlsa.com.conf
server {
listen 80;
server_name monitor.ttlsa.com;
access_log /data/logs/nginx/monitor.ttlsa.com.access.log main;
index index.html index.php index.html;
root /data/site/monitor.ttlsa.com;
location /
{
try_files $uri $uri/ /index.php?$args;
}
location ~ ^(.+.php)(.*)$ {
fastcgi_split_path_info ^(.+.php)(.*)$;
include fastcgi.conf;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param PATH_INFO $fastcgi_path_info;
}
}
浏览器打开 http://monitor.ttlsa.com/zabbix
出现问题:无法访问 403错误 http://134.32.51.46/zabbix
重新修改:
10.拷贝zabbixserver端跟agent端的启动脚本,并设置执行权限
cp misc/init.d/tru64/zabbix_agentd /etc/init.d/
cp misc/init.d/tru64/zabbix_server /etc/init.d/
chmod +x /etc/init.d/zabbix_*
11.将zabbix的页面文件copy到指定目录(跟apache配置的相同即可)
mkdir /var/www/html/zabbix
cp -a frontends/php/* /var/www/html/zabbix/
chown -R apache.apache /var/www/html/zabbix/
12.配置php文件(/etc/php.ini),适应zabbix安装所需的参数
vim /etc/php.ini
date.timezone = Asia/Shanghai
max_execution_time = 300
max_input_time = 300
post_max_size = 32M
memory_limit = 128M
mbstring.func_overload = 2
13.(可选)配置apache文件,定义安装访问zabbix的虚拟主机
vim /etc/httpd/conf/httpd.conf
ServerName 127.0.0.1
<VirtualHost *:80>
DocumentRoot "/var/www/html"
ServerName 192.168.106.1
</VirtualHost>
14.配置zabbix server端的文件,定义数据库的IP、用户名、密码
vim /etc/zabbix/zabbix_server.conf
DBHost=127.0.0.1
DBName= zabbix
DBUser=zabbixuser
DBPassword=zabbixpass
StartPollers=30 #开启多线程数,一般不要超过30个
StartTrappers=20 #trapper线程数
StartPingers=10 #fping线程数
StartDiscoverers=120
MaxHousekeeperDelete=5000
CacheSize=1024M #用来保存监控数据的缓存数,根据监控主机的数量适当调整
StartDBSyncers=8 #数据库同步时间
HistoryCacheSize=1024M
TrendCacheSize=128M #总趋势缓存大小
HistoryTextCacheSize=512M
AlertScriptsPath=/etc/zabbix/alertscripts
LogSlowQueries=1000
15.启动apache服务跟zabbix服务
/etc/init.d/httpd start
/etc/init.d/zabbix_server start
访问网页 http://host/zabbix/setup.php 无法访问 注意了 这里访问的话端口默认是80 是httpd.conf 内的 listener端口 如果修改的话必须一致
可以访问 但是php 没有配置解析,无法进入欢迎界面 仅仅是php代码
apache没有添加对应的php类型,所以不支持php的脚本解析
注意: nginx.conf 中 root /data/www/zabbix这样就是你把zabbix的web放在/data/www/zabbix这里 别忘了拷贝 zabbix安装目录的php到这里
日志存在目录
目前依然是 403问题 测试 index.html 赋权 都试过了不管用 并且 selinux dis状态
发现问题: PHP-FPM 没有安装,这个是nginx 对 php 文件的解释器
中间需要安装 libmcrypt mcrypy mhash三个插件
现在报错:Don't know how to define struct flock on this system, set --enable-opcache=no 去掉
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/php_config/ --with-bz2 --with-curl --enable-ftp --enable-sockets --disable-ipv6 --with-gd --with-jpeg-dir=/usr/local --with-png-dir=/usr/local --with-freetype-dir=/usr/local --enable-gd-native-ttf --with-iconv-dir=/usr/local --enable-mbstring --enable-calendar --with-gettext --with-libxml-dir=/usr/local --with-zlib --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-mysql=mysqlnd --enable-dom --enable-xml --enable-fpm --with-libdir=lib64
经常出现 403 错误 注意这个权限 chmod -R 755 /etc/zabbix/web 这里的目录 必须和 nginx 里的 server 中的root指定目录对应上才可以 其中 server_name 可以使用ip
*********************************************************至此 安装完毕
后面一直出现一种错误,web页面无法next,查询原因,是php.ini 文件导致,重新安装php
#cp /tmp/php-5.6.11/php.ini-production /etc/php.ini
vi /etc/php.ini
打开php.ini配置文件,修改或添加以下参数为如下值,否则ZABBIX安装时会验证不过去。
max_execution_time = 300
memory_limit =256M //最低要求为128M,如果需要频繁调用API,这里建议设置大一些,可以根据httpd进程的 负载做适当调整
post_max_size = 16M
max_input_time = 300
date.timezone = PRC
session.auto_start = 0
mbstring.func_overload = 2
#cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
#设置 php-fpm开机启动
# cp /tmp/php-5.6.11/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
# chmod +x /etc/init.d/php-fpm
# chkconfig --add php-fpm
# chkconfig php-fpm on
# service php-fpm start
经过修改后 发现bcmath 模块未安装
重新编译安装php 添加 --enable-bcmath
安装bcmath扩展:
cd php-5.6.20/ext/bcmath/ (php源码包目录,不是安装后的路径)
phpize
./configure --with-php-config=/usr/local/php-5.6.20/bin/php-config
make && make install
指定你自己的路径 修改php.ini 文件 最后面添加 contension=bcmath.so
有关中文问题 修改 vim locales.inc.php ‘zh_CN‘ => [‘name‘ => _(‘Chinese (zh_CN)‘), ‘display‘ => false], 的false改成true
重启 php 搞定
接下来就是解决语言和 编码,搞定