问题标签 [openstack-heat]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
cloud - OpenStack Heat WebHooks 用于向上/向下缩放点到内部(存储)IP
我们正在使用 Mirantis Fuel 7.0 部署 OpenStack Kilo,到目前为止,该系统似乎正在运行。我们添加了云高仪组件和热量,使我们的用户可以自动升级或缩小我们在堆栈上使用的某些 LoadBalancer 服务器。
自动放大和缩小似乎运行良好。唯一的问题是,当我们在“编排”选项卡中检查资源时,生成的 WebHook 指向管理 URL (192.168.0.2:8000),而不是指向与公共 URL 或(最好)服务器名称相同的字符串。
应该是这样的:
看起来像这样:
我检查了端口 (8000),它是打开的并在公共端点上侦听,所以问题不在于服务,而在于生成信息的组件。事实上,如果我手动复制地址并编辑正确的 IP,它可以使用 Restful 客户端或简单的 Web 浏览器从环境外部工作。
但是我们需要生成的 webhook 自动使用公共 URL,以便我们的客户可以从外部应用程序(而不是仅从我们的 OpenStack/horizon 安装)进行调用以修改堆栈状态。
我检查了 /etc/heat/heat.conf 下的 heat 配置,可以找到一些可疑的设置,例如:
不确定这些参数中的哪一个可能是它用于生成 webhook 的参数。
我已经尝试使用公共 IP 和服务器本身的名称来修改它们,似乎没有任何区别。用户界面上的 webhook 仍然指向管理网络中的控制器内部 IP。
openstack - Openstack Heat - 单独的模板
我正在寻找通过多个单独步骤创建堆栈的最佳方法。
我想在第一个模板中,只建立计算节点和网络配置。
在第二个模板中,我想创建存储节点并将它们附加到已经存在的计算节点。
您认为最好的方法是什么?
rest - 通过 REST API 获取堆栈状态,无需在 devstack 中提及租户/项目 ID
全部,
我想通过 REST API 获取 devstack 中新编排的堆栈的状态。我正在使用以下方法来获取状态并且它是成功的。
但是,有时挑战是,我可能无法获取租户 ID。那么,是否有可能在没有租户 ID 的情况下获取堆栈状态?
提前致谢。
openstack-horizon - Openstack:通过仪表板创建嵌套堆栈
我有一个包含嵌套堆栈资源的 heat 模板,我可以通过 heat-api 成功部署它。可以通过仪表板使用相同的 yaml(完成嵌套堆栈创建)吗?
openstack - OpenStack - 如何使用 OS::Heat::ResourceGroup 中的 %index% 迭代 comma_delimited_list?
我有一个 comma_delimited_list 代表固定 IP 的列表,OS::Heat::ResourceGroup
我希望每个节点都会根据他当前的索引获得一个固定的 ip。
我有以下热模板(我只粘贴了相关的):
当我运行命令时:
openstack stack create TomerProtected -e Environment.env -t Template.yaml -f yaml
我收到错误消息:找到无法启动任何令牌的字符“%”
我尝试将 index_var 设置为其他值(索引而不是 %index%),但我仍然无法从 comma_delimited_list 中获取任何特定值。
我的问题是 - 如何使用 %index% from 迭代 comma_delimited_list OS::Heat::ResourceGroup
?
有任何想法吗?
更新:
我自己找到了一个解决方案,但它并不让我满意:
我已将 index_var 更改为: index 将 comma_delimited_list 和当前索引从该模板传递到 MyTemplate.yaml。从 MyTemplate.yaml 我可以从 comma_delimited_list 中获取特定值:
但是从 OS::Heat::ResourceGroup 可以通过大多数方法做到这一点
configuration - 如何在热点中跨可用区分布实例数量?
我有一个沿着这些方向的实例资源:
它创建num_masters
. 现在,我想保证这些 master 将在不同的可用区域中创建(这样当其中一个失败时,另一个将继续工作)。
说,我有 3 个可用区和num_masters == 5
. 如何传播它们,使 zone1 包含节点 1 和 4,zone2 - 2 和 5,等等?
Ansible 有那个 loop.cycle 东西,你可以一遍又一遍地传递一个选项列表。任何想法如何在操作系统中做到这一点?
openstack - Heat 如何设置警报配置并从云高仪返回警报?
我真的需要你的帮助。目前,我正在研究 Heat 自动缩放。我已经学习了一些关于 Heat 中自动缩放的文档。我知道 Heat 使用 Ceilometer API 来设置警报配置并通过 Webhook 从 Ceilometer 获取警报。这些操作显示在 HOT 模板 (OS::Heat::Ceilometer::Alarm) 中。我试图查看 Heat 代码,但我仍然找不到处理警报操作的位置(哪些模块)。具体来说,什么模块将负责创建警报 url,以及什么模块将接收和处理从 Ceilometer 触发的警报 url。
谢谢
openstack - 有没有办法从特定子网获取分配给虚拟机的 IP 并将其嵌入到 Heat 编排模板中?(1 个端口上的所有子网)
有什么方法可以从特定子网获取分配给 VM 的 IP 并将其嵌入 Heat 编排模板中(假设网络有多个子网并且我们只为所有子网创建一个端口)?我需要此信息用于浮动 IP。与单个端口上具有多个固定地址的端口一样,我们需要提供特定的 IP 来创建浮动 IP。
get_attr 键不是很有帮助。这是 JSON 表示。
原因是我需要通过索引来获取端口上分配的 IP。但是没有办法告诉,IP是从哪个子网分配的(因为该端口上映射了多个子网)或者哪个索引具有从所需子网分配的IP
现在我正在使用一个模板来一次创建所有资源。
rest - Openstack HeatClient api查询热量输出-显示
如何使用 Heat Rest Api 获取输出数据。
例如。
我想使用rest api来获取这个..
openstack - 如何在 OpenStack HOT 模板文件中执行本地 shell 命令?
HOT 中的用户数据部分是在新创建的 nova 实例上运行 shell 命令,但是,我想在执行“heat stack-create”命令时运行本地(运行 heat stack-create 命令的机器)shell 命令。
但是在我阅读了 OpenStack HOT 文档之后,我没有找到任何支持这一点的语法。