2022年8月

桌面虚拟化能够完美解决远程办公带来的各种难题,尤其是在疫情期间,VDI真是火了一把。

相对于Xendesktop和horizon,以及各种厂商的VDI解决方案,PVE从免费,就已经秒杀了全部。从虚拟化底层来说,PVE基于开源的debian,只要会linux,就能快速上手PVE,简单通透的命令指令,可以使PVE运维成本极低。

笔者趁着工作变动,不断摸鱼学着老前辈的经验。看着各种企业级超融合平台,更是对小众的PVE充满希望。

一:为什么选择Proxmox VE底层

1、免费

 VMware vSphere Essentials Kits(6个处理器) 一年最少3W RMB。Citrix 往往捆绑销售。企业超融合平台,还有深信服、华为、nutanix等等。 对于一般企业来说,是个很大的开支。

而PVE却是免费。算上购买企业仓库,也就1000元/percpu。

2、超融合平台

PVE不仅仅是一个虚拟化底层,他还是个一个超融合平台。什么是超融合?

超融合基础架构继承了融合式架构的一些特性,同样都是使用通用硬件服务器为基础,将多台服务器组成含有跨节点统一储存池的群集,来获得整个虚拟化环境需要的效能、容量扩展性与数据可用性,可透过增加群集中的节点数量,来扩充整个群集的运算效能与储存空间,并透过群集各节点间的彼此数据复制与备份,提供服务高可用性与数据保护能力。而为能灵活地调配资源,超融合架构也采用了以虚拟机(VM)为核心,软件定义方式来规画与运用底层硬件资源,然后向终端用户交付需要的资源。

PVE5.3版本已经集成了ceph分布式储存架构,在管理面板可以直接配置整个集群的ceph,不仅整合集群的储存资源,更完美地实现了HA容灾的存储需求。

PVE6.2版本集成了SDN网络功能

proxmox buckup server已经发布测试版本,能够完美的在集群架构下,备份VM或者物理机,给用户带来更强大的容灾能力。

对于vmware,他将超融合都集成了在了一起,而是不是单独的将计算节点、储存、网络还有管理节点分开。

3、开源

可以在https://git.proxmox.com。查看proxmox的源代码。有能力,可以去做二次开发。

4、与Debian同样的兼容性

PVE基于debian,使用linux的管理命令。专有的PVE管理命令qm也非常简单易懂。在储存上,支持debian支持的一切储存。在网络上,支持debian支持的一切网络。可以把想象PVE是debian上的一个超融合软件。并不需要考虑PVE是否兼容企业的服务器。

5、轻量独特的管理架构

PVE有着独特的“去中心化”。“center”这个词很常见,例如vCenter。我们用一个另一个概念去解释“center”,也就是“管理节点”。管理节点可以是物理机、也可以是虚拟机。

企业往往会面对管理节点宕机的挑战。

所幸PVE没有管理节点。
任何一个节点,都可以控制其他节点,节点与节点之间也没有主从概念。通过反向代理、负载均衡技术或者是HA技术,都可以是PVE的面板永不下线。

PVE更有一个轻量的管理界面,使用html5、 AJAX 、ExtJS 6.x JavaScript框架。

在GUI面板上,3侧栏递归式分布,菜单功能一目了然,对于臃肿的vCenter管理界面,简直是眼前一亮。

6、完美的laas交付平台

PVE基于KVM虚拟化,性能无庸置疑,只有1%~3%的性能损失。

在linux交付上。PVE集成cloud-init组件,可以通过制作模板,可以批量克隆创建linux-VM。
在Windows交付上。PVE可以完美虚拟2003以上windows guest OS。同时PVE可以通过qemu-guest-agent程序,监控和控制VM。

利用KVM的CPU模拟技术,集群中不强制要求同样CPU型号的服务器。都可以通过一个名为kvm64的处理器,来进行HA热迁移。

其底层可以支持ZFS储存,配合ceph,不需要高额的RAID卡等软硬件成本,利用内存、SSD,可以给整个集群带来强大的读写缓存支持。

7、集成了防火墙的网络虚拟化

PVE内置防火墙。企业不需要再购买额外的内网网络安防设备。

通过对VLAN的划分,可以划分不同的资源池。达到不同部门的隔离、互访。

同样基于debian的os,兼容市面上高性能的100G、400G网卡,利用半虚拟化virtio网卡,轻松可以构建1G、10G、40G、100G内部网络。使用网络限速功能,轻松在逻辑上QOS。PVE也支持SR-IOV,在面板上即可配置vf网卡。

 

 

二:云桌面架构的选择

1、基于RDP的云桌面架构RDS

在PVE主机上新建VM,做为guest os。并且加入ad域。
创建一个RDP桌面网关,作为RDP的连接代理,可以实现内外网分离。

基于RDP的云桌面架构无疑是最为简单的,百来人一个技术人员都能够游刃有余的解决VM的资源分配以及账户分配。瘦终端也广泛支持。

但是RDP协议是在OS层面上的,并不能管理VM的电源。也就是如果员工误关机,他就不能自动连接的时候开机。

 

2、基于spice协议的云桌面

PVE基于KVM,当然支持SPICE。PVE面板上,给VM配置了QXL显示适配器,即可使用SPICE显示器。需要客户端安装virt-viewer。

PVE面板上的SPICE默认是由PVE的3128端口代理的。所以,如果要使用spice协议进行云桌面。有3种解决方案

  • 进入webgui,下载spice连接配置文件

  • 创建启动脚本/程序,自动下载spcie连接配置文件

  • 修改VM配置文件,固定spice连接端口

