Zabbix监控Apache性能

分类:linux, 运维技术日期:2018-11-24 - 14:39:19评论:0条作者:老谢

  和之前写过的Zabbix 3.2 agentd监控Nginx性能原理差不多,都是通过web引擎输出status信息来进行性能监控,一般情况下我们需要对ReqPerSec、BytesPerSec、BusyWorkers、IdleWorkers四个数据进行关注。

开启Apache Status
Listen 80
<VirtualHost *:80>
    CustomLog /dev/null common
    ErrorLog /dev/null
    <Location "/server-status">
        SetHandler server-status
        Require ip 127.0.0.1
    </Location>
</VirtualHost>

  我这里生产环境监控的是一台WHM服务器,默认开启apache status,访问地址为http://127.0.0.1:80/whm-server-status?auto,正常情况下应该如下页面内容:

Apache Server Status for 127.0.0.1 (via 127.0.0.1)
Server Version: Apache/2.4.37 (cPanel) OpenSSL/1.0.2p mod_bwlimited/1.4
Server MPM: prefork
Server Built: Oct 29 2018 18:29:24
Current Time: Thursday, 22-Nov-2018 13:48:50 CST
Restart Time: Thursday, 22-Nov-2018 13:48:35 CST
Parent Server Config. Generation: 1
Parent Server MPM Generation: 0
Server uptime: 15 seconds
Server load: 0.05 0.09 0.08
Total accesses: 7 – Total Traffic: 54 kB – Total Duration: 19687
CPU Usage: u.02 s0 cu0 cs0 – .133% CPU load
.467 requests/sec – 3686 B/second – 7.7 kB/request – 2812.43 ms/request
7 requests currently being processed, 4 idle workers

……………

继续阅读…

Tags: ,

Zabbix通过PSK共享密钥实现Server和Agent的通信加密

分类:linux, 运维技术日期:2018-11-22 - 14:23:58评论:0条作者:老谢

  Zabbix版本从3.0之后,开始支持Zabbix server, Zabbix proxy, Zabbix agent, zabbix_sender and zabbix_get之间的通信加密,加密方式有预共享密钥(PSK)和证书加密,加密配置是可选项,一些proxies和agents可以使用证书认证加密通信,另外一些可以使用PSK加密通信,而剩余的可以不使用加密进行通信,需要注意的是如果希望使用加密通信,编译的时候必须加入 –with-openssl参数。

生成并添加PSK共享密钥

  使用命令openssl rand -hex 32生产一串密钥,配置步骤如下:

[root@zabbix scripts]# openssl rand -hex 32
ef52cbe2d1a35e6bb3c43b22bd4f1a1d7bf24d1ccb7c47f6a602425970da5432
 
# 将生成的密钥写入该文件
vim /usr/local/zabbix/etc/zabbix_agentd.conf.d/zabbix_agentd.psk
 
vim /usr/local/zabbix/etc/zabbix_agentd.conf
 
#加入
TLSConnect=psk
TLSAccept=psk
TLSPSKFile=/usr/local/zabbix/etc/zabbix_agentd.conf.d/zabbix_agentd.psk
TLSPSKIdentity=PSKTest
 
#配置完成后重启zabbix_agent进程
在zabbix web gui中添加

Zabbix通过PSK共享密钥实现Server和Agent的通信加密

测试命令
zabbix_get -s 127.0.0.1 -k "system.cpu.load[all,avg1]" --tls-connect=psk --tls-psk-identity="PSK 001" --tls-psk-file=/etc/zabbix/zabbix_agentd.conf.d/zabbix_agentd.psk
Tags: ,

Grafana 5.3 安装及配置

分类:linux日期:2018-11-21 - 19:36:01评论:0条作者:老谢

Zabbix 4.0 LTS

  2018年10月1日,Zabbix官方正式发布Zabbix 4.0 LTS版本,作为长期支持版本,意味着可以获得官方5年的支持。其中完全支持到2021年10月31日,以及有限支持到2023年10月31日,同时官方4.0文档已经更新。
