novawwwzs12558comI3578II9877hypervisor接口添加host_ip字段
云平台系统用户提出一个需求,要求根据物理机主机名或者IP查询其上虚拟机列表。根据主机名查询好办,nova的list接口提供了host参数;按主机IP查询就不那么直接了,需要先将IP反解析成主机名,然后使用主机名参数调用list接口。为了减少与其他系统的耦合,我们考虑nova自身能不能实现IP到主机名的转换。
实际上nova hypervisor数据结构对应的数据表compute_nodes中包含了host_ip字段,只是在查询时没有返回,稍作修改即可。
修改nova.api.openstack.compute.hypervisors.HypervisorsController._view_hypervisor()函数,给hyp_dict增加'host_ip': hypervisor.host_ip字段:
01
这个函数是hypervisor接口的基础,list和detail等接口都会调用这个接口。所以在这里增加host_ip字段后,调用list、detail接口返回的数据都包含host_ip了。
同时为了在nova hypervisor-list命令行结果中显示主机IP,需要对novaclient做一个小修改,在novaclient.v2.shell.do_hypervisor_list()函数中,columns定义了要展示的列,添加一个'Host IP'字段,它在取数据时会被转化成对应的host_ip属性:
02
此时执行nova hypervisor-list,就会看到包含了Host IP信息:
03

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
-
上一篇
Wordpress如何打开调试模式
修改Wordpress安装目录下的wp-config.php: define('WP_DEBUG', true); 之后即可看到debug信息,callstack等trace: 本文来自云栖社区合作伙伴“汪子熙”,了解相关信息可以关注微信公众号"汪子熙"。
-
下一篇
使用 Promwwwzs12558comI3578II9877etheus 监控 Ceph
Prometheus 本文是在 Ubuntu 16.04 最新版基础上安装 Prometheus 监控系统,Ceph 版本为 Luminous 12.2.8。 安装 Prometheus直接使用 apt 安装的 Prometheus 版本较低,很多新的配置选项都已不再支持,建议使用 Prometheus 的安装包,接下来看看安 装包部署的步骤。 先下载安装包,这里用的是 2.0.0 版本,目前为止,最新的应该为 2.4.0,安装方法都是一样的。 $ wget https://github.com/prometheus/prometheus/releases/download/v2.0.0/prometheus-2.0.0.linux-amd64.tar.gz$ tar zxvf prometheus-2.0.0.linux-amd64.tar.gz$ cd prometheus-2.0.0.linux-amd64/$ sudo cp prometheus /usr/bin/$ sudo cp promtool /usr/bin/$ vim /lib/systemd/system/pro...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- MySQL8.0.19开启GTID主从同步CentOS8
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装