安装之前,先建几个目录:
mkdir tools
mkdir /usr/local/mysql
mkdir /usr/local/mysql/data
mkdri /usr/local/zabbix
mkdir /usr/local/zabbix
mkdir /usr/local/php
第一:安装Nginx'
1、安装依赖包:
yum -y install gcc automake autoconf libtool make
yum -y install gcc gcc-c++
yum install -y zlib-devel
yum -y install pcre-devel
yum -y install openssl openssl-deve
tools目录有PCRE库:
tar -zxvf pcre-8.37.tar.gz
cd /root/tools/pcre-8.34
./configure
make && make install
安装zlib库:
tools目录有zlib库:
tar -zxvf zlib-1.2.11.tar.gz
cd /root/tools/zlib-1.2.11
./configure
make && make install
安装ssl
tools目录有ssl库:
tar -zxvf openssl-1.0.1t.tar.gz ##先仅仅解压就可以了,不用./configure,下一步会有
安装Nginx源码包:
tools目录有nginx包:
tar -zxvf nginx.1.11.2.tar.gz
cd /root/tools/nginx.1.11.2
./configure--sbin-path=/usr/local/nginx/sbin/nginx --conf-path=/usr/local/nginx/conf/nginx.conf --pid-path=/usr/local/nginx/nginx.pid --with-http_ssl_module --with-pcre=/root/tools/pcre-8.40 --with-zlib=/root/tools/zlib-1.2.11 --with-openssl=/root/tools/openssl-1.1.0e --with-http_stub_status_module
make && make install
cd /usr/local/nginx/
cd conf
vim nginx.conf
加入:server {
listen 11099;
server_name localhost;
access_log /usr/local/zabbix/log/php.access.log;
index index.html index.php index.html;
root /usr/local/zabbix/php;
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;(这一行改为:fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;详情参见 http://www.jb51.net/article/47916.htm)
}
保存退出。
防火墙设置:
vi /etc/sysconfig/iptables
在端口22哪一行下面加入如下行:下面几行包括nginx 坚挺端口11099 ,mysql 3306,zabbix_server 10051 zabbix_agent 10050
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 11099 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 10050 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 10051 -j ACCEPT
然后保存退出,重启防火墙:/etc/init.d/iptables restart 或service iptables restart
创建zabbix log目录:mkdir /usr/local/zabbix/log
启动Nginx:
/usr/local/nginx/sbin/nginx
ps -aux |grep nginx
/usr/local/nginx/sbin/nginx
ps -aux |grep nginx
测试nginx成功没:浏览器输入:http://192.168.1.242 (http://nginx所在Ip)
到这里,nginx成功安装!!!!
###########################################################################################
第二:安装mysql
1、/root/tools/目录下上传mysql-5.7.17.tar.gz 和boost_1_59_0.tar.gz
解压:tar -zxvf mysql-5.7.17.tar.gz
cd mysql-5.7.17
安装其他依赖包: yum install gcc gcc-c++ -y ncurses-devel cmake libaio bison
cd tools
mkdir /usr/local/boost
把boost_1_59_0.tar.gz 解压到目录/usr/local/boost : tar zxf boost_1_59_0.tar.gz -C /usr/local/boo
cd tools
groupadd mysql
useradd mysql -s /sbin/nologin -M -g mysql
cd mysql-5.7.17
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DENABLED_LOCAL_INFILE=ON -DMYSQL_TCP_PORT=3316 -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/usr/local/boost
make && make install
期间要等待很长一段时间,慢慢等么么么哒!!!1%#################################100%
完成后:
chown -R mysql:mysql .
chown -R root:root .
chown -R mysql:mysql mysql
进到Mysql目录:cd /usr/local/mysql/bin/mysql
建立软连接: ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
执行以下命令生成随机密码:并记下他,待会登陆数据库是要用
./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/
在执行一下这句话,我也不明白其意思: ./bin/mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data/
cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf 然后按y覆盖
编辑my.cnf,设置port=3306
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld 然后按y覆盖
启动mysql:/etc/init.d/mysqld start 或 service mysqld start
启动后登陆Mysql: mysql -u root -p 回车,在输入刚才记录的随机密码进入数据库
然后执行:SET PASSWORD = PASSWORD('123456'),在执行:grant all privileges on *.* to 'root'@'%'identified by '123456' with grant option :%的意思是可以任何地方远程连接
flush privileges;
到此mysql安装完成。
#########################################################################################################
安装PHP:确保tools目录有:php-5.5.3.tar.gz bzip2-1.0.6.tar.gz curl-7.54.1.tar.gz
解压三个包:tar -zxvf (三个包)
第一步:yum install libjpeg libpng freetype libjpeg-devel libpng-devel freetype-devel -y
yum install libjpeg.x86_64 libpng.x86_64 freetype.x86_64 libjpeg-devel.x86_64 libpng-devel.x86_64 freetype-devel.x86_64 -y
yum -y install libxml2*
cd 到bzip解压目录并编译安装:cd bzip2-1.0.6 make && make install
cd 到curl解压目录并编译安装: cd curl-7.54.1 ./configure make && make install
cd 到php解压目录便宜并安装: cd php-5.5.38
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --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 --enable-bcmath
上一行的local下的php目录是之前建好的。
make && make install
等很久一会。安装完成。
在Php解压目录就是php-5.5.38下面有一个php.ini-development ,把他cp到:php.ini-development /etc/php.ini
vi php.ini,修改一下内容,但是一下修改的并非是死得,根据实际情况可以做相应的调整
你需要在你的php.ini文件中添加zend_extension=opcache.so 。还要将opcache.enable=0这行,改为opcache.enable=1
date.timezone = Asia/Shanghai
max_execution_time = 300
post_max_size = 32M
max_input_time = 300
memory_limit = 300M
mbstring.func_overload = 1
在安装目录有个:/usr/local/php/etc/php-fpm.conf.default, 把他在当前目录下重命名为php-fpm.conf,
即:cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf 否则无法启动php
在php解压目录有个: /root/tools/php-5.5.38/sapi/fpm/init.d.php-fpm,把他cp到:cp /root/tools/php-5.5.38/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
vim /usr/local/php5.5.38/etc/php-fpm.conf,找到 ;pid = run/php-fpm.pid,把前面的分号注释去掉。
上一行具体参见:http://www.cnblogs.com/GaZeon/p/5421906.html
chmod +x /etc/init.d/php-fpm
###这种启动方式不推荐启动php:service php-fpm start
PHP 启动:/usr/local/php/sbin/php-fpm -c /etc/php.ini -y /usr/local/php/etc/php-fpm.conf 注意这里面的php5.5.38是自己之前mkdir自定义的,所以跟你的又肯能不一样,通常是php
php停止:Killall php-fpm 详细停止启动PHP请参考:http://www.cnblogs.com/GaZeon/p/5421906.html
lsof -i :9000
###################################################################################################################################
安装zabbix:
之前已经建好zabbix目录:mkdir /usr/local/zabbix
解压zabbix包:tar -zxvf zabbix-3.2.6.tar.gz
cd zabbix-3.2.6
yum install -y net-snmp-devel
groupadd zabbix useradd -g zabbix -s /sbin/nologin zabbix
./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --enable-proxy \--with-mysql=/usr/local/mysql/bin/mysql_config --with-net-snmp --with-libcurl
make && make install
cd usr/local/zabbix
chown -R zabbix:zabbix .
cd 到zabbix解压目录,具体指:/root/tools/zabbix-3.2.6/database/mysql下,里面有三个sql文件schema.sql images.sql data.sql需要导入到mysql数据库名为zabbix里面:具体操作如下:
cd /root/tools/zabbix-3.2.6/database/mysql
ll
再打开另一个终端:(把zabbix数据库文件导入到mysql具体操作也可以参考网站:http://www.linuxidc.com/Linux/2016-06/132243.htm)
确保MYSQL运行正常,
mysql -u root -p
输入密码
登入,创建数据库和用户授权:
create database zabbix character set utf8
grant all privileges on zabbix.* to zabbix@'%' identified by'123456'
flush privileges
exit
用新建的zabbix用户登陆MYSQL:
mysql -u zabbix -p
输入密码:123456
use zabbix;
导入:schema.sql images.sql data.sql,这三个文件具体在解压过后的zabbix目录:/root/tools/zabbix-3.2.6/database/mysql 请根据自己的实际情况做稍微的调整
source /root/tools/zabbix-3.2.6/database/mysql/schema.sql;
source /root/tools/zabbix-3.2.6/database/mysql/images.sql;
source /root/tools/zabbix-3.2.6/database/mysql/data.sql;
show tables; 一共127个表
exit
很重要的一部:把zabbix解压目录中的frontends里的PHP目录复制到你zabbix安装目录下:
***********cd /root/zabbix-3.2.6/frontends/里面有个php目录,把他复制到usr/local/zabbix/下面:cp -r /root/tools/zabbix-3.2.6/frontends/php /usr/local/zabbix/}
chown -R zabbix:zabbix . 这句不能成功执行了
cd到zabbix安装目录:cd /usr/local/zabbix/etc/
ls -l, 会发现一下文件:
-rw-r--r--. 1 root root 10242 Jul 6 03:43 zabbix_agentd.conf
drwxr-xr-x. 2 root root 4096 Jul 6 02:53 zabbix_agentd.conf.d
-rw-r--r--. 1 root root 15760 Jul 6 02:53 zabbix_proxy.conf
drwxr-xr-x. 2 root root 4096 Jul 6 02:53 zabbix_proxy.conf.d
-rw-r--r--. 1 root root 14665 Jul 6 03:11 zabbix_server.conf
drwxr-xr-x. 2 root root 4096 Jul 6 02:53 zabbix_server.conf.d
vim里面的zabbix_server.conf,
需要配置:
DBName=zabbix
DBUser=zabbix
DBPassword=123456
DBPort=3306 ##这个端口可以不写,因为zabbix默认是mysql的3306
ln -s /usr/local/mysql/lib/libmysqlclient.so.20 /usr/lib64
启动zabbix_server: /usr/local/zabbix/sbin/zabbix_server
因为我们想通过zabbix监控自己本身,所以在这里进行配置:
在zabbix安装目录:cd /usr/local/zabbix/etc/下有:zabbix_agentd.conf
编辑它:
Server=192.168.1.242 ← ZABBIX服务器的IP地址
ServerActive=192.168.1.242
hostname=Zabbix server ← ZABBIX agentd的host名字,因为我们zabbix_server服务器同时要监控自己,所以这里要写成当前服务器主机的hostname
保存退出
启动zabbix_agentd:/usr/local/zabbix/sbin/zabbix_agentd
lsof -i :10050 lsof -i :10051
zabbix安装完成
#################################################
在浏览器输入:http://192.168.1.242:11099 11099是在nginx.conf里配置的serverlisten 端口。。
即可看到zabix配置页面。。。
########################################################################################################
zabbix登陆界面默认账号:Admin 密码:zabbix
#####################################################################################################
解决zabbix中文乱码问题:http://zutianbiao.blog.51cto.com/1361296/1364535/ 按照文档的操作步骤,zabbix的字体文件在/usr/local/zabbix/php/fonts目录,其中的php目录是本文档中安装zabbix步骤中前面加了*号的那一步。