最直观的感受就是重新设计了图形展示,新增了Kiosk模式实现真正意义上的全屏,可以直接做大屏展示,时间选择器做的和Kibana类似;

  Zabbix 4.0 LTS对分布式监控Proxy方式也做了优化,引入了与Proxy通信的压缩,大大减少了传输数据的大小。从而提高了性能。

Zabbix 4.0 LTS 详细了解优化及新增功能参考如下:
新增功能[:https://www.zabbix.com/whats_new]
官方文档:[https://www.zabbix.com/documentation/4.0/manual].

Grafana v5.3
  • Grafana v5.3带来了新功能,许多增强功能和错误修复。
  • Google Stackdriver作为核心数据源;
  • 电视模式得到改善,更易于访问
  • 提醒通知提醒;
  • Postgres获得了一个新的查询构建器;
  • 改进了对Gitlab的OAuth支持;
  • 带模板变量过滤的注释;
  • 具有自由文本支持的变量。

Grafana5.3 详细了解优化及新增功能参考如下:
新增功能:http://docs.grafana.org/guides/whats-new-in-v5-3/

安装
wget https://s3-us-west-2.amazonaws.com/grafana-releases/release/grafana-5.3.0-1.x86_64.rpm
yum -y install fontconfig freetype* urw-fonts
yum -y install grafana-5.3.0-1.x86_64.rpm 
chkconfig --add grafana-server
chkconfig grafana-server on
grafana-cli plugins install alexanderzobnin-zabbix-app
/etc/init.d/grafana-server restart
 
#zabix的api地址是根目录下的<em>api_jsonrpc.php</em>,grafana默认端口号3000,抄自:http://blog.51cto.com/10880347/2306804。

Surface Pro 4分辨率过高导致远程桌面过小的问题

分类:乱七八糟日期:2018-11-17 - 22:40:26评论:2条作者:老谢

  Surface真的是相见恨晚的机器,高配的机器完完全全可以替代笔记本当作主力机工作,键盘手感也尚佳,就是ctrl和fn的位置有点不习惯,反正我这两天是狂按错,有钱可以直接干到pro6顶配美滋滋,还是说回正经的,有很服多win服务器需要管理,远程桌面就是必备的日常工具了,但是因为surface分辨率太高,远程桌面过来的分辨率字体显示太小了完全没法正常用,除非拿放大镜,但是也没办法在远程的服务器上设置字体缩放,找了一圈还真有解决办法,下面贴出来,全文基本是照抄,发出来只是为了以后自己找方便啦,抄自:http://www.cnblogs.com/hengwei/p/6442252.html。

编辑注册表

  HKEY_LOCAL_MACHINE > SOFTWARE > Microsoft > Windows > CurrentVersion > SideBySide,添加键值PreferExternalManifest,并设置值为1,作用是指定可以使用外部的Manifest。

创建Manifest文件,C:\Windows\System32\mstsc.exe.manifest
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
 
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3">
 
<dependency>
  <dependentAssembly>
    <assemblyIdentity
      type="win32"
      name="Microsoft.Windows.Common-Controls"
      version="6.0.0.0" processorArchitecture="*"
      publicKeyToken="6595b64144ccf1df"
      language="*">
    </assemblyIdentity>
  </dependentAssembly>
</dependency>
 
<dependency>
  <dependentAssembly>
    <assemblyIdentity
      type="win32"
      name="Microsoft.VC90.CRT"
      version="9.0.21022.8"
      processorArchitecture="amd64"
      publicKeyToken="1fc8b3b9a1e18e3b">
    </assemblyIdentity>
  </dependentAssembly>
</dependency>
 
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
  <security>
    <requestedPrivileges>
      <requestedExecutionLevel
        level="asInvoker"
        uiAccess="false"/>
    </requestedPrivileges>
  </security>
</trustInfo>
 
<asmv3:application>
  <asmv3:windowsSettings xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">
    <ms_windowsSettings:dpiAware xmlns:ms_windowsSettings="http://schemas.microsoft.com/SMI/2005/WindowsSettings">false</ms_windowsSettings:dpiAware>
  </asmv3:windowsSettings>
</asmv3:application>
 
</assembly>

  再远程桌面就搞定了,就是字体会很模糊,有空再研究吧。

修复Surface Pro 4幽灵触摸故障

分类:乱七八糟日期:2018-11-16 - 10:27:55评论:0条作者:老谢

  闲鱼收了台i7/16/256的surface pro 4,测试半天没毛病确认收货重装系统以后幽灵触摸的故障出现了,到微软店里检测判断硬件损坏换屏要3605,以为这波翻车了。

  所谓“幽灵触摸”就是在屏幕边缘一直显示触摸后才会显示的圆形效果,也就是好像有幽灵的手在一直按着屏幕一样,导致鼠标触摸完全无法正常使用,作为一个资深装系统人员,原以为就是驱动问题,经过一大圈的折腾发现在UEFI下居然也会有触摸故障,这下我自己也认为硬件故障了,送至微软销售店又是一通装系统打驱动,问题依旧,这下心里瞬间凉凉,换块屏3605!尼玛收一台机器都还没到5000,不死人经过彻夜的搜索,终于搞定了……

以下是关于surface幽灵触摸的相关参考文档

  反正找了一大圈,问题瞄准了sony屏幕本身的bug,需要使用491758_intl_x64_zip.exe修复程序进行修复,反正死马当活马医吧,结果奇迹出现了,居然真的修好了!但是这个491758_intl_x64_zip.exe很难找到,https://hotfixv4.trafficmanager.net/Surface%20Pro%203/latest/KB3165497/1/free/491758_intl_x64_zip.exe这个是在微软官方找到的下载链接,如果失效,可以邮件联系我i@xj123.info获取。

  算是被这个bug折腾了两个晚上,先把问题发出来,之后会有时间会编辑关于surface更详细的更新~

继续阅读…

laoxie.me

分类:网站技术日期:2018-11-08 - 19:53:25评论:29条作者:老谢

  不知不觉都写8年博客了,xj123.info也注册8年了,唉唉唉,最开始.tk的域名以及写了小半年的ZBLOG的日志,你敢信当时.tk的域名我都备案成功了!?换WordPress的时候数据丢真是可惜 T_T 很想知道当时写了什么23333,当时图便宜注册个.info也是醉了,后来各种原因包括换到阿里云以后更是因为备案问题懒得为了换域名折腾,拖拖拖一拖又是好几年(擦!都换到阿里云4年了),最近手痒顺手查查laoxie.me居然已经过期释放了,妥妥注册过来(本来想啥时候注册到laoxie.com啥时候再换,但估计是等不到了,确认过眼神是买不起的.com双拼…),就想着把域名用上,其实也不算换域名,旧域名依然会保持访问也不会做跳转,只是用laoxie.me做个反代,以后结识新朋友都会以laoxie.me留言啦!

  趁着光棍节活动,新购入了一台香港阿里云ECS作为反代使用(后悔了,应该直接买3年,平均每年300块,现在只买了1年,按照阿里云的尿性续费肯定没优惠,到时候估计得新购换IP…),为了换域名也是拼了,新域名懒得备案,只能想到反代这招了…ECS异地居然还不能走内网通信,蛋疼蛋疼,现在的阿里云默认都是开了端口策略,只开放了些许端口,甚至80和443这样的端口默认都没被允许入站,懒得新创建入站规则,所以SSH端口就用默认了22了,但毕竟暴露在公网,还是稍稍做些防护会好些),之前也有过相关的帖子:谁偷走了我的密码?IP归属地分析Shell脚本

安全设置,防暴力破解ssh
vim /root/secure_ssh/secure_ssh.sh
 
#! /bin/bash
cat /var/log/secure|awk '/Failed/{print $(NF-3)}'|sort|uniq -c|awk '{print $2"="$1;}' > /root/secure_ssh/black.list
for i in `cat  /root/secure_ssh/black.list`
do
  IP=`echo $i |awk -F= '{print $1}'`
  NUM=`echo $i|awk -F= '{print $2}'`
  if [ ${#NUM} -gt 1 ]; then
    grep $IP /etc/hosts.deny > /dev/null
    if [ $? -gt 0 ];then
      echo "sshd:$IP:deny" >> /etc/hosts.deny
    fi
  fi
done
 
#从这些行中提取IP地址,如果次数达到10次(脚本中判断次数字符长度是否大于1)则将该IP写到 /etc/hosts.deny中。
 
#将secure_ssh.sh脚本放入cron计划任务,每1分钟执行一次。
*/1 * * * *  sh /root/secure_ssh/secure_ssh.sh

  至此脚本将每分钟爬一遍/var/log/secure找到登录失败超过3次的ip丢进/etc/hosts.deny,其实更想用iptables来操作,比如配个csf,但是想想好麻烦…再说吧再说吧…..在配置的过程中发/etc/log/secure没有日志,重启sshd和rsyslog以后还是没有新日志,经过一番搜索,将sshd_config的日志级别调整为SyslogFacility AUTHPRIV,然后重启sshd即可正常生成日志!

  天下文章一大抄,我抄自:https://cloud.tencent.com/developer/article/1119081

继续阅读…

Bind9+NamedManager构建高可用DNS服务器

分类:linux日期:2018-10-29 - 10:11:04评论:0条作者:老谢

  这两天在学习DNS,经过两天的折腾对DNS终于有了一些了解,以下内容大部分来自网络,本文只是整理记录以便自己回顾学习的目的,本文建立在已知DNS作用的情况下。

1. 基本概念

1.1 域名

  域名分为三个部分,用“.”(点)分割。严格的域名最后还有一个”.”,但一般省略不写。

  举例来说,www.example.com真正的域名是www.example.com.root,简写为www.example.com.。因为,根域名.root对于所有域名都是一样的,所以平时是省略的。

  根域名的下一级,叫做”顶级域名”(top-level domain,缩写为TLD),比如.com、.net;再下一级叫做”次级域名”(second-level domain,缩写为SLD),比如www.example.com里面的.example,这一级域名是用户可以注册的;再下  一级是主机名(host),比如www.example.com里面的www,又称为”三级域名”,这是用户在自己的域里面为服务器分配的名称,是用户可以任意分配的。

总结一下,域名的层级结构如下。
主机名.次级域名.顶级域名.根域名

# 即

host.sld.tld.root
 
  -类型     标识此域名的类型(com/net/org/edu/gov/info/xyz/cc/...)
  -域名     域名称
  -主机名  该域中的某台主机名称
 
例如:laoxie.me
 
www: 主机名
xj123:域名称
info: 类型

继续阅读…

Tags: ,

ESXi 6.7 使用NUT Client连接群晖UPS服务器

分类:运维技术日期:2018-10-21 - 19:53:49评论:0条作者:老谢

  进来增加了一台工控机,上面跑了如软路由等业务,万一突然断电ESXi坏了启不了,估计就得废好大劲折腾了,以前有给群晖配过一台APC BK650的UPS,目前UPS的COM数据输出直接给到了群晖,毕竟无论如何也得优先保障群晖的可靠性,在群晖的设置里面看到过UPS服务器的选项,所以想着能不能ESXi能不能连接群晖的UPS服务器实现断电自动关机以保证数据安全。

  搜了一圈,果然有相关资料,一看有戏果断继续折腾,先是搜到一篇论坛中文的教程,坑的是相关软件上传到百度网盘,密码还得回帖看见,注册吧还得要邀请码,邀请码把还要钱,我擦这不能忍,开源精神都被你们玩哪去了,百度靠不住了,祭出google大神,果不其然有一堆教程,折腾开始~

  群晖关于UPS服务器的相关参数定义,放在/usr/syno/etc/ups/ups.conf文件中,默认如下:

UserVars.NutUpsName : UPS name on remote NUT server (ups_name@server_name),
can be a space separated list of NUT servers. In our case the servername is defined on the Synology (ups@10.0.1.22).
UserVars.NutUser : Username to connect to NUT server. If more that one NUT
server is declared, all need to use the same user/password.
The Synology default is “monuser”
UserVars.NutPassword : Username password on NUT server
The Synology default is “secret”.
UserVars.NutFinalDelay : Seconds to wait on low battery event before shutting down
UserVars.NutSendMail : Set to 1 if you want a mail to be sent on UPS event
UserVars.NutMailTo : Email address to send mail to on UPS event

继续阅读…

折腾了台工控机在家跑Panabit流控

分类:网络技术日期:2018-10-19 - 15:53:45评论:11条作者:老谢

  自从冰冰牛用工控机做软路由以后一直惦记着这货,但是现有的华硕AC68U路由器也没拖什么后腿就一直放着没去折腾,最近搬家开始合租,共享网络发现没有流控有时候一起看视频或者下载会严重影响体验,这是绝逼不能忍的!!!AC68U虽然也带流控优化功能但是感觉不够专业,刚好最近也在研究Panabit,本来想直接弄个软路由跑Panabit算了,突然想到一步到位搞个工控机还能同时跑点其他业务,比如把树莓派也干掉….所以就入了型号为3865U的工控机,到手后加装了块1T的2.5寸硬盘和一条4G内存,具体配置如下:

  • CPU:i3-7100u
  • 硬盘:闪迪32G SSD + 1T HDD
  • 内存:4G + 4G (DDR4)
  • 电源:12V 5A
  • 千兆网口:6个

折腾了台工控机在家跑Panabit流控

  目前问题是,因为Panabit作为透明网桥在WAN口之上,WAN出来的包都是已经NAT后的公网地址的包,所以抓不到内网IP,目前在考虑再用Esxi虚个软路由作为边界,但是DDNS和端口映射乱七八糟的都在AC68U上应该是懒得折腾,先跑一阵子看看流量使用情况再说吧…
  
  最后,这玩意性能真是弱的一逼,Panabit+Panalog就已经让cpu一直在60%浮动了,目前看来再跑个omv的话,都不一定跑得动软路由了…

继续阅读…

Tags: ,

是时候给自己装台ITX游戏机了,八代i7飞起!

分类:乱七八糟日期:2018-07-25 - 21:55:45评论:35条作者:老谢

  虽然也不怎么打游戏了也不可能拿这台机器当工作机用,但看到这机箱就是喜欢就是想装,对…就是想装而已…

2018年,i7-8700K起飞

  之前也有台组装PC用,后来又给卖了,是女朋友淘下来的,所以严格意义上也不算是符合我需求自想装的机器,也就是打打游戏用,后来也就给卖了,对台式机也没有太强烈的需求。最近日常逛CHH看到银河MC3,一眼相中颜值,这就是我想要的机箱!于是乎,卖掉了其中一台工作用的X220(是的,去年工作原因,又搞了一台X220来用),砸锅卖铁开始购入硬件,配置如下:

  虽然考虑到这机箱散热扩展等种种问题,但是颜值即正义…顺便也别问我为什么不装独显,很明显没钱(T_T)。

配置
品牌
型号
核心参数
数量
价格(¥)
CPU
Intel
i7-8700K 盒装
6核12线程,睿频可达4.7Ghz
1
2899
主板
华硕
Z370-i
itx
1
1799
CPU硅脂
7921
信跃7921
听说是信仰,试试
1
36
内存
海盗船
复仇者 DDR4 2400 8G
单条8G
1
589
主硬盘
浦科特
M6S 128G
Marvell主控
1
X220拆机件
辅硬盘
三星
840 EVO 250G
msata接口
1
X220拆机件
电源
海盗船
SF450
额定450W
1
699
定制线
马云家
镀银线
镀银硬线(含SATA线*2)
1
168
机箱
银河
MC3(含显卡转接排线)
itx
1
1788
CPU散热器
猫头鹰
HN-L9x65
静音
1
360
机箱散热器
快睿CRYORIG
XT140
14CM超薄风扇,PCW控温
1
129

继续阅读…