OpenStack配置串口显示虚机界面
OpenStack配置串口显示虚机界面
OpenStack的horizon能够显示虚拟机的界面。horizon是web界面,在我们的电脑上,姑且称之为本地,虚拟机运行在远端服务器上,称之为远端。本地显示远端的界面,OpenStack提供了多种方式,noVNC 远程桌面协;RDP(Remote Desktop Protocol 远程桌面协议);SPICE (Simple Protocol for Independent Computing Environment独立计算环境简单协议)。这些都是图形显示界面,如果在生产环境中无法显示图形界面,例如虚拟交换机只能通过串口显示,该怎么办?其实OpenStack从J版本开始提供了串口的显示方式。
串口显示说明:
在nova.conf文档中有关于串口显示的描述:

根据描述我们能够知道想要串口显示,控制节点要安装nova-serialproxy,控制节点和计算节点需要配置[serial_console]中的选项。
一、配置项:
1.1 控制节点:
安装nova-serialproxy控件:
apt-get install nova-serialproxy
配置/etc/nova/nova.conf
默认连接是vnc,首先关闭vnc连接。

配置串口显示

重启服务:
关闭noVNC服务:
service nova-novncproxy stop

重启serialproxy服务:
service nova-serialproxy restart

1.2 计算节点:
配置/etc/nova/nova.conf
默认连接是vnc,首先关闭vnc连接。

配置串口显示
base_url中的ip是控制节点ip,端口号不能变。
proclient_addres是指本机IP。

重启nova-compute服务
service nova-compute restart

1.3 配置项解释
base_url的配置项解释:

proxyclient_address的配置项解释:

二、简单工作流程:
1.远程客户端(浏览器)请求串口输出信息,nova服务收到请求;
2.nova-api返回给客户端以base_url为前缀的websocket URL;
3.远程客户端尝试连接该URL,客户端连接到nova-serialproxy服务; 4.nova-serialproxy服务将查找计算节点注册过的proxyclient_address;
5.nova-serialproxy找到计算节点,连接虚拟机,串口信息传输到客户端;
具体工作流程参见noVNC工作流程:
https://www.cnblogs.com/popsuper1982/p/3800227.html
三、串口显示的控制台:
控制台:

完整的客户端URL是实例ID+serial组成

对比noVNC的URL,noVNC是ip+端口+VNC_auto.html+token组成

四、底层的差异:
显示方式的改变实质上是底层libvirt文件的改变。通过命令:
virsh dumpxml ID
可以查看创建的实例,对比出串口显示和VNC显示的差异。
串口显示的实例的xml文件中设备中serial和console的类型是tcp,是使用tcp的端口号通信。

noVNC显示的实例的xml文件中设备的serial和console是虚拟端口pty,是虚拟终端通信。

最后感受一波思科虚拟路由器的操作


学会配置串口显示,向OpenStack的高峰又迈进一步!

OpenStack配置串口显示虚机界面的更多相关文章
- Openstack之Nova创建虚机流程分析
前言 Openstack作为一个虚拟机管理平台,核心功能自然是虚拟机的生命周期的管理,而负责虚机管理的模块就是Nova. 本文就是openstack中Nova模块的分析,所以本文重点是以 ...
- openstack数据库获取一个虚机的floating_ip, fix_ip, project_name, user_name, hostname, host
转载请注明 http://www.cnblogs.com/juandx/p/5418204.html openstack有3个库,nova,neutron,keystone,我现在需要做的是跨库联表 ...
- openstack环境-解决windows虚机重启后比当前时间晚8小时问题
背景: 生产环境下,发现windows虚机每次重启,时间都会倒退到虚机的格林威治时间(+8小时才是北京时间),也就是比当前时间晚8小时.测试发现,windows虚机所用的镜像,缺少了一个os_type ...
- Docker-machine创建虚机时停在虚机启动的提示上,并且创建的虚机显示Ip Not found
Docker-machine创建虚机时停在虚机启动的提示上,并且创建的虚机用docker-machine ls 列出来的时候显示Ip Not found, 是什么原因那? [答案] 看这个帖子: ht ...
- Hyper-V 手动导入虚机配置实例(转载)
原文转载:http://blog.51cto.com/bobzy/980241 Hyper-V提供了很方便的虚机导入和导出功能.平时假如我们想导出虚机,先选中虚机,然后鼠标右键在出现菜单列表中选中“导 ...
- KVM 介绍(6):Nova 通过 libvirt 管理 QEMU/KVM 虚机 [Nova Libvirt QEMU/KVM Domain]
学习 KVM 的系列文章: (1)介绍和安装 (2)CPU 和 内存虚拟化 (3)I/O QEMU 全虚拟化和准虚拟化(Para-virtulizaiton) (4)I/O PCI/PCIe设备直接分 ...
- KVM(六)Nova 通过 libvirt 管理 QEMU/KVM 虚机
1. Libvirt 在 OpenStack 架构中的位置 在 Nova Compute 节点上运行的 nova-compute 服务调用 Hypervisor API 去管理运行在该 Hypervi ...
- 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 ...
随机推荐
- 自学华为IoT物联网之路
自学华为IoT物联网之路 01 自学华为IoT物联网_01 物联网概述 02 自学华为IoT物联网_02 常见物联网通信技术 03 自学华为IoT物联网_03 公共事业物联网常见问题及解决方案 04 ...
- THUSC2017题解
THUSC2017题解 题目都是在LOJ上交的. chocolate LOJ#2977巧克力 这题看着就让人想起了百度之星复赛的\(T5\),就是这题. 因为种类的个数很多,所以把每个种类随意\(ra ...
- luoguP4707 重返现世
收集邮票加强版,每个邮票不是等概率获得的了. 而且是获得K个,如果把一个全集S集合找出其获得时间集合(显然获得时间两两不同)的话,那么就是第n-k+1大的期望! %%%Sooke min-max容斥扩 ...
- SRM 605 div 2 T3
#include <bits/stdc++.h> #define Mo 1000000007 #define MAXN 50 #define MAXK 10 using namespace ...
- 对PDF的操作
PDF是个常见的格式,当我们需要对PDF做操作时,可以主要利用PDFbox和itext.这里主要介绍PDfbox,itext自己去 查找资料.添加pom配置. <dependency> & ...
- [luogu4860][Roy&October之取石子II]
题目链接 思路 这个题和上个题类似,仔细推一下就知道这个题是判断是否是4的倍数 代码 #include<cstdio> #include<iostream> #define f ...
- FindExecutable:查找与一个指定文件关联在一起的程序的文件名
百度百科:http://baike.baidu.com/view/1285880.htm ------------------------------------------------------- ...
- Python之函数的本质、闭包、装饰器
函数名的本质 函数名本质上就是函数的内存地址. 1.可以赋值给其他变量,被引用 def func(): print('in func') f = func print(f) 2.可以被当作容器类型的元 ...
- java利用线程池处理集合
java利用线程池处理集合 2018年07月23日 17:21:19 衍夏成歌 阅读数:866 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/s ...
- 【译】8. Java反射——注解
原文地址:http://tutorials.jenkov.com/java-reflection/annotations.html ================================== ...