Zabbix监控之Mysql

运维 Ansible 发表了文章 3 个评论 3406 次浏览 2015-08-25 00:28 来自相关话题

      使用go语言写了一个采集mysql性能的小程序,通过SDK连接mysql数据库,采集数据库性能指标,同时采集远程数据库的性能,大家可试用一下,欢迎提出修改意见和建议 被监控端设置 监控下载: ...查看全部
      使用go语言写了一个采集mysql性能的小程序,通过SDK连接mysql数据库,采集数据库性能指标,同时采集远程数据库的性能,大家可试用一下,欢迎提出修改意见和建议


被监控端设置


监控下载:
   Linux:
                mymon_x86.tar.gz
                mymon_x64.tar.gz
   Windows:
                mymon_windows_amd64.zip
 
Windows:
      下载解压后放在c盘,修改agentd.conf文件,执行脚本路径为:
c:\mymon\mymon.exe


      重启agentd即可

Linux:
      修改zabbix agentd配置文件(具体位置根据自身情况设置),添加key
vi /usr/local/zabbix/etc/zabbix_agentd.conf
      添加如下:
zmy4.png

      添加好之后执行
mkdir -p /usr/local/zabbix/bin/mysql/
cd /usr/local/zabbix/bin/mysql/
wget http://dl.cactifans.org/tools/mymon_x64.tar.gz
tar zxvf mymon_x64.tar.gz
chmod a+x mymon
      同时编辑cfg.json配置文件,设置要监控数据库的连接参数
vi /usr/local/zabbix/bin/mysql/cfg.json
      文件内容如下
{
"mysql": {
"username": "root",
"password": "123456",
"host": "localhost",
"port": 3306
},
"sever": {
"log": "/tmp/mon.log"
}
}
      登录数据库的账号,密码等信息,log项目不用设置,默认即可
      设置好之后重启zabixx agent
service zabbix-agent restart


zabbix服务端设置


      测试agent是否工作正常
/usr/local/bin/zabbix_get -s 192.168.7.186 -k mysql.status[GlobalStatus,Uptime]
      如果有一下回显,表示工作正常
[root@vm153 ~]#  /usr/local/bin/zabbix_get -s 192.168.7.186 -k mysql.status[GlobalStatus,Uptime]
12364726
[root@vm153 ~]#
      导入模版:zabbix_mysql_templates.xml
      并关联到主机
      效果:
zmy1.png

      参数:
zmy2.png

      PS:可自行添加对应key可监控项目,模版自带了几种,脚本包括800多项目
zmy3.png
具体更具key定义,括号内第一项为key类型,分GlobalStatus和GlobalVariables二种,后面的数值为在mysql里执行“SHOW /!50001 GLOBAL / STATUS”和“SHOW /!50001 GLOBAL / VARIABLES”,对应的key,注意有些数值为固定数值,有些key的类型为每秒速差,自行添加.
原文地址

明教教主版Vsphere5.0学习视频和文档

学习资源 空心菜 发表了文章 0 个评论 2556 次浏览 2015-08-24 21:09 来自相关话题

绝对的大放送,干货视频和文档放送,资源下载地址:http://pan.baidu.com/s/1c0yM6ZI
vsphere_logo.jpg

绝对的大放送,干货视频和文档放送,资源下载地址:http://pan.baidu.com/s/1c0yM6ZI

PDO Exception could not find driver

运维 Ansible 回复了问题 2 人关注 1 个回复 4035 次浏览 2015-08-24 16:01 来自相关话题

多交流多阅读,淡化手机症

科技前沿 空心菜 发表了文章 0 个评论 2497 次浏览 2015-08-23 11:24 来自相关话题

首先我们来看一个已经在网上疯传的视频,希望你有所启迪,由于本编辑器不支持此视频格式,请点击链接地址观看,我想你会有收获的。视频地址如下: 告别手机党 你中枪了吗      早晨起来第一件事是摸手机 ...查看全部
sjd1.jpg

首先我们来看一个已经在网上疯传的视频,希望你有所启迪,由于本编辑器不支持此视频格式,请点击链接地址观看,我想你会有收获的。视频地址如下:
告别手机党


