专栏首页SDNLABOpenStack Spice协议配置

OpenStack Spice协议配置

Enable SPICE HTML5 Console Access in OpenStack Mikata

环境: CentOS7环境系统 + OpenStack Mikata版本

SPICE VS VNC

Spice协议通信拓扑

Required Packages

控制和计算节点上执行以下命令:

yum install spice-html5

注意点

spice-html5 在epel源里,需要配置epel源

vi /etc/yum.repos.d/epel.repo

[epel]
name=Extra Packages for Enterprise Linux 7 - $basearch
#baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch
mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch
failovermethod=priority
enabled=1
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7

yum makecache

控制节点上:

yum install openstack-nova-spicehtml5proxy

配置文件

在计算和控制节点上修改文件:/etc/nova/nova.conf

配置文件中确保vnc_enabled=False参数被设置。 如果novnc被启用,确保关闭。

Control IP = 192.168.1.100  
Compute IP = 172.16.1.100   [Internal IP - ports may need to be opened if not already there]

控制节点上

{% highlight python %}
 
/etc/nova/nova.conf
[DEFAULT]
web=/usr/share/spice-html5
. . .
[spice]
 
html5proxy_host=0.0.0.0
html5proxy_port=6082
html5proxy_base_url=https://192.168.1.100:6082/spice_auto.html
 
# 启用spice相关功能(boolean value)
enabled=True
 
# Enable spice guest agent support (boolean value)
agent_enabled=true
 
# Keymap for spice (string value)
keymap=en-us
 
{% endhighlight %}

设置iptables

iptables -I INPUT -p tcp -m multiport --dports 6082 -m comment --comment "Allow SPICE connections for console access " -j ACCEPT

永久设置iptables

Y可以在文件/etc/sysconfig/iptables 中添加以上设备的规则,保存并重启iptables。

计算节点改变配置文件

{% highlight python %}
 
/etc/nova/nova.conf
[DEFAULT]
web=/usr/share/spice-html5
. . .
[spice]
 
html5proxy_base_url=https://192.168.1.100:6082/spice_auto.html
server_listen=0.0.0.0
server_proxyclient_address=172.16.10.100
 
# 启用spice相关功能 Enable spice related features (boolean value)
enabled=True
 
# Enable spice guest agent support (boolean value)
agent_enabled=true
 
# Keymap for spice (string value)
keymap=en-us
 
{% endhighlight %}

重启服务

计算节点上重启服务

# service openstack-nova-compute restart

控制节点上重启服务

# service httpd restart
# service openstack-nova-spicehtml5proxy start
# service openstack-nova-spicehtml5proxy status 
# systemctl enable openstack-nova-spicehtml5proxy

在Control node上看到6082端口在监听

虚拟机需要重启才能使用spice协议

OpenStack中的windows7播放视频,有点卡,由于在服务器中图像处理都是CPU来做的,需要优化spice协议

windows客户端下载登陆云桌面

下面的链接是我制作好放在YouTube上的云桌面视频(需要访问外国网站) 云桌面视频

问题

Openstack Mitaka版本,终止了云主机之后,发现无法删除对应的云硬盘,删除提示报错为云硬盘的状态不是错误或者可用状态

思路

1 切换至admin用户,进入数据库手动更新云硬盘的状态至错误状态 2 针对lvm,可以用命令lvdisplay列出所有卷的信息,如果现在应用命令lvremove来删除相应的卷,则会提示要删除的卷正在使用中,所以我们使用命令lsof查看相应卷所占用的进程,然后kill这个进程; 3 应用命令lvremove来删除相应的卷。 这里只针对第一种方法实践。

操作

查看云硬盘状态:

cinder list | grep error

命令行删除,提示报错说还有依赖的快照,如下所示

cinder delete XXX

Delete for volume XXX failed: Invalid volume: Volume still has 1 dependent snapshots. (HTTP 400) 
(Request-ID: req-5ba025fb-5a61-422b-b00a-556e19083bd5)
ERROR: Unable to delete any of the specified volumes.

方法有很多,这里介绍一种简单的。采取暴力手段,进入元数据库。

show databases;

use cinder;

show tables;

select找到出错的数据

删除元数据库中的数据,不过不能简单得把这个cinder盘的数据删除,以为数据库有外键依赖,而是要把cinder盘的error—deleting改成deleted。

再次查看云硬盘状态:

发现已经成功得删除了出错的cinder盘。

总结: 1、删除的时候注意id和volume-id两个字段,不要弄混掉了; 2、测试环境,暴力解决问题还是不太好,注意检查日志来对症下药; 3、不要简单得去删除表中数据,而是需要更改状态。

本文分享自微信公众号 - SDNLAB(SDNLAB),作者:蒋暕青

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2016-08-18

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Neutron的软件实现

    上一节交代了Neutron基本的组网原理,本节我们来看一看Neutron在软件层面的实现。 在架构设计上, Neutron沿用了OpenStack完全分布式的思...

    SDNLAB
  • ONOS动态扩容面临的难点与解决方案

    一、ONOS的一致性保障 ONOS主要包括两类一致性机制,最终一致性和强一致性,最终一致性采用乐观异步复制和基于Gossip的熵减方式来实现,乐观异步复制可以高...

    SDNLAB
  • ONOS集群管理架构分析

    前言: 众所周知,ONOS是一款面向运营商的开源SDN网络操作系统,主要面向服务提供商和企业骨干网等重要的生产环境。为了满足对可靠性、灵活度的需求,ONOS采取...

    SDNLAB
  • 火焰图:全局视野的Linux性能剖析

    火焰图(Flame Graph)是由Linux性能优化大师Brendan Gregg发明的,和所有其他的trace和profiling方法不同的是,Flame ...

    Linux阅码场
  • 宋宝华:火焰图 全局视野的 Linux 性能剖析

    火焰图的火焰首先来自于根,然后以火苗的形式往上面窜。可以把从靠近地面的根到顶上的每个火苗,想想成一个调用栈。由于火苗有很多根,这正好也和现实生活中程序的执行逻辑...

    Linuxer
  • 详解WebRTC——网页实时通信技术

    运用RTCPeerConnection和RTCDataChannel两个核心API,能够实现任意数据的点对点交换,官网Demo如下:

    Kevinylzhao
  • 详解WebRTC-网页实时通信技术

    QQ音乐前端团队
  • Linux kernel 4.10 发布

    Debian社区
  • 机器学习(十八)极大似然估计

    极大似然估计是在总体类型已知条件下使用的一种参数估计方法 。它首先是由德国数学家高斯在1821年提出的,

    致Great
  • Swift API 设计指南(上)

    本文翻译自苹果官方文档:Swift API Design Guidelines,如有错漏,欢迎指出。

    Sheepy

扫码关注云+社区

领取腾讯云代金券