15.5. 启动临时 heat 进程
在以前的 Red Hat OpenStack Platform (RHOSP)版本中,系统安装的 Heat 进程用于安装 overcloud。现在,我们使用 ephermal Heat 安装 overcloud,这意味着 heat-api 和 heat-engine 进程会根据 部署、更新 和 upgrade 命令按需启动。
在以前的版本中,您使用 openstack stack 命令来创建和管理堆栈。此命令默认不再可用。为了进行故障排除和调试目的,例如堆栈应该失败,您必须首先启动临时 Heat 进程才能使用 openstack stack 命令。
使用 openstack overcloud tripleo launch heat 命令,在部署外启用临时 heat。
流程
使用
openstack tripleo launch heat命令启动临时 Heat 进程:(undercloud)$ openstack tripleo launch heat --heat-dir /home/stack/overcloud-deploy/overcloud/heat-launcher --restore-db命令在启动 Heat 进程后退出,Heat 进程将继续作为 podman pod 在后台运行。
使用
podman pod ps命令来验证ephemeral-heat进程是否正在运行:(undercloud)$ sudo podman pod ps POD ID NAME STATUS CREATED INFRA ID # OF CONTAINERS 958b141609b2 ephemeral-heat Running 2 minutes ago 44447995dbcf 3使用
export命令导出OS_CLOUD环境:(undercloud)$ export OS_CLOUD=heat使用
openstack stack list命令列出已安装的堆栈:(undercloud)$ openstack stack list +--------------------------------------+------------+---------+-----------------+----------------------+--------------+ | ID | Stack Name | Project | Stack Status | Creation Time | Updated Time | +--------------------------------------+------------+---------+-----------------+----------------------+--------------+ | 761e2a54-c6f9-4e0f-abe6-c8e0ad51a76c | overcloud | admin | CREATE_COMPLETE | 2022-08-29T20:48:37Z | None | +--------------------------------------+------------+---------+-----------------+----------------------+--------------+您可以使用
openstack stack environment show和openstack stack resource list等命令进行调试。调试完成后,停止 emphemeral Heat 进程:
(undercloud)$ openstack tripleo launch heat --kill
有时,导出 heat 环境会失败。当其他凭据(如 overcloudrc )正在使用时,可能会发生这种情况。在这种情况下,取消设置现有环境,并提供 heat 环境。
(overcloud)$ unset OS_CLOUD
(overcloud)$ unset OS_PROJECT_NAME
(overcloud)$ unset OS_PROJECT_DOMAIN_NAME
(overcloud)$ unset OS_USER_DOMAIN_NAME
(overcloud)$ OS_AUTH_TYPE=none
(overcloud)$ OS_ENDPOINT=http://127.0.0.1:8006/v1/admin
(overcloud)$ export OS_CLOUD=heat