你中枪了吗


     早晨起来第一件事是摸手机,晚上睡前最后一件事是放下手机,你中枪没?数据显示,全球人均6分半钟看一次手机,你中枪没?
      悲催的我站着、坐着、躺着……全中枪。
      不看不知道,一看吓一跳。全球总共有多少部智能手机?18.3亿。每位手机用户平均每天查看多少次手机?150次。换言之,除了休息时间外,每人平均每6分半钟查看一次手机。
      微信、挂Q、发微博、看新闻……我和众多手机用户还没写申请书就入了"低头党"。中国手机网民规模达5亿, "低头党" 少说也上亿人,而我们光荣的共产党党员才8512.7万。
      手机,成了生活的一部分。看手机,成了人生的一部分。
       在上班走路,有看手机撞过人、撞过树、撞过电线杆。上班坐地铁,在拥挤的空间里拿出吃奶的力气左推右搡看手机。
       不论蹲坑还是坐马桶,不管有无信号或是WIFI,我上厕所都要看手机。因为看手机,我糗事一大堆,双腿无数次麻木,手机多次掉到厕所里。
      春晚一年不如一年,但必须得看,爸妈用电视看春晚,现在的我们用手机吐槽春晚。像得了强迫症一样,要是不看一眼手机,我们就觉得心里很不踏实。找不到手机就心烦意乱,手机没电很紧张,手机没信号很抓狂……,你中枪没?
      其实,离开手机一整天或一段时间,生活也没有缺少什么。
      "时间都去哪儿了,还没好好感受年轻就老了……"马年春晚,一曲《时间都去哪儿了》让人动容。我不禁要问问时间到底都去哪儿了?
      先来看看我们习主席的答案:"我个人的时间都去哪儿了?当然是都被工作占去了。现在,我经常能做到的是读书,读书已成了我的一种生活方式。"再看看我们手机党的答案,都被手机偷去啦,真是自惭形秽,多向习主席学习。
sjd2.png

sjd3.png

sjd4.png

sjd5.png

sjd6.png

sjd7.png

sjd8.png

sjd9.png

sjd10.png

sjd11.png

编者感言:
在这个互联网+的环境中,在这个信息时代,手机已经深深的影响到了我们的生活,成为了“必需品”。记得以前我们的童年是在玩泥巴、跳皮筋、跳房子、捉迷藏等游戏中和我们的小伙伴们开心的玩耍交流中度过的,而现在的孩子们在父母的影响下,也变成了手机党。现在都市生活中,父母陪孩子的时间越来越少,回家有时间也是盯着手机,在这种氛围下,让我们的孩子也受到了影响,没事在家就是打开平板电脑或者手机玩游戏,他们交朋友的方式更多的是通过玩游戏、互联网社交,而那种纯粹的交友方式淡化了。作为一个IT从业者,我想大家除了工作的时间,大部分时间也花在手机上吧?早晨起床,打开手机微信朋友圈先溜一圈,早晨的推文叫做“营养早餐”,美好的一天开始吗,到了中午快要到中午吃午饭了,这时候大家又开始打开手机,看朋友圈,看微信群,淡淡比,中午的推文叫做“自助餐”,到了晚上,朝九晚五的一天就要结束了,大家不约而同的打开了微博、微信、QQ等,哎哟,这个土豪又在发红包,真高兴,抢到了1.5,而这时候一波推文又开始了,晚餐前的推文叫做“晚餐甜点”,因为你下班了,有时间了,可以细细品味了。一天手机带你度过,我也是一名手机党,我不是说手机党有什么不好,而是说我们要看到它的优点,发扬优点,去其糟粕,吸其精华。在我们的微信朋友圈,确实有不少的干货、好的文章,这些都值得我们细细品读,如果你只是转发一下,大概看一下大体,这就失去了意义。我们应该向习大大学习,多读书、多和别人交流、多思考!

AttributeError: 'module' object has no attribute 'error'

编程 空心菜 回复了问题 2 人关注 1 个回复 5763 次浏览 2015-08-23 08:24 来自相关话题

SELinux防护KVM安全

大数据 OpenSkill 发表了文章 0 个评论 3948 次浏览 2015-08-23 01:40 来自相关话题

      SELinux最初是由美国安全局NSA发起的项目,是基于强制访问控制(MAC)策略的,为每一个主体和客户都提供了个虚拟的安全“沙箱”,只允许进程操作安全策略中明确允许的文件。当Linux开启了SELinux安全策略,所有的主体对客户的访问必须同时满 ...查看全部
