OP回答如下(希望对社区有所帮助)
下面你会看到我的真实答案。(我发布这个问题是为了传递答案。)我花了一段时间才找到合适的答案,所以我在这里发帖,可能会加快其他可怜的灵魂的努力。
Apache Zeppelin安装仅解释Ubuntu案例
如果您查看Apache's site(截至2018年1月),您将看到在Ubuntu OS上设置服务的说明(例如,您可以在启动,重新启动等时启动的守护程序)。你会发现类似这样的东西:sudo service zeppelin start sudo service zeppelin stop sudo service zeppelin restart
但是,如果您按照该页面进行标准安装,则在使用CentOS 7时,在安装后默认情况下没有注册zeppelin
服务。也就是说,如果您键入类似service zeppelin start
的内容,则无法找到该服务。
此外,对于我正在使用的CentOS 7,有一个shift towards using systemctl
instead。但是尝试systemctl
也不起作用(找不到zeppelin
)。
齐柏林飞艇本身运行良好,只是“自动启动”有问题
我可以让直接的可执行调用,例如./bin/zeppelin-daemon.sh start
,正常工作。但这并没有提供我想要的解决方案。我希望能够知道,如果机器重新启动或其他任何事情,齐柏林飞艇将是可用的,因为它在启动时启动。
1条答案
按热度按时间wtlkbnrh1#
搜索引擎
我想“真相一定就在那里”,但我搜索的许多路径都没有帮助。
但是,this link from InfoWorld做到了。
关键问题
总而言之,有两个问题我需要了解:
1.在CentOS 7中,虽然
systemctl
是理想的,但service
仍然可以接受。1.无论出于何种原因,
zeppelin.service
文件不会在CentOS中自动创建(也许所有非Ubuntu版本的 nix?), 即使标准的.service
文件也可以正常工作 *。所以请继续阅读这个链接,但这个故事的重要部分是我需要做以下事情:1.从头开始创建
/etc/systemd/system/zeppelin.service
文件。1.在该文件中,放置以下内容:
部分细节
上面的大部分内容可能是不言自明的(链接的文章没有过多解释细节),但这里是一个细分:
User=zeppelin
:在本例中,Zeppelin示例被设置为多用户,从服务器远程登录。如果你想在重启时自动启动Zeppelin,你可能有相同的用例。zeppelin
(Zeppelin软件使用的任何通用用户),这在InfoWorld链接中有解释,但also here。Group=zeppelin
:同上。WorkingDirectory
:同上(创建一个用户zeppelin
,在那里安装Zeppelin,yada,yada.该链接有更多关于步骤的信息)。ExecStart
:这是关键行;你需要确保无论何时你输入service zeppelin start
,它都指向这个路径,你在ExecStart
中输入的路径。ExecStop
:与上面的想法相同。注册新服务
最后一个“魔法”是输入:
这是关键。这类似于键入
source ~/.bash_profile
,如果这意味着什么的话。这一行实际上是在说刷新所有守护进程。最后,我建议显式输入
这样你就能确定它被找到了假设它实际上做了一些事情(例如,你看到像
Zeppelin start [ OK ]
或Redirecting to /bin/systemctl start zeppelin.service
.在这两种情况下,你知道service
被发现和工作).