zoukankan      html  css  js  c++  java
  • centOS 6.5下Zabbix RPM安装

    ## 1、安装环境概述
    常用的Zabbix安装有两种:rpm安装和源码安装,本文介绍以rpm安装,源码安装请参照源码安装文档。
    Zabbix常用地址如下:
    - Zabbix官网:http://www.zabbix.com
    - 官方论坛:http://www.zabbix.com/forum
    - 代码托管地址:http://sourceforge.net/projects/zabbix/files
    - Zabbix社区地址:https://zabbix.org

    ### 1.1、硬件环境
    ### 1.2、软件环境
    ## 2、Zabbix-Server服务器端安装
    准备好CentOS 6.5_X64系统,配置IP地址,确保与互联网连接正常。
    首先安装Zabbix的官方配置源和epel配置源:
    # rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/6/x86_64/zabbix-release-3.0-1.el6.noarch.rpm
    # yum install http://mirror.iprimus.com.au/epel/6/x86_64/epel-release-6-8.noarch.rpm
    ### 2.1、安装步骤说明
    Zabbix需要有LAMP(Linux+Apache+Mysql+PHP)或LNMP(Linux+Nginx+Mysql+PHP)运行环境,我们这里选择的是LAMP环境,所以我们的安装步骤大致如下:
    1. 安装LAMP环境
    2. 安装配置Zabbix服务端以及客户端
    3. 配置防火墙以及Selinux

    建议所有的安装不要在root下,应该新建一个用户,然后在此用户下安装Zabbix,下面是创建用户以及用户组的命令:
    ```
    groupadd zabbix
    useradd -g zabbix zabbix
    ```

    ### 2.2、安装MYSQL数据库服务
    #### 2.2.1、卸载MYSQL
    因为mysql在linux一般都预装了,但是版本比较低,最好重新安装一个高版本的mysql。

    yum remove mysql

    yum -y remove mysql-libs-5.1.73-7.el6.x86_64

    rpm -qa | grep mysql
    #### 2.2.2、安装MYSQL服务
    下载地址:http://ftp.ntu.edu.tw/pub/MySQL/Downloads/MySQL-5.7/mysql-5.7.14-1.el6.x86_64.rpm-bundle.tar
    用tar命令解压:
    # tar -xvf mysql-5.7.14-1.el6.x86_64.rpm-bundle.tar
    然后顺序执行安装命令:
    # rpm -ivh mysql-community-common-5.7.14-1.el6.x86_64.rpm
    # rpm -ivh mysql-community-libs-5.7.14-1.el6.x86_64.rpm
    # rpm -ivh mysql-community-libs-compat-5.7.14-1.el6.x86_64.rpm
    # rpm -ivh mysql-community-devel-5.7.14-1.el6.x86_64.rpm
    # rpm -ivh mysql-community-client-5.7.14-1.el6.x86_64.rpm
    # rpm -ivh mysql-community-server-5.7.14-1.el6.x86_64.rpm
    执行最后一个的时候,如果出现以下错误信息:
    ```
    error: Failed dependencies:
    libaio.so.1()(64bit) is needed by mysql-community-server-5.7.14-1.el6.x86_64
    libaio.so.1(LIBAIO_0.1)(64bit) is needed by mysql-community-server-5.7.14-1.el6.x86_64
    libaio.so.1(LIBAIO_0.4)(64bit) is needed by mysql-community-server-5.7.14-1.el6.x86_64
    libnuma.so.1()(64bit) is needed by mysql-community-server-5.7.14-1.el6.x86_64
    ```
    说明缺少**libaio**和**libnuma**两个依赖包,执行以下命令,安装依赖包即可:
    # yum -y install libaio numactl
    如果错误中有perl开头的,就安装一下perl的依赖包,命令如下:
    # yum -y install perl
    安装完依赖包,再次执行`rpm -ivh mysql-community-server-5.7.14-1.el6.x86_64.rpm`即可成功安装。
    启动mysql数据库并配置其开机自启动
    # service mysqld start 或 systemctl start mysqld
    # chkconfig mysqld on 或 systemctl enable mysqld

    #### 2.2.3、修改MYSQL初始密码
    安装成功以后MYSQL默认初始密码是在**/var/log/mysqld.log**文件中随机生成的,可以通过命令`grep 'temporary password' /var/log/mysqld.log`查看。复制密码,输入命令`mysql -p`然后粘贴刚才复制的密码,即可登录。
    登录以后输入命令一下命令都可修改密码(密码是有策略的,必须包括大小写字母、数字以及特殊符号,并且长度不能少于8位):
    # set password for 'root'@'localhost' = password('!root2Admin');
    # SET' PASSWORD = PASSWORD('!root2Admin');
    # ALTER USER 'root'@'localhost' IDENTIFIED BY '!root2Admin';
    可以通过命令`show variables like '%password%';`来查看密码策略相关信息。
    如果不需要密码策略,在**/etc/my.cnf**文件添加如下配置禁用即可:
    # validate_password = off
    使用命令`systemctl restart mysqld` 或者`service mysqld restart`重启服务即可生效。

    #### 2.2.4、配置MYSQL
    #####2.2.4.1、添加远程登录用户
    MYSQL默认只允许root帐户在本地登录,如果要在其它机器上连接mysql,必须修改root允许远程连接,或者添加一个允许远程连接的帐户,为了安全起见,我添加一个新的帐户:
    # GRANT ALL PRIVILEGES ON *.* TO 'hokai'@'%' IDENTIFIED BY 'hokai' WITH GRANT OPTION;
    #####2.2.4.2、配置默认编码为utf8
    修改/etc/my.cnf配置文件,在[mysqld]下添加编码配置,如下所示:
    ```
    [mysqld]
    character_set_server=utf8
    init_connect='SET NAMES utf8'
    ```
    重新启动mysql服务,通过命令`show variables like '%character%';`查看数据库编码信息。
    默认配置文件路径:
    - 配置文件:/etc/my.cnf
    - 日志文件:/var/log//var/log/mysqld.log
    - 服务启动脚本:/usr/lib/systemd/system/mysqld.service
    - socket文件:/var/run/mysqld/mysqld.pid

    #####2.2.4.3、创建Zabbix初始化数据库
    ```
    shell> mysql -uhokai -phokai
    mysql> create database zabbix character set utf8 collate utf8_bin;
    mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
    mysql> flush privileges;
    mysql> quit;
    ```
    #####2.2.4.4、导入Zabbix-Server数据库
    - 在目录**/usr/share/doc/zabbix-server-mysql-3.0.7**下使用命令`gunzip -c create.sql.gz >create.sql`解压**create.sql.gz**;
    - 用**zabbix**用户进入MYSQL的**zabbix**数据库,执行命令`source /usr/share/doc/zabbix-server-mysql-3.0.7/create.sql`即可导入zabbix的数据库结构以及数据。

    ### 2.3、安装配置PHP
    #### 2.3.1、安装PHP
    - 检查是否安装了PHP包
    # yum list installed | grep php
    - 如果有且版本低于5,就移除当前PHP包。
    # yum remove php5* 或 yum remove php55w*
    - 没有就安装PHP,需要添加第三方的YUM源,此处用到webtatic
    # rpm -Uvh http://mirror.webtatic.com/yum/el6/latest.rpm
    - 查看YUM源上能用PHP安装包
    # yum list php* 或 yum list php55w*
    - 安装PHP5.5及需要的扩展
    # yum install php55w php55w-devel php55w-common php55w-mysql php55w-pdo php55w-opacache php55w-xml php55w-bcmath php55w-gd php55w-mbstring php55w-gettext
    - 再次查看PHP版本,以确认安装是否成功
    # php -v
    - 查看PHP模块命令
    # php -m

    #### 2.3.2、配置PHP
    - php.ini文件的配置
    ```
    shell# vim /etc/php.ini
    date.timezone = Asia/Shanghai
    max_execution_time = 300
    post_max_size = 16M
    max_input_time = 300
    memory_limit = 128M
    mbstring.func_overload = 0
    ```

    ### 2.4、安装配置Zabbix-Server
    #### 2.4.1 安装Zabbix-Server
    由于服务器也需要监控,所有服务器上也一并安装Zabbix-Agent:
    #yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent
    几个重要的路径如下:
    - /usr/share/zabbix:zabbix的前端php代码
    - /usr/lib/zabbix:zabbix的脚本(包括报警脚本和扩展脚本)
    - /etc/zabbix:zabbix的配置文件

    #### 2.4.2、配置zabbix-server
    默认DBName和DBUser参数都为zabbix,不需要改,只需要改DBHost和DBPassword即可,其他为性能优化项,可选。
    ```
    # vim /etc/zabbix/zabbix_server.conf
    LogFile=/var/log/zabbix/zabbix_server.log
    LogFileSize=0
    PidFile=/var/run/zabbix/zabbix_server.pid
    DBHost=localhost
    DBName=zabbix
    DBUser=zabbix
    DBPassword=zabbix
    StartPollers=5
    ```
    注意:LogFileSize默认为1,0为禁止自动循环
    启动Zabbix-Server服务并配置其开机自启动
    # systemctl start zabbix-server 或 service zabbix-server start
    # systemctl enable zabbix-server 或 chkconfig zabbix-server on

    #### 2.4.3、配置zabbix-agent
    必须指定zabbix server的IP地址,其他host的连接都否认。
    ```
    # vim /etc/zabbix/zabbix_agentd.conf
    PidFile=/var/run/zabbix/zabbix_agentd.pid
    LogFile=/var/log/zabbix/zabbix_agentd.log
    LogFileSize=0
    Server=127.0.0.1
    ServerActive=127.0.0.1
    Hostname=127.0.0.1
    ```
    启动Zabbix-Agent服务并配置其开机自启动
    # systemctl start zabbix-agnet 或 service zabbix-agent start
    # systemctl enable zabbix-agent 或 chkconfig zabbix-agent on

    ### 2.5、防火墙、Selinux和权限的设置
    #### 2.5.1 防火墙设置
    修改防火墙配置文件,在最后位置添加以下规则过滤:
    ```
    shell# vim /etc/sysconfig/iptables
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 10050:10051 -j ACCEPT
    -A INPUT -m state --state NEW -m udp -p udp --dport 10050:10051 -j ACCEPT
    -A OUTPUT -m state --state NEW -m tcp -p tcp --dport 10051 -j ACCEPT
    ```
    上述端口中,80指的是Apache的web监听端口,10050是Agent端口,Agent采用被动方式,Server主动连接Agent的10050端口;10051是Server的端口,Agent采用主动或Trapper的方式连接Server的10051端口。~10050是Agent端口,10051是Server端口~
    #### 2.5.2 Selinux设置
    因为大部分人对Selinux不是特别熟悉,可以选择关闭Selinux。在实际的生产环境中,大部分是选择关闭Selinux的。
    这里有两个辅助命令:
    # setenforce 0 #设置为警告模式,只给出提示,不会阻止操作,不用重启服务器既可生效
    # getenforce #查看Selinux的状态[Enforcing|Permissive|Disabled]
    如果想要直接关闭Selinux,可以直接编辑Selinux的配置文件:
    ```
    shell# vim /etc/selinux/config
    SELINUX=disabled
    ```
    #### 2.5.3、apache配置以及权限配置
    由于apache是系统默认已经装过的,所有我们这里没有安装,如果系统本身没有安装或者想升级,可以百度自行安装。
    apache的默认访问的程序目录为`/var/www/html`下。
    将zabbix的前端程序拷贝到apache的程序目录下,然后修改两个地方的权限,代码如下:
    # cp -r /usr/share/zabbix /var/www/html/zabbix
    # chown -R root.root /var/www/html/zabbix
    # chown -R root.root /etc/zabbix/web
    如果想修改WEB监听端口,可以修改httpd配置文件:
    ```
    shell# vim /etc/httpd/conf/httpd.conf
    Port 9000
    ServerName 192.168.1.47:9000
    ```
    启动Apache服务并配置其开机自启动
    # systemctl start httpd 或 service httpd start
    # systemctl enable httpd 或 chkconfig httpd on


    ### 2.6、配置WEB界面
    打开浏览器,输入`http://zabbix-frontend-hostname/zabbix` (e.g. `http://localhost/zabbix`)出现前台安装界面配置。
    - 安装步骤总共6步,分别是:
    1.欢迎界面、2.php需求检查、3.MySQL配置、4.zabbix服务端详细信息、5.zabbix安装前信息列表、6.安装完成
    如果有哪些配置不对或不符合最低要求,会在这6步中给出错误提示,去配置文件中修改相应配置文件然后重启httpd服务即可。
    - 最后一步可能会提示错误**Cannot create the configuration file.**这时候下面会给出解决方案:
    *Alternatively, you can install it manually:
    1.Download the configuration file
    2.Save it as "/etc/zabbix/web/zabbix.conf.php"*
    意思是你可以自己手动安装此文件,首先下载配置文件,然后将它放到`/etc/zabbix/web/`下,然后修改文件权限,使用命令`chmod 755 /etc/zabbix/web/zabbix.conf.php`。最后回到WEB界面上点击Finish即可。
    - Finish完成以后会出现登陆界面,默认用户名和密码为:**Admin:zabbix**
    - Zabbix是支持多语言的,可以为每个用户配置不同的语言环境。单机菜单栏Administration->Users->User name->Language修改用户的语言。虽然Zabbix支持中文,但是不建议使用中文界面,因为中文界面的翻译不准确,会误导我们,建议使用英文界面。

  • 相关阅读:
    [LeetCode] 23. Merge k Sorted Lists ☆☆
    [LeetCode] 22. Generate Parentheses ☆☆
    [LeetCode] 21. Merge Two Sorted Lists ☆
    [LeetCode] 20. Valid Parentheses ☆
    [LeetCode] 19. Remove Nth Node From End of List ☆
    [LeetCode] 18. 4Sum ☆☆
    [LeetCode] 17. Letter Combinations of a Phone Number ☆☆
    [LeetCode] 16. 3Sum Closest ☆☆☆
    [LeetCode] 15. 3Sum ☆☆
    [LeetCode] 14. Longest Common Prefix ☆
  • 原文地址:https://www.cnblogs.com/davidchen211/p/10081330.html
Copyright © 2011-2022 走看看