• Ubuntu 16.04非编译安装Zabbix 3.2----服务端和客户端win的配置


    控服务器 - 什么是Zabbix

    Zabbix是企业级开源分布式监控服务器解决方案。 该软件监控网络的不同参数和服务器的完整性,还允许为任何事件配置基于电子邮件的警报。 Zabbix根据存储在数据库(例如MySQL)中的数据提供报告和数据可视化功能。 由软件收集的每个度量可以通过基于Web的界面访问。

    Zabbix根据GNU通用公共许可证版本2(GPLv2)的条款发布,完全免费。

    在本教程中,我们将在运行MySQL,Apache和PHP的Ubuntu 16.04服务器上安装Zabbix。

    安装Zabbix服务器

    首先,我们需要安装Zabbix所需的几个PHP模块:

    # apt-get install php7.0-bcmath php7.0-xml php7.0-mbstring

    Ubuntu存储库中提供的Zabbix软件包已过时。我们可以使用官方Zabbix存储库安装最新的稳定版本。

    通过执行以下命令来安装存储库包:

    $ wget http://repo.zabbix.com/zabbix/3.2/ubuntu/pool/main/z/zabbix-release/zabbix-release_3.2-1+xenial_all.deb
    # dpkg -i zabbix-release_3.2-1+xenial_all.deb

    然后更新apt包源码:

    # apt-get update

    现在可以安装具有MySQL支持的Zabbix Server和PHP前端。 执行命令:

    #apt-get install zabbix-server-mysql zabbix-frontend-php

    安装Zabbix agent:

    #apt-get install zabbix-agent

    Zabbix现已安装。 下一步是配置数据库以存储其数据。

    为Zabbix配置MySQL

    我们需要创建一个新的MySQL数据库,Zabbix将存储收集的数据。

    启动MySQL shell:

    $ mysql -uroot -p

    下一步

    mysql> CREATE DATABASE zabbix CHARACTER SET utf8 COLLATE utf8_bin;
    Query OK, 1 row affected (0.00 sec)

    mysql> GRANT ALL PRIVILEGES ON zabbix.* TO zabbix@localhost IDENTIFIED BY 'usr_strong_pwd';
    Query OK, 0 rows affected, 1 warning (0.00 sec)

    mysql> EXIT;
    Bye

    接下来,导入初始模式和数据。

    # zcat /usr/share/doc/zabbix-server-mysql/create.sql.gz | mysql -uzabbix -p zabbix

    输入在MySQL shell中创建的zabbix用户的密码。

    中间遇到的报错:

    解决办法:

     

    中间mysql创建账户时密码需要很复杂的标准,需要改一下参数,使你能设置简单的密码:

    ERROR 1819 (HY000): Your password does not satisfy the current policy requirements,出现这个问题怎么办?不用着急,下面给出答案。

    为了加强安全性,MySQL5.7为root用户随机生成了一个密码,在error log中,关于error log的位置,如果安装的是RPM包,则默认是/var/log/mysqld.log。

    一般可通过log_error设置

    1
    2
    3
    4
    5
    6
    7
    mysql> select @@log_error;
    +---------------------+
    | @@log_error     |
    +---------------------+
    | /var/log/mysqld.log |
    +---------------------+
    1 row in set (0.00 sec)

    可通过# grep "password" /var/log/mysqld.log 命令获取MySQL的临时密码

    复制代码代码如下:
    2016-01-19T05:16:36.218234Z 1 [Note] A temporary password is generated for root@localhost: waQ,qR%be2(5

    用该密码登录到服务端后,必须马上修改密码,不然会报如下错误:

    1
    2
    mysql> select user();
    ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

    如果只是修改为一个简单的密码,会报以下错误:

    1
    2
    mysql> ALTER USER USER() IDENTIFIED BY '12345678';
    ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

    这个其实与validate_password_policy的值有关。

    validate_password_policy有以下取值:

    默认是1,即MEDIUM,所以刚开始设置的密码必须符合长度,且必须含有数字,小写或大写字母,特殊字符。

    有时候,只是为了自己测试,不想密码设置得那么复杂,譬如说,我只想设置root的密码为123456。

    必须修改两个全局参数:

    首先,修改validate_password_policy参数的值

    1
    2
    mysql> set global validate_password_policy=0;
    Query OK, 0 rows affected (0.00 sec)

    这样,判断密码的标准就基于密码的长度了。这个由validate_password_length参数来决定。

    1
    2
    3
    4
    5
    6
    7
    mysql> select @@validate_password_length;
    +----------------------------+
    | @@validate_password_length |
    +----------------------------+
    |             8 |
    +----------------------------+
    1 row in set (0.00 sec)

    validate_password_length参数默认为8,它有最小值的限制,最小值为:

    1
    2
    3
    validate_password_number_count
    + validate_password_special_char_count
    + (2 * validate_password_mixed_case_count)

    其中,validate_password_number_count指定了密码中数据的长度,validate_password_special_char_count指定了密码中特殊字符的长度,validate_password_mixed_case_count指定了密码中大小字母的长度。

    这些参数,默认值均为1,所以validate_password_length最小值为4,如果你显性指定validate_password_length的值小于4,尽管不会报错,但validate_password_length的值将设为4。如下所示:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    mysql> select @@validate_password_length;
    +----------------------------+
    | @@validate_password_length |
    +----------------------------+
    |             8 |
    +----------------------------+
    1 row in set (0.00 sec)
     
    mysql> set global validate_password_length=1;
    Query OK, 0 rows affected (0.00 sec)
     
    mysql> select @@validate_password_length;
    +----------------------------+
    | @@validate_password_length |
    +----------------------------+
    |             4 |
    +----------------------------+
    1 row in set (0.00 sec)

    如果修改了validate_password_number_count,validate_password_special_char_count,validate_password_mixed_case_count中任何一个值,则validate_password_length将进行动态修改。

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    mysql> select @@validate_password_length;
    +----------------------------+
    | @@validate_password_length |
    +----------------------------+
    |             4 |
    +----------------------------+
    1 row in set (0.00 sec)
     
    mysql> select @@validate_password_mixed_case_count;
    +--------------------------------------+
    | @@validate_password_mixed_case_count |
    +--------------------------------------+
    |                  1 |
    +--------------------------------------+
    1 row in set (0.00 sec)
     
    mysql> set global validate_password_mixed_case_count=2;
    Query OK, 0 rows affected (0.00 sec)
     
    mysql> select @@validate_password_mixed_case_count;
    +--------------------------------------+
    | @@validate_password_mixed_case_count |
    +--------------------------------------+
    |                  2 |
    +--------------------------------------+
    1 row in set (0.00 sec)
     
    mysql> select @@validate_password_length;
    +----------------------------+
    | @@validate_password_length |
    +----------------------------+
    |             6 |
    +----------------------------+
    1 row in set (0.00 sec)

    当然,前提是validate_password插件必须已经安装,MySQL5.7是默认安装的。

    那么如何验证validate_password插件是否安装呢?可通过查看以下参数,如果没有安装,则输出将为空。

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    mysql> SHOW VARIABLES LIKE 'validate_password%';
    +--------------------------------------+-------+
    | Variable_name            | Value |
    +--------------------------------------+-------+
    | validate_password_dictionary_file  |    |
    | validate_password_length       | 6   |
    | validate_password_mixed_case_count  | 2   |
    | validate_password_number_count    | 1   |
    | validate_password_policy       | LOW  |
    | validate_password_special_char_count | 1   |
    +--------------------------------------+-------+
    6 rows in set (0.00 sec)

    接下来,我们需要编辑Zabbix Server配置文件

    就是 /etc/zabbix/zabbis_server.conf:

    # $EDITOR /etc/zabbix/zabbix_server.conf

    搜索该文件的DBPassword部分:

    ### Option: DBPassword                          
    #      Database password. Ignored for SQLite.  
    #      Comment this line if no password is used.
    #                                                
    # Mandatory: no                                  
    # Default:                                      
    # DBPassword=

    取消注释DBPassword =这行并通过添加在MySQL中创建的密码进行编辑:

    DBPassword=usr_strong_pwd

    接下来,查找DBHost =行并取消注释。

    保存并退出。

    配置PHP:

    我们需要配置PHP来使用Zabbix。 在安装过程中,安装程序在/etc/zabbix中创建了一个名为apache.conf的配置文件。 打开此文件:

    # $EDITOR /etc/zabbix/apache.conf

    在这里,现在只需要取消注释date.timezone设置并设置正确的时区:

    <IfModule mod_php7.c>
        php_value max_execution_time 300
        php_value memory_limit 128M
        php_value post_max_size 16M
        php_value upload_max_filesize 2M
        php_value max_input_time 300
        php_value always_populate_raw_post_data -1
        php_value date.timezone Asia/Shanghai
    </IfModule>

    保存并退出。


    此时,重新启动Apache并启动Zabbix Server服务,使其能够在启动时启动:

    # systemctl restart apache2 (这个是系统自带的apache,最好用自己安装的httpd)
    # systemctl start zabbix-server
    # systemctl enable zabbix-server

    使用systemctl检查Zabbix状态:

    # systemctl status zabbix-server

    该命令应该输出:

    â zabbix-server.service - Zabbix Server
    Loaded: loaded (/lib/systemd/system/zabbix-server.service; enabled; vendor pr
    Active: active (running) ...

    此时,Zabbix的服务器端部件已正确安装和配置。

    配置Zabbix Web Fronted:

    如引言中所述,Zabbix具有基于Web的前端,我们将用于可视化收集的数据。 但是,必须配置此接口。

    使用Web浏览器,转到: http://localhost/zabbix.。

    点击 Next step

    确保所有的值都确定,然后再次单击Next step。

    插入MySQL zabbix用户密码,然后点击Next step.

     单击Next step,安装程序将显示具有所有配置参数的以下页面。 再次检查以确保一切正确..

    点击 Next step 继续到最后的屏幕。

    单击finish以完成前端安装。 默认用户名为admin,以zabbix为密码。

    Zabbix服务器入门

    使用上述凭证登录后,我们将看到Zabbix仪表板:

    进入Administration - >Users,了解启用的帐户的概述

    Create a new account by clicking on Create user

    通过单击Create a new account创建一个新帐户

    单击组中的Add in the Groups部分,然后选择一个组

    保存新的用户凭据,它将显示在管理 - >用户面板中。

    请注意,在Zabbix中,主机的访问权限分配给用户组,而不是单个用户。

    总论
    最后是Zabbix Server安装的教程。 现在,监控基础设施已准备好完成其作业并收集有关需要在Zabbix配置中添加的服务器的数据。

    客户端操作 :
    1、 下载zabbix_agentd监控客户端软件安装包(windows操作系统客户端) 
    官方下载地址: http://www.zabbix.com/download 

    2、关闭监控主机windows server 2008防火墙或防火墙入放行zabbix_agentd客户端口号 10050 (TPC/UDP)。

    3、下载后解压zabbix_agents_3.2.0.win.zip 压缩包,里面有两个文件夹,一个是bin文件夹,另一个是conf文件夹。 
    Bin文件夹里面有两个文件夹,一个是win32文件夹里存放zabbix_agentd安装程序应用于windows 32位操作系统, 
    一个是win64文件夹里存放zabbix_agentd安装程序应用于windows 64位操作系统。 
    Conf文件夹里存放是配置文件zabbix_agentd.win.conf

    4、在windows server 2008 操作系统 C盘目录下创建一个zabbix文件夹,把刚下载的zabbix_agentd压缩包里的win64位文件夹的zabbix.agentd.exe 安装程序和conf文件夹zabbix_agentd.win.conf复制到windows server 2008操作系统C盘创建的zabbix文件夹里。(文件夹创建路径可以自定义,但后面zabbix_agentd客户端运行安装命令需要根据创建的路径运行) 
    这里写图片描述

    5、右键以文本格式编辑zabbix_agentd.win.conf 配置文件。 
    这里写图片描述

    修改下面几项 :
    EnableRemoteCommands=1 #允许在本地执行远程命令 
    LogRemoteCommands=1 #执行远程命令是否保存操作日志 
    Server = 172.16.20.90 #填写zabbix服务器IP地址 
    Hostname= Zabbix server #zabbix_agent监控服务器名称 (监控主机名称) 
    Log=c:zabbix_agentd.log 
    ServerActive=172.16.20.90 #填写zabbix服务器IP地址

    6、桌面 → 开始 → 运行 → 输入cmd 打开DOS命令窗口 →输入以下两条命令进行zabbix客户端安装。(必须要以管理员身份运行打开DOS命令窗口)

    C:zabbixzabbix_agentd.exe –i -c C:zabbixzabbix_agentd.win.conf

    安装zabbix客户端 

    C:zabbixzabbix_agentd.exe -s -c C:zabbixzabbix_agentd.win.conf

    启动zabbix服务

    这里写图片描述

    服务端操作 :
    1、 选择配置 → 主机 → 创建主机。 
    这里写图片描述

    2、 输入客户端计算机名 → 可见名称自定义 → 群组自行选择(也可以自己在输入框中建立) → 输入客户端计算IP地址 → 勾选已启用 → 选择添加。 
    这里写图片描述
    这里写图片描述

    3、 添加 zabbix_agentd 客户端监控模版。 
    这里写图片描述
    这里写图片描述

    稍等一下,如下图所示则代表搭建成功(ZBX为绿色:zabbix_agentd客户端与zabbix服务器连接成功) 
    这里写图片描述

    4、 把zabbix_agent客户端添加到拓扑图,以图形方式显示zabbix_agentd客户端主机。 
    这里写图片描述
    这里写图片描述
    这里写图片描述 
    这里写图片描述
    这里写图片描述
    这里写图片描述 
    这里写图片描述

    至此,windows 主机监控完毕,windows所有主机和服务器均可使用此方法添加。

     **********  服务端操作  **********

    1、选择配置 ---- 主机 ---- 创建主机。

    2、输入客户端计算机名 --- 可见名称自定义 ---- 群组自行选择 ---- 输入客户端计算IP地址 ---- 勾选已启用 ---- 选择添加。

    3、添加 zabbix_agentd 客户端监控模版。

    4、把zabbix_agent客户端添加到拓扑图,以图形方式显示zabbix_agentd客户端主机。

    特殊操作

    标注:Zabbix服务器发送远程关机命令让zabbix_agent客户端主机关机

    1、管理 ---- 脚本 ---- 创建脚本。

    2、  填写脚本相应信息。

    3、监测中 ----  拓扑图  -----  鼠标左键点击相应服务器 ----  选择 shutdown关机命令。

    4、zabbix_agent客户端 windows server 2008 系统提示关闭计算机提示。

     

  • 相关阅读:
    Asp.net 连接池使用
    关于ASP.NET页面打印技术的总结
    Asp.net页面传值总结
    C#委托
    ASP.NET状态存储管理九大兵器
    JavaScript取ASP.NET中服务器端数据的方法
    DSOFramer.ocx 控件使用
    C#2.0 泛型学习(入门)
    黑马程序员——Java基础String与StringBuilder
    黑马程序员——Java基础语法关键字、常量、变量、运算符
  • 原文地址:https://www.cnblogs.com/sinsenliu/p/9396350.html
Copyright © 2020-2023  润新知