xCAT 安装迁移

新机器安装系统,配置yun源、Hostname、Timezone、resolv.conf、路由和每个网卡的IP,yum upgrade,禁用SELinux和Firewall,hosts中配置本机主机名和ip,如公网网卡采取DHCP 配置中需添加PEERDNS=no 和 IPV6_PEERDNS=no

VM虚拟机中安装vmware tools,vmware-toolbox-cmd timesync status确认时间同步是否启用,vmware-toolbox-cmd timesync enable启用虚拟机和主机的时间同步

yum install rsync net-snmp-utils

重启后使用go-xcat install 自动化安装xcat

tabedit site:添加修改dhcpinterfaces、managedaddressmode、domain、master、dnsinterfaces、extntpservers;确认forwarders、nameservers。

tabedit networks:确认修改mgtifname、gateway、dhcpserver、tftpserver、ntpservers

修改/etc/resolv.conf,search为site表中的domain,nameserver为xcat自身

makedns,测试dns是否正常

修改/etc/chrony.conf,测试ntp是否正常

修改/etc/exports,限定IP地址范围

修改/etc/httpd/conf/httpd.conf,限定只监听内网的80端口

修改/etc/logrotate.conf,满足合规性要求,增加日志保留时间并启用压缩

迁移/etc/hosts.deny和hosts.all,配置只允许指定IP进行远程登录

修改/etc/postfix/main.cf中的myhostname和inet_interfaces

拷贝旧机器/install下的os image、自定义脚本等到新机器下

tabedit passwd:添加system的用户名密码,密码可以用openssl passwd -1加密

旧机器导出xCAT数据库dumpxCATdb -p /tmp/db,至少将nodelist chain bootparams nodetype mac hosts postscripts noderes nodehm osimage linuximage osdistro ipmi mp mpa等自定义表在新机器上restorexCATdb -p导入

如果需要迁移eventlog和auditlog,导入导出需添加-a参数,auditlog因为比较大导入非常慢

迁移/var/log下的日志

替换root ssh key为新的

迁移/etc/cron.d下的自定义定时任务

Linux DHCP 下自定义路由和网关

主机IP必须通过DHCP获得,但是因故需要重新指定网关并做策略路由。例如主机DHCP获取IP段192.168.1.0/24,DHCP获取网关192.168.1.1,拟将默认路由改为192.168.1.2,本地IP仍然走网关192.168.1.1

RHEL(CentOS) 6/7

/etc/sysconfig/network-scripts/ifcfg-eth0
BOOTPROTO=dhcp
NM_CONTROLLED="no"
ONBOOT=yes
GATEWAY=192.168.1.2
……

/etc/sysconfig/network-scripts/route-eth0
192.168.0.0/16 via 192.168.1.1

/etc/sysconfig/network
NETWORKING=yes
……

Debian 7

/etc/network/interfaces
……
up route del default dev eth0
up route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.1.1 dev eth0
up route add default gw 192.168.1.2 dev eth0
……

Suse 11

/etc/sysconfig/network/routes
……
192.168.0.0 192.168.1.1 255.255.0.0 eth0
default 192.168.1.2 - -

 

RHEL6 正确关闭IPv6的方法

正确的方法是:

sysctl -w net.ipv6.conf.all.disable_ipv6=1
sysctl -w net.ipv6.conf.default.disable_ipv6=1
sed -i '/net.ipv6.conf.all.disable_ipv6=/d' /etc/sysctl.conf
echo "net.ipv6.conf.all.disable_ipv6=1" >> /etc/sysctl.conf
sed -i '/net.ipv6.conf.default.disable_ipv6=/d' /etc/sysctl.conf
echo "net.ipv6.conf.default.disable_ipv6=1" >> /etc/sysctl.conf

/etc/ssh/sshd_conf中的AddressFamily any改为AddressFamily inet,否则sshd会有问题

/etc/modprobe.d/ 目录下新建一个文件,内容为install ipv6 /bin/true,的确能关闭IPv6但是会导致网卡bonding失败等各种问题

/etc/sysconfig/network 里面添加NETWORKING_IPV6=no 或者 IPV6INIT=no 都是没有用的

GPFS增加/dev/cciss/c0d0类设备解决方法

比如hp的dl380g5服务器,raid的逻辑盘在linux中不是/dev/sda而是/dev/cciss/c0d0,mmcrnsd的时候正常,但是mmcrfs的时候报错“Unable to open disk”,使用mmlsnsd -m则有如下显示:

 Disk name    NSD volume ID      Device         Node name                Remarks       