显而易见第一种方法无疑是最便捷的。第二种方法很好,但实现自动化,需要技术支持。第三种方法比较浪费人力,需要IT人员手动下发配置或者更改密码。且SPICE性能并不是很好。

 

 

3、基于horizon的云桌面

虽然底层是PVE,但并不影响horizon的部署。缺点是需要horizon授权和没有3D支持。

 

4、基于xendesktop的云桌面

参考文章:Proxmox VE与Citrix XenDesk集成 (buduanwang.vip)

 

如果在PVE上添加GPU加速器,给VM添加虚拟显卡,使用xendesktop,可以发挥VM的3D性能。能够进行3D渲染,甚至游戏。 缺点是需要授权。

 

三:企业如何选择

在千人以下,选择RDP也是非常可观的,近乎0额外成本。(除开window的授权和IT人员的开销)

 

四:我们正在开发,适用于Proxmox VE,且集成RDP、Spice和Vnc的云桌面客户端。

RDP支持域。敬请期待。

 

版权声明:
作者:佛西
链接:https://foxi.buduanwang.vip/vdi/640.html/
文章版权归作者所有,未经允许请勿转载
如需获得支持,请点击网页右上角


d1fb5ec7baf926630c6bda543baf4a5f.png

本文图片较多,有限流量党慎入,部分内容参考过网络上已有文章,所有工具收集自互联网

1.硬件选择

我定下的目标是家用NAS,而且要价格便宜!耗电量要低,但是性能又不能太差,必须达到主流水准吧!

1.1主板

主板就选当前最容易买到的华擎J3455-ITX,至于性能更好些的J4105-ITX之类的,如果你能买到还是可以的,如果有PCIEx16的需要且对主板只带2个SATA能忍可以上M系列。4105比3455多了一个M2插槽,但是这个插槽只能上无线网卡。这里我选择3455-ITX吧。

参数对比:


d7af1c740910ea4844b195f53d24e064.png


a1fafa8e2080fbe284934d86235be0c6.png


7e99144ba47c041f50c61016d917702c.png

主板差不多长这样:主要关注的参数有4个SATA!千兆网卡,pcie2.0插槽一个。


0420969c6ab5f4dde24006f6b935c8a9.png

主板图

1.2内存

内存大小

至少4GB以上,推荐8GB到16GB,如果你有同时使用多个虚拟机的情况,那么4GB是有点局促的。

鉴于网上流传着这块主板挑内存,那就随便选个兼容的低电压内存吧,牌子随意,具体型号可以查看兼容列表


c4d1bf6e5a73638861fe2aaf6e1fae8c.png


19800c70178cb3dad1405405fdf50dbd.png

我这里就简单在某宝选个兼容型号

1.3电源

NAS是一个长期不关机的设备,一个好一点的电源就是必须的了,好在这块主板的功耗很低,加上4块硬盘的满载功耗也应该不到30W,选择一个不那么山寨的牌子就好,我这里就用我自有的爱国者额定300W黑暗骑士吧。


502bca5c91514d484931f5eca57acda0.png

1.4机箱

网上的NAS机箱普遍价格虚高,如果手头比较紧且对空间占用和颜值没有太高要求,可以使用普通机箱代替。不差钱的估计也上成品NAS了,我就不做推荐了,图吧基佬甚至能用鞋盒。

1.5硬盘

NAS的主要部件之一就是硬盘,推荐一块固态硬盘加三块机械硬盘。

固态硬盘建议64GB以上,鉴于现在固态硬盘价格很便宜,上个240GB的也无妨。机械硬盘的话就按需购买就行了。如果数据比较重要可以组raid5(硬盘比较大的情况下有较大概率恢复失败的概率),如果不重要的话建议不要组raid,组raid的话一读写数据所有硬盘都要工作,耗电量较大,噪音也大。

2.系统选择

1.1NAS系统

系统是整个NAS的灵魂所在,常见的NAS系统有开源的FREENAS,OpenMediaVault,EasyNAS,不免费的群晖,或者WINDOWS ,介于我的定位是家用,那么易用性就得占主导地位,选择群晖吧。

1.2平台系统

鉴于群晖的特殊性(需要引导盘等等),我决定将NAS系统安装到虚拟机上。这样便于管理和迁移。

常见的虚拟机系统有ESXI,但是我尝试之后发现对网卡比较挑剔,J3455需要提前灌入驱动才行,有点麻烦,于是选择另外一个免费开源虚拟机系统PROXMOX VE,难能可贵的是它还支中文!


c8068289c23c00007a5c977c104a1eb5.png

3.系统安装

把硬件组装好之后就可以安装系统了。

首先到Proxmox VE官网下载最新版的系统并校验文件,

Download Proxmox software, documentation, agreementswww.proxmox.com

然后将系统镜像通过软碟通等刻录软件刻录到光盘或者U盘,将U盘接到主板USB接口上,开机,在bios里面选择U盘启动,检查一下CPU虚拟化是否开启,然后重启按照提示操作即可。


9980ee6bacb97bb14dcd28174417017b.gif

简易图示

4.虚拟机使用及配置小鸡

在局域网内的其他电脑上输入PVE的地址

记得加上https://和端口号8006(例如:https://192.168.1.100:8006)

登陆的时候如果提示证书错误请选择继续打开。

输入用户名root及刚才设置的密码


86be680dbfb6b256c7fccee12d49ddc7.png

提示没有有效订阅,请点击确定或者"x"以忽略.

4.1创建群晖虚拟机

选择右上角创建虚拟机创建一个虚拟机

ID默认即可,名称随意,

