一种在kubernetes集群中部署X窗口系统的工具及方法
文献发布时间:2023-06-19 11:02:01
技术领域
本发明涉及kubernetes技术领域,具体的说是一种在kubernetes集群中部署X窗口系统的工具及方法。
背景技术
Kubernetes,简称K8s,是一个开源的,用于管理云平台中多个主机上的容器化的应用,Kubernetes的目标是让部署容器化的应用简单并且高效(powerful),Kubernetes提供了应用部署、规划、更新、维护的一种机制。
X窗口系统(X Window System,也常称为X11或X)是一种以位图方式显示的软件窗口系统。最初是1984年麻省理工学院的研究,之后变成UNIX、类UNIX、以及OpenVMS等操作系统所一致适用的标准化软件工具包及显示架构的运作协定。现在几乎所有的操作系统都能支持与使用X窗口系统。知名的桌面环境——GNOME和KDE也都是以X窗口系统为基础建构成的。
现今,传统的软件开发模式是用户在自己的电脑上安装IDE开发工具,然后进行开发,这样很难保证所有人员开发环境的一致性,同时也失去了高可靠行,用户的开发环境很容易随着开发主机的崩溃而无法使用。一种解决办法就是使用虚拟机作为开发环境,用户远程登录到虚拟机进行开发。容器作为一种新型的轻量级虚拟化技术已经得到了广泛的应用,将用户的远程开发环境迁移到kubernetes集群想法也应运而生。
发明内容
本发明针对目前技术发展的需求和不足之处,提供一种在kubernetes集群中部署X窗口系统的工具及方法,使用户可以远程访问X窗口系统,并且享受到高可用、高效率、一致性等特点。
首先,本发明公开一种在kubernetes集群中部署X窗口系统的工具,解决上述技术问题采用的技术方案如下:
一种在kubernetes集群中部署X窗口系统的工具,其包括平台组件、用户组件和helm组件;
平台组件又包括X Server、VNC Server、Web VNC Client,其中,X Server作为X窗口系统的服务端,接收来自VNC Server的用户输入,VNC Server作为VNC服务端,接收来自VNC Client的输入,VNC Client包括用户使用的VNC Client和Web VNC Client,Web VNCClient供用户通过浏览器访问;
用户组件包括用户要使用的X窗口系统镜像,用户组件通过X Server的ServiceDNS域名访问X窗口系统;
helm组件将平台组件和用户组件部署到kubernetes集群中,部署完成后,平台组件和用户组件在同一个Chart中工作。
进一步的,所涉及helm组件将平台组件以Pod的形式部署到kubernetes集群中;
平台组件的X Server、VNC Server、Web VNC Client之间通过localhost访问。
进一步的,所涉及helm组件将用户组件以Pod的形式部署到kubernetes集群中。
优选的,所涉及平台组件和用户组件之间通过kubernetes域名访问。
进一步的,所涉及用户组件通过X Server的Service DNS域名访问X窗口系统,具体操作包括:
用户通过浏览器访问Web VNC Client,再由Web VNC Client访问VNC Server,最后经由VNC Server访问X Server的Service DNS域名,X窗口系统进行响应,将绘制信息返回给X Server,X Server进行绘制,同时在桌面上显示绘制效果。
进一步的,所涉及用户组件通过X Server的Service DNS域名访问X窗口系统,具体操作包括:用户自行打开VNC Client,连接VNC Server,通过VNC Server向X Server传输用户访问,X Server接收用户访问,并经由Service DNS域名访问X窗口系统,X窗口系统进行响应,将绘制信息返回给X Server,X Server进行绘制,同时在桌面上显示绘制效果。
其次,本发明公开一种在kubernetes集群中部署X窗口系统的方法,解决上述技术问题采用的技术方案如下:
一种在kubernetes集群中部署X窗口系统的方法,该方法的实现涉及平台组件、用户组件和helm组件;
平台组件又包括X Server、VNC Server、Web VNC Client,其中,X Server作为X窗口系统的服务端,接收来自VNC Server的用户输入,VNC Server作为VNC服务端,接收来自VNC Client的输入,VNC Client包括用户使用的VNC Client和Web VNC Client,Web VNCClient供用户通过浏览器访问;
用户组件包括用户要使用的X窗口系统镜像,用户组件通过X Server的ServiceDNS域名访问X窗口系统;
helm组件将平台组件和用户组件分别以Pod的形式部署到kubernetes集群中,部署完成后,平台组件和用户组件在同一个Chart中工作。
进一步的,所涉及平台组件的X Server、VNC Server、Web VNC Client之间通过localhost访问;
平台组件和用户组件之间通过kubernetes域名访问。
进一步的,所涉及用户组件通过X Server的Service DNS域名访问X窗口系统,具体操作包括:
用户通过浏览器访问Web VNC Client,再由Web VNC Client访问VNC Server,最后经由VNC Server访问X Server的Service DNS域名,X窗口系统进行响应,将绘制信息返回给X Server,X Server进行绘制,同时在桌面上显示绘制效果。
进一步的,所涉及用户组件通过X Server的Service DNS域名访问X窗口系统,具体操作包括:用户自行打开VNC Client,连接VNC Server,通过VNC Server向X Server传输用户访问,X Server接收用户访问,并经由Service DNS域名访问X窗口系统,X窗口系统进行响应,将绘制信息返回给X Server,X Server进行绘制,同时在桌面上显示绘制效果。
本发明的一种在kubernetes集群中部署X窗口系统的工具及方法,与现有技术相比具有的有益效果是:
本发明可以将X窗口系统部署到kubernetes集群,使用户可以通过浏览器和VNCClient两种方式远程访问X窗口系统,并且享受到高可用、高效率、一致性等特点。
附图说明
附图1是本发明中平台组件和用户组件之间的架构图;
附图2是本发明中用户通过浏览器访问X窗口系统的交互图;
附图3是本发明中用户通过VNC Client访问X窗口系统的交互图。
具体实施方式
为使本发明的技术方案、解决的技术问题和技术效果更加清楚明白,以下结合具体实施例,对本发明的技术方案进行清楚、完整的描述。
实施例一:
结合附图1,本实施例提出一种在kubernetes集群中部署X窗口系统的工具,其包括平台组件、用户组件和helm组件。
平台组件又包括X Server、VNC Server、Web VNC Client,X Server、VNC Server、Web VNC Client之间通过localhost访问。其中,X Server作为X窗口系统的服务端,接收来自VNC Server的用户输入,VNC Server作为VNC服务端,接收来自VNC Client的输入,VNCClient包括用户使用的VNC Client和Web VNC Client,Web VNC Client供用户通过浏览器访问。
用户组件包括用户要使用的X窗口系统镜像,
用户组件通过X Server的Service DNS域名访问X窗口系统。
helm组件将平台组件和用户组件分别以Pod的形式部署到kubernetes集群中,部署完成后,平台组件和用户组件之间通过kubernetes域名访问,平台组件和用户组件在同一个Chart中工作。
本实施例中,用户组件通过X Server的Service DNS域名访问X窗口系统,有以下两种方式:,
(A)结合附图2,用户通过浏览器访问Web VNC Client,再由Web VNC Client访问VNC Server,最后经由VNC Server访问X Server的Service DNS域名,X窗口系统进行响应,将绘制信息返回给X Server,X Server进行绘制,同时在桌面上显示绘制效果。
(B)结合附图3,用户自行打开VNC Client,连接VNC Server,通过VNC Server向XServer传输用户访问,X Server接收用户访问,并经由Service DNS域名访问X窗口系统,X窗口系统进行响应,将绘制信息返回给X Server,X Server进行绘制,同时在桌面上显示绘制效果。
实施例二:
结合附图1,本实施例提出一种在kubernetes集群中部署X窗口系统的方法,该方法的实现涉及平台组件、用户组件和helm组件。
平台组件又包括X Server、VNC Server、Web VNC Client,X Server、VNC Server、Web VNC Client之间通过localhost访问。其中,X Server作为X窗口系统的服务端,接收来自VNC Server的用户输入,VNC Server作为VNC服务端,接收来自VNC Client的输入,VNCClient包括用户使用的VNC Client和Web VNC Client,Web VNC Client供用户通过浏览器访问。
用户组件包括用户要使用的X窗口系统镜像,用户组件通过X Server的ServiceDNS域名访问X窗口系统。
helm组件将平台组件和用户组件分别以Pod的形式部署到kubernetes集群中,部署完成后,平台组件和用户组件之间通过kubernetes域名访问,平台组件和用户组件在同一个Chart中工作。
本实施例中,用户组件通过X Server的Service DNS域名访问X窗口系统,有以下两种方式:
(A)结合附图2,用户通过浏览器访问Web VNC Client,再由Web VNC Client访问VNC Server,最后经由VNC Server访问X Server的Service DNS域名,X窗口系统进行响应,将绘制信息返回给X Server,X Server进行绘制,同时在桌面上显示绘制效果。
(B)结合附图3,用户自行打开VNC Client,连接VNC Server,通过VNC Server向XServer传输用户访问,X Server接收用户访问,并经由Service DNS域名访问X窗口系统,X窗口系统进行响应,将绘制信息返回给X Server,X Server进行绘制,同时在桌面上显示绘制效果。
综上可知,采用本发明的一种在kubernetes集群中部署X窗口系统的工具及方法,可以将X窗口系统部署到kubernetes集群,使用户可以通过浏览器和VNC Client两种方式远程访问X窗口系统,并且享受到高可用、高效率、一致性等特点。
以上应用具体个例对本发明的原理及实施方式进行了详细阐述,这些实施例只是用于帮助理解本发明的核心技术内容。基于本发明的上述具体实施例,本技术领域的技术人员在不脱离本发明原理的前提下,对本发明所作出的任何改进和修饰,皆应落入本发明的专利保护范围。
- 一种在kubernetes集群中部署X窗口系统的工具及方法
- 一种在Kubernetes集群中自动部署服务的方法与系统