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,重试一下就发现可以啦,能安装也能启动啦!!!!!!!!!!

ambari关于ranger的一个大坑----端口永远是3306,需要手动修改的更多相关文章

  1. 今天发现猎豹浏览器的一个大坑 Request.IsAuthenticated 一直为 false;另外附加原因以及临时的解决方法

    今天掉到了一个大坑里面,爬了1个多小时才发现不是代码的问题,居然是浏览器的问题… 下面是问题的发生过程 单点登陆  有2个站点  http://a.abc.com  http://b.abc.com ...

  2. 通过一个tomcat端口访问多个tomcat项目 tomcat转发

    需求是这样的,有一个tomcat,是80端口,现在我要通过这个tomcat转发到服务器其他tomcat,其他tomcat的端口不是80.这样做就可以避免这样www.baidu.com:8081的情况. ...

  3. 今天领导分享了一个探测端口的命令-linux下提示bash:command not found

    今天领导分享了一个探测端口的命令,于是试了一下,提示未找到-bash: nc: command not found  因此决定将bash的命令在复习一下,温故而知新 总结整理于此: 确定你的DNS可以 ...

  4. 我靠!Semaphore里面居然有这么一个大坑!

    这是why的第 59 篇原创文章 荒腔走板 大家好,我是why哥 ,欢迎来到我连续周更优质原创文章的第 59 篇. 上周写了一篇文章,一不小心戳到了大家的爽点,其中一个转载我文章的大号,阅读量居然突破 ...

  5. 记阿里云 RDS MySQL 的一个大坑

    花了一个下午的时间,终于把一个阿里云 RDS MySQL 的一个大坑填上了,解决方法令人匪夷所思!绝对会让各位看官感到大吃一惊,阿里云 RDS MySQL 居然有这样 xx 的大坑! 问题 最近应业务 ...

  6. 连接数从异常到 300 到 5(RDS MySQL 的一个大坑•后记)

    在 <记 RDS MySQL 的一个大坑> 中,我提到遇到 User juxxxxxxxxxx already has more than 'max_user_connections' a ...

  7. 05 . Go+Vue开发一个线上外卖应用(Session集成及修改用户头像到Fastdfs)

    用户头像上传 功能介绍 在用户中心中,允许用户更换自己的头像.因此,我们开发上传一张图片到服务器,并保存成为用户的头像. 接口解析 在用户模块的控制器MemberController中,解析头像上传的 ...

  8. 如何在Apache中建立一个新端口

    环境: Windows server 2008 R2, Apache, PHP5 步骤: 建立一个目录,里面放置一个index.php. 打开Apache\conf\httpd.conf 文件,做如下 ...

  9. OpenCV imread读取jpg图像的一个大坑

    长话短说 版本区间[OpenCV3.0.0, OpenCV3.4.1]内的OpenCV,(至少在windows下,使用官方提供的预编译版本),imread读取jpg图片后的像素值,和版本区间[Open ...

随机推荐

  1. CSS(六):盒子模型

    一.什么是盒子模型 盒子模型是css中一个重要的概念,理解了盒子模型才能更好的排版. 从上图可以看到标准的盒子模型范围包括margin(外边距).border(边框).padding(内边距).con ...

  2. IOC控制反转

    IOC是Inversion of Control的缩写,多数书籍翻译成“控制反转”,还有些书籍翻译成为“控制反向”或者“控制倒置”.     1996年,Michael Mattson在一篇有关探讨面 ...

  3. 用newInstance与用new是区别的

    用newInstance与用new是区别的,区别在于创建对象的方式不一样,前者是使用类加载机制,那么为什么会有两种创建对象方式?这个就要从可伸缩.可扩展,可重用等软件思想上解释了.Java中工厂模式经 ...

  4. php -- 魔术方法 之 对象输出 : __toString()

    对象输出:__toString() 当一个对象被当做字符串进行输出时(echo,print),会调用__toString()方法 <?php //输出对象 class Person{ //属性 ...

  5. duilib Webkit内核dui化浏览器控件

    參考http://blog.csdn.net/zhuhongshu/article/details/38540711 改进: 1.跟其它duilib控件一样,不包括窗体 2.将onURLChanged ...

  6. "reason":"No handler for type [attachment] declared on field [file]" 最完全解决方案

    0.elasticsearch-mapper-attachments 2.3.4安装 mapper-attachments安装方法分两类,在线和离线: 在线安装 bin/elasticsearch-p ...

  7. ERROR: openstack Error finding address for http://10.16.37.215:9292/v1/images: [Errno 32] Broken pipe

    Try to set: no_proxy=10.16.37.215 this should help 转自: http://askubuntu.com/questions/575938/error-i ...

  8. Erlang语言学习入门

    这是一个命令行程序,可以直接在里面输入表达式进行计算,例如来一个简单的: Erlang R15B01 (erts-5.9.1) [smp:4:4] [async-threads:0] Eshell V ...

  9. jqGrid设置符合条件的行选中

    1.描述:在loadComplete的时候,符合zoneCode列不为null的被选中,第一列为zoeCode2.问题:已经获取到zoneCode不为null的列,但是该行一直没有选中.3.截图:4. ...

  10. JavaIo编程基础复习

    什么是Io io是指Input和Output,指输入和输出 Input是指外部读入数据到内存,例如读取一个文件,或者从网络中读取 Output是指把内存中的数据输出到外部,例如写文件,输出到网络 什么 ...