下一步操作系统选“不使用任何介质”

下一步硬盘总线选”sata“,磁盘大小随便填个20GB吧(只用来安装群晖的DSM及部分软件)设置太大会导致备份恢复慢。

下一步CPU按需设置,甚至可以保持默认。

下一步内存按需分配,我这里选择4GB

下一步网络模型设置为”半虚拟化“(synology DS 3617XS 6.1.6-15266可以选择半虚拟化,6.2-23739版本选择intel E1000)

下一步,检查配置信息,确认无误点击”完成“

稍等片刻即可完成创建(在右侧PVE目录下可以看到)。


22cf6fe36ccd63be17a8df0885aa7605.gif

准备WINSCP,通过WINSCP登陆到你的PVE主机,主机名为你的PVE地址,也就是在浏览器中输入的访问地址不需要填写”https://“及端口号”8006“


75c3ce4d0d8aff66d63836432897c6be.png

具体配置示意图

黑群晖系统也有很多个型号,常见的有3617,3615或者918,我这里就选择3617吧

登陆到ROOT目录下,将img2kvm工具及群晖3617的引导synoboot.img拖进去。

在web管理页面选择”pve“,点击”shell“打开web shell

输入

chmod +x img2kvm

并回车

输入

以下加粗部分为虚拟机ID,可以在左侧视图里面看到,如果是新建的第一个虚拟机那么应该是100,如果你的ID不一样,改成你的ID即可。

./img2kvm synoboot.img 100 vm-100-disk-1

并回车

如果操作无误,在WINSCP刷新一下,你将会看到多了一个名为vm-100-disk-1.qcow2的文件。

在硬件目录会多出来一个”未使用的磁盘0“


1bee6356e3c929f9236ac9165b5ab2b7.png

如图所示

双击这块磁盘,并根据提示添加它,总线/设备 选择“SATA”其他保持默认,然后你会看到一个硬盘(sata1)已经添加成功,容量为52MB,这将是群晖的引导盘。


01e17d6d26e88d7391b40066064665b6.png

接着在“选项”里面修改引导设备1为sata1并保存。


e13e992a4b3b7efb1e9d291d905c87a8.png

