2008年10月 归档

    在/var/log/messages中发现大量错误,内容如下:

Oct 29 09:27:55 tomcat4 kernel: printk: 95 messages suppressed.
Oct 29 09:27:55 tomcat4 kernel: TCP: time wait bucket table overflow

原因:/proc/sys/net/ipv4/tcp_max_tw_buckets的值太小,才2000

解决方法:echo 180000 > /proc/sys/net/ipv4/tcp_max_tw_buckets

tcp_max_tw_buckets 参数类型:整型
    系统在同时所处理的最大timewait sockets 数目。如果超过此数的话﹐time-wait socket 会被立即砍除并且显示警告信息。之所以要设定这个限制﹐纯粹为了抵御那些简单的 DoS 攻击﹐千万不要人为的降低这个限制﹐不过﹐如果网络条件需要比默认值更多﹐则可以提高它(或许还要增加内存)。

drbd的安装和使用

| 暂无评论 | 暂无引用通告

DRBD的功能

DRBD实际上是一种块设备的实现,主要被用于Linux平台下的高可用(HA)方案之中。他是有内核模块和相关程序而组成,通过网络通信来同步镜像整个设备,有点类似于一个网络RAID的功能。也就是说当你将数据写入本地的DRBD设备上的文件系统时,数据会同时被发送到网络中的另外一台主机之 上,并以完全相同的形式记录在一个文件系统中(实际上文件系统的创建也是由DRBD的同步来实现的)。本地节点(主机)与远程节点(主机)的数据可以保证实时的同步,并保证IO的一致性。所以当本地节点的主机出现故障时,远程节点的主机上还会保留有一份完全相同的数据,可以继续使用,以达到高可用的目的。

 

安装DRBD

1、通过源码安装:

下载源码包:

http://oss.linbit.com/drbd/

解压后编译安装:

make clean

make all

make install

make install-tools

 

2、通过RPM包安装:

下载RPM软件包:

http://mirror.centos.org/centos/4/extras/x86_64/RPMS/

drbd82-8.2.6-1.el4.centos.i386.rpm

kmod-drbd82-smp-8.2.6-2.2.6.9_78.0.1.EL.x86_64.rpm

第一个为工具包,第二个为内核模块。

 

配置DRBD

试验用配置文件:

global {

    usage-count yes;

}

common {

}

resource r0 {

  protocol C;

  startup {

    become-primary-on both;

    degr-wfc-timeout 120;    # 2 minutes.

  }

  disk {

    on-io-error   detach;

  }

  net {

    allow-two-primaries;

  }

  syncer {

    rate 300M;

  }

  on host1 {

    device     /dev/drbd0;

    disk       /dev/sda3;

    address    10.167.33.11:7788;

    flexible-meta-disk  internal;

  }

  on host2 {

    device    /dev/drbd0;

    disk      /dev/sda3;

    address   10.167.33.12:7788;

    meta-disk internal;

  }

}

 

配置选项描述:

protocol C;为数据同步时的传输模式

become-primary-on both;服务启动时为primary状态

degr-wfc-timeout 120;如果2分钟后还能能建立连接则进入standby状态

allow-two-primaries; primary模式

rate 300M;同步网速上限

on host1 定义分区

管理DRBD

1、启动服务:

Service drbd start

2、关闭服务:

Service drbd stop

3、块设备初始化

创建meta data

drbdadm create-md r0

对于装有文件系统的块设备,需要破坏原文件系统:

dd if=/dev/zero of=/dev/sda3 bs=1k

初始化同步:

drbdadm -- --overwrite-data-of-peer primary r0

暂停同步:

drbdadm pause-sync all

恢复同步:

drbdadm resume-syncall

4、节点中主机crash后的处理:

Dual-primary mode

crash主机上的操作:

A、断开链接

drbdadm disconnect r0

B、将主机状态改为secondary状态

drbdadm secondary r0

C、从远端同步数据

drbdadm -- --discard-my-data connect r0

D、登入primary主机,再次发起连接:

drbdadm connect r0

E、完成同步后,将secondary主机改回primary模式。

drbdadm primary r0

 

5、查看drbd的状态

cat /proc/drbd

相关资料:

1、  DRBD笔记(阿里巴巴数据库团队博客)

http://www.alidba.net/index.php/archives/65

2、  DRBD用户使用手册

http://www.drbd.org/users-guide-emb/users-guide.html


关于此归档

这里是2008年10月的所有日记,它们按照时间从新到老排序。

上一篇日记2008年5月

下一篇日记2008年11月

首页归档页可以看到最新的日记和所有日记。