我从hortonworks(Centos OS)下载了沙盒,然后尝试关注tutorial。似乎ambari-admin-password-reset命令不存在并且丢失。我也尝试用putty登录,控制台让我更改密码,所以我做了。 现在似乎命令就在那里,但是我有不同的控制台密码和一个用于同一用户的putty密码。
我试图找出为什么同一个用户&root;'我有2个不同的密码(一个用于虚拟盒控制台,一个用于putty),我可以登录。我在每个盒子上看到不同的命令。当我共享文件夹时,我只能在虚拟机控制台上看到它,而不是在putty控制台上看到它,这真的令人沮丧。
我如何强制执行从putty看到的内容与我在虚拟框控制台中看到的内容相同。
我认为它与TTY有某种关系,但我不确定。
编辑: 从虚拟机器输出运行命令:
grep "^passwd" /etc/nsswitch.conf
OUT :passwd:files sss
grep root /etc/passwd
OUT :rppt" x" 0" 0" root:/ root:/ bin / bash 操作者:X:11:0:运算符:/根:/ sbin目录/ nologin的
getent passwd root
OUT :root:x:0:0:root:/ root:/ bin / bash
修改 我想这都是关于docker容器的。看起来机器2222端口是hdp 2.5容器的ssh端口而不是托管机器。 现在我又遇到了另一个问题在跑步时
docker exec sandbox ls
它正陷入困境。任何帮助?
感谢帮助者
答案 0 :(得分:3)
所以现在我有时间分析沙盒vm,并为其他用户编写。 正如您在编辑问题时所说的那样,它是沙盒的docker容器设置,它与两个独立的root用户混淆:
通过ssh root@127.0.0.1 -p 2222
进入名为" sandbox"的docker容器。这是CentOS 6.8版(最终版),包含所有HDP服务,尤其是ambari服务。配置在首次登录时强制更改root用户的密码。在此VM中,您还可以执行ambari-admin-password-reset
并为ambari管理员设置密码。
通过控制台访问您到达运行Centos 7.2的docker主机,在这里您可以使用HDP文档中找到的VM的默认root密码登录。
< / LI>使用悬挂的docker exec来解决你的子问题,它似乎是特定docker版本中的一个bug。如果您谷歌那么,您会发现与docker讨论此问题或类似问题的问题。
所以我认为通过yum update
更新主机是个好主意。然而,事实证明这是一条艰难的道路。
yum尝试更新内核,但抱怨说启动分区没有足够的空间。
所以我将启动部分移动到根分区:
之后我发现docker配置已损坏,docker不再启动。在它抱怨的日志中
&#34;启动守护程序时出错:初始化graphdriver时出错: \&#34;在/ var / lib中/搬运工\&#34;包含其他图形驱动程序:devicemapper;请 清理或明确选择存储驱动程序(-s)&#34;
所以我编辑了/etc/systemd/system/multi-user.target.wants/docker.service并将ExecStart设置更改为:
ExecStart=/usr/bin/dockerd --storage-driver=overlay
service docker start
和docker start sandbox
之后。容器再次工作,我可以登录到容器,在ambari-server重启后,一切都恢复了工作。
现在 - 使用新的docker版本1.12.2,docker exec sandbox ls
再次运行。
总而言之,docker exec命令在该特定版本的沙箱中有一个错误,但是如果要升级沙箱,则应该三思而后行。
答案 1 :(得分:1)
我遇到了同样的问题。
HDP 2.5沙箱在docker容器中运行其所有组件,但docker exec -it sandbox /bin/bash
或docker attach sandbox
等命令卡住了。
当我运行一个简单的ps aux
时,我发现了几个/usr/bin/docker-proxy
命令,它们看起来像:
/usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 60000 -container-ip 172.17.0.2 -container-port 60000
他们可能会转发各种HDP组件UI的HTTP端口。
我可以使用root / hadoop进行容器ip(此处为172.17.0.2)进行身份验证。从那里,我可以使用所有“缺少”的命令,如ambari-admin-password-reset。
$ ssh root@172.17.0.2
... # change password
$ ambari-admin-password-reset
注意:我是docker的新手,所以可能有更好的方法来解决这个问题。
答案 2 :(得分:0)
我想在这里发布3.0.1的说明。
我遵循了在此处安装hortonworks 3.0.1版的说明:https://youtu.be/5TJMudSNn9c
运行docker容器后,转到浏览器并输入“ localhost:4200”,这将带您进入托管ambari的容器的in浏览器终端。输入“ root”作为登录名,并输入“ hadoop”作为密码,更改root密码,然后输入“ ambari-admin-password-reset”以重置ambari密码。
为了能够使用sandbox-hdp.hortonworks.com,您需要在/ private / etc / hosts文件的末尾添加“ 127.0.0.1 sandbox-hdp.hortonworks.com”行。苹果机。