Troubleshooting:重新安装Vertica建库后无法启动
环境:RHEL6.5 + Vertica7.1.0-3
1.故障现象
故障现象:Vertica集群安装成功,但是创建数据库后一直无法up.
具体报错输出如下:
Starting Vertica on all nodes. Please wait, databases with large catalogs may take a while to initialize.
Node Status: v_wnop_node0001: (DOWN)
Node Status: v_wnop_node0001: (DOWN)
Node Status: v_wnop_node0001: (DOWN)
Node Status: v_wnop_node0001: (DOWN)
Node Status: v_wnop_node0001: (DOWN)
Node Status: v_wnop_node0001: (DOWN)
Node Status: v_wnop_node0001: (DOWN)
Node Status: v_wnop_node0001: (DOWN)
Node Status: v_wnop_node0001: (DOWN)
Node Status: v_wnop_node0001: (DOWN)
ERROR: Database did not start cleanly on initiator node!
Stopping all nodes
进一步查看vertica日志:
[root@vnode01 v_wnop_node0001_catalog]# tail -f vertica.log
2016-09-07 15:19:07.018 unknown:0x7f298bac5700 [Txn] <INFO> Found my node (v_wnop_node0001) in the catalog
2016-09-07 15:19:07.018 unknown:0x7f298bac5700 [Txn] <INFO> Catalog info: version=0x1, number of nodes=1, permanent #=1, K=0
2016-09-07 15:19:07.018 unknown:0x7f298bac5700 [Txn] <INFO> Catalog info: current epoch=0x1
2016-09-07 15:19:07.018 unknown:0x7f298bac5700 [Catalog] <INFO> Catalog OID generator updated based on GLOBAL tier catalog
2016-09-07 15:19:07.018 unknown:0x7f298bac5700 [Init] <INFO> Catalog loaded
2016-09-07 15:19:07.018 unknown:0x7f298bac5700 [Comms] <INFO> About to launch spread with '/opt/vertica/spread/sbin/spread -c /data/verticadb/WNOP/v_wnop_node0001_catalog/spread.conf'
2016-09-07 15:19:07.019 unknown:0x7f298bac5700 [Comms] <INFO> forked spread pid=82427, wrote pidfile /data/verticadb/WNOP/v_wnop_node0001_catalog/spread.pid
2016-09-07 15:19:07.020 unknown:0x7f298bac5700 [Init] <INFO> Listening on port: 5433
2016-09-07 15:19:07.020 unknown:0x7f298bac5700 [Init] <INFO> About to fork
2016-09-07 15:19:07.021 unknown:0x7f298bac5700 [Init] <INFO> About to fork again
2016-09-07 15:19:07.023 unknown:0x7f298bac5700 [Init] <INFO> Completed forking
2016-09-07 15:19:07.023 unknown:0x7f298bac5700 [Init] <INFO> Startup [Connecting to Spread] Connecting to spread 4803
2016-09-07 15:19:37.039 unknown:0x7f298bac5700 [Init] <INFO> Spread daemon does not appear to be running on 192.168.1.105 -- exiting!
可以看到大概是spread进程在尝试连接4803端口时有什么样的问题,似乎spread进程压根没启动成功;
在检查各节点的防火墙和SELinux之后,都是关闭的状态,并未发现问题。
2.重装集群
前期准备脚本和互信,可参考:
重装集群(先彻底删除再安装)
--删除集群
--杀掉vertica相关进程
cluster_run_all_nodes "hostname;ps -ef|grep vertica |grep -v grep|awk '{print $2}'|xargs kill -9"
--删除vertica软件
cluster_run_all_nodes "hostname;rpm -e vertica"
--杀掉dbadmin相关进程
cluster_run_all_nodes "hostname;ps -ef|grep dbadmin |grep -v grep|awk '{print $2}'|xargs kill -9"
--删除之前创建的组和用户
cluster_run_all_nodes "hostname;id dbadmin"
cluster_run_all_nodes "hostname;groupdel verticadba"
cluster_run_all_nodes "hostname;userdel -r dbadmin"
--删除数据存储目录,软件安装目录
cluster_run_all_nodes "hostname;rm -rf /data/verticadb"
cluster_run_all_nodes "hostname;rm -rf /opt/vertica"
--创建数据存储目录
cluster_run_all_nodes "hostname;mkdir -p /data/verticadb"
--安装
--安装软件
cd /usr2
rpm -ivh vertica-7.1.0-3.x86_64.RHEL5.rpm
--安装集群
/opt/vertica/sbin/install_vertica -s 192.168.1.105,192.168.1.106,192.168.1.107,192.168.1.108 -r /usr2/vertica-7.1.0-3.x86_64.RHEL5.rpm --failure-threshold=HALT -u dbadmin -p vertica
--给数据存储目录赋予权限
cluster_run_all_nodes "hostname;chown -R dbadmin:verticadba /data/verticadb"
--建库
admintools建库
结果这样重装安装的环境,依旧报错,报错内容不变。
3.再次定位
# cluster_run_all_nodes "hostname; ls -lh /tmp/4803 "
vnode01
srw-rw-rw- 1 501 501 0 9月 7 09:54 /tmp/4803
vnode02
srw-rw-rw-. 1 501 501 0 9月 7 09:19 /tmp/4803
vnode03
srw-rw-rw-. 1 501 501 0 9月 7 09:19 /tmp/4803
vnode04
srw-rw-rw- 1 501 501 0 9月 7 09:14 /tmp/4803
可以看到/tmp/4803的所属用户和组都是未被识别的uid和gid,怀疑是否是这个问题影响,导致spread进程无法集群间通信。
4.解决问题
再次重装时,dbadmin用户和组的uid,gid有了变化,所以我们将这个文件也先删除掉。
cluster_run_all_nodes "hostname; rm -rf /tmp/4803"
此次环境dbadmin用户和组先统一:
--保持统一的uid gid
cluster_run_all_nodes "hostname;groupadd -g 700 verticadba"
cluster_run_all_nodes "hostname;useradd -g verticadba -u 700 dbadmin"
再次重装,建库时,跟踪/tmp/4083的状态,发现各节点/tmp/4803依次开始正常:
# cluster_run_all_nodes "hostname; ls -lh /tmp/4803 "
vnode01
srw-rw-rw- 1 dbadmin verticadba 0 9月 7 17:04 /tmp/4803
vnode02
ls: 无法访问/tmp/4803: 没有那个文件或目录
vnode03
ls: 无法访问/tmp/4803: 没有那个文件或目录
vnode04
ls: 无法访问/tmp/4803: 没有那个文件或目录
最终确定果然就是这个问题,最终建库成功。
5.总结
在重装Vertica集群时,需要关注 /tmp/4803是否权限有问题,否则会导致spread进程故障,进而导致整个库起不来。
各节点dbadmin用户的uid和gid尽量保持一致。
Troubleshooting:重新安装Vertica建库后无法启动的更多相关文章
- 升级_开阔视野之Oracle图形化升级(dbca建库后升级)—10.2.0.1.0升为10.2.0.5.0
***********************************************声明*************************************************** ...
- 基于ArcEngine的空间数据通用建库软件介绍
最近花了点时间把之前的空间数据入库功能进行了完善,在这里做一个简单的介绍,也希望大家给提点意见和建议,我的目标是做一个好用.易用.通用.稳定的入库程序. 1.软件特点: 基于模板(方案)的数据更新 ...
- CentOS 6.2 X64上64位Oracle11gR2 静默安装,静默设置监听,静默建库经验
1 安装前环境: 操作系统:CetnOS6.2x64 最小化安装,已配置好网络IP:172.16.2.182,物理内存8GB,硬盘100GB. 已下载: Linux.x64_11gR2_datab ...
- github建库不成功,不能用SVN上传
说明(2017-12-7 11:37:35): 1. 之前用SVN向gihub提交代码没有一点问题,昨天新建了一个仓库,结果死活提交不上去,以为是SVN的问题,折腾了一天都没弄好. 2. github ...
- Oracle 建库
Oracle得安装就不多说了 不过还是建议直接去官网下 其他渠道可能会导致安装问题 具体自己慢慢体会吧 ! 下面主要说下怎么用Oracle建库并且建用户角色 Database configur ...
- Vertica 安装,建库,新建测试用户并授予权限,建表,入库
测试环境:RHEL 6.4 + Vertica 6.1.3-7 需求:搭建Vertica数据库3节点的测试环境,建立测试用户,建表,测试数据入库. 1.各节点关闭防火墙和SELinux,配置主机名,I ...
- 升级_宽视野Oracle图形升级(升级后dbca建库)—10.2.0.1.0提拔10.2.0.5.0
***********************************************声明********************************************** 原创作 ...
- docker重新安装后无法启动
问题描述: docker版本升级或者重新安装后,无法启动服务,出现如下报错: level=error msg="[graphdriver] prior storage driver over ...
- Vertica 6.1不完全恢复启动到LGE方法
环境:RHEL6.2 + Vertica 6.1.3-7 确定所有节点的vertica进程都停掉(包括agent和python),如果有运行的,停止它或者杀掉它. 确定所有节点的spread进程都正常 ...
随机推荐
- .NET跨平台之旅:将示例站点升级至 ASP.NET Core 1.1
微软今天在 Connect(); // 2016 上发布了 .NET Core 1.1 ,ASP.NET Core 1.1 以及 Entity Framework Core 1.1.紧跟这次发布,我们 ...
- hadoop 2.7.3本地环境运行官方wordcount-基于HDFS
接上篇<hadoop 2.7.3本地环境运行官方wordcount>.继续在本地模式下测试,本次使用hdfs. 2 本地模式使用fs计数wodcount 上面是直接使用的是linux的文件 ...
- SASS教程sass超详细教程
SASS安装及使用(sass教程.详细教程) 采用SASS开发CSS,可以提高开发效率. SASS建立在Ruby的基础之上,所以得先安装Ruby. Ruby的安装: 安装 rubyinstaller- ...
- 快递Api接口 & 微信公众号开发流程
之前的文章,已经分析过快递Api接口可能被使用的需求及场景:今天呢,简单给大家介绍一下微信公众号中怎么来使用快递Api接口,来完成我们的需求和业务场景. 开发语言:Nodejs,其中用到了Neo4j图 ...
- iOS 委托与文本输入(内容根据iOS编程编写)
文本框(UITextField) 本章节继续编辑 JXHypnoNerd .文件地址 . 首先我们继续编辑 JXHypnosisViewController.m 修改 loadView 方法,向 ...
- 好用的Markdown编辑器一览 readme.md 编辑查看
https://github.com/pandao/editor.md https://pandao.github.io/editor.md/examples/index.html Editor.md ...
- MongoDB学习笔记~对集合属性的操作
回到目录 $unset清除元素 请注意在单个数组元素上使用$unset的结果可能与你设想的不一样.其结果只是将元素的值设置为null,而非删除整个元素.要想彻底删除某个数组元素,可以用$pull 和$ ...
- Linux:将rhel yum 切换到centos yum
Red Hat Enterprise Linux Server(RHEL) yum安装软件时This system is not registered with RHN. RHN support wi ...
- intellij idea 13&14 插件推荐及快速上手建议
IntelliJIDEA插件安装 首页 > blog Tags : intellij IDEA插件安装 更新日期: 2015-04-29 IntelliJ IDEA插件下载地址: http:// ...
- eclipse,myeclipse 误删文件,回滚历史文件操作
昨天因为误操作把一个写了一上午的代码给删了,找到的这个,以前竟然还没发现有这个功能- -! 具体操作: 1.建立同路径同名的文件 2.文件上右键 --> Compare With --> ...