—————————————————————————————
 io00nsd01    0A01C866666C04EB   –              io00                     (not found) server node

解决方法:
cp /usr/lpp/mmfs/samples/nsddevices.sample /var/mmfs/etc/nsddevices
vim /var/mmfs/etc/nsddevices
在$osName = Linux 增加 echo "/dev/cciss/c0d0p4 generic",取消最后return 1的注释,echo中的/dev/cciss/c0d0p4必须和你的nsd描述文件中的device完全一致
chmod +x /var/mmfs/etc/nsddevices

万兆TOE测试

测试环境:IBM HS22 X5650 24Gram Chelsio T420-BCH 关闭超线程 两台,BNT Virtual Fabric 10Gb Switch Module for IBM BladeCenter 两台,RHEL 6.3,ChelsioUwire-2.2.0.0,iperf 2.0.5 (08 Jul 2010) pthreads

详细测试结果见下面的表格,显而易见,万兆TOE还是非常有必要的,否则光对10GB的TCP流量进行基本处理就耗尽CPU资源了。

Continue reading

FreeBSD 打开文件数限制

samba报错smbd’s max open files = 16384
一般是系统的open flies限制

查看系统限制:
[root@storage ~]# sysctl -a | grep maxfiles
kern.maxfiles: 12328
kern.maxfilesperproc: 11095
kern.openfiles: 8760
FreeBSD 8.2,默认系统打开文件数12328,每进程打开文件数11095,kern.openfiles是系统当前打开文件数。

设置新的系统限制:
[root@storage ~]# sysctl kern.maxfiles=65536
[root@storage ~]# sysctl kern.maxfilesperproc=32768

查看某个进程的系统限制,nofile就是这个进程打开文件数的限制
24443是某个smbd的pid
[root@storage ~]# mount -t procfs proc /proc
[root@storage ~]# cd /proc/24443
[root@storage /proc/24443]# ls -l
total 0
-r–r–r–  1 root  wheel  0 Nov  7 20:15 cmdline
———-  1 root  wheel  0 Nov  7 20:15 ctl
———-  1 root  wheel  0 Nov  7 20:15 dbregs
-r–r–r–  1 root  wheel  0 Nov  7 20:15 etype
lr–r–r–  1 root  wheel  0 Nov  7 20:15 file -> /usr/local/sbin/smbd
———-  1 root  wheel  0 Nov  7 20:15 fpregs
-r–r–r–  1 root  wheel  0 Nov  7 20:15 map
———-  1 root  wheel  0 Nov  7 20:15 mem
———-  1 root  wheel  0 Nov  7 20:15 note
———-  1 root  wheel  0 Nov  7 20:15 notepg
———-  1 root  wheel  0 Nov  7 20:15 osrel
———-  1 root  wheel  0 Nov  7 20:15 regs
-r–r–r–  1 root  wheel  0 Nov  7 20:15 rlimit
-r–r–r–  1 root  wheel  0 Nov  7 20:15 status
[root@storage /proc/24443]# cat rlimit
cpu -1 -1
fsize -1 -1
data 34359738368 34359738368
stack 536870912 536870912
core -1 -1
rss -1 -1
memlock -1 -1
nproc 5547 5547
nofile 32768 32768
sbsize -1 -1
vmem -1 -1
npts -1 -1
swap -1 -1

/etc/login.conf可以配置某个用户的系统资源限制,默认是无限制的,就是受限于系统内核限制

/etc/sysctl.conf里面配置对开机启动的服务无效

/boot/loader.conf里面配置对开机启动的服务有效

Debian 安装 VMware Tools 之前的准备

debian 6.0.0 安装的时候只选了Standard system utilities,虽然在安装过程中不认识vmxnet3网卡,但是安装完成后即使没有安装VMware Tools,debian也是可以识别vmxnet3网卡的。

编辑/etc/apt/sources.list,把原来的都注释了,加入下面的内容
deb http://ftp.cn.debian.org/debian squeeze main
deb-src http://ftp.cn.debian.org/debian squeeze main
deb http://ftp.cn.debian.org/debian squeeze-updates main
deb-src http://ftp.cn.debian.org/debian squeeze-updates main
deb http://mirrors.ustc.edu.cn/debian-security/ squeeze/updates main
deb-src http://mirrors.ustc.edu.cn/debian-security/ squeeze/updates main

在安装VMware Tools之前还需要执行 aptitude install make linux-headers-2.6-amd64 来安装gcc make linux-headers等,可喜的是这些都在CD1上就有。
安装mysql的不要忘记运行一下mysql_secure_installation