se1.jpg

      SELinux最初是由美国安全局NSA发起的项目,是基于强制访问控制(MAC)策略的,为每一个主体和客户都提供了个虚拟的安全“沙箱”,只允许进程操作安全策略中明确允许的文件。当Linux开启了SELinux安全策略,所有的主体对客户的访问必须同时满足传统的自主访问控制(DAC)和SELinux提供的强制访问控制(MAC)策略。
 
      在虚拟化环境下,通常是多个VM运行在同一个宿主机(物理机)上,通常由同一个用户启动多个VM管理进程(如:qemu-kvm或者vmx等),而这些VM可能为不同的租户服务,如果其中一个VM由于某些脆弱性被恶意控制了,而hypervisor层有缺陷,攻击者就有机会利用被控制的VM发起对同宿主机或其它VM进行恶意攻击。如下图:宿主机中的SELinux安全策略阻止了VM的Attack行为。
se2.png


SELinux与KVM


      sVirt 项目集成SELinux强制访问控制 (MAC) 安全和基于 Linux 的KVM虚拟化。
确认SELinux策略正常开启
se3.png

创建img文件
     通过dd命令创建两个大小为20GB的img文件,作为虚拟机的磁盘:
dd if=/dev/zero of=/opt/vm/vm01.img bs=1M count=20480
dd if=/dev/zero of=/opt/vm/vm02.img bs=1M count=20480
      查看img文件安全上下文
se4.png

     从上图可知两个img文件的安全上下文,其中用户域为unconfined_u,表示不限制用户;角色域为object_r通常表示普通文件或目录;类型域为usr_t;MCS为s0;
qemu-kvm命令配合VNC​
/usr/libexec/qemu-kvm -cpu qemu64 \
-drive file=/opt/vm/vm01.img \
-m 2048 \
-cdrom \
/opt/CentOS-6.5-x86_64-bin-DVD1.iso \
-vnc :1

/usr/libexec/qemu-kvm \
-cpu qemu64 \
-drive file=/opt/vm/vm02.img \
-m 2048 \
-cdrom \
/opt/CentOS-6.5-x86_64-bin-DVD1.iso \
-vnc :2
     给两个img文件安装上CentOS-6.5-x86_64操作系统并处于运行状态,此时的两个img文件的安全上下文还是与之前的保持不变。(注:实际在部署KVM虚拟机里以上步骤不是必须,这里是为了演示SELinux安全上下文的变化而考虑的)
virt-manager启动KVM虚拟机
     结束qemu-kvm进程,用专用的virsh或virt-manager工具(这里以图形工具virt-manager为例)启动两个虚拟机,先ssh –X连接到宿主机,再执行virt-manager命令:
se5.png

     在弹出的窗口里“新建”一个虚拟机,输入名称,单选“Import existing disk image”根据向导创建并启动虚拟机:
se6.png

     当两个虚拟机都通过virt-manager启动之后管理窗口如下:
se7.png

确认安全上下文变化
     此时再看一下两个img文件的安全上下文,除了角色域object_r没有变化之外,用户域、类型域、MCS都发生了变化
se8.png

     再确认一下对应进程的安全上下文:
se9.png

     可以看出img文件的MCS与进程的MCS是严格对应的,且对虚拟机进行重启操作时会自动给进程和img文件重新分配MCS。这种安全机制可以严格控制威胁的范围,提高云平台的安全性。


SELinux阻止非法访问


     介绍一下MCS不同时阻止相互访问,将/bin/bash拷贝一个为/opt/test_sh,并查看一下当前的安全上下文
se10.png

     由于在SELinux的默认安全策略里,使用svirt_t类型的入口程序必须类型为qemu_exec_t,这里修改一下test_sh的类型:
se11.png

MCS为s0:c0,c1的操作
     以特定的SELinux安全策略来运行,这里切换一下类型为svirt_t和MCS为s0:c0,c1,并查看当前用户的安全上下文以确认,之后通过echo命令向/tmp/test文件(由于SELinux安全策略限制,此时只能向/tmp目录下写新建文件)里随便写内容,写成功后再查看一下/tmp/test的安全上下文。MCS都是一致的
