Hortonworks Sandbox HDP3.0.1的Ranger默认账号密码及重置咨询
我来帮你搞定HDP 3.0.1沙箱里Ranger admin登录的问题,结合我处理过的类似场景,给你几个可行的方案:
一、先确认HDP 3.0.1 Ranger的默认账号密码
很多人会误以为Ranger默认密码是admin,但HDP 3.0.1沙箱里的Ranger admin默认密码其实是rangerR0cks!(注意大小写和特殊字符),你可以先试试这个密码登录Ranger UI,说不定直接就能进去了。
二、如果默认密码不行,修复Ambari与Ranger密码同步问题
你遇到的「Ranger Admin password check alert」告警,本质是Ambari后台存储的Ranger admin密码和Ranger数据库里的密码没同步上,按下面的步骤一步步来:
- 第一步:登录Ambari UI(默认账号
admin,密码admin),找到Ranger服务,进入Configs标签页 - 第二步:在General分类下找到「Ranger Admin user's password」,设置一个你记得住的密码(比如
MyRangerPass2024!) - 第三步:切换到Advanced分类,找到「Advanced ranger-env」,确保里面的
ranger_admin_password和你刚设置的密码完全一致 - 第四步:再找到「Advanced ranger-admin-site」,确认
ranger.jpa.jdbc.password是rangeradmin(这是Ranger连接MySQL的默认密码,没改过的话不用动) - 第五步:点击页面底部的Save,Ambari会提示需要重启相关服务,点击「Restart All Affected」,等服务重启完成
- 第六步:手动同步数据库密码(这步很关键,之前你可能没做):
- 打开终端,进入sandbox-hdp容器:
docker exec -it sandbox-hdp bash - 执行Ranger的密码同步脚本:
/usr/hdp/current/ranger-admin/setup.sh,这个脚本会自动把Ambari里设置的密码同步到Ranger的MySQL数据库中 - 同步完成后,再重启一次Ranger服务:
ambari-agent restart ranger-admin
- 打开终端,进入sandbox-hdp容器:
如果不想用脚本,也可以手动修改数据库(用你能登录的maria_dev用户):
- 进入容器后,登录MySQL:
mysql -u maria_dev -p,输入maria_dev的默认密码maria_dev - 切换到Ranger的数据库:
use ranger; - 生成你要设置的密码的SHA-256哈希值,比如要设为
MyRangerPass2024!,执行:echo -n "MyRangerPass2024!" | sha256sum,复制输出的哈希值(去掉后面的空格和文件名) - 更新admin用户的密码:
UPDATE x_portal_user SET password='刚才复制的哈希值' WHERE login_id='admin'; - 退出MySQL,重启Ranger服务即可
三、关于MySQL root登录的问题
HDP 3.0.1沙箱里的MySQL root用户默认是用临时密码,并且只允许本地登录,你可以这样获取并修改:
- 进入sandbox-hdp容器:
docker exec -it sandbox-hdp bash - 查看MySQL日志里的临时密码:
cat /var/log/mysqld.log | grep 'temporary password' - 用临时密码登录root:
mysql -u root -p,输入刚才找到的临时密码 - 修改root密码:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyRootPass2024!';
不过其实你已经能用maria_dev访问Ranger数据库了,修改Ranger密码根本不需要root权限,所以上面的步骤用maria_dev就足够了。
内容的提问来源于stack exchange,提问作者Sergey Konotop