如果操作无误,那么你将会有2个虚拟的硬盘已经上线,一个20G,一个52MB(我的上上图只是用来演示所以只分了10GB,不要学我!!

接下来就可以通过 控制台/电源/开机 了!


62383da791483086dceb875c4dae2d47.png

经过片刻等待之后会看到提示。


d058dfb3b37cebff3b4a19cfcc3ad366.png

接下来通过群晖助手搜索设备!

下载安装synology Assistant后打开即可搜索到局域网内的群晖设备,没有安装群晖系统的会在“状态”提示DSM未安装。


267a2145b0a18523a84218fc489504cc.gif


e23466478b07642202d05843f0266aa8.png

可以双击未安装DSM的群晖设备以在浏览器中打开配置页面,也可以在浏览器输入未安装DSM的群晖设备的IP地址加端口号:5000。


51d0082fb3e77c3889cc1be3eeffdca7.png

点击“设置”进入下一步,安装系统的时候不要选择“安装最新版的DSM”!!请本地上传你下载的DSM6.2-23739


27973d5ab96e0a2e4ec3e43ad58e397e.gif

群晖的DSM系统未pat格式(其实就是个压缩包,可以用winrar打开),如果安装的是6.2-23739的引导,那么你只能使用23739版本的系统,用其他版本极有可能让你前功尽弃。黑裙虽好,有钱的还是建议上白的哦!省心,其他品牌的也行。

系统可以在官网下载:这里我直接将官网地址贴出来

Index of /download/DSM/release/6.2/23739archive.synology.com

经过大约10分钟的等待之后就可以进入到配置页面了,根据提示配置系统即可,唯一一点需要注册的就是时刻谨记自己是黑的,不要选择“自动安装更新”,也不要去尝试使用quickconnect,用不了是肯定的!


4d5424c61f18c7b10a90b8d601474a5a.gif

至此为止,你的DSM系统已经安装到你的固态硬盘里面了!

然后将NAS关机!


37871fedf1e4f0cfa4cbee621c5e6b34.png

关机完毕之后,将物理磁盘直接直通给群晖!

回到proxmox,选择shell


9c0983a309ab87c4d6f901e3320a1245.png

输入apt-get install lshw

回车,安装lshw

输入ls -l /dev/disk/by-id/

回车,查看磁盘ID

正常情况下你就可以看到你接的所有硬盘ID了


766ad3494e550e426b33b9c1132df2d7.png

我的第一块是金士顿的240G SSD,然后第二和第三块是希捷的2TB机械硬盘,从ST2000......这个是硬盘序列号,可以查出这是什么硬盘,以便于和你的硬盘对号入座!

直接从shell中复制出ID(不建议手动输入,容易出错!)

例如我的第二块硬盘ID为ata-ST2000DM001-1ER164_Z4Z1EYYK

然后在shell输入以下代码

qm set 103 --sata2 /dev/disk/by-id/ata-ST2000DM001-1ER164_Z4Z1EYYK

其中103 是我要直通到的虚拟机ID,sata2是硬盘顺序(因为我的引导是52MB的sata1,系统盘是20GB的sata0,所以下一块直通的盘应该是sata2,下下块是sata3) 然后/dev/disk/by-id/ 后面是你复制出的硬盘ID。


d8424becb63fc68643ebf2d14f592cb8.png

不记得怎么查虚拟机ID的看这里

输入代码后回车就可以在虚拟机(我这里是103(DSM2))的“硬件”菜单看到一块“未使用的磁盘”,和先前添加引导盘一样双击选择"SATA"之后保存即可。将你所需要直通的硬盘全部添加进去!然后再开机。

开机之后在群晖的“存储空间管理”中选择“存储池”点击“新增”按照自己的需求配置存储池和存储空间即可,我这里只是演示一下.


2c85378b2bd732610b403443718ad159.gif


1600e48749e37f96935b55e3d69e57dc.gif

到此为止,系统也安装完毕了!

注意不要在系统里面更新系统哦!有可能让你前功尽弃的!

4.2创建windows小机

首先打开WINSCP登陆PVE,然后进入到/var/lib/vz/template/iso目录

将你的windows ISO安装镜像拖进去,即可。你要拖其他linux镜像也可以的。

然后新建虚拟机,在“操作系统”栏选择ISO镜像,然后选择你导入的系统安装镜像即可,其他的和群晖虚拟机创建几乎一样!


175f36d8af8629a98de2d8f5b573cd67.gif

然后选择新创建的虚拟机,选择“控制台”开机,就会开始windows安装流程了,按照提示安装即可,这里不再细说!

虚拟机创建完成之后可以把windows的远程桌面打开,以后直接通过远程桌面即可登陆。

5.后续一些设置简要说明

如果想要远程登陆你的NAS或者windows虚拟机,如果你有公网IP的话,那是最好不过了。可以通过群晖的DDNS或者路由器的DDNS配上端口转发来实现远程登陆,如果你和我一样没有公网IPV4,但是有公网IPV6的话那可以用个支持阿里云的IPV6 DDNS的shell文件来自动更新DDNS。

5.1修改aliddns.sh

如果你有阿里云的域名的话(很多域名相当便宜的),在阿里云申请一个accesskey ID


99ae66f43d31897fe2f2fde663e60d56.png

将你的accesskey ID和Access Key Secret填入到aliddns.sh里面相应的位置,并将自己需要ddns的域名信息写入。


7d01954ae206edf11e7a25971a0e4f67.png

域名需要在阿里云的控制台添加一个AAAA记录。


8850a25691870d8ce4c389d870c7e1b9.png

至于网卡信息,可以在群晖的“控制面板”里面找到“终端机及SNMP”启用SSH功能。

然后通过xshell等类似的超级终端登录到你的群晖(可以在shell界面输入

ssh -p 端口号 用户名 @ IP地址例如 ssh -p 22 admin@192.168.2.2 )

然后再shell里面输入 ip addr

然后查看你的IPV6地址在哪个网卡下面


5f122b6611d14f44fd95e1af0a395343.png

然后将aliddns.sh里面的eth0改成这个网卡的名字即可!

然后将aliddns.sh通过file station 放到你的群晖里面去,然后右键查看它的位置并复制路径。


261d55f01ec2612222d886847654fcf2.png

然后再群晖控制面板里面找到“任务计划”,添加一个任务,10分钟执行一次


8d0f9da0a7d377ddb8a05d3e1e4142d4.gif

然后右键运行一下任务,再去阿里云看看你的IP是否已经更新,如无意外应该已经更新了。

5.2虚拟机访问NAS的共享文件夹

在群晖的控制面板 新增共享文件夹


36675f43ec7d0c15538765264bff1bb2.gif

在虚拟windows小机中安装synology Assistant,选择网络硬盘,按提示输入账号和密码映射磁盘或者目录到系统即可!


fed9a8bbe040dcbba5ba8e64e2c420ed.gif

5.3搭建一个自己的导航页


b84de8834e1b43060166eb2eaa562577.png

如果你再NAS里面搭建的业务多了,难免需要记各种端口号,这个是相当烦的一件事,那么一个属于你自己的导航页就必不可少了!

在群晖套件中心安装web station

在web station 的状态页,安装nginx(或者apache)和PHP7


1113895fdad9b40a0b2109d813b61136.png

设置服务器,并启用个人网站。


49f626b7dc7929cd49744e09e9e47b79.png

通过notepad++或者其他文本编辑软件(sublime text3或者ultraedit)修改导航页“index.php”中的链接、图片和文字描述为你自己的即可,然后保存!


1c68d8c1e03a8a100c5e606a6958cfe3.png

导航页自带了BGM,如果不想要可以把BMG注释掉,想更换就把music文件夹内的音乐换了,再把下面代码框内的音乐名字改成你换好的即可。


fb76b57f2f9351130baa00ab35169acc.png

通过file station 将导航页所有文件传到web目录下(包含以下内容)


c9e5e2c4aea6d9805b722b5bb6262a2a.png

然后在浏览器输入你的IP地址即可访问导航页。


f88560a7587e27db109be1bfc7a4c570.gif

5.4 其他比较好的可装软件

1.PLEX MEDIA SERVER 影视爱好者可以装一个,个人感觉比系统自带的video station好用,毕竟是黑的,不能使用它的在线转码,用这个就没问题了。

2.KodExplorer 可道云,私有云存储&协同办公。

3.baidu cloud 百度网盘下载工具

4.aria2 下载工具

.......

6.后记及部分操作答疑

1.为什么不直接装群晖在物理机上?

1.1因为是黑的,不能升级,如果在物理机上安装群晖,那么虚拟机就要运行在群晖上,群晖一玩完,其他小鸡也访问不了。

1.2群晖装在物理机上,需要DOM盘作为引导,常见的需要有一个U盘引导,虽然也有写到硬盘里面的方法,但是效果不好,,开机慢(至少我的体验是这个)。

1.3群晖运行在虚拟机中,升级和备份都很容易,故障恢复也很简单。

2.为什么虚拟机用proxmox VE不用ESXI

2.1因为esxi的网卡驱动比较难搞。

2.2proxmox VE的性能损失也很小。

3.为什么不直接用windows做文件共享

3.1最开始我用的就是windows,因为我的一些服务软件必须跑在上面,但是这毕竟不是真正的服务器,没有ecc的内存,时间久了用win就感觉很卡。况且群晖的一些服务是真的好用,等我富裕了必须整个白的,高端的。

4.我没有公网IPV4也没有公网IPV6想外部访问咋办?

4.1软件法:向日葵,花生壳,ngrok或者frp,推荐使用两种以上的方法搭配使用!

4.2硬件法:花生棒,IP盒子

5.为什么不将硬盘直通给群晖后再安装DSM?

5.1我这里主要是为了备份方便,我把DSM系统安装到固态硬盘之后,再把机械硬盘直通给群晖,设置好共享目录以及安装好plex等等软件之后关闭群晖,然后在PVE里面把群晖的硬件选项展开,将直通的硬盘分离掉,然后在PVE里面对群晖系统进行备份,备份完成之后再将机械硬盘直通回去,再开机。这样做的好处就是备份起来更加方便。机械硬盘故障之后不用重装DSM。如果将机械硬盘直通给群晖之后再装DSM系统,那么系统会装到每一块硬盘里面。

6.上面用到的这些安装包,系统到哪儿找?

6.1在这里链接: https://pan.baidu.com/s/1e54pu5fVLAwt17RKbAv8gg 提取码: 7e9w

相关资源:Proxmox云桌面解决方案_proxmox云桌面,pve云桌面-教育文档类资源...


公司在软件开发过程中,经常需要在不同的桌面操作系统环境中进行软件的开发和测试。比如软件一个新版本发布后,需要给不同的测试软件去测试在不同桌面操作系统上进行测试。测试人员需要花费不少的时间去安装桌面操作系统,补丁,并安装应用程序的最新版本。不少的时间浪费在了准备搭建上。

应用桌面虚拟化的技术,把应用软件制作在不同的桌面模板中。通过桌面虚拟化平台批量创建不同系统的桌面,供测试人员进行测试。 之前搭建一个测试环境,需要花费1-2个小时,准备桌面操作系统和安装应用软件系统。采用桌面云系统后,软件开发人员将新版本的软件预装在桌面模板中。测试部只需要3-5分钟,即可完成数十个桌面系统的准备,测试人员可以直接投入应用程序的测试工作。

整体方案选择了Proxmox作为虚拟化平台,DoraCloud作为桌面管理平台。使用DoraCloud的免费版即可满足测试平台的需求。


Proxmox virtualization environment,简称PVE,是一个开源免费的基于linux的企业级虚拟化方案,功能不输专业收费的VMware。简单的说,PVE是一个基于Debian的linux系统,内置了一套虚拟机管理工具,并提供了web管理页面,让我们可以非常简单的通过网页管理虚拟机。

DoraCloud是一套多平台、一体化、分布式的桌面虚拟化方案。基于开放架构,支持多种虚拟化平台(Hyper-V,VMware,Proxmox,XenServer),多种桌面协议(RDP,PCoIP,SPICE)。采用All-in-One的设计模式和虚拟设备的部署方式。


基于Proxmox虚拟化系统部署DoraCloud可以很快搭建一套桌面云系统。过程也比较简单。

1、部署Proxmox虚拟化

DoraCloud支持Proxmox 5.x,6.x,7.x。 国内推荐中科大( USTC)的源下载Proxmox的ISO,速度比较快。

https://mirrors.ustc.edu.cn/proxmox/iso/proxmox-ve_5.4-1.iso


下载后,使用Rufus制作一个Proxmox 启动U盘。制作USB时,选择DD模式。


接下来安装Proxmox。


2、部署DoraCloud

DoraCloud可以在线部署,使用如下脚本,即可部署。

部署的要求为:1)PVE服务器可以联网。 2)当前局域网有DHCP服务。 3)PVE服务器有 local-lvm 存储,以及 vmbr0 网桥。 脚本会自动下载DoraCloud管理系统的虚拟机镜像。虚拟机镜像会配置到 local-lvm存储,以及vmbr0网桥。虚拟机镜像会使用 DHCP 服务获得一个IP地址。

