张涵 发表于 2022-1-18 18:06
  
果然是高手在民间,楼主帖子写的不错,很有参考价值,还想看更多精彩分享,期待楼主下一篇好帖!
崔佳旺 发表于 2022-2-20 21:40
  
我在社区摸爬滚打这么多年,所谓阅人无数,就算没有见过猪走路,也总明白猪肉是啥味道的。一看到楼主的气势,我就觉得楼主同在社区里灌水的那帮小混子有着本质的差别,你一定就是传说中的最强技术牛。
蟲爺 发表于 2022-12-24 22:22
  
感谢分享
wshellym 发表于 2023-2-8 10:19
  
感谢分享案例分析!!学习了!!
我是路人甲55 发表于 2023-2-12 13:57
  
感谢楼主分享,每日学习打卡
策c 发表于 2023-3-1 09:21
  
楼主分析的很详细,不错的实战经验,小白用户一看就懂,非常好的技术干货帖,顶一个!
aDesk各个组件通信流程
  

基业傲腾_饶林瑞 116997人觉得有帮助

{{ttag.title}}
本帖最后由 基业傲腾_饶林瑞 于 2017-3-16 15:09 编辑

aDesk各个组件通信流程

      在部署桌面云的时候,经常会遇到ip地址规划的问题。之前也发表过帖子来说明桌面云里面的接口类型,后来发现对于桌面云各个组件VMP、VDC、VDI的通信提问的人也不少。稍微做了一个整理,分享给大家。如有出错,欢迎指正!

     在这里也分享给大家虚拟化学习的一个网站:http://wiki.sangfor.com.cn/aDesk

   首先来看这张图:




     非常清楚的一张访问流程图,不过我还是来说一下每一步的个人理解。

      首先,aDesk或者是咱们的PC、笔记本、ipad,我都统称为“VDI客户端”,因为他们存在的目的都是一样的:运行VDI程序,然后通过网络连接上VDC,去VDC上进行认证并获取资源。

     OK,继续!

     注意:下文截图均以某公司正在运行的桌面云环境截图,与上图的访问流程无关,所以不要被IP地址误导了!

第一步:VDI连接VDC




      这一步,VDI是为了连接上VDC去进行认证,并且连接的端口是VDC的443端口,所以我们在浏览器打开VDI登录界面的时候输入的地址就是https://VDC_IP 并不需要加什么端口号。

那么,我们get到1个重点:VDI需要跟VDC的443端口进行通信

      如果认证通过,VDC就需要看看该用户是否通过角色关联的对应的资源。假设该用户关联了资源(所谓资源,在桌面云里就是虚拟机),但是是第一次登录,还没有绑定对应的虚拟机(假设是独享桌面的资源),那么进行下一步。

第二步:VDC连接VMP

      VDC发现自己的合法用户来这里认证了,那么就需要在该用户对应的资源池里分配资源给该用户来使用。资源在哪呢?当然不在VDC上了,它只是负责分配,资源可是在VMP上呢!虚拟机跑在VMP上呀!

      这个时候,VDC就要去找VMP了,问问VMP是否还有相应资源的空闲虚拟机,如果有的话,分配一台虚拟机给该用户,并且如果分配的虚拟机处于关机状态,需要VMP开启虚拟机。那么,VDC到底是通过哪个IP的哪个端口去跟VMP通信的呢?




      如果是单个VMP服务器,就是VMP服务器的管理口地址。如果是集群的话,就是集群的IP地址。端口是4433。配置路径如上图所示,端口号可以不写,默认就是4433。建议不要偷懒!

第二步的重点:VDC需要和VMP平台的管理地址的4433端口进行通信


第三步:VMP开启虚拟机

VMP需要跟虚拟机进行通信么?
需要么?
不需要么?
需要么?
你电脑上的QQ需要跟你电脑进行网络通信?
所以,虚拟机只是VMP上的一个程序,有没有地址,都不影响VMP开启它,也不妨碍VMP让VDI看到它!
VMP开启了虚拟机以后会反馈给VDC,告诉VDC分配的虚拟机运行在集群里的哪台主机上,主机IP是多少,运行在该主机的哪个端口下。

第三步的重点:虚拟机不需跟VMP进行通信!

那么,虚拟机需要跟VDI进行通信么?
需要么?
不需要么?
需要么?
...
不知道的话继续往下看


第四步:虚拟机连接VDC,通过Agent程序上报状态

总有人问,agent是干嘛的,能不能不装这个程序?
我之前也知道一些,但是不全,为了本文的分享,特意找在线咨询要了一下
Agent实际上是VDC控制虚拟机的一个程序。