se12.png

MCS为s0:c0,c2的操作
      再以特定的SELinux安全策略来运行,这里切换一下类型为svirt_t和MCS为s0:c0,c2,并查看当前用户的安全上下文以确认,之后通过echo命令向/tmp/test文件(这个文件是前一步创建的)里随便写内容,由于安全策略的限制会写入失败,提示:Permission denied(下图红线部分)。确认文件MCS与当前环境的MCS是不一致的。
se13.png


来点感动自己的鸡汤


      所有被SELinux安全策略阻止的操作都会有相应的日志记录,当系统auditd服务启动时会记录在audit.log日志,否则记录在message日志里。
se14.png

XEN 、 VMware ESXi、Hyper-V 以及 KVM 特点比较

大数据 OpenSkill 发表了文章 0 个评论 13091 次浏览 2015-08-22 16:55 来自相关话题

XEN 与 VMware ESXi,Hyper-V 以及 KVM 特点比较       XEN 有简化虚拟模式,不需要设备驱动,能够保证每个虚拟用户系统相互独立,依赖于 service domains 来完成一些功能; Vmware ...查看全部
xnh.png


XEN 与 VMware ESXi,Hyper-V 以及 KVM 特点比较


      XEN 有简化虚拟模式,不需要设备驱动,能够保证每个虚拟用户系统相互独立,依赖于 service domains 来完成一些功能; Vmware ESXI 与 XEN 比较类似,包含设备驱动以及管理栈等基本要素,硬件支持依赖于 VMware 创建的驱动; Hyper-V 是基于 XEN 管理栈的修改; KVM 与 XEN 方式不同,KVM 是以 Linux 内核作为管理工具。
虚拟机的体系结构


XEN 体系结构


XEN 体系结构图如下:
xk1.png

      Xen是一个开放源代码虚拟机监视器,由剑桥大学开发。Xen的缺点是操作系统必须进行显式地修改(“移植”)以在Xen上运行(但是提供对用户应用的兼容性),所以比较麻烦。使得Xen无需特殊硬件支持,就能达到高性能的虚拟化。Linux的官方内核在较早之前已经去掉了对Xen的支持。

      一个 XEN 虚拟机环境主要由以下几部分组成:
XEN Hypervisor; Domain 0 —— Domain Management and Control(XEN DM&C); Domain U Guest(Dom U) PV Guest HVM Guest
       Xen 三部分组成之间关系图
xk2.png

XEN Hypervisor :
XENHypervisor 是介于操作系统和硬件之间的一个软件描述层。它负责在各个虚拟机之间进行 CPU 调度和内存分配。XEN Hypervisor 不仅抽象出虚拟机的硬件,同时还控制着各个虚拟机的执行。XEN Hypervisor 不会处理网络、存储设备、视频以及其他 I/O.
Domain 0:
Domain 0 是一个修改过的 Linux kernel,是唯一运行在 Xen Hypervisor 之上的虚拟机,它拥有访问物理 I/O 资源的权限,同时和系统上运行的其他虚拟机进行交互。Domain 0 需要在其它 Domain 启动之前启动。
Domain U:
运行在 Xen Hypervisor 上的所有半虚拟化(paravirtualized)虚拟机被称为“Domain U PV Guests”,其上运行着被修改过内核的操作系统,如 Linux、Solaris、FreeBSD 等其它 UNIX 操作系统。所有的全虚拟化虚拟机被称为“Domain U HVM Guests”,其上运行着不用修改内核的操作系统,如 Windows 等。


Hyper-V 体系结构


