Dav*_*d H 10 linux centos docker hortonworks-sandbox
我从hortonworks(Centos OS)下载了沙箱,然后尝试按照教程进行操作.似乎ambari-admin-password-reset命令不存在并且丢失.我也尝试用putty登录,控制台让我更改密码,所以我做了. 现在似乎命令就在那里,但是我有不同的控制台密码和一个用于同一用户的putty密码.
我试图找出为什么对于同一个用户'root'我有两个不同的密码(一个用于虚拟盒控制台,一个用于putty)我可以登录的原因.我在每个盒子上看到不同的命令.当我共享文件夹时,我只能在虚拟机控制台上看到它,而不是在putty控制台上看到它,这真的令人沮丧.
我如何强制执行我从putty看到的内容与我在虚拟框控制台中看到的内容相同.
我认为它与TTY有某种关系,但我不确定.
编辑:从虚拟机器输出运行命令:
grep "^passwd" /etc/nsswitch.conf
Run Code Online (Sandbox Code Playgroud)
OUT:passwd:files sss
grep root /etc/passwd
Run Code Online (Sandbox Code Playgroud)
OUT:rppt"x"0"0"root:/ root:/ bin/bash operator:x:11:0:operator:/ root:/ sbin/nologin
getent passwd root
Run Code Online (Sandbox Code Playgroud)
OUT:root:x:0:0:root:/ root:/ bin/bash
编辑: 我认为这是关于docker容器的.看起来机器2222端口是hdp 2.5容器的ssh端口而不是托管机器.现在我又遇到了另一个问题 跑步的时候
docker exec sandbox ls
Run Code Online (Sandbox Code Playgroud)
它被卡住了.任何帮助?
谢谢你的帮助
所以现在我有时间分析沙箱虚拟机,并为其他用户编写它。正如您在问题编辑中正确指出的那样,它是沙箱的 docker 容器设置,它与两个单独的 root 用户混淆:
通过ssh root@127.0.0.1 -p 2222你进入称为“沙箱”的docker容器。这是 CentOS 版本 6.8(最终版),包含所有 HDP 服务,特别是 ambari 服务。该配置强制 root 用户在首次登录时更改密码。在此虚拟机中,您还可以执行ambari-admin-password-reset并设置 ambari 管理员的密码。
通过控制台访问,您可以到达运行 Centos 7.2 的 docker 主机,在这里您可以使用 HDP 文档中找到的虚拟机的默认 root 密码登录。
对于挂起的 docker exec 的子问题,这似乎是该特定 docker 版本中的一个错误。如果你用谷歌搜索,你会发现讨论这个问题或与 docker 类似的问题。所以我认为通过 更新主机是个好主意yum update。然而,事实证明这是一条艰难的道路。
yum 尝试更新内核,但抱怨引导分区上没有足够的空间。
所以我将启动分区移动到根分区:
之后我发现 docker 配置已损坏并且 docker 不再启动。在它抱怨的日志中
“启动守护程序时出错:初始化 graphdriver 时出错:\”/var/lib/docker\”包含其他 graphdrivers:devicemapper;请清理或显式选择存储驱动程序 (-s )”
所以我编辑了 /etc/systemd/system/multi-user.target.wants/docker.service 并将 ExecStart 设置更改为:
ExecStart=/usr/bin/dockerd --storage-driver=overlay
Run Code Online (Sandbox Code Playgroud)
在 aservice docker start和 a之后docker start sandbox。容器再次工作,我可以登录到容器,并且在 ambari-server 重新启动后,一切再次工作。
现在,有了新的 docker 版本 1.12.2,docker exec sandbox ls它又可以工作了。
综上所述,docker exec 命令在该特定版本的沙箱中存在错误,但如果您想升级沙箱,您应该三思而后行。