跳至主要内容

zone start on NFS and start issue.

前几日,用户有需求,因为本地硬盘是在是不够大了, 开始想将数据或者应该将zone的数据放在NFS上。 这就给出了个不小的难题,只能网上搜这样用法,从网上的说法来看,其实SUN官方还没有支持那么做。
当你在做zone直接放到nfs上时,他会报粗错。具体的错误为, zone detected it's not a local file system. balabala...
当时想取巧,在本机磁盘上建立个soft link让他能认为这个是本地硬盘,但事实证明是不成功的。
于是乎,在这千钧一发之际,万能的google又救命了。 详细请参阅 joost pronk's weblog .
根据实际情况进行总结。
 #mkdir 6G /nfs/test #之前建立过300M,但是由于目前Solaris 10的需求有将近6G左右
 #lofiadm -a /nfs/test /dev/lofi/1
#newfs /dev/lofi/1
#mkdir /zone/test_zone #建立本地磁盘目录
#mount /dev/lofi/1 /zone//test_zone
#chmod 700 /zone/test_zone
 
然后就可以按照一般的步骤那么安装下去。而且基本没什么岔子。
 
原本以后就这么了解了,结果没想周一来的时候zone在nfs上的起不了了。
看机器的状态zoneadm list -ivc是好的就是死活进不去, 然后只能就zoneadm -z testzone halt。 这时候发觉mount点mount不上去了。
mount的时候报i/o error而在机器log里面也
Jan 11 09:28:01 cnnjx026 devfsadmd[636]: [ID 272826 daemon.error] mknod failed for /local/zones/cnnjx026z019/dev/pts/356: I/O error
 
本来试着想用
#mount -o rw /dev/lofi/1 /zone/test_zone 还是错误后来试着read-only
#mount -o ro /dev/lofi/1 /zone/test_zone 是成功的。 那就怪了, 然后去nfs上查,发觉nfs的空间周末的时候蛮了,导致不能写入,然后mount但就掉了。清空部分空间以后,在mount还是不行,只得做一次
#fsck /dev/lofi/1 估计机器掉的时候还是在写数据,导致这个镜像在时候的时候也有问题。做完后
#mount /dev/lofi/1 /zone/test_zone 成功
#zoneadm -z test_zone boot
稍等后能就能进入。
 
想比较而言,在本地磁盘的zone管理更为方便,而nfs上的zone虽然为成本大大节省,但是不可预料性太大。 特别是一个相对复杂的r&d环境更是。
 

评论

此博客中的热门博文

4 steps to delete account in Gerrit DB

4 steps to delete account in DB. Delete from accounts where preferred_email=’’; delete from account_ssh_keys where account_id=''; delete from account_external_ids where external_id='gerrit:*’; delete from account_external_ids where external_id='username:*’; whatever it was in H2 database and postgres db . H2: ssh -p 24198 localhost gerrit gsql Postgres: psql

Python学习笔记20100117

映射list   Dictionary 是用{}. list 是一那个[]. turple是用() 当你定义过dictionary后,你可以使用d.keys(), d.values(),d.items()将定义后的时候分别显示出来 当然可以将list里的值加减乘除,也可以如一般的定义直接重新复制这个list. 链接与分割字符串的 li=";", join(li) 则显示的就是 分隔符为;的数 如果使用li=li.split(";")则将刚刚;的分隔符删除,而split里也可定义域,如li.split(";",1)   自省 <---这是啥 之前在使用的时候发觉有些书本上的模块不能调用,很多是py脚本定义过的函数。 下载该脚本s,然后上传至指定位置。 >>>import sys >>>sys.path >>>sys.path.append("绝对位置")然后就能调用这些脚本和参数了。 删除 >>>sys.path.pop() 定义一个参数是 def info(test, test1=10.test2=12): info是函数名,test是必备参数,因为没有定义值,test1和test2是可选参数,定义了初始值   以上是外部函数的调用,下面转到内部函数 内部函数有type,str,dir及其他   ---type 返回任意字符的类型,模块也可以。types模块 >>> type(1) <type 'int'> >>> li=[] >>> type(li) <type 'list'> >>> import odbchelper >>> type(odbchelper) <type 'module'> >>> type(sys) <type 'module'> >>> import types ...