注:因为在测试配置过程中反复配置过多次,以下内容可能并不完整,有待验证。


按官方文档(openstack-install-guide-yum-juno)搭建和配置的OpenStack默认使用novnc作为云主机的控制台访问方式,如果需要配置使用GUI的操作系统,会显得比较尴尬。所以尝试配置使用spice来作为控制台访问方式。

即使它的配置比较简单,也把我难住了很久,就差了最后的一步……


测试环境为VMware WKS,4个节点,分别是控制节点,网络节点,计算节点和存储节点,都部署在CentOS 7.0 上。

配置SPICE前已按官方文档搭建好环境,并且测试可用。

配置过程只涉及控制节点(192.168.209.11)和计算节点(192.168.209.31),根据情况修改为实际环境的IP地址。


修改控制节点

安装软件包

yum install spice-server spice-protocol openstack-nova-spicehtml5proxy spice-html5

### spice-html5来自epel源,spice-server,spice-protocol来自CentOS官方源


修改配置文件,注释掉原vnc相关配置,添加以下配置信息

这里需要明确指定vnc_enabled=false,否则即使配置了spice,系统也仍然使用vnc(参考官方文档说明

vim /etc/nova/nova.conf
[default]
vnc_enabled=false
[spice]
html5proxy_host=192.168.209.11
html5proxy_port=6082
keymap=en-us


停止novncproxy并取消自启动

systemctl stop openstack-nova-novncproxy.service
systemctl disable openstack-nova-novncproxy.service


启用spicehtml5proxy开机自启动并启动它

systemctl enable openstack-nova-spicehtml5proxy.service
systemctl start openstack-nova-spicehtml5proxy.service


开放6082端口

firewall-cmd --add-port=6082/tcp --permanent
firewall-cmd --reload


修改计算节点

安装软件包

yum install spice-server spice-protocol spice-html5

### spice-html5来自epel源,spice-server,spice-protocol来自CentOS官方源


修改配置文件,注释掉原vnc相关配置,添加以下配置信息

vim /etc/nova/nova.conf
[default]
vnc_enabled=false
[spice]
html5proxy_base_url=http://192.168.209.11:6082/spice_auto.html
server_listen=0.0.0.0
server_proxyclient_address=192.168.209.31
enabled=true
keymap=en-us


重启启动nova-compute

systemctl restart openstack-nova-compute.service


最后,让我卡壳很久的一点,客户机需要重启之后才能看到spice控制台,否则一直显示 "重新加载" 的按钮。


最终效果显示如下:

wKiom1TrgaHSmiTWAANzLJyEZ5Q051.jpg