zoukankan      html  css  js  c++  java
  • zabbix4.4 (server,proxy,agent)安装部署实战

    一. 部署架构图

    二. 安装环境及版本信息

    操作系统:centos7

    zabbix版本: 4.4

    mysql: 5.7.28

    三.zabbix server安装

    rpm -Uvh https://repo.zabbix.com/zabbix/4.4/rhel/7/x86_64/zabbix-release-4.4-1.el7.noarch.rpm
    yum-config-manager --enable rhel-7-server-optional-rpms
    yum install epel-release  numactl
    yum install zabbix-server-mysql zabbix-web-mysql zabbix-nginx-conf  -y 

    四. mysql安装

    wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz
    tar -xzvf mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz -C /app/
    cd /app/
    mv mysql-5.7.28-linux-glibc2.12-x86_64 mysql
    mkdir /app/mysql/{data,logs}
    groupadd mysql
    useradd -g  mysql mysql
    chown mysql:mysql /app/mysql -R
    
    配置mysql 配置文件:
    
    ###########################
    [client]
    port = 3306
    socket = /tmp/mysql.sock
    default-character-set = utf8
    
    [mysql]
    prompt="MySQL [d]> "
    no-auto-rehash
    
    [mysqld]
    port = 3306
    socket = /tmp/mysql.sock
    
    basedir = /app/mysql
    datadir = /app/mysql/data
    pid-file = /app/mysql/mysql.pid
    user = mysql
    bind-address = 0.0.0.0
    server-id = 1
    
    init-connect = 'SET NAMES utf8'
    character-set-server = utf8
    log_timestamps=SYSTEM
    
    skip-name-resolve
    back_log = 300
    
    max_connections = 613
    max_connect_errors = 6000
    open_files_limit = 65535
    table_open_cache = 256
    max_allowed_packet = 500M
    binlog_cache_size = 1M
    max_heap_table_size = 8M
    tmp_table_size = 32M
    
    read_buffer_size = 2M
    read_rnd_buffer_size = 8M
    sort_buffer_size = 8M
    join_buffer_size = 8M
    key_buffer_size = 16M
    
    thread_cache_size = 16
    
    query_cache_type = 1
    query_cache_size = 16M
    query_cache_limit = 2M
    
    ft_min_word_len = 4
    
    log_bin = mysql-bin
    binlog_format = mixed
    expire_logs_days = 7
    
    log_error = /app/mysql/logs/mysql-error.log
    slow_query_log = 1
    long_query_time = 1
    slow_query_log_file = /app/mysql/logs/mysql-slow.log
    
    performance_schema = 0
    explicit_defaults_for_timestamp
    
    
    
    skip-external-locking
    
    default_storage_engine = InnoDB
    innodb_file_per_table = 1
    innodb_open_files = 500
    innodb_buffer_pool_size = 128M
    innodb_write_io_threads = 4
    innodb_read_io_threads = 4
    innodb_thread_concurrency = 0
    innodb_purge_threads = 1
    innodb_flush_log_at_trx_commit = 2
    innodb_log_buffer_size = 2M
    innodb_log_file_size = 32M
    innodb_log_files_in_group = 3
    innodb_max_dirty_pages_pct = 90
    innodb_lock_wait_timeout = 120
    
    bulk_insert_buffer_size = 8M
    myisam_sort_buffer_size = 16M
    myisam_max_sort_file_size = 10G
    myisam_repair_threads = 1
    
    interactive_timeout = 28800
    wait_timeout = 28800
    
    
    
    [mysqldump]
    quick
    max_allowed_packet = 500M
    
    [myisamchk]
    key_buffer_size = 16M
    sort_buffer_size = 8M
    read_buffer = 4M
    write_buffer = 4M
    
    ####################################
    
    数据库初始化:
    cd /app/mysql/
    bin/mysqld --initialize --user=mysql --basedir=/app/mysql --datadir=/app/mysql/data --innodb_undo_tablespaces=3 --explicit_defaults_for_timestamp
    
    登录的临时密码在error文件中(/app/mysql/logs/mysql-error.log)
    ##
    porary password is generated for root@localhost: Jm=%mM7w)UBq
    ##
    
    cp -a /app/mysql/support-files/mysql.server /etc/init.d/mysql
    echo "export PATH=/app/mysql/bin:$PATH" >> /etc/profile
    source /etc/profile
    
    启动mysql
    /etc/init.d/mysql start
    
    使用日志中的临时密码(Jm=%mM7w)UBq)登录mysql
    mysql -u root -p
    
    重设密码:
    mysql>alter user root@localhost identified by 'aaa@2019';
    
    创建zabbix库:
    create database zabbix character set utf8 collate utf8_bin;
    授权:
    grant all privileges on *.* to zabbix@'%' identified by 'aaa@2019';
    flush privileges;
    
    导入数据
    zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz |  mysql -uzabbix -p  zabbix

    五.配置zabbix_server

    # vi /etc/zabbix/zabbix_server.conf
    LogFile=/app/zabbix/logs/zabbix_server.log
    LogFileSize=0
    PidFile=/var/run/zabbix/zabbix_server.pid
    SocketDir=/var/run/zabbix
    DBHost=localhost
    DBName=zabbix
    DBUser=zabbix
    DBPassword=aaa@2019
    DBSocket=/tmp/mysql.sock
    SNMPTrapperFile=/app/zabbix/logs/snmptrap/snmptrap.log
    Timeout=4
    AlertScriptsPath=/app/zabbix/alertscripts
    ExternalScripts=/app/zabbix/externalscripts
    LogSlowQueries=3000
    StatsAllowedIP=127.0.0.1
    
    创建相关目录:
    mkdir -p /app/zabbix/logs/snmptrap
    mkdir /app/zabbix/{alertscripts,externalscripts}
    chown zabbix:zabbix /app/zabbix/ -R
    
    修改时区:
    vim /etc/httpd/conf.d/zabbix.conf
    添加配置:
    php_value date.timezone Asia/Shanghai
    
    启动apache
    systemctl start httpd.service
    启动php
    systemctl start php-fpm.service
    启动zabbix server
    systemctl start zabbix-server.service
    
    访问: http:ip/zabbix  
    
    注意:第一次登录填写mysql连接信息时候地址需要填0.0.0.0

    六. 修改字体

    上传windows中的字体simkai.ttf 到/usr/share/zabbix/assets/fonts目录
    mv graphfont.ttf  graphfont.ttf.bak
    ln -s /usr/share/zabbix/assets/fonts/simkai.ttf  graphfont.ttf

    七.安装graphtree插件(选)

    graphtree是一个图形展示插件
    wget https://raw.githubusercontent.com/OneOaaS/graphtrees/master/graphtree3.0.4.patch yum install -y patch cp -a /usr/share/zabbix /usr/share/zabbix.bak mv graphtree3.0.4.patch /usr/share/zabbix/ cd /usr/share/zabbix patch -Np0 <graphtree3.0.4.patch chown apache:apache oneoaas -R 添加配置:vim /etc/httpd/conf.d/zabbix.conf Alias /oneoaas /usr/share/zabbix/oneoaas systemctl restart httpd.service zabbix-server.service

    八.zabbix proxy 部署:

      8.1 yum安装

    rpm -Uvh https://repo.zabbix.com/zabbix/4.4/rhel/7/x86_64/zabbix-release-4.4-1.el7.noarch.rpm
    yum-config-manager --enable rhel-7-server-optional-rpms
    yum install zabbix-proxy-mysql 
    yum -y install numactl
    
    部署mysql 步骤和在zabbix server中部署一样,区别在导入数据时候不一样:
    # zcat /usr/share/doc/zabbix-proxy-mysql*/schema.sql.gz | mysql -uzabbix -p zabbix
    
    修改zabbix-proxy配置:vim /etc/zabbix/zabbix_proxy.conf 
    
    Server=123.123.123.123
    Hostname=heaven-01
    LogFile=/var/log/zabbix/zabbix_proxy.log
    LogFileSize=0
    PidFile=/var/run/zabbix/zabbix_proxy.pid
    SocketDir=/var/run/zabbix
    DBName=zabbix
    DBUser=zabbix
    DBPassword=fdd@2019
    DBSocket= /tmp/mysql.sock
    SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
    Timeout=30
    ExternalScripts=/usr/lib/zabbix/externalscripts
    LogSlowQueries=3000
    StatsAllowedIP=127.0.0.1
    
    启动zabbix-proxy 
    systemctl start zabbix-proxy.service

      8.2 源码安装

    yum -y install curl-devel libevent-devel   libevent curl  libxml2-devel libxml2  pcre pcre-devel
    yum install mysql-devel  -y
    yum install -y net-snmp-devel
    
    
    编译安装zabbix proxy:
    wget https://nchc.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/4.4.0/zabbix-4.4.0.tar.gz
    tar -xzvf zabbix-4.4.0.tar.gz
    cd zabbix-4.4.0
    
    proxy:
     ./configure --prefix=/app/zabbix_proxy_4.4   --enable-proxy  --with-mysql   --with-libcurl --with-libxml2  --enable-ipv6 --with-net-snmp --with-openssl
    ln -s /app/mysql/lib/libmysqlclient.so.20 /usr/lib64/libmysqlclient.so.20
    启动:
    /app/zabbix_proxy_4.4/sbin/zabbix_proxy -c /app/zabbix_proxy_4.4/etc/zabbix_proxy.conf

    九.zabbix客户端安装

      9.1 yum安装

    rpm -Uvh https://repo.zabbix.com/zabbix/4.4/rhel/7/x86_64/zabbix-release-4.4-1.el7.noarch.rpm
    yum install zabbix-agent
    service zabbix-agent start

      9.2 源码安装

    yum -y install curl-devel libevent-devel   libevent curl  libxml2-devel libxml2  pcre pcre-devel
    yum install mysql-devel  -y
    yum install -y net-snmp-devel
    
    
    编译安装zabbix客户端:
    wget https://nchc.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/4.4.0/zabbix-4.4.0.tar.gz
    tar -xzvf zabbix-4.4.0.tar.gz
    cd zabbix-4.4.0
    
    agent:
     ./configure --prefix=/app/zabbix_agent_4.4   --enable-agent  --enable-ipv6 --with-net-snmp --with-openssl

    启动:
    /app/zabbix_agent_4.4/sbin/zabbix_agentd -c /app/zabbix_agent_4.4/etc/zabbix_agentd.conf

    十. 常用命令

    zabbix server与zabbix proxy的配置的同步是有延时的,如果需要立即同步可以手动执行命令:
    zabbix_proxy -c /etc/zabbix/zabbix_proxy.conf  -R config_cache_reload
  • 相关阅读:
    IXmlSerializable With WCFData Transfer in Service Contracts
    Difference Between XmlSerialization and BinarySerialization
    Using XmlSerializer (using Attributes like XmlElement , XmlAttribute etc ) Data Transfer in Service Contracts
    Introducing XML Serialization
    Version Tolerant Serialization
    Which binding is bestWCF Bindings
    Data Transfer in Service Contracts
    DataContract KnownTypeData Transfer in Service Contracts
    Using the Message ClassData Transfer in Service Contracts
    DataContract POCO SupportData Transfer in Service Contracts
  • 原文地址:https://www.cnblogs.com/heaven-xi/p/11928305.html
Copyright © 2011-2022 走看看