故障排除

一旦所有服务都已运行并正确配置,并且节点已使用 Bare Metal 服务注册并处于 available 可用供应状态,Compute 服务应将该节点检测为可用资源并将其暴露给调度器。

注意

存在延迟,Compute 服务识别 Bare Metal 服务资源(包括添加和删除)中的任何更改可能需要最多一分钟(一个周期性任务周期)。

除了查看 nova-compute 日志文件外,您还可以通过查看 Compute hypervisor 列表来查看可用资源。其中报告的资源应与裸机节点属性和 Compute 服务 flavor 匹配。

以下是一些比较 Compute 服务和 Bare Metal 服务中资源的命令示例

$ baremetal node list
+--------------------------------------+---------------+-------------+--------------------+-------------+
| UUID                                 | Instance UUID | Power State | Provisioning State | Maintenance |
+--------------------------------------+---------------+-------------+--------------------+-------------+
| 86a2b1bb-8b29-4964-a817-f90031debddb | None          | power off   | available          | False       |
+--------------------------------------+---------------+-------------+--------------------+-------------+

$ baremetal node show 86a2b1bb-8b29-4964-a817-f90031debddb
+------------------------+----------------------------------------------------------------------+
| Property               | Value                                                                |
+------------------------+----------------------------------------------------------------------+
| instance_uuid          | None                                                                 |
| properties             | {u'memory_mb': u'1024', u'cpu_arch': u'x86_64', u'local_gb': u'10'}  |
| maintenance            | False                                                                |
| driver_info            | { [SNIP] }                                                           |
| extra                  | {}                                                                   |
| last_error             | None                                                                 |
| created_at             | 2014-11-20T23:57:03+00:00                                            |
| target_provision_state | None                                                                 |
| driver                 | ipmi                                                                 |
| updated_at             | 2014-11-21T00:47:34+00:00                                            |
| instance_info          | {}                                                                   |
| chassis_uuid           | 7b49bbc5-2eb7-4269-b6ea-3f1a51448a59                                 |
| provision_state        | available                                                            |
| reservation            | None                                                                 |
| power_state            | power off                                                            |
| console_enabled        | False                                                                |
| uuid                   | 86a2b1bb-8b29-4964-a817-f90031debddb                                 |
+------------------------+----------------------------------------------------------------------+

$ nova hypervisor-list
+--------------------------------------+--------------------------------------+-------+---------+
| ID                                   | Hypervisor hostname                  | State | Status  |
+--------------------------------------+--------------------------------------+-------+---------+
| 584cfdc8-9afd-4fbb-82ef-9ff25e1ad3f3 | 86a2b1bb-8b29-4964-a817-f90031debddb | up    | enabled |
+--------------------------------------+--------------------------------------+-------+---------+

$ nova hypervisor-show 584cfdc8-9afd-4fbb-82ef-9ff25e1ad3f3
+-------------------------+--------------------------------------+
| Property                | Value                                |
+-------------------------+--------------------------------------+
| cpu_info                | baremetal cpu                        |
| current_workload        | 0                                    |
| disk_available_least    | -                                    |
| free_disk_gb            | 10                                   |
| free_ram_mb             | 1024                                 |
| host_ip                 | [ SNIP ]                             |
| hypervisor_hostname     | 86a2b1bb-8b29-4964-a817-f90031debddb |
| hypervisor_type         | ironic                               |
| hypervisor_version      | 1                                    |
| id                      | 1                                    |
| local_gb                | 10                                   |
| local_gb_used           | 0                                    |
| memory_mb               | 1024                                 |
| memory_mb_used          | 0                                    |
| running_vms             | 0                                    |
| service_disabled_reason | -                                    |
| service_host            | my-test-host                         |
| service_id              | 6                                    |
| state                   | up                                   |
| status                  | enabled                              |
| vcpus                   | 1                                    |
| vcpus_used              | 0                                    |
+-------------------------+--------------------------------------+

维护模式

如果您需要将节点从资源池中移除,可以使用维护模式。将节点置于维护模式将阻止 Bare Metal 服务执行与该节点关联的周期性任务。 这也会阻止 Compute 服务通过不将节点暴露给 nova 调度器来在该节点上放置租户实例。 可以使用以下命令将节点置于维护模式。

$ baremetal node maintenance set $NODE_UUID

可以使用可选的 --reason 命令行选项包含维护原因。 这是一个自由文本字段,将在 node show 命令的 maintenance_reason 部分中显示。

$ baremetal node maintenance set $UUID --reason "Need to add ram."

$ baremetal node show $UUID

+------------------------+--------------------------------------+
| Property               | Value                                |
+------------------------+--------------------------------------+
| target_power_state     | None                                 |
| extra                  | {}                                   |
| last_error             | None                                 |
| updated_at             | 2015-04-27T15:43:58+00:00            |
| maintenance_reason     | Need to add ram.                     |
| ...                    | ...                                  |
| maintenance            | True                                 |
| ...                    | ...                                  |
+------------------------+--------------------------------------+

要移除维护模式并清除任何 maintenance_reason,请使用以下命令。

$ baremetal node maintenance unset $NODE_UUID