Hyper-V 体系结构图如下:
xk3.png

      Hyper-V 是微软提出的一种系统管理程序虚拟化技术,采用微内核的架构,兼顾了安全性和性能的要求。Hyper-V 底层的 Hypervisor 运行在最高的特权级别下,微软将其称为 ring -1(而 Intel 则将其称为 root mode),而虚机的 OS 内核和驱动运行在 ring 0,应用程序运行在 ring 3 下,这种架构就不需要采用复杂的 BT(二进制特权指令翻译)技术,可以进一步提高安全性。从架构上讲 Hyper-V 只有“硬件-Hyper-V-虚拟机”三层,本身非常小巧,代码简单,且不包含任何第三方驱动,所以安全可靠、执行效率高,能充分利用硬件资源,使虚拟机系统性能更接近真实系统性能。

      Hyper-V 支持分区层面的隔离。分区是逻辑隔离单位,受虚拟机监控程序支持,并且操作系统在其中执行。Microsoft 虚拟机监控程序必须至少有一个父 / 根分区,用于运行 64 位版本的 Windows Server 2008 操作系统。虚拟化堆栈在父分区中运行,并且可以直接访问硬件设备。随后,根分区会创建子分区用于承载来宾操作系统。根分区使用虚拟化调用应用程序编程接口 (API) 来创建子分区。

     分区对物理处理器没有访问权限,也不能处理处理器中断。相反,它们具有处理器的虚拟视图,并运行于每个来宾分区专用的虚拟内存地址区域。虚拟机监控程序负责处理处理器中断,并将其重定向到相应的分区。Hyper-V 还可以通过输入输出内存管理单元 (IOMMU) 利用硬件加速来加快各个来宾虚拟地址空间相互之间的地址转换。IOMMU 独立于 CPU 使用的内存管理硬件运行,并用于将物理内存地址重新映射到子分区使用的地址。从系统的结构图,我们可以看出来 Hyper-V 与 Xen 的架构很相似。


Vmware ESXI 体系结构


Vmware ESXI 体系结构图如下:
xk4.png

      VMWare (Virtual Machine ware)是一个“虚拟PC”软件公司。它的产品可以使你在一台机器上同时运行二个或更多Windows、DOS、LINUX系统。与“多启动”系统相比,VMWare采用了完全不同的概念。多启动系统在一个时刻只能运行一个系统,在系统切换时需要重新启动机器。VMWare是真正“同时”运行,多个操作系统在主系统的平台上,就象标准Windows应用程序那样切换。而且每个操作系统你都可以进行虚拟的分区、配置而不影响真实硬盘的数据,你甚至可以通过网卡将几台虚拟机用网卡连接为一个局域网,极其方便。安装在VMware操作系统性能上比直接安装在硬盘上的系统低不少,因此,比较适合学习和测试。

      由上图我们可以看出来管理工具也是直接嵌入到了 ESXi vmKernel 中,没有再分化出单独的管理工具,这一点与 Xen 是相区别的。


KVM 体系结构


KVM 体系结构图如下:
xk5.png

      KVM 是一个独特的管理程序,通过将 KVM 作为一个内核模块实现,在虚拟环境下 Linux 内核集成管理程序将其作为一个可加载的模块可以简化管理和提升性能。在这种模式下,每个虚拟机都是一个常规的 Linux 进程,通过 Linux 调度程序进行调度。
    
      KVM是指基于Linux内核(Kernel-based)的虚拟机(Virtual Machine)。KVM最大的好处就在于它是与Linux内核集成的,所以速度很快。KVM的宿主操作系统必须是Linux,支持的客户机操作系统包括Linux、Windows、Solaris和BSD,运行在支持虚拟化扩展的x86和x86_64硬件架构上,这意味着KVM不能运行在老式CPU上,新CPU如果不支持虚拟化扩展也不能运行(如英特尔的Atom处理器)。


KVM、Xen、VMWare的对比


xk6.png

通过以上四种虚拟机的体系结构图,我们可以看出他们在整个系统中的位置,以及相互之间的区别。
本文基于互联网整理转载分享  参考原文1  参考原文2

容器时代运维帮沙龙第二期

学习资源 OpenSkill 发表了文章 0 个评论 2371 次浏览 2015-08-21 22:04 来自相关话题

1.Docker与数据库应用的结合 2.深入理解容器技术 PDF下载地址如下: http://pan.baidu.com/s/1i34bKA5
1.Docker与数据库应用的结合
2.深入理解容器技术
PDF下载地址如下:
http://pan.baidu.com/s/1i34bKA5

CentOS部署 salt报错

运维 Ansible 回复了问题 2 人关注 1 个回复 4569 次浏览 2015-08-21 21:05 来自相关话题

使用elasticsearch的marvel插件sense报错

大数据 Ansible 回复了问题 2 人关注 2 个回复 7084 次浏览 2015-08-21 20:45 来自相关话题