gpt4 book ai didi

openstack - nova boot baremetal,选择池中的特定机器到 'boot'

转载 作者:行者123 更新时间:2023-12-03 08:18:56 25 4
gpt4 key购买 nike

我正在使用 Ironic 帮助我在使用 1U 戴尔服务器的数据中心环境中部署裸机。它工作得很好,我可以使用 Ironic 将机架中的数十台服务器编码,然后当我需要一个裸机实例(通过 nova)时,我只需使用与这些服务器关联的风格,我就得到了其中一个。有没有办法让我得到一个特定的?例如,我的服务器从顶部开始编号,从 control0、control1 一直到 control39。所以,首先我创建了所有的裸机服务器,对它们进行了内省(introspection)。然后我创建一个风格(如下所示,请原谅伪代码)并将每个裸机服务器与该配置文件相关联。

openstack flavor create --id auto --ram 6144 --disk 40 --vcpus 4 control
openstack flavor set --property "cpu_arch"="x86_64" --property "capabilities:boot_option"="local" --property "capabilities:profile"="control" control

i = 0
for each baremetal server's uuid:
ironic node-update server-uuid add name=control$i
i = i + 1
ironic node-update server-uuid add properties/capabilities="profile:control,boot_option:local"

当我遍历列表时,我知道服务器是按自上而下的物理顺序排列的。我希望能够做的是让 nova 在特定的 ironic 裸机(如 control3)上创建一个引导实例。我可以为每个人创建不同的风格,但我认为必须有一种方法来选择特定的硬件?或者按照我指定的顺序选择它们的策略。

我是 Ironic 的新手。我已经对该主题进行了相当多的谷歌搜索,但没有找到任何东西。这是我启动 nova 的方式:

nova boot --flavor control --image rhel-server-7.1-x86_64-dvd.iso --nic 'net-id=723e7b11-3e61-481a-827e-e58b369dd28f' mybootinstance1

效果很好。我想要做的是有一个 nova 引导行,它使用 flavor 控件,以及名称 (control0) 或我可以分配的任何其他属性,以使该机器独一无二。像这样的东西:

nova boot --flavor control --ironic-instance-name control0 --image rhel-server-7.1-x86_64-dvd.iso --nic 'net-id=723e7b11-3e61-481a-827e-e58b369dd28f' mybootinstance1

这实际上是新星池选择过程的简化。我不想使用池,而是使用特定的硬件。

如果这不可能,那么使用 40 种口味来创建单独的“池”是否有很大的缺点?

最佳答案

我认为您可以在 nova boot 中使用 --hint 来选择池中的特定机器。前提条件:编辑/etc/nova/nova.conf,在scheduler_default_filters中添加'JsonFilter'并重启nova-scheduler。然后像这样使用nova boot命令:

nova boot --flavor <flavor> --image <image_id> --nic net-id=<net_id> --hint reservation=<reservation_id> --hint query='["=","$hypervisor_hostname", "<node_uuid>"]' <instance_name>

关于openstack - nova boot baremetal,选择池中的特定机器到 'boot',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33765444/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com