novnc-strange or not
来源:互联网 发布:淘宝品牌授权书范本 编辑:程序博客网 时间:2024/05/16 11:22
对openstack的vnc配置一直比较模糊,所以决定下决心研究一番。
上图为官方文档中多节点,多网卡网络配置图。我的理解:99.99.99.0为公网地址,192.168.0.0为管理地址,10.0.0.0为虚拟机地址。假设上图nova-network服务运行于控制节点上。
上图为官方文档中vnc请求流程。我的理解:
1. nova get-vnc-console WindowsXP-Sun novnc
2. Nova-api接受请求,然后将get_vnc_console消息发送到WindowsXP_Sun虚拟机所在的计算节点。
3. 计算节点接受get_vnc_console消息,产生token;然后调用libvirt driver的get_vnc_console方法,libvirt driver向libvirt server发出请求,
得到虚拟机监听的vnc端口; libvirt driver检索nova.conf,找到vncserver_proxyclient_address标签,得到vnc host的ip地址。
4. Nova-api 发送authorize_console消息给Nova-consoleauth,同时记录计算节点返回的信息(token, vnc host ip, vnc port),以token作为索引。
5. 返回URL(计算节点novnc_proxy_base_url标签加上token参数)
6. 浏览器访问URL
7. noVNC监听6080 HTTP 端口,接受此URL请求,然后向Nova-consoleauth发送check_token消息。
8. nova-consoleauth检查token,找到之前缓存的连接信息。vnc 代理将请求传送到相应的节点。
9. 在浏览器中出现虚拟机桌面。
所以配置应该为:
#nova-compute使用,此地址加上“?token”返回给用户,需为控制节点ip(控制节点与计算节点,此标签参数相同,都为控制节点IP)
novnc_proxy_base_url = http://controlNodeIP:6080/vnc_auto.html
#libvirt driver 取得此地址。vnc proxy使用此地址,转向具体的compute node
vncserver_proxyclient_addresss= ComputeNodeManageIP
#nova-compute使用,多网卡,具体监听在哪个接口上。使用内部地址安全。如果使用迁移,此地址配置成0.0.0.0,因为迁到别的节点上,
ComputeNodeManageIP地址发生变化,0.0.0.0监听所以接口。
vncserver_listen= ComputeNodeManageIP
根据上图网络,相应配置内容为。
vnc_enable = true
novnc_enable = true
novnc_proxy_base_url = http://99.99.99.1:6080/vnc_auto.html
vncserver_proxyclient_addresss= 192.168.0.3
vncserver_listen= 192.168.0.3
组件安装:
控制节点:nova-api, nova-consoleauth,noVNC(VNC proxy for browser)
计算节点:nova-compute,libvirt driver
存疑:
按常理,计算节点上应该有vncserver,可是经验证没有安装vncserver。存疑?
同样,单网卡情况也适用。
- novnc-strange or not
- noVNC
- noVnc
- novnc安装
- RequestMapping(@RequestMapping) with Spring, or How Strange Is That?
- hdu 1548 A strange lift(搜索or最短路)
- LightOJ 1352 Strange Summation(找规律or数位DP)
- To Annotate or Not?
- Annotations:hype or not?
- Constructor or not constructor?
- 加班 or Not?
- lucky or not
- 2134 Queen Or Not
- 裸辞Or Not?
- HOJ2838Nim or not Nim?
- Legal or Not
- Maven: good or not
- To be or not
- NYOJ 题目46最少乘法次数(模拟)
- childNodes和children
- 【LeetCode】String to Integer (atoi)
- NYOJ 题目187快速查找素数
- Android核心基础——S02E05_使用另外一个工程进行单元测试
- novnc-strange or not
- poj 2288
- struts2 设置默认首页不带路径的形式
- 网络虚拟化简介
- [LeetCode OJ] Evaluate Reverse Polish Notation 解题报告
- 旋转的华尔兹
- Android核心基础——S02E06_保存数据到手机内存
- java web开发入门必须要了解的基本知识
- 黑马程序员—(iOS开发)C语言函数解析---(四)