ambari关于ranger的一个大坑----端口永远是3306,需要手动修改
ambari关于ranger的一个大坑----端口永远是3306
这个坑是我在搭建ambari环境的时候发现的,我并没有找到原因,求助同事,然后一步步循着蛛丝马迹和试探,终于解决了,然而也揭露了ambari的大坑!!!!
ambari安装ranger的时候需要连接数据库,我选择的是mysql数据库,这个时候你需要输入数据库root用户名和密码,因为需要连接root用户去创建新用户和数据库
问题就出在这里了
数据库并不在集群机器上面,在另外一台服务器,大家都知道一般生产环境数据库的端口号都不会设置为3306
那么数据库的iP和端口(非3306)在添加ranger组件的时候已经配置了,但是其实这个时候它的配置并没有生效,因为你发现你在配置好相关参数,去安装启动ranger的时候,
ranger admin怎么都无法启动,并报错connection refused!!!!
其他的多余信息一样没有,就这么句话,错很难找,然后就把报错的那个命令拿到服务器上面进行执行,返回的信息是一样的
一开始以为是数据库的连接数到顶了或者连接时间设置的不够长、或者root没有远程连接权限导致,然而发现并不是
最后在服务器上面把执行命令在IP后面加了端口发现能成功连接远程的mysql数据库!!!!!!喜大普奔!!!!!!!!
那么证明数据库确实没有问题,那么问题来了,这也就是说我的ranger配置里面,端口号未生效!!!!!!!!!!!!!!
怎么办呢,在报错提示里面的脚本里面找到关于问题的部分,手动添加端口号,然后重启ranger admin试试
成功啦!!!!!!!!!!!!!!ranger admin成功启动
请记住了,如果你的mysql数据库端口号不是3306,那么正常情况下你都会遇上这个问题的。有不理解的可随时@我,
唉,记忆力为一天的我需要时刻用笔记来提醒自己,以防自己忘记了,下次还纠结在这上面,心疼自己的脑子,时常不在线上
这里再补充一个问题,就是ambari在启用kerberos的时候,你需要提前在服务器上面安装krb的server和client,那么这个时候你一定要注意了,krb的版本一定得是19以上的,否则你在认证的时候和添加组件之后启动的时候,会报一堆权限不通过的问题,然后你去百度,发现答案千篇一律,还解决不了问题,其实就是krb的版本不对,血的教训!!!!
最后再啰嗦一句,就是安装ranger的时候,很可能你的ranger的conf文件为红色的(Too many levels of symbolic links ),无法打开进去,因为你的软连接方式不对,
/etc/ranger/admin和/usr/hdp/current/ranger-admin下面的conf都为红色,执行ll一下发现的,这个时候把这个两个地方的conf都删除,
先将/etc/ranger-admin/2.6.5.0-292/0软连接到/usr/hdp/current/ranger-admin/conf,
后进入/usr/hdp/current/ranger-admin,将conf软连接到/etc/ranger/admin,重试一下就发现可以啦,能安装也能启动啦!!!!!!!!!!