cd /var/lib/vz/dump;wget-qO- https://dl.doracloud.cn/dpinstall.pl --referer https://doracloud.cn | perl

下图为脚本执行后的提示,脚本会提示DoraCloud桌面管理系统的IP地址。


 接下来,通过 浏览器访问  https://192.168.3.234 ,输入账号  admin 密码 DoraCloud,即可进入管理后台。


注意:

1)如果Proxmox服务器无法联网,可以离线下载 DoraCloud 镜像,拷贝到 /var/lib/vz/dump目录下,恢复这个镜像。

2)如果网络中没有DHCP,可以进入DoraCloud虚拟机的Linux系统(账号: root  密码: dora@cloud),然后通过 nmtui 命令修改 IP地址。


3、根据向导对DoraCloud进行初始化配置

首先,配置对接的Proxmox虚拟化服务器地址和账号。

然后配置桌面池所需的存储池、网络池。

创建集群 


 配置用户数据库,即可完成DoraCloud初始化配置。

 4、在线下载DoraCloud桌面模板

桌面云系统搭建时,制作桌面模板是一个很费时的事情。涉及到安装Windows、更新、激活、安装半虚拟化驱动、安装桌面代理等事情。 DoraCloud提供了在线模板库的功能。可以在线下载桌面模板。 从DoraCloud的在线模板库,我们可以看到 Windows XP、Windows 7、Windows 10、Ubuntu、Deepin、NoiLinux(信息奥赛指定Linux)等桌面模板。


