Triton headnode的状态检查

Triton headnode的状态检查

headnode启动后可以运行sdc-healthcheck命令来查看各个服务的状态。

正常应该都是online的状态。像上面的输出中,有两个zone处于svc-err,意味着这两个zone上有服务出现错误。我们可以登陆上去检查、修复。  

sdc-login redis用于登陆的redis这个zone上;svcs -xv列出有错误的服务;可以看到是redis服务启动失败;svcadm restart redis重启此服务,然后用svcadm clear redis来清除它原来的maintenance状态,再次用svcs -xv来确认服务已经正常启动。 同样可以来修复amoneredis zone上的错误。  

Read More

一次SmartDataCenter headnode启动失败的修复

headnode启动时显示: hash mismatch press any key to reboot 重新启动了几次都是如此。即使是rescue模式也是一样。幸好这只是台测试用的机器,如果真的是一个负责整个数据中心的headnode无法启动,那后果简直不堪设想。目前我还没看到headnode有什么容错的方案。 记得上次关机之前运行了sdcadm experimental update-*命令更新过一些东西,或许是这个过程中出了什么问题。 尝试了几种方法,发现把headnode中的config文件备份下来,重新制作一个启动的U盘,然后把config文件再拷贝过去就可以重新启动了,原来的zones貌似都可正常启动。 具体如下: 把headnode启动U盘插入到一台Linux机器,把它根目录下的config文件拷贝出来。如果你的已经无法读取了,那我也没办法。 使用原来下载的img文件重新制作一个启动U盘。 使用此U盘启动headnode机器,使用rescue模式。同样需要在grub中设置os_console参数。 使用root登陆(密码文件在下载img文件的压缩包中) 登陆后设置网络,使此机器可以连通存放config文件的Linux机器。我要使用scp命令来复制。具体可参考SmartOS的网络配置方式。 在headnode机器上,进入到/mnt/usbkey目录中,将config文件复制到此文件夹下 完成后重新启动即可解决上述启动问题。2016/04/30 更新: 再次重启后发现headnode会默认使用PXE方式启动,这样无法启动headnode。修复方法是在headnode自动后,以root登陆,运行/usbkey/scripts/mount-usb.sh 脚本以挂载U盘,然后编辑/mnt/usbkey/boot/grub/menu.lst文件,将“default 0”这行改为“default 1”即可。0对应的就是PXE启动,1对应的就是“Live 64bit”的启动方式。

Read More