Agent的作用:
      1、 虚拟机派生完成后,首次开机时需要Agent接入VDC执行初始化过程,上报虚拟机此时cpu,内存,磁盘,虚拟机是否运行正常。
   2、 VDC下发组策略的控制给虚拟机(所以不安装agent,组策略是不生效的)
   3、 Agent程序会自动将原存放于Windows系统盘的“我的文档”等个人文件夹重定向到个人磁盘(所以不安装agent的话,桌面等个人文件会在模板更新后数据丢失)
   4、 如果启用网页浏览加速,当桌面虚拟机分配内存大于2.5GB时,Agent程序可以划分一部分内存空间作为磁盘缓存,用作IE等浏览器的缓存目录,以提升网页浏览的加载速度(网页浏览加速这个功能后续会取消咯)
   5、 安装Agent程序的同时,虚拟机会安装性能优化工具,优化虚拟机的各项性能(所以不安装agent的话会有画面卡顿、鼠标虚影等运行不流畅现象出现)
   6、 不安装Agent,虚拟机U盘,鼠标键盘,磁盘大小等使用可能有问题
   7、 不安装Agent,VDC上获取不到虚拟机的运行状态,CPU、内存、磁盘等占用情况
   8、 等等其他使用异常的现象……欢迎补充!

     重点来啦:虚拟机需要去连接VDC的LAN口的TCP 8866端口来与VDC通信!


第五步:VDI客户端连接VMP,获取虚拟机资源

在这里,问题来了:
1、 VDI只知道VDC的地址(登录的时候自己输的地址嘛),怎么知道VMP地址?
2、 VMP如果是一个集群的话,虚拟机运行在哪个主机上呢?
3、 一个主机上运行多个虚拟机,怎么能保证正确连接到该用户对应的虚拟机呢?
4、虚拟机没有IP地址的情况下,怎么跟VDC通信上报状态?

这些问题,没考虑过吧?

其实是这样的:
     VDC跟VMP集群IP建立连接,开启了虚拟机之后呢,集群会告诉VDC你需要的这个虚拟机运行在集群中的哪个主机上,并且是用的哪个端口

     注意:虚拟机类似于VMP上的某个程序,VMP作为一个服务端为VDI客户端提供服务,自然要告诉VDI我为你提供的是哪个端口的服务。这里的端口范围是主机IP的TCP 5500-5699端口。

     然后VDC会返回给VDI对应的资源信息,也就是告诉用户虚拟机运行的主机IP以及对应端口,VDI拿到之后,就去找对应的主机建立spice通道,虚拟机的画面就传输过来了!

     这个时候你觉得,虚拟机需要跟VDI进行通信吗?嘿嘿。

     最后一个重点:VDI需要跟VMP的TCP 5500-5699端口进行通信!

    同样,我们也得知了,一台服务器上最多运行200个虚拟机。因为通信端口是200个嘛!可千万不要理解成为是跟集群IP建立的spice通道哈!


    整个访问流程就到这里了,希望能够帮助小伙伴们对桌面云的整体架构有一个基础的理解,在规划IP网段的时候思路更加清晰!

     在这里,真诚的感谢社区在线咨询的“小琴”对我的帮助以及400妹纸1096的耐心指教。通过她们的专业解释,也理清楚了很多以前我不太明白的细节。另外,在线咨询真的很有帮助哦!也建议大家以后多多利用我们能用到的资源来帮助自己快速掌握知识。
    在这里也祝福各位女神,女神节快乐!!!

打赏鼓励作者,期待更多好文!

打赏
25人已打赏

发表新帖
热门标签
全部标签>
每日一问
技术盲盒
技术笔记
干货满满
技术咨询
产品连连看
新版本体验
功能体验
标准化排查
自助服务平台操作指引
GIF动图学习
2023技术争霸赛专题
通用技术
运维工具
信服课堂视频
秒懂零信任
技术晨报
用户认证
社区帮助指南
答题自测
深信服技术支持平台
安装部署配置
上网策略
SDP百科
设备维护
每日一记
项目案例
玩转零信任
畅聊IT
专家问答
技术圆桌
在线直播
MVP
网络基础知识
升级
安全攻防
测试报告
日志审计
问题分析处理
流量管理
云计算知识
原创分享
解决方案
sangfor周刊
VPN 对接
SANGFOR资讯
专家分享
技术顾问
信服故事
功能咨询
终端接入
授权
资源访问
地址转换
虚拟机
存储
迁移
加速技术
排障笔记本
产品预警公告
信服圈儿
S豆商城资讯
技术争霸赛
「智能机器人」
追光者计划
答题榜单公布
纪元平台
卧龙计划
华北区拉练
天逸直播
以战代练
山东区技术晨报
文档捉虫活动
齐鲁TV
华北区交付直播
每周精选

本版版主

468
220
32

发帖

粉丝

关注

本版达人

新手89785...

本周建议达人

YangZhe...

本周分享达人

runner

本周提问达人