选择win7x64base 模板下载。大约了20多分钟,完成了下载。速度还不错。


5、创建桌面池、用户

 接下来,创建一个桌面池,桌面池名称: 办公、内存 4G、4核心。 

配置桌面池内创建4个桌面。然后设置桌面池的绑定账号为 administrator  123456 。这样账号是windows7x64模板的Windows 账号。

启用绑定账号后,终端可以识别这个绑定账号,登陆桌面windows。


之后,就等待系统自动创建桌面。

在用户菜单中,批量创建4个用户账号,为用户账号配置桌面池【办公】。这样4个用户都可以使用【办公】桌面池的桌面。



 6、使用账号登录云桌面

 登录DoraCloud桌面云系统有多种方式。

1)使用浏览器登录,会自动下载一个RDP文件,然后通过mstsc远程桌面客户端打开rdp文件。

2)使用DeskpoolClient 程序登录。 DeskpoolClient是DoraCloud云桌面的windows平台的客户端程序。

3)使用将旧电脑安装DoraOS,改造成云终端。然后登录。 有关瘦客户机软件系统DoraOS的安装和使用可以参见有关资料。

4)使用朵拉云的云终端(比如朵拉云DC10、JC35)登录。

我们的应用场景中,测试部员工都配置PC,直接通过方式1登录桌面即可。 对于没有配置PC的员工,可以配置朵拉云云终端,或者在旧电脑上安装 DoraOS,改造成云终端。 


7、切换DoraCloud为免费版 

最后,进入DoraCloud后台,进入【系统】【License管理】【启用免费版License】。



8、总结

利用Proxmox+DoraCloud搭建这个测试平台,比较简单高效。 比如相对于oVirt,OpenStack而言,本文的方案有几个优势:

1)部署更简单。基本不需要Linux和KVM背景,即可完成整套系统搭建。

2)提供了桌面模板。节省模板制作时间。

3)DoraCloud提供了面向用户的桌面服务。使用终端登录的使用体验接近PC。而其他平台提供的是虚拟主机。



作者:朵拉云
链接:https://www.jianshu.com/p/7d31cdf80402
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


基于KVM技术,使用Go语言开发,简单易学的虚拟机管理软件,从Web管理门户、主机监控、镜像克隆到故障切换,功能完备,开箱即用,数分钟之内即可将您的服务器集群升级为云主机平台。




快速安装指引


Nano平台提供了Installer安装程序用于自动化部署,最新版本Installer可以通过 官网下载 或者 Github发布页面 获取。


Installer会自行选择最合适的配置进行建议, 对于初次安装Nano的新用户,安装过程中尽量不要调整任何参数 ,如需调整参数、修改配置或者直接升级二进制文件,请在熟悉产品后进行操作。


Nano云平台可以将所有模块部署在同一个服务器或者虚拟机,实现All In One的最小验证集群


请使用前务必阅读快速入门手册,熟悉相关概念和流程再进行操作


服务器要求


支持虚拟化的X86服务器或者打开嵌套虚拟化(Intel VT-x/AMD-v)的虚拟机

2核4G内存50GB磁盘和一个网络设备

CentOS 7 Minimal

操作系统安装完成并且网络就绪

Firewalld和Selinux服务正常运行

如有Raid/LVM请先完成配置,再进行Nano安装

默认情况下"/var/lib/libvirt/images"路径存储云主机磁盘文件,"/opt/nano/core/data"存储系统镜像文件,请为其保留足够空间

全新安装


第一步. 下载并安装所有模块


$wget https://nanos.cloud/files/nano_installer_1.3.0.tar.gz $tar zxfv nano_installer_1.3.0.tar.gz $cd nano_installer $./installer


输入"0,1,2"或者"3"在当前服务器安装所有模块. 当您第一次安装Nano时,建议您使用安装程序建议的默认配置,无需修改。 如果你有多个网卡设备,请在安装程序的提示中选择连接内网的网卡设备进行安装。


配置详情可参考 快速入门手册







第二步. 启动所有服务


模块安装完成后,需要启动模块以提供服务,模块默认安装在/opt/nano目录下。使用命令手动启动所有模块(假定所有模块安装在同一台服务器), 请注意,必须首先启动Core模块 。


$cd /opt/nano/core $./core start $cd ../cell $./cell start $ cd ../frontend $./frontend start



我写成一键启动脚本


 cat start.sh


#!/bin/bash


#


ps -ef  | grep core  | grep -v grep  |awk '{print $2}' |xargs  kill -9    &> /dev/null


ps -ef  | grep cell  | grep -v grep  |awk '{print $2}' |xargs  kill -9    &> /dev/null


ps -ef  | grep frontend  | grep -v grep  |awk '{print $2}' |xargs  kill -9    &> /dev/null


cd /opt/nano/core


./core start


cd /opt/nano/cell


./cell start


cd /opt/nano/frontend


./frontend  start



当front-end模块成功启动后,会提示一个形如"x.x.x.x:5870"的监听地址,使用Chrome或者Firefox打开这个地址就可以进行平台管理了。


第三步. 使用Web门户管理平台


在浏览器中首次打开Nano管理页面,会提示创建一个初始管理员,成功后就可以登录平台。


登录系统之后,参考配置手册在计算资源池里添加资源节点之后,就可以开始创建云主机实例了。你也可以上传或者构建新的光盘镜像或者磁盘镜像,用于快速批量部署实例。




