Posts Tagged ‘opensolaris’

ZFS性能

February 4th, 2009

在使用ZFS(OpenSolaris200811)的过程中碰到了一个问题,当在DELL2850+220S(8块做raidz)和DELL2850+本地硬盘(5块做raidz)的时候,性能非常差,我拷贝rhel5.3的ISO文件,大概需要10分钟左右才能拷贝完成。这明显是不正常的,跟磕死老大沟通了一下,基本断定是raid卡的驱动不行导致的,raid卡型号是perc 4e,但是仍然不知道根本原因。

基于我目前的几台NFS服务器,做了一些拷贝测试,如下:

RHEL 4.7(DELL2850)
# time cp rhel-server-5.3-x86_64-dvd.iso /export/scratch_qa/test/

real    1m12.942s
user    0m0.212s
sys     0m16.519s

OpenSolaris 200811(DELL 2950)
# time cp rhel-server-5.3-x86_64-dvd.iso /data/export/test/

real    0m44.246s
user    0m0.067s
sys     0m13.097s

Solaris10 update 6(DELL 2850)
# time cp rhel-server-5.3-x86_64-dvd.iso /data/

real    1m43.993s
user    0m0.007s
sys     0m16.932s

虽然不全面,但是基本上也可以看出ZFS的性能并没有大家想像中的那么差,当然OpenSolaris虽然性能好,但是可能是因为硬件好的缘故,不过在旧硬件上,也不应该表现那么差啊,10分钟才拷贝完!!:|

OpenSolaris的rpcbind

January 15th, 2009

OpenSolaris的rpcbind进程默认只监听本地,所以在本机rpcinfo -p localhost是没问题的,但是在其他机器上则会报错。我在配置nis slave的时候,碰到的这个问题。

做如下设置可以使rpcbind容许其他机器查看.

root@chifeng :/etc/default# svccfg -s svc:/network/rpc/bind
svc:/network/rpc/bind> setprop config/local_only=false
svc:/network/rpc/bind> end
root@chifeng :/etc/default# svccfg -s rpc/bind listprop config/local_only
config/local_only  boolean  false

随便找个linux机器试试
[root@ ~]# rpcinfo -p 172.17.33.39
rpcinfo: can’t contact portmapper: rpcinfo: RPC: Authentication error; why = Failed (unspecified error)
设置之后再试,就ok了
[root@ ~]# rpcinfo -p 172.17.33.39
program vers proto   port
100000    4   tcp    111  portmapper
100000    3   tcp    111  portmapper
100000    2   tcp    111  portmapper
100000    4   udp    111  portmapper
100000    3   udp    111  portmapper
100000    2   udp    111  portmapper
100004    2   udp    896  ypserv
100004    1   udp    896  ypserv
100004    1   tcp    973  ypserv
100004    2   tcp  52454  ypserv
100007    3   udp  38345  ypbind
100007    2   udp  38345  ypbind
100007    1   udp  38345  ypbind
100007    3   tcp  53239  ypbind
100007    2   tcp  53239  ypbind
100007    1   tcp  53239  ypbind

这一点来看,OpenSolaris默认还是比较安全的…….

在OpenSolaris下安装Postfix

January 14th, 2009

OpenSolaris0811默认用的是Sendmail,作为一个Postfix的fans,当然第一件事就是替换他为Postfix,步骤如下:

1,由于我使用pkgutil安装,所以先装这个工具
pkgadd -d http://blastwave.network.com/csw/pkgutil_i386.pkg
我是x86的平台,如果是sparc平台则装pkgutil_sparc.pkg

2,安装Postfix,执行下面命令,一路按y即可
pkgutil -i postfix

3,执行下面几个命令
svcadm disable sendmail
svcadm enable nfs/client
mkdir /var/spool/postfix
chgrp postdrop /var/spool/postfix/
cd /opt/csw/var/spool/postfix/
find . -depth | cpio -pdm /var/spool/postfix/
cd /etc/ && ln -s  opt/csw/postfix/
/opt/csw/bin/newaliases

4,改动几个你常用的参数并且启动postfix
postconf -e myhostname=mail.chifeng.name
svcadm restart cswpostfix

5,发信测试吧,肯定可以了。邮件日志在/var/log/syslog。

6,最好设置一下环境变量,方便使用,这点上我不得不说,OpenSolaris的包管理机制真垃圾,到处乱放!!唉,不说了,贴PATH
PATH=/usr/gnu/bin:/usr/bin:/usr/X11/bin:/usr/sbin:/sbin:/bin:/usr/local/bin:/usr/local/sbin:/root/bin:/opt/csw/bin:/opt/csw/sbin

zfs for munin

December 17th, 2008

在使用ZFS的过程中,我想监控到每一个pool的读写速度的历史数据,但是munin里面并没有这个脚本,因此便自己写了一个,收集指定的pool的读写速度数据,形成图表。

哪位老大需要可以直接下载使用,我在OpenSolairs 200811版中测试没问题。

下载地址:

http://www.chifeng.name/dist/patch/zfs_poolname