7

如何重新启动使用 devstack 安装的特定 openstack-service?

4

7 回答 7

4

重新加入堆栈屏幕为

./rejoin-stack.sh

并使用 ctrl+a+" 移动到指定的服务页面,然后键入您需要去的屏幕编号。

按 9,然后按 ctrl+C。该服务现在将停止。重新运行以下 devstack 命令来启动服务:(例如对于 nova-network) cd /opt/stack/nova && /usr/bin/nova-network --config /etc/nova/nova.conf || echo "n-net 启动失败" | 三通“/opt/stack/stack/n-net.failure”

按 Ctrl+d 从堆栈屏幕分离。

于 2014-08-06T18:39:18.780 回答
3

运行屏幕命令

 screen -r 

现在,您将在屏幕窗口中看到 Openstack 服务列表;像屏幕底部的“q-svc”、“horizo​​n”、“key-access”;当前活动屏幕将标有*,如“horizo​​n*”

要移动到特定的 Openstack 服务,请按

         "Ctrl + a" and "0-9" 
         Example: "Ctrl + a" 5

跳转到实际服务;您还可以使用以下命令移至下一个或上一个屏幕

         "Ctrl + a" and n  --- > for next
         "Ctrl + a" and p  --- > for previous

现在停止和启动服务;转到相应的屏幕窗口并按

         "Ctrl + c" 

停止服务;现在,这将在相应的屏幕窗口中显示 bash 屏幕;要启动服务,请按向上箭头标记以在屏幕窗口中查看最后执行的命令,然后按 Enter 启动相同的命令。

通过屏幕来启动和停止配置为与 Devstack 一起运行的 Openstack 服务,生活变得更加轻松。

于 2015-04-23T06:19:27.317 回答
1

当 ./stack.sh 完成时,openstack 表面上正在运行。

作为您的堆栈用户,您可以发出以下命令:

screen -dr

这应该为每个服务打开一个带有窗口的屏幕会话。这些服务是从那些屏幕终端会话或 pty 运行的。

您可以简单地终止该进程并从这些 pty 重新启动它。

当然,标准的逻辑操作顺序也适用。如果 mysql 死了,nova-api 将无法很好地启动。keystone 关闭也是如此。所以,要注意依赖关系。

如果您不确定如何在终端中执行服务,请先执行某项ps auxww | grep service或某项操作。这应该提供一些关于如何再次运行二进制文件的见解。

祝你好运。

于 2014-05-12T03:46:32.653 回答
1

rejoin-stack.sh 根据这个git commit被删除,你需要做 screen -c /path/to/devstack_install/stack-screenrc

于 2016-10-25T17:30:54.873 回答
1

以 root 身份运行此命令(例如:启动 keystone 服务)

$ systemctl start devstack@keystone.service

您可以根据需要使用restart, stop,status等代替start

您也可以使用通配符。如下所示。

$ systemctl start devstack@*

=> 它将启动所有 devstack 服务。

于 2017-05-11T03:39:52.263 回答
0

您可以使用它 systemctl start devstack@*来重新启动每个 devstack 服务

于 2021-06-23T19:33:15.817 回答
0

新版本的 devstack 发生了变化。

默认情况下,DevStack 将所有服务作为 systemd 单元文件运行。Systemd 现在是几乎所有 Linux 发行版的默认初始化系统,并且 systemd 编码并解决了许多与运行不佳的进程相关的问题。

假设单位为 n-cpu 以使示例更清晰。

Enable a unit (allows it to be started):
sudo systemctl enable devstack@n-cpu.service

有关更多信息,请访问https://docs.openstack.org/devstack/latest/systemd.html

于 2020-08-30T13:37:09.547 回答