配置服务


选择-计算资源池-使用本地存储-资源节点




将本机加入到资源节点中来




默认的资源节点为/var/lib/libvirt/images


"/opt/nano/core/data"存储系统镜像文件


可以修改为自己定义的位置


选择光盘镜像上传一个下载的iso镜像文件




选择云主机-创建云主机-定义云主机的信息-来源镜像选择空白镜像(因为我这里是加载的iso镜像-需要安装系统)




选择加载刚才的光盘镜像




选择远程监控-可以看到正在安装系统




还能对已经运行的云主机进行资源的监控




这里简单的实现了云主机实列的创建应用。还有一些其他强大的功能还未探索 重点是使用极为方便,部署工作三分钟搞定。


升级安装


Nano所有模块使用go编译为二进制可执行文件,无需外部库依赖,配置和数据文件格式通常保持后向兼容,无需用户干预。


Nano能够通过两种方式进行升级,启动Installer并且选择”4”可以进行自动升级,自动升级会根据用户输入的安装路径,检查已经安装模块进行替换,并且自动停止并重启运行中的模块,是推荐的升级方式。


当自动升级方式出现问题时,可以选择手动升级,只需要使用”./模块名 stop”停止运行中的模块文件,替换可执行文件后使用”./模块名 start”重新启动服务即可。


唯一例外是FrontEnd模块还包含前端页面文件,所以升级时,除了要替换可执行文件,还需要手工将页面和js脚本文件从发布包中复制resource目录下进行覆盖。

————————————————

版权声明:本文为CSDN博主「姚敦林博客」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/yaodunlin/article/details/111645027


企业目前上云,有多种选择,那么对于中小企业,从成本和规模考虑,如何搭建自己的私有云环境,笔者这里根据自己的一个实践环境,尝试搭建一套小型私有云环境,功能并不完善,但基本能满足中小企业的需求。

硬件环境准备
环境的搭建,硬件成本是必须的,没有物理设备,那么巧妇难为无米之炊~~

服务器设备:

建议采购3台以上X86两路服务器,CPU配置根据需求,建议5218金牌。内存配置256G以上。配置SSD卡(32G以上、2块RAID-1)、SSD硬盘(512G以上、2块以上)、大容量4T的SATA硬盘(根据预算,配置8块以上,同时也考虑实际使用情况扩容)。配置万兆网卡2口2块(实现冗余)、配置千兆网卡4口2块(实现冗余)。

这样的硬件设备,配置较好的CPU、SSD硬盘、大容量SATA硬盘,可以实现计算和存储节点在一块,也有一些超融合的概念。

配套网络设备

万兆网络交换机

千兆网络交换机

软件准备
相信很多企业都在使用VMware的Exsi,VMware的价格还是比较高的,那么再新建一套虚拟化环境,从成本考虑采用开源的免费软件,这里选择了Proxmox,目前版本是6.0.(下载地址:https://pve.proxmox.com/wiki/Downloads)

Proxmox集成了Ceph功能,配合上述说的计算存储统一部署,那么选择Proxmox节省了很多部署上的问题,使得整个部署更简单。

有了虚拟化软件,那么还需要一套云管平台,统一来纳管资源,包括VMware和新的虚拟化资源池。

支持Vmware的云管平台很多,但是同时支持VMware和Proxmox的云管平台比较少,有些云管平台支持早期的Proxmox版本,但是最新的都需要自定义开发,这里选择了某厂商的一个云管平台,对Proxmox6.0支持并不完全。

迁移,如果需要迁移一部分VMware虚拟机到Proxmox,这里可以参考VMware导出OVA模板,在导出模板后加一个Ios后缀,上传至Proxmox,解压-导入。具体可参考:https://blog.csdn.net/zebra2011/article/details/83046841

安装配置
系统安装

Proxmox目前网络上有很多安装文档,大致雷同,这里就不在重复累赘,截取需要注意的几部分:

使用U盘或者刻盘安装都可以,基本都是下一步点击,这里注意:

选择系统安装硬盘,因为服务器中有多个盘,这里记得选择下。

网卡配置,记得这里有多块网卡,要区分做管理网段的网卡、业务网段网卡、Ceph集群网卡。

接下来按部就班完成安装即可。

假设目前环境中已经有ntp服务器,那么上诉服务器能链接外网,强烈建议

apt-get install ntp
如果设备你在内网那么ntp安装稍微麻烦一点,首先Proxmox基于Debian,那么要去Debian官网去下载相关软件包进行安装。https://www.debian.org/distrib/packages 搜索安装包离线安装,同时会有一些依赖,依次下载安装。

地址配置

每台设备安装完成后,根据需求,一般正式环境有管理网段、生产网段、Ceph网段。使用nano命令打开文件进行配置。

nano /etc/network/interface
配置网卡eth0的IP地址
auto eth0 表示网卡随系统自动请
iface eth0 inet static 表示网卡为静态ip地址
address 192.168.2.147 表示设置ip地址
netmask 255.255.255.0 表示子网掩码
gateway 192.168.2.1 表示网关。
配置多块网卡,记得根据接入的交换机,网关地址不设置。
理论上多块网卡配置业务网卡bond绑定,Ceph网络bond绑定,管理网卡可考虑单口
考虑Ceph模块的在线下载,那么编辑 /etc/resolv.conf 配置DNS

完成后重启网络服务即可。systemctl restart networking

注意:这里没有ifconfig命令,查看IP请用ip addr

集群配置

在每天设备的/etc/hosts配置好相应的IP和主机名,通过浏览器登录:https://IP:8006 登录名为:root密码为安装时候设置的密码。

选择其中一台主机来创建集群,这些都可以在页面上操作完成,然后把其余的几台设备添加进来,这时候建议ssh登录服务器,执行:

pvecm add IP
yes
查看输出,成功即可
输入:

pvecm status 查看集群状态
登录之前的浏览器页面

这时候Proxmox集群就完成了。

Ceph模块安装

Ceph模块安装还是建议先把设备连接至外网,点击之前浏览器页面中每台主机的ceph选项,在外网通讯正常情况下会自动安装。

之前先进行网络配置或者检查网络配置

配置Ceph网卡,Proxmox其实是一个定制化的Debian。

nano /etc/network/interface
中选择万兆网卡,其实写入配置文件。
配置网卡eth0的IP地址
auto eth0 表示网卡随系统自动请
iface eth0 inet static 表示网卡为静态ip地址
address IP地址 表示设置ip地址
netmask 255.255.255.0 表示子网掩码
gateway 网关地址不需要,因为之前业务网卡已经配置过网关,这里选择另外网段的地址来作为ceph的网络
如果设备链接在外网,那么Proxmox6版本中,点击左侧ceph,自动会进行安装,4台机器都安装ceph。

另外一种方式,通过登录服务器命令行去安装:

pveceph install --version 需要的版本 --每个节点安装ceph软件包
pveceph init --network 192.168.10.0/24 初始化ceph的网络
pveceph createmon --创建mon


配置ntp服务,对于Ceph来说,ntp服务是必须的,如果有内网ntp可以通过设置ntpdate来进行时间同步,不然会一直报错。

之后登录网页管理控制台,在其余三个节点都创建mon。

之后再创建OSD,把目前系统上识别出来的硬盘,逐步添加:



注意:Ceph配置完成后记得创建pool,这也只需要页面点击即可,命名,size=3表示是三副本(正常),min_size表示最小数据副本,这里需要注意pg_num,一般要保证每一个硬盘上不少于30个,不然整个ceph集群中会有警告,那么根据自身的硬盘数量来设置,后期也可以改,那么就需要去重平衡,这个时间会比较久~

创建RBD存储池,点击左侧存储,添加即可,选择之前的节点即可。


云管平台纳管
选择一款云管平台,接入纳管VMware和Proxmox,编辑工单实现资源的分配、扩容、销毁等功能。


新建用户:

设计相关流程和工单:

虚拟机新建
熟悉VMware的,其实用Proxmox很容易上手,点击主机,右键选择新建即可:

选择Ceph存储,其他选项下一步根据实际情况来选择。

整个集群状态

虚拟机状态


常用命令

整个搭建过程并不复杂,登录服务器,常用命令如下:

qm是最重要的命令:

USAGE: qm [ARGS] [OPTIONS]
    qm cloudinit dump
    qm guest cmd
    qm guest exec-status
    qm guest passwd [OPTIONS]
    qm guest exec [] [OPTIONS]
    qm clone [OPTIONS]
    qm config [OPTIONS]
    qm create [OPTIONS]
    qm delsnapshot [OPTIONS]
    qm destroy [OPTIONS]
    qm list [OPTIONS]
    qm listsnapshot
    qm migrate [OPTIONS]
    qm move_disk [OPTIONS]
    qm pending
    qm reset [OPTIONS]
    qm resize [OPTIONS]
    qm resume [OPTIONS]
    qm rollback
    qm sendkey [OPTIONS]
    qm set [OPTIONS]
    qm shutdown [OPTIONS]
    qm snapshot [OPTIONS]
    qm start [OPTIONS]
    qm stop [OPTIONS]
    qm suspend [OPTIONS]
    qm template [OPTIONS]
    qm unlink --idlist [OPTIONS]
    qm cleanup
    qm importdisk [OPTIONS]
    qm importovf [OPTIONS]
    qm monitor
    qm mtunnel
    qm nbdstop
    qm rescan [OPTIONS]
    qm showcmd [OPTIONS]
    qm status [OPTIONS]
    qm terminal [OPTIONS]
    qm unlock
    qm vncproxy
    qm wait [OPTIONS]

查看当前主机的虚拟机
    root@pve1:~# qm list
    VMID NAME STATUS MEM(MB) BOOTDISK(GB) PID
    103 redhat6o11g stopped 16384 150.00 0

ceph命令,熟悉ceph的同学,ceph的命令在这边都是适用的。

如查看集群状态:
    root@pve1:~# ceph -s
    cluster:
    id: 580f4d51-b80e-4842-b394-484cbd3ad0b6
    health: HEALTH_OK
    services:
    mon: 4 daemons, quorum pve1,pve2,pve3,pve4 (age 4d)
    mgr: pve1(active, since 3d)
    osd: 40 osds: 40 up (since 3d), 40 in (since 4d)
    data:
    pools: 2 pools, 640 pgs
    objects: 105.74k objects, 410 GiB
    usage: 237 GiB used, 130 TiB / 130 TiB avail
    pgs: 640 active+clean

注意事项:

1.Proxmox中新建的虚拟机需要添加到HA集群。

2.云管平台纳管,需要有相应的自定义开发,Proxmox接入自动化实现目前还有问题。

3.Ceph集群偶尔会报节点不可用,这个时候只能重启故障节点,出现概率不高。

4.Proxmox迁移虚拟机的速度比VMware要慢不少。
————————————————
版权声明:本文为CSDN博主「投河自尽的鱼」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/sxjinmingjie/article/details/101694507