openstack数据库获取一个虚机的floating_ip, fix_ip, project_name, user_name, hostname, host
转载请注明
http://www.cnblogs.com/juandx/p/5418204.html
openstack有3个库,nova,neutron,keystone,我现在需要做的是跨库联表查询虚机的信息
获取一个虚机的floating_ip, fix_ip, project_name, user_name, hostname, host (不知道在instances表中host和node有什么区别)
select j.floating_ip_address as floating_ip, i.fix_ip, i.port_id, i.project_name, i.user_name, i.hostname,i.host from neutron.floatingips as j right join (select h.ip_address as fix_ip,h.port_id, g.project_name, g.user_name, g.hostname,g.host from neutron.ipallocations as h right join(select f.name as project_name,e.name as user_name,e.hostname,e.port_id,e.host from keystone.project as f right join (select a.name,b.* from keystone.user as a right join (select substring(substring_index(c.network_info,'ovs_interfaceid',-1),5,36) as port_id, d.* from nova.instance_info_caches as c right join nova.instances as d on c.instance_uuid=d.uuid where d.deleted=0) as b on a.id=b.user_id) as e on f.id=e.project_id) as g on g.port_id=h.port_id) as i on i.port_id=j.fixed_port_id order by host,project_name,user_name,floating_ip;
nova和neutron的连接关系在nova.instance_info_caches这个表中,里面有fix ip的port,可以去neutron.ipallocations这个表中找到对应分配的ip,然后去neutron.floatingips这个表中找对应的floatingip
nova和keystone的连接关系是nova.instances的user_id和project_id,这个就简单了
但是instance_info_caches中的信息是一个mediumstest类型的json,所以我用msyql 的substring_index过滤port的信息,没要找到在这样的数据中直接用key,value的方法,如果大神知道请告诉我。
openstack数据库获取一个虚机的floating_ip, fix_ip, project_name, user_name, hostname, host的更多相关文章
- OpenStack配置串口显示虚机界面
OpenStack配置串口显示虚机界面 OpenStack的horizon能够显示虚拟机的界面.horizon是web界面,在我们的电脑上,姑且称之为本地,虚拟机运行在远端服务器上,称之为远端.本地显 ...
- Openstack之Nova创建虚机流程分析
前言 Openstack作为一个虚拟机管理平台,核心功能自然是虚拟机的生命周期的管理,而负责虚机管理的模块就是Nova. 本文就是openstack中Nova模块的分析,所以本文重点是以 ...
- openstack环境-解决windows虚机重启后比当前时间晚8小时问题
背景: 生产环境下,发现windows虚机每次重启,时间都会倒退到虚机的格林威治时间(+8小时才是北京时间),也就是比当前时间晚8小时.测试发现,windows虚机所用的镜像,缺少了一个os_type ...
- nova 数据库中删除虚机
Database changed MariaDB [nova]> SET FOREIGN_KEY_CHECKS=; Query OK, rows affected (0.000 sec) Mar ...
- Nova: 虚机的块设备总结 [Nova Instance Block Device]
和物理机一样,虚拟机包括几个重要的部分:CPU.内存.磁盘设备.网络设备等.本文将简要总结虚机磁盘设备有关知识. 1. Nova boot CLI 中有关虚机块设备的几个参数 nova boot CL ...
- 转 Nova: 虚机的块设备总结 [Nova Instance Block Device]
和物理机一样,虚拟机包括几个重要的部分:CPU.内存.磁盘设备.网络设备等.本文将简要总结虚机磁盘设备有关知识. 1. Nova boot CLI 中有关虚机块设备的几个参数 nova boot CL ...
- OpenStack 企业私有云的若干需求(1):Nova 虚机支持 GPU
本系列会介绍OpenStack 企业私有云的几个需求: 自动扩展(Auto-scaling)支持 多租户和租户隔离 (multi-tenancy and tenancy isolation) 混合云( ...
- OpenStack 虚机网卡的创建过程
原文链接:https://www.cnblogs.com/potato-chip/p/9127083.html OpenStack虚机网卡的创建过程 OpenStack最基本和常用的操作就是启动虚机. ...
- OpenStack虚机网卡的创建过程
OpenStack虚机网卡的创建过程 OpenStack最基本和常用的操作就是启动虚机.虚机启动的过程中涉及很多内容,其中非常重要的一个环节就是创建并绑定虚机的虚拟网卡.虚机的创建和管理是Nova的任 ...
随机推荐
- iOS阶段学习第12天笔记(类的初始化)
iOS学习(OC语言)知识点整理 一.类的初始化 1)init初始化方法(构造方法):一般和alloc一起调用,用于给成员变量初始化. 2)id类型:相当于C中的void*,可以指向任何对象,不能加* ...
- 提高生产性工具(五) - 数据的过滤器和图形化(适用于 MVC5 + MongoDB)
在下面流水账似的文章之前,先将一些感悟说一下. 1.如果一个系统对于某个功能在至少三个地方使用的话,必须将其抽象提炼出来,而且时间点最好是大规模测试之前. 2.提炼出来的功能,如果品质做得好,整个系统 ...
- Delphi 收藏
日前整理仓库,翻出了一些 Delphi 产品,以前购买的 Delphi 都有实体产品,包含说明书.光碟片.还有一些广告文宣,而且相当厚实,版本的演进,从外包装也能感受到,到目前的 XE5 版,只剩一个 ...
- Oracle数据库,序列、索引、视图
一.序列:生成自动增长(或减少)的整数值 Sequences中新建 调取: th_test.nextval 获取下一个值 th_test. currval获取当前值 二.视图:在物理表的基础上定义的虚 ...
- python2.x 默认编码问题
python2.x中处理中文,是一件头疼的事情.网上写这方面的文章,测次不齐,而且都会有点错误,所以在这里打算自己总结一篇文章. 我也会在以后学习中,不断的修改此篇博客. 这里假设读者已有与编码相关的 ...
- InfluxDB学习之InfluxDB的HTTP API写入操作
HTTP API也有两种操作:写入和查询,本文就先给大家介绍一下 InfluxDB的HTTP API的写入操作方式. 在InfluxDB学习的上一篇文章:InfluxDB学习之InfluxDB ...
- PHP内核探索之变量(1)Zval
作为数据的容器,我们常常需要跟变量打交道,不管这个变量是数字.数组.字符串.对象还是其他,因而可以说变量是构成语言的不可或缺的基础.本文是PHP内核探索之变量的第一篇,主要介绍zval的基本知识,包括 ...
- [转]浅谈php web安全
原文地址:http://blogread.cn/it/article/6086?f=wb 前言: 首先,笔记不是web安全的专家,所以这不是web安全方面专家级文章,而是学习笔记.细心总结文章,里面有 ...
- $('div a') 与$('div>a'),.div+.div2与.div~.div2
$('div a'):div标签下所有层次a元素的jquery对象 $('div>a'):div标签下子元素层次a元素的jquery对象 <body> <div class=' ...
- JavaScript基础19——innerHTML示例
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...