月度归档:2012年12月

dmidecode 命令使用

dmidecode以一种可读的方式dump出机器的DMI(Desktop Management Interface)信息。这些信息包括了硬件以及BIOS,既可以得到当前的配置,也可以得到系统支持的最大配置,比如说支持的最大内存数等。
DMI有人也叫SMBIOS(System Management BIOS),这两个标准都由DMTF(Desktop Management Task Force)开发。
继续阅读

一个双主LVS配置(比较特殊)

公网IP1
172.16.100.130
10.10.10.136-143 (路由到IP172.16.100.130)

公网IP2
172.16.100.131
172.16.200.16-23 (路由到IP172.16.100.131)

要求双主,双备,也就是互备,其中10.10.10.136-137和172.16.200.16-17作为对公网服务的IP,比如WEB这些都只能走这些IP

继续阅读

LVS + KeepAlieved 双机热备实现

一、lvs和keepalived简单介绍

LVS集群采用IP负载均衡技术和基于内容请求分发技术。调度器具有很好的吞吐率,将请求均衡地转移到不同的服务器上执行,且调度器自动屏蔽掉服务器的故障,从而将一组服务器构成一个高性能的、高可用的虚拟服务器。整个服务器集群的结构对客户是透明的,而且无需修改客户端和服务器端的程序。为此,在设计时需要考虑系统的透明性、可伸缩性、高可用性和易管理性。

keepalived是一个类似于layer3, 4 & 5交换机制的软件,也就是我们平时说的第3层、第4层和第5层交换。Keepalived的作用是检测web服务器的状态,如果有一台web服务器死机,或工作出现故障,Keepalived将检测到,并将有故障的web服务器从系统中剔除,当web服务器工作正常后Keepalived自动将web服务器加入到服务器群中,这些工作全部自动完成,不需要人工干涉,需要人工做的只是修复故障的web服务器。

二、服务器ip分配

  • MASTER          192.168.1.11        //lvs主服务器
  • BACKUP          192.168.1.12         //lvs从服务器
  • VIP                   192.168.1.1           //虚拟IP
  • WEB1-Real     192.168.1.21         //web服务器
  • WEB2-Real     192.168.1.22        //web服务器
备注:正实施的时候 都是公网地址

三、安装

  • [root@localhost ~]# yum install ipvsadm keepalieved -y
  • [root@localhost ~]# /sbin/ipvsadm -v
  • ipvsadm v1.25 2008/5/15 (compiled with popt and IPVS v1.2.1)
  • [root@localhost ~]# keepalived -v
  • Keepalived v1.2.7 (09/04,2012)
  • [root@localhost ~]#

四、配置

keepalived配置

  • [root@localhost ~]# cat /etc/keepalived/keepalived.conf
  • ! Configuration File for keepalived
  • global_defs {
  • #   notification_email {
  • #     acassen@firewall.loc
  • #     failover@firewall.loc
  • #     sysadmin@firewall.loc
  • #   }
  • #   notification_email_from Alexandre.Cassen@firewall.loc
  • #   smtp_server smtp.163.com
  • #   smtp_connect_timeout 30
  •  router_id LVS_DEVEL                 //负载均衡器标识,同一网段内,可以相同
  • }
  • vrrp_sync_group VGM {               //定义一个vrrp组
  •  group {
  •  VI_1
  •  }
  • }
  • vrrp_instance VI_1 {                    //定义vrrp实例
  •  state MASTER                              //标示状态为MASTER 备份机为BACKUP
  •  interface eth0                                //LVS监控的网络接口
  •  virtual_router_id 51                    //同一实例下virtual_router_id必须相同
  •  priority 100                                   //MASTER权重要高于BACKUP 比如BACKUP为99
  •  advert_int 5                                  //MASTER与BACKUP负载均衡器之间同步检查的时                         间间隔,单位是秒
  •  authentication {                           //验证类型和密码
  •  auth_type PASS
  •  auth_pass 1111
  •  }
  •  virtual_ipaddress {                     //虚拟IP
  •  192.168.1.1
  • #        192.168.1.2                        //如果有多个,往下加就行了
  • #        192.168.1.3
  •  }
  • }
  • virtual_server 192.168.1.1 80 {    //定义虚拟服务器
  •  delay_loop 6                                   //健康检查时间,单位是秒
  •  lb_algo rr                                        //负载调度算法,这里设置为rr,即轮询算法
  •  lb_kind DR                                     //LVS实现负载均衡的机制,可以有NAT、TUN和DR三个模式可选
  •  persistence_timeout 50                //会话保持时间,单位是秒
  •  protocol TCP                                  //转发协议类型,有tcp和udp两种
  •  sorry_server 127.0.0.1 80          //web服务器全部失败,vip指向本机80端口
  •  real_server 192.168.1.21 80 {    //定义WEB服务器
  •  weight 1                                         //权重
  •  TCP_CHECK {                              //通过tcpcheck判断RealServer的健康状态
  •  connect_timeout 5                       //连接超时时间
  •  nb_get_retry 3                            //重连次数
  •  delay_before_retry 3                  //重连间隔时间
  •  connect_port 80                          //检测端口
  •  }
  •  }
  •  real_server 192.168.1.22 80 {
  •  weight 1
  •  TCP_CHECK {
  •  connect_timeout 5
  •  nb_get_retry 3
  •  delay_before_retry 3
  •  connect_port 80
  •  }
  •  }
  • }

LVS配置

#开启WEB 80 端口服务,并指向WEB1-Real 和WEB2-Real 的服务器

  • /sbin/ipvsadm -A -t 192.168.1.1:80 -s rr
  • /sbin/ipvsadm -a -t 192.168.1.1:80 -r 192.168.1.21:80 -g
  • /sbin/ipvsadm -a -t 192.168.1.1:80 -r 192.168.1.22:80 -g
  • /sbin/route add -host 192.168.1.1 dev eth0

备注:

  • BACKUP的安装和MASTER的安装基本一致,只是一些参数略有变化。
  • 变化的参数如下:
  •  keepalived.conf文件中
  •  原:state MASTER #标示状态为MASTER 备份机为BACKUP
  •  原:priority 100   #MASTER权重要高于BACKUP 比如BACKUP为99

五、web服务器配置

centos下已经配置好LNMP

  • [root@localhost ~]# echo “1” /proc/sys/net/ipv4/ip_forward
  • [root@localhost ~]#echo “1” >/proc/sys/net/ipv4/conf/lo/arp_ignore
  • [root@localhost ~]#echo “2” >/proc/sys/net/ipv4/conf/lo/arp_announce
  • [root@localhost ~]#echo “1” >/proc/sys/net/ipv4/conf/all/arp_ignore
  • [root@localhost ~]#echo “2” >/proc/sys/net/ipv4/conf/all/arp_announce
  • [root@localhost ~]#/sbin/route add -host 192.168.1.1 dev eth0

mysql replication 无聊的延时问题

昨晚发现公司2个做备份replication的mysql服务器延时很大,查询半天后发现是因为备份服务器IO性能过低造成的,
设置
innodb_flush_log_at_trx_commit = 2
缓解了此问题

预计以后还会遇到网络问题造成这种情况,因为备机和主机之间的网络状态很不理想

笔记一下,方便以后操作

Zabbix的events页面非常慢且消耗大量资源

Zabbix的events页面非常慢且消耗大量资源
问题描述
环境 CentOS5? Zabbix-1.4.2 MySQL? 5.1
Zabbix 正常运行了很久之后,突然有一天打开events.php页面,页面非常慢,刷新了几次,结果发现系统负载冲到10以上,差点死掉。
继续阅读