一、安装mysql
1 1. 安装必备组件 2 yum install –y autoconf automake imake libxml2-devel expat-devel cmake gcc gcc-c++ libaio libaio-devel bzr bison libtool ncurses5-devel 3 4 2.下载mysql源码包 5 cd /usr/local 6 wget -c http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.14-linux-glibc2.5-x86_64.tar.gz/from/http://cdn.mysql.com/ -O mysql-5.6.14-linux-glibc2.5-x86_64.tar.gz 7 8 tar zxvf mysql-5.6.14-linux-glibc2.5-x86_64.tar.gz 9 mv mysql-5.6.14-linux-glibc2.5-x86_64 mysql 10 11 mkdir -p /home/data/mysql_data 12 mkdir -p /home/data/mysql_log 13 mkdir -p /home/data/log-bin 14 groupadd mysql 15 useradd mysql -g mysql -M -s /sbin/nologin 16 chown -R mysql.mysql /home/data/mysql* /home/data/log-bin 17 chown -R mysql.mysql /usr/local/mysql 18 19 vim /etc/my.cnf #修改mysql配置文件,改成如下内容 20 -------------------------------------------------------------------------- 21 [mysqld] 22 explicit_defaults_for_timestamp=true 23 # GENERAL # 24 user = mysql 25 default-storage-engine = InnoDB 26 socket = /home/data/mysql_data/mysql.sock 27 pid-file = /home/data/mysql_data/mysql.pid 28 port = 3306 29 30 # MyISAM # 31 key_buffer_size = 1344M 32 myisam_recover = FORCE,BACKUP 33 34 # SAFETY # 35 max_allowed_packet = 16M 36 max_connect_errors = 1000000 37 skip_name_resolve 38 39 # DATA STORAGE # 40 datadir = /home/data/mysql_data/ 41 long_query_time = 1 42 43 # BINARY LOGGING # 44 log-bin = /home/data/log-bin/mysql-bin 45 expire-logs-days = 14 46 sync-binlog = 1 47 server-id = 1 48 max_binlog_size = 500M 49 50 # REPLICATION # 51 relay-log = /home/data/log-bin/relay-bin 52 slave-net-timeout = 60 53 54 # CACHES AND LIMITS # 55 tmp_table_size = 32M 56 max_heap_table_size = 32M 57 max_connections = 500 58 thread_cache_size = 50 59 open_files_limit = 65535 60 table_definition_cache = 4096 61 table_open_cache = 4096 62 63 # INNODB # 64 innodb_data_file_path = ibdata1:128M;ibdata2:10M:autoextend 65 innodb_flush_method = O_DIRECT 66 innodb_log_files_in_group = 2 67 innodb_lock_wait_timeout = 50 68 innodb_log_file_size = 256M 69 innodb_flush_log_at_trx_commit = 1 70 innodb_file_per_table = 1 71 innodb_thread_concurrency = 8 72 innodb_buffer_pool_size = 8G 73 74 # LOGGING # 75 log-error = /home/data/mysql_log/mysql-error.log 76 log-queries-not-using-indexes = 1 77 slow-query-log = 1 78 long_query_time = 1 79 slow-query-log-file = /home/data/mysql_log/mysql-slow.log 80 -------------------------------------------------------------------------- 81 82 cp -af /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld 83 84 vim /etc/init.d/mysqld #修改如下内容 85 -------------------------------------------------------------------------- 86 basedir=/usr/local/mysql 87 datadir=/home/data/mysql_data 88 -------------------------------------------------------------------------- 89 chmod a+x /etc/init.d/mysqld 90 chkconfig --add mysqld 91 chkconfig mysqld on 92 chkconfig --list |grep mysqld 93 94 rm -f /usr/local/mysql/my.cnf 95 cp /etc/my.cnf /usr/local/mysql/ 96 chown -R mysql.mysql /usr/local/mysql 97 cd /usr/local/mysql 98 ./scripts/mysql_install_db --user=mysql --defaults-file=/etc/my.cnf 99 ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql100 ln -s /home/data/mysql_data/mysql.sock /tmp/mysql.sock101 102 service mysqld start103 mysql -uroot -p104 --------------------------------------------------------------------------105 Mysql> delete from mysql.user where user='';106 Mysql> update mysql.user set password=PASSWORD(‘xxxxxxxx’) where user='root';107 Mysql>flush privileges;108 --------------------------------------------------------------------------
二、安装php
1 cd /usr/local 2 wget http://cn2.php.net/get/php-5.5.38.tar.gz/from/this/mirror 3 mv mirror php-5.5.38.tar.gz 4 5 yum install gcc make gd-devel libjpeg-devel libpng-devel libxml2-devel bzip2-devel curl curl-devel libcurl-devel -y 6 tar zxvf php-5.5.38.tar.gz 7 cd php-5.5.38 8 9 ./configure 10 --enable-bcmath11 --prefix=/usr/local/php-5.5.38 --with-config-file-path=/usr/local/php-5.5.38/etc 12 --with-bz2 --with-curl --enable-ftp --enable-sockets 13 --disable-ipv6 14 --with-gd 15 --with-jpeg-dir=/usr/local 16 --with-png-dir=/usr/local 17 --with-freetype-dir=/usr/local 18 --enable-gd-native-ttf --with-iconv-dir=/usr/local 19 --enable-mbstring --enable-calendar 20 --with-gettext --with-libxml-dir=/usr/local 21 --with-zlib --with-pdo-mysql=mysqlnd 22 --with-mysqli=mysqlnd --with-mysql=mysqlnd --enable-dom 23 --enable-xml --enable-fpm --with-libdir=lib6424 25 make && make install26 27 cp /usr/local/php-5.5.38/php.ini-production /usr/local/php-5.5.38/etc/php.ini28 cp /usr/local/php-5.5.38/etc/php-fpm.conf.default /usr/local/php-5.5.38/etc/php-fpm.conf29 ln -s /usr/local/php-5.5.38/sbin/php-fpm /usr/bin/php-fpm30 31 配置PHP参数值,如配置不合理,可能会导致zabbix无法正常启动32 vim /usr/local/php-5.5.38/etc/php.ini #下面几个参数修改成如下内容,或按需要配置33 ------------------------------------------------------------------------34 max_execution_time = 30035 memory_limit = 128M36 post_max_size = 16M37 upload_max_filesize = 2M38 max_input_time = 30039 date.timezone = PRC40 ------------------------------------------------------------------------41 42 #启动php-fpm43 php-fpm44 netstat -ntpl |grep 9000
三、安装nginx
1 vim /etc/yum.repos.d/nginx.repo 2 ----------------------------------------------------------------- 3 [nginx] 4 name=nginx repo 5 baseurl=http://nginx.org/packages/centos/6/$basearch/ 6 gpgcheck=0 7 enabled=1 8 ----------------------------------------------------------------- 9 yum install nginx -y10 11 mkdir -p /usr/local/website/testphp12 vim /usr/local/website/testphp/info.php13 -----------------------------------------------------------------14 17 -----------------------------------------------------------------18 19 vim /etc/nginx/conf.d/test.conf20 -----------------------------------------------------------------21 server {22 listen 80;23 server_name www.testttls.com;24 access_log /var/log/nginx/testphp.com.access.log main;25 26 index index.php index.html index.html;27 root /usr/local/website/testphp;28 29 30 location / {31 try_files $uri $uri/ /index.php?$args;32 }33 34 location ~ .*\.(php)?$ {35 expires -1s;36 try_files $uri =404;37 fastcgi_split_path_info ^(.+\.php)(/.+)$;38 include fastcgi_params;39 fastcgi_param PATH_INFO $fastcgi_path_info;40 fastcgi_index index.php;41 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;42 fastcgi_pass 127.0.0.1:9000;43 44 }45 }46 -----------------------------------------------------------------47 service nginx start48 #启动服务后在本地windows 电脑 hosts 文件中 绑定服务器IP 和www.testttls.com域名,然后在浏览器中打开www.testttls.com/info.php 出现如下页面则php安装成功
四、安装zabbix-server
1 cd /usr/local 2 在该网站下载需要的zabbix 版本http://www.zabbix.com/download 3 上传到/usr/local 目录下 4 tar zxvf zabbix-3.2.4.tar.gz 5 cd zabbix-3.2.4 6 ./configure --prefix=/usr/local/zabbix-3.2.4/ --enable-server --enable-agent --with-mysql=/usr/local/mysql/bin/mysql_config --with-net-snmp --with-libcurl --with-libxml2 7 8 make && make install 9 10 添加zabbix 运行用户组11 groupadd zabbix12 useradd zabbix -g zabbix13 14 注:zabbix-server 共需要导入3个源码包中的sql文件,而搭建proxy 则只需要导入一个sql15 16 #创建zabbix 数据库17 mysql -uroot -pxxxx18 19 mysql> create database zabbix default charset utf8;20 Query OK, 1 row affected (0.00 sec)21 22 mysql> quit23 # mysql -uroot -pxxxx zabbix < /usr/local/zabbix-3.2.4/database/mysql/schema.sql24 # mysql -uroot -pxxx zabbix < /usr/local/zabbix-3.2.4/database/mysql/images.sql25 # mysql -uroot -pxxx zabbix < /usr/local/zabbix-3.2.4/database/mysql/data.sql26 27 #配置zabbix 服务器28 mkdir -p /etc/zabbix29 cp /usr/local/zabbix-3.2.4/conf/zabbix_server.conf /etc/zabbix30 vim /etc/zabbix/zabbix_server.conf31 ------------------------------------------------------------------------32 DBName=zabbix33 DBUser=root34 DBPassword=XXXXX35 DBPort=330636 ------------------------------------------------------------------------37 echo "/usr/local/mysql/lib" >> /etc/ld.so.conf38 ldconfig39 /usr/local/zabbix-3.2.4/sbin/zabbix_server -c /etc/zabbix/zabbix_server.conf40 /usr/local/zabbix-3.2.4/sbin/zabbix_agentd41 42 #配置zabbix web43 mkdir -p /home/data/zabbix/zabbix44 cp -rp /usr/local/zabbix-3.2.4/frontends/php/* /home/data/zabbix/zabbix45 46 vim /etc/nginx/conf.d/zabbix.conf47 ------------------------------------------------------------------------48 server {49 listen 80;50 server_name zabbix.prd.xjh.com;51 access_log /var/log/nginx/zabbix.prd.xjh.com.access.log main;52 53 index index.php index.html index.html;54 root /home/data/zabbix;55 56 57 location / {58 try_files $uri $uri/ /index.php?$args;59 }60 61 location ~ .*\.(php)?$ {62 expires -1s;63 try_files $uri =404;64 fastcgi_split_path_info ^(.+\.php)(/.+)$;65 include fastcgi_params;66 fastcgi_param PATH_INFO $fastcgi_path_info;67 fastcgi_index index.php;68 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;69 fastcgi_pass 127.0.0.1:9000;70 71 }72 }73 ------------------------------------------------------------------------74 cp /home/data/zabbix/zabbix/conf/zabbix.conf.php.example /home/data/zabbix/zabbix/conf/zabbix.conf.php75 vim /home/data/zabbix/zabbix/conf/zabbix.conf.php76 ------------------------------------------------------------------------77