"Support for SMTP authentication was not compiled in","Failed Initialization",zabbix郵件告警libcurl問題

1.這裏只簡單說下使用配置qq郵箱做郵件服務器發送告警郵件:

   zabbix web端配置報警媒介:

   管理——報警媒介類型——創建媒體類型

   

  使用的qq郵箱需要在郵箱裏面設置,開啓smtp並生成授權碼:(QQ郵箱——設置——賬戶——IMAP/SMTP服務)

  之後便是配置用戶的報警媒介及動作等

 

2.當以上配置完成後,zabbix觸發報警,發送郵件失敗時,查看 報表——動作日誌,出現以下錯誤

   

 這是由於curl版本過低造成的,官網上有說明,需要curl版本大於7.20

 我們可以通過curl -V查看其版本

 如果版本確實過低,則注意不要yum直接升級curl包,有可能造成yum不可用

 同時對於某些系統版本過低的環境,curl不建議升級太高,可能同樣引發錯誤,建議curl版本7.29

 如果yum升級curl包後造成yum不可用,則需重新編譯下載curl,並且進入python   >import yum查看報錯

 發現python導入yum時會調用libcurl.so.4,根據報錯信息重新生成軟連接

  ln   -s   /usr/local/curl/lib/libcurl.so.4.1.1   /usr/lib64/libcurl.so.4 

3.編譯安裝curl7.29

  wget https://curl.haxx.se/download/curl-7.29.0.tar.gz

  tar xzvf curl-7.29.0.tar.gz

  cd curl-7.29.0

  ./configure --prefix=/usr/local/curl --with-ssl

  make && make install

  注意:如果報錯 Failed initialization

  

  這是由於libcurl.so動態鏈接庫不匹配

  將新編譯的 /usr/local/curl/lib/libcurl.so.4.3.0 複製到 /usr/lib64/ 下,並做軟連接,舊的刪除

ln -s /usr/local/curl/lib/libcurl.so.4.3.0 /usr/lib64/libcurl.so
ln -s /usr/local/curl/lib/libcurl.so.4.3.0 /usr/lib64/libcurl.so.4

4.重新編譯安裝zabbix 

./configure --prefix=/usr/local/zabbix/  --enable-server --enable-agent --with-mysql=/home/mysql/data/mysql/bin/mysql_config    --enable-ipv6 --with-net-snmp --with-libcurl=/usr/local/curl/bin/curl-config  --with-libxml2

make && make install

  這裏mysql和libcurl都添加了編譯安裝時的配置路徑,(自行編譯安裝的都需要跟上路徑,否則會有報錯,,具體需要到哪個路徑下,可以根據官網上源碼安裝的手冊進行查詢,這裏貼上一個zabbix3.0的地址:https://www.zabbix.com/documentation/3.0/manual/installation/install

5.如果zabbix在編譯時報:

  configure: error: Invalid Net-SNMP directory - unable to find net-snmp-config

  缺少net-snmp-devel:  yum install -y net-snmp-devel

  並且編譯時添加--enable-ipv6(上面命令已經包含)

6.啓動zabbix時報錯:libmysqlclient.so.20

  執行systemctl status zabbix-server時,出現 Starting zabbix_server:  /usr/local/zabbix//sbin/zabbix_server: error while loading shared libraries: libmysqlclient.so.20: cannot open shared object file: No such file or directory

  [root@iZ2ze36id59elx8lkfywjcZ zabbix-3.0.24]# service zabbix-server start
  Starting zabbix_server:  /usr/local/zabbix//sbin/zabbix_server: error while loading shared libraries: libmysqlclient.so.20: cannot    open shared object file: No such file or directory                                                           [FAILED]

  打開/etc/ld.so.conf文件,將編譯安裝的mysql路徑添加上(原路徑如果不存在,可以刪除)

  

  保存後運行命令ldconfig,更新動態鏈接庫列表

  此時郵件可以發送成功

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章