CN111796858B - Kubernetes集群内部应用程序访问检测的方法、系统及相关设备 - Google Patents
Kubernetes集群内部应用程序访问检测的方法、系统及相关设备 Download PDFInfo
- Publication number
- CN111796858B CN111796858B CN202010645661.5A CN202010645661A CN111796858B CN 111796858 B CN111796858 B CN 111796858B CN 202010645661 A CN202010645661 A CN 202010645661A CN 111796858 B CN111796858 B CN 111796858B
- Authority
- CN
- China
- Prior art keywords
- application program
- cluster
- target application
- target
- kubernetes
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 32
- 230000004044 response Effects 0.000 claims abstract description 28
- 230000002452 interceptive effect Effects 0.000 claims abstract description 16
- 230000006870 function Effects 0.000 claims description 18
- 238000004590 computer program Methods 0.000 claims description 11
- 238000001514 detection method Methods 0.000 claims description 11
- 238000013507 mapping Methods 0.000 claims description 8
- 238000012423 maintenance Methods 0.000 abstract description 12
- 238000011161 development Methods 0.000 abstract description 11
- 238000007726 management method Methods 0.000 description 21
- 238000004891 communication Methods 0.000 description 10
- 239000003795 chemical substances by application Substances 0.000 description 7
- 238000012545 processing Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000004088 simulation Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明实施例提供了Kubernetes集群内部应用程序访问检测的方法、系统及相关设备,用于实现Kubernetes集群中的应用程序的开发和运维阶段的外部访问,节省资源,同时提高应用程序访问的安全性。本发明实施例方法包括:基于预设交互界面接收用户输入的服务请求,所述服务请求中包括目标应用程序连接参数及请求参数;查询所述目标应用程序所属的目标Kubernetes集群对应的集群连接参数,并根据所述集群连接参数连接所述目标Kubernetes集群;将所述服务请求转发至所述目标Kubernetes集群中的代理模块,以使得所述代理模块根据所述目标应用程序连接参数访问目标应用程序,并获取所述请求参数对应的响应参数数据;接收所述目标Kubernetes集群返回的所述响应参数数据。
Description
技术领域
本发明涉及Kubernetes集群内部应用程序访问技术领域,尤其涉及Kubernetes集群内部应用程序访问检测的方法、系统及相关设备。
背景技术
Kubernetes,是一个开源的,用于管理云平台中多个主机上的容器化的应用。Kubernetes的目标是让部署容器化的应用简单并且高效,Kubernetes提供了应用部署、规划、更新、维护的一种机制。kubernetes集群里的应用程序,默认集群外部是无法访问的,需要通过kubernetes的service(是一种为一组功能相同的Pod提供单一不变的接入点的资源)资源对象来定义才能开放端口。
通常情况下只需要开放web应用程序的端口给外部访问(通过创建kubernetes的service资源对象),然后web应用程序调用后端应用程序来提供网站等各项功能。但是有时候开发或运维人员也需要对web应用程序的端口进行访问,比如检查程序运行状态,检测接口返回情况等,这就需要给后端应用程序也创建kubernetes的service资源对象来开放端口。
现有技术中,应用程序的开发或运维阶段,需要创建kubernetes的service资源对象来开放后台端口给开发和运维人员,导致在kubernetes里创建很多与实际业务无关service资源对象,带来端口管理上的混乱或冲突。同时,开放与实际业务无关service资源对象会直接暴露后台端口,会带来安全隐患。
发明内容
本发明实施例提供了一种Kubernetes集群内部应用程序访问检测的方法、系统及相关设备,用于实现Kubernetes集群中的应用程序的开发和运维阶段的外部访问,提高应用程序访问的安全性。
本发明实施例第一方面提供了一种Kubernetes集群内部应用程序访问检测的方法,可包括:
基于预设交互界面接收用户输入的服务请求,所述服务请求中包括目标应用程序连接参数及请求参数;
查询所述目标应用程序所属的目标Kubernetes集群对应的集群连接参数,并根据所述集群连接参数连接所述目标Kubernetes集群;
将所述服务请求转发至所述目标Kubernetes集群中的代理模块,以使得所述代理模块根据所述目标应用程序连接参数访问目标应用程序,并获取所述请求参数对应的响应参数数据;
接收所述目标Kubernetes集群返回的所述响应参数数据。
可选的,作为一种可能的实施方式,本发明实施例中,查询所述目标应用程序所属的目标Kubernetes集群对应的集群连接参数,包括:
通过查询预设的集群标识与集群连接信息的映射关系,获取所述目标应用程序所属的目标Kubernetes集群对应的集群连接信息。
可选的,作为一种可能的实施方式,本发明实施例中,所述目标Kubernetes集群根据所述目标应用程序连接参数访问目标应用程序,包括:
所述目标Kubernetes集群通过创建kubernetes的service资源对象的方式开放代理模块的访问端口;
通过所述访问端口将所述服务请求发送给所述代理模块,以使得所述代理模块根据所述目标应用程序连接参数建立与所述目标应用程序的连接,并访问目标应用程序。
可选的,作为一种可能的实施方式,本发明实施例中,所述目标Kubernetes集群根据所述目标应用程序连接参数访问目标应用程序,包括:
所述目标Kubernetes集群通过api server的功能将所述服务请求发送给代理模块,以使得所述代理模块根据所述目标应用程序连接参数建立与所述目标应用程序的连接,并访问目标应用程序。
可选的,作为一种可能的实施方式,本发明实施例中,所述代理模块根据所述目标应用程序连接参数建立与所述目标应用程序的连接,包括:
代理模块对所述目标应用程序连接参数进行解析,至少得到所述目标应用程序所在Pod的IP地址、端口号、访问协议,并根据访问协议类型,封装相应参数和协议的客户端请求,向目标应用程序所在Pod的IP和端口建立连接。
本发明实施例第二方面提供了一种Kubernetes集群内部应用程序访问检测的系统,可包括:
前端模块,基于预设交互界面接收用户输入的服务请求,所述服务请求中包括目标应用程序连接参数及请求参数;
Kubernetes管理模块,用于查询所述目标应用程序所属的目标Kubernetes集群对应的集群连接参数,并根据所述集群连接参数连接所述目标Kubernetes集群,并将所述服务请求转发至所述目标Kubernetes集群中的代理模块;
代理模块,用于根据所述目标应用程序连接参数访问目标应用程序,并获取所述请求参数对应的响应参数数据;
Kubernetes管理模块还用于接收所述目标Kubernetes集群返回的所述响应参数数据。
可选的,作为一种可能的实施方式,本发明实施例中的所述Kubernetes管理模块,可包括:
查询单元,通过查询预设的集群标识与集群连接信息的映射关系,获取所述目标应用程序所属的目标Kubernetes集群对应的集群连接信息。
可选的,作为一种可能的实施方式,本发明实施例中的Kubernetes集群内部应用程序访问检测的系统,还可以包括:
设置模块,通过创建kubernetes的service资源对象的方式开放代理模块的访问端口;
第一转发模块,通过所述访问端口将所述服务请求发送给所述代理模块,以使得所述代理模块根据所述目标应用程序连接参数建立与所述目标应用程序的连接,并访问目标应用程序。
可选的,作为一种可能的实施方式,本发明实施例中的Kubernetes集群内部应用程序访问检测的系统,还可以包括:
第二转发模块,通过api server的功能将所述服务请求发送给代理模块,以使得所述代理模块根据所述目标应用程序连接参数建立与所述目标应用程序的连接,并访问目标应用程序。
可选的,作为一种可能的实施方式,本发明实施例中,所述代理模块具体用于,对所述目标应用程序连接参数进行解析,至少得到所述目标应用程序所在Pod的IP地址、端口号、访问协议,并根据访问协议类型,封装相应参数和协议的客户端请求,向目标应用程序所在Pod的IP和端口建立连接。
本发明实施例第三方面提供了一种计算机装置,所述计算机装置包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现如第一方面及第一方面中任意一种可能的实施方式中的步骤。
本发明实施例第四方面提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面及第一方面中任意一种可能的实施方式中的步骤。
从以上技术方案可以看出,本发明实施例具有以下优点:
本发明实施例中,可以基于预设交互界面接收用户输入的服务请求,基于该服务请求可以查询目标应用程序所属的目标Kubernetes集群对应的集群连接参数,并根据集群连接参数连接目标Kubernetes集群,然后将服务请求转发至目标Kubernetes集群中的代理模块,使得目标Kubernetes集群根据目标应用程序连接参数访问目标应用程序,并获取请求参数对应的响应参数数据。相对于现有技术,本发明实施例中,Kubernetes集群中的应用程序的开发和运维阶段的外部访问检测时,无需创建与实际业务无关service资源对象暴露后台端口,方便且节省资源,同时提高了应用程序访问的安全性。
附图说明
图1为本发明实施例中一种Kubernetes集群内部应用程序访问检测的方法的一个实施例示意图;
图2为本发明实施例中一种Kubernetes集群内部应用程序访问检测的方法的一个具体应用实施例示意图;
图3为本发明实施例中一种Kubernetes集群内部应用程序访问检测的系统的一个实施例示意图;
图4为本发明实施例中一种计算机装置的一个实施例示意图。
具体实施方式
本发明实施例提供了一种Kubernetes集群内部应用程序访问检测的方法、系统及相关设备,用于实现Kubernetes集群中的应用程序的开发和运维阶段的外部访问,提高应用程序访问的安全性。
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
现有方案中,需要在kubernetes集群内部创建service资源对象来开放后台端口。为了避免开放kubernetes集群后台端口带来的安全风险,本发明实施例中为应用开发或运维人员设置了独立的访问渠道。无需开放与实际业务无关后台端口,降低了安全风险。
为了便于理解,下面对本发明实施例中的具体流程进行描述,请参阅图1,本发明实施例中一种Kubernetes集群内部应用程序访问检测的方法的一个实施例可包括:
101、基于预设交互界面接收用户输入的服务请求,服务请求中包括目标应用程序连接参数及请求参数;
当应用开发或运维人员实现对web应用程序的端口进行访问操作时,可以基于预设交互界面输入需要访问的目标应用程序的连接参数及请求参数,交互界面对于的前端可以将用户输入的目标应用程序的连接参数及请求参数封装成对应的服务请求。Kubernetes集群内部应用程序访问检测的系统(以下简称程序访问系统)可以基于预设交互界面接收用户输入的服务请求。
102、查询目标应用程序所属的目标Kubernetes集群对应的集群连接参数,并根据集群连接参数连接目标Kubernetes集群;
本发明实施例中可以在程序访问系统中预存各个Kubernetes集群的集群连接参数,当接收到服务请求之后,可以根据目标应用程序所属的目标Kubernetes集群的身份标识查询到对应的集群连接参数,并根据该集群连接参数连接目标Kubernetes集群。
可选的,作为一种可能的实施方式,可以通过查询预设的集群标识与集群连接信息的映射关系,获取目标应用程序所属的目标Kubernetes集群对应的集群连接信息。
其中,集群连接参数可以根据Kubernetes集群的通信协议进行合理的设置,本申请中的通信协议可以包括但不限于HTTP、HTTPS、HTTP2.0、TCP、UDP、GRPC、HESSIAN等通信协议。
103、将服务请求转发至目标Kubernetes集群中的代理模块,以使得代理模块根据目标应用程序连接参数访问目标应用程序,并获取请求参数对应的响应参数数据;
在与目标应用程序所属的目标Kubernetes集群建立连接关系之后,程序访问系统可以将服务请求转发至目标Kubernetes集群中的代理模块,代理模块可以根据目标应用程序连接参数访问目标应用程序,并获取请求参数对应的响应参数数据。其中,代理模块是部署在kubernetes集群中运行的应用程序,用于接收外部的服务请求,并根据应用程序连接参数访问目标应用程序,以获取请求参数对应的响应参数。
具体的目标应用程序连接参数可以根据Kubernetes集群的通信协议进行合理的设置。例如Kubernetes集群中的应用程序为HTTP协议,对应的目标应用程序连接参数可以设置为IP地址以及端口号、通信协议标识。
104、接收目标Kubernetes集群返回的响应参数数据。
在目标Kubernetes集群获取到请求参数对应的响应参数数据之后,可以返回给程序访问系统,进而可以基于交互界面或其它方式展示给用户。
本发明实施例中,可以基于预设交互界面接收用户输入的服务请求,基于该服务请求可以查询目标应用程序所属的目标Kubernetes集群对应的集群连接参数,并根据集群连接参数连接目标Kubernetes集群,然后将服务请求转发至目标Kubernetes集群中的代理模块,使得代理模块根据目标应用程序连接参数访问目标应用程序,并获取请求参数对应的响应参数数据。相对于现有技术,本发明实施例中,Kubernetes集群中的应用程序的开发和运维阶段的外部访问检测时,无需创建与实际业务无关service资源对象暴露后台端口,方便且节省资源,同时提高了应用程序访问的安全性。
为了便于理解,下面将对目标Kubernetes集群根据目标应用程序连接参数访问目标应用程序的过程进行说明。
可选的,作为一种可能的实施方式,在上述图1所示的实施例的基础上,目标Kubernetes集群根据目标应用程序连接参数访问目标应用程序的过程可以包括:目标Kubernetes集群通过创建kubernetes的service资源对象的方式开放代理模块的访问端口;通过访问端口将服务请求发送给代理模块,以使得代理模块根据目标应用程序连接参数建立与目标应用程序的连接,并访问目标应用程序。
具体的,本发明实施例中可以在每个Kubernetes集群中设置单独的代理模块实现对Kubernetes集群中应用程序的访问功能。该代理模块也可以通过创建一个kubernetes的service资源对象,代理模块的访问端口(例如nodeport端口)给kubernetes集群外部的程序访问系统进行访问,以接收外部的服务请求。每个Kubernetes集群只需要创建一个service资源对象即可实现外部的程序访问系统与Kubernetes集群中的多个应用程序的多次访问,降低了后台端口暴露的数量,提高了应用程序运行的安全性。
可选的,作为一种可能的实施方式,在上述图1所示的实施例的基础上,目标Kubernetes集群根据目标应用程序连接参数访问目标应用程序的过程可以包括:目标Kubernetes集群通过api server的功能将服务请求发送给代理模块,以使得代理模块根据目标应用程序连接参数建立与目标应用程序的连接,并访问目标应用程序。
具体的,本发明实施例中可以在每个Kubernetes集群中设置单独的代理模块实现对Kubernetes集群中应用程序的访问功能。该代理模块可以基于Kubernetes集群的apiserver的功能接收到外部的程序访问系统转发的服务请求,无需暴露应用程序的后台端口,提高了应用程序运行的安全性。
为了便于理解,下面将结合具体应用实施例对本发明实施例中的Kubernetes集群内部应用程序访问检测的方法进行描述。
本实施例中的Kubernetes集群内部应用程序访问检测的方法的应用场景如图2所示。其中,Pod是kubernetes集群中能够被创建和管理的最小部署单元。一个Pod中可以包含一个或多个容器,每个Pod都是给定应用程序的一个实例。前端模块、Kubernetes管理模块及代理模块构成Kubernetes集群内部应用程序访问检测的系统。
前端模块,可运行在浏览器、MobileAPP等客户端上,提供操作可视化界面。该界面支持添加各种请求参数,如http的header参数,表单参数等,基于用户的输入构建模拟服务请求,构建模拟的请求将发送到kubernetes管理模块,并将kubernetes管理模块请求响应结果可视化展现出来。前端模块可以支持HTTP、HTTPS、HTTP2.0、TCP、UDP等通信协议,以及GRPC、HESSIAN等框架通信协议。
Kubernetes管理模块,提供编辑和保存kubernetes集群连接信息功能。可以认证前端模块的身份,并在认证通过之后,解析服务请求中的参数,通过参数中的kubernetes集群标识获取集群连接信息,连接到对应的Kubernetes集群。kubernetes集群可以通过Kubernetes组件apiserver进行转发接收到的服务请求。kubernetes集群还可以通过代理模块开放的nodeport端口转发接收到的服务请求。
上述描述只是本发明所涉及的Kubernetes管理模块的功能之一,Kubernetes管理模块还包含Kubernetes集群的管理,部署在Kubernetes集群中应用程序的管理,用户及权限的管理等功能。
代理模块,是部署在kubernetes集群中运行的应用程序。代理模块接收kubernetes管理模块的请求后,会对请求参数进行解析,主要参数有目标应用程序所在Pod的IP地址、端口号、访问协议、连接超时时间等,以及用户自定义填写的参数。其中Pod是Kubernetes中能够创建和部署的最小单元,是Kubernetes集群中的一个应用实例,总是部署在同一个节点Node上。Pod中可以包含了一个或多个容器,还包括了存储、网络等各个容器共享的资源。代理模块根据访问协议类型,封装相应参数和协议的客户端请求,向目标应用程序所在Pod的IP和端口建立连接,发送请求,并将应用程序响应结果返回给kubernetes管理模块。代理模块可以通过kubernetes的资源对象service定义,直接开放nodeport端口出来给kubernetes管理模块访问,优选的,是通过kubernetes集群apiserver的功能转发到代理模块。
本发明装置提供了在开发、测试和生产运维等阶段方便访问Kubernetes集群里的应用程序端口的功能,用于测试、验证所部署应用程序的运行状态及应用程序的正确性。用户通过前端模块构建模拟请求,发送到kubernetes管理模块中,kubernetes管理模块连接用户指定的kubernetes集群,并向该集群发起请求。kubernetes集群会根据请求的参数,将请求转发到代理模块上,代理模块接收请求后向应用程序所在Pod的端口发送请求并获取返回结果。最终用户可以在前端模块获取到应用程序返回的响应结果和状态。
请参阅图3,本发明实施例中还提供了一种Kubernetes集群内部应用程序访问检测的系统,可包括:
前端模块301,基于预设交互界面接收用户输入的服务请求,服务请求中包括目标应用程序连接参数及请求参数;
Kubernetes管理模块302,用于查询目标应用程序所属的目标Kubernetes集群对应的集群连接参数,并根据集群连接参数连接目标Kubernetes集群,并将服务请求转发至目标Kubernetes集群中的代理模块;
代理模块303,用于根据目标应用程序连接参数访问目标应用程序,并获取请求参数对应的响应参数数据;
Kubernetes管理模块还用于接收目标Kubernetes集群返回的响应参数数据。
本发明实施例中,可以基于预设交互界面接收用户输入的服务请求,基于该服务请求可以查询目标应用程序所属的目标Kubernetes集群对应的集群连接参数,并根据集群连接参数连接目标Kubernetes集群,然后将服务请求转发至目标Kubernetes集群中的代理模块,使得目标Kubernetes集群根据目标应用程序连接参数访问目标应用程序,并获取请求参数对应的响应参数数据。相对于现有技术,本发明实施例中,Kubernetes集群中的应用程序的开发和运维阶段的外部访问检测时,无需创建与实际业务无关service资源对象暴露后台端口,方便且节省资源,同时提高了应用程序访问的安全性。
可选的,作为一种可能的实施方式,本发明实施例中的Kubernetes管理模块,可包括:
查询单元,通过查询预设的集群标识与集群连接信息的映射关系,获取目标应用程序所属的目标Kubernetes集群对应的集群连接信息。
可选的,作为一种可能的实施方式,本发明实施例中的Kubernetes集群内部应用程序访问检测的系统,还可以包括:
设置模块,通过创建kubernetes的service资源对象的方式开放代理模块的访问端口;
第一转发模块,通过访问端口将服务请求发送给代理模块,以使得代理模块根据目标应用程序连接参数建立与目标应用程序的连接,并访问目标应用程序。
可选的,作为一种可能的实施方式,本发明实施例中的Kubernetes集群内部应用程序访问检测的系统,还可以包括:
第二转发模块,通过api server的功能将服务请求发送给代理模块,以使得代理模块根据目标应用程序连接参数建立与目标应用程序的连接,并访问目标应用程序。
可选的,作为一种可能的实施方式,本发明实施例中的代理模块,具体用于对所述目标应用程序连接参数进行解析,至少得到所述目标应用程序所在Pod的IP地址、端口号、访问协议,并根据访问协议类型,封装相应参数和协议的客户端请求,向目标应用程序所在Pod的IP和端口建立连接。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
上面从模块化功能实体的角度对本发明实施例中的Kubernetes集群内部应用程序访问检测的系统进行了描述,请参阅图4,下面从硬件处理的角度对本发明实施例中的计算机装置进行描述:
该计算机装置1可以包括存储器11、处理器12和输入输出总线13。处理器12执行计算机程序时实现上述图1所示的Kubernetes集群内部应用程序访问检测的方法实施例中的步骤,例如图1所示的步骤101至103。或者,处理器执行计算机程序时实现上述各装置实施例中各模块或单元的功能。
本发明的一些实施例中,处理器具体用于实现如下步骤:
基于预设交互界面接收用户输入的服务请求,服务请求中包括目标应用程序连接参数及请求参数;
查询目标应用程序所属的目标Kubernetes集群对应的集群连接参数,并根据集群连接参数连接目标Kubernetes集群;
将服务请求转发至目标Kubernetes集群,以使得目标Kubernetes集群根据目标应用程序连接参数访问目标应用程序,并获取请求参数对应的响应参数数据;
接收目标Kubernetes集群返回的响应参数数据。
可选的,作为一种可能的实施方式,处理器还可以用于实现如下步骤:
通过查询预设的集群标识与集群连接信息的映射关系,获取目标应用程序所属的目标Kubernetes集群对应的集群连接信息。
可选的,作为一种可能的实施方式,处理器还可以用于实现如下步骤:
通过创建kubernetes的service资源对象的方式开放代理模块的访问端口;
通过访问端口将服务请求发送给代理模块,以使得代理模块根据目标应用程序连接参数建立与目标应用程序的连接,并访问目标应用程序。
可选的,作为一种可能的实施方式,处理器还可以用于实现如下步骤:
通过api server的功能将服务请求发送给代理模块,以使得代理模块根据目标应用程序连接参数建立与目标应用程序的连接,并访问目标应用程序。
其中,存储器11至少包括一种类型的可读存储介质,可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、磁性存储器、磁盘、光盘等。存储器11在一些实施例中可以是计算机装置1的内部存储单元,例如该计算机装置1的硬盘。存储器11在另一些实施例中也可以是计算机装置1的外部存储设备,例如计算机装置1上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器11还可以既包括计算机装置1的内部存储单元也包括外部存储设备。存储器11不仅可以用于存储安装于计算机装置1的应用软件及各类数据,例如计算机程序01的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
处理器12在一些实施例中可以是一中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器或其他数据处理芯片,用于运行存储器11中存储的程序代码或处理数据,例如执行计算机程序01等。
该输入输出总线13可以是外设部件互连标准(peripheral componentinterconnect,简称PCI)总线或扩展工业标准结构(extended industry standardarchitecture,简称EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。
进一步地,计算机装置还可以包括有线或无线网络接口14,网络接口14可选的可以包括有线接口和/或无线接口(如WI-FI接口、蓝牙接口等),通常用于在该计算机装置1与其他电子设备之间建立通信连接。
可选地,该计算机装置1还可以包括用户接口,用户接口可以包括显示器(Display)、输入单元比如键盘(Keyboard),可选的,用户接口还可以包括标准的有线接口、无线接口。可选的,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在计算机装置1中处理的信息以及用于显示可视化的用户界面。
图4仅示出了具有组件11-14以及计算机程序01的计算机装置1,本领域技术人员可以理解的是,图4示出的结构并不构成对计算机装置1的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
本发明还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时,可以实现如下步骤:
基于预设交互界面接收用户输入的服务请求,服务请求中包括目标应用程序连接参数及请求参数;
查询目标应用程序所属的目标Kubernetes集群对应的集群连接参数,并根据集群连接参数连接目标Kubernetes集群;
将服务请求转发至目标Kubernetes集群中的代理模块,以使得代理模块根据目标应用程序连接参数访问目标应用程序,并获取请求参数对应的响应参数数据;
接收目标Kubernetes集群返回的响应参数数据。
可选的,作为一种可能的实施方式,处理器还可以用于实现如下步骤:
通过查询预设的集群标识与集群连接信息的映射关系,获取目标应用程序所属的目标Kubernetes集群对应的集群连接信息。
可选的,作为一种可能的实施方式,处理器还可以用于实现如下步骤:
通过创建kubernetes的service资源对象的方式开放代理模块的访问端口;
通过访问端口将服务请求发送给代理模块,以使得代理模块根据目标应用程序连接参数建立与目标应用程序的连接,并访问目标应用程序。
可选的,作为一种可能的实施方式,处理器还可以用于实现如下步骤:
通过api server的功能将服务请求发送给代理模块,以使得代理模块根据目标应用程序连接参数建立与目标应用程序的连接,并访问目标应用程序。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccess Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (8)
1.一种Kubernetes集群内部应用程序访问检测的方法,其特征在于,包括:
基于预设交互界面接收用户输入的服务请求,所述服务请求中包括目标应用程序连接参数及请求参数;
查询所述目标应用程序所属的目标Kubernetes集群对应的集群连接参数,并根据所述集群连接参数连接所述目标Kubernetes集群;
将所述服务请求转发至所述目标Kubernetes集群中的代理模块,以使得所述代理模块根据所述目标应用程序连接参数访问目标应用程序,并获取所述请求参数对应的响应参数数据;
接收所述目标Kubernetes集群返回的所述响应参数数据;
所述根据所述目标应用程序连接参数访问目标应用程序,包括:
所述目标Kubernetes集群通过创建kubernetes的service资源对象的方式开放代理模块的访问端口;
通过所述访问端口将所述服务请求发送给所述代理模块,以使得所述代理模块根据所述目标应用程序连接参数建立与所述目标应用程序的连接,并访问目标应用程序。
2.根据权利要求1所述的方法,其特征在于,查询所述目标应用程序所属的目标Kubernetes集群对应的集群连接参数,包括:
通过查询预设的集群标识与集群连接信息的映射关系,获取所述目标应用程序所属的目标Kubernetes集群对应的集群连接信息。
3.根据权利要求1所述的方法,其特征在于,所述根据所述目标应用程序连接参数访问目标应用程序,包括:
所述目标Kubernetes集群通过api server的功能将所述服务请求发送给代理模块,以使得所述代理模块根据所述目标应用程序连接参数建立与所述目标应用程序的连接,并访问目标应用程序。
4.根据权利要求1或3所述的方法,其特征在于,所述代理模块根据所述目标应用程序连接参数建立与所述目标应用程序的连接,包括:
代理模块对所述目标应用程序连接参数进行解析,至少得到所述目标应用程序所在Pod的IP地址、端口号、访问协议,并根据访问协议类型,封装相应参数和协议的客户端请求,向目标应用程序所在Pod的IP和端口建立连接。
5.一种Kubernetes集群内部应用程序访问检测的系统,其特征在于,包括:
前端模块,基于预设交互界面接收用户输入的服务请求,所述服务请求中包括目标应用程序连接参数及请求参数;
Kubernetes管理模块,用于查询所述目标应用程序所属的目标Kubernetes集群对应的集群连接参数,并根据所述集群连接参数连接所述目标Kubernetes集群,并将所述服务请求转发至所述目标Kubernetes集群中的代理模块;
代理模块,用于根据所述目标应用程序连接参数访问目标应用程序,并获取所述请求参数对应的响应参数数据;
所述Kubernetes管理模块还用于接收所述目标Kubernetes集群返回的所述响应参数数据;
还包括:
设置模块,通过创建kubernetes的service资源对象的方式开放代理模块的访问端口;
第一转发模块,通过所述访问端口将所述服务请求发送给所述代理模块,以使得所述代理模块根据所述目标应用程序连接参数建立与所述目标应用程序的连接,并访问目标应用程序。
6.根据权利要求5所述的系统,其特征在于,所述Kubernetes管理模块,包括:
查询单元,通过查询预设的集群标识与集群连接信息的映射关系,获取所述目标应用程序所属的目标Kubernetes集群对应的集群连接信息。
7.一种计算机装置,其特征在于,所述计算机装置包括处理器,所述处理器用于执行存储器中存储的计算机程序时实现如权利要求1至4中任意一项所述方法的步骤。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现如权利要求1至4中任意一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010645661.5A CN111796858B (zh) | 2020-07-07 | 2020-07-07 | Kubernetes集群内部应用程序访问检测的方法、系统及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010645661.5A CN111796858B (zh) | 2020-07-07 | 2020-07-07 | Kubernetes集群内部应用程序访问检测的方法、系统及相关设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111796858A CN111796858A (zh) | 2020-10-20 |
CN111796858B true CN111796858B (zh) | 2024-03-22 |
Family
ID=72809606
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010645661.5A Active CN111796858B (zh) | 2020-07-07 | 2020-07-07 | Kubernetes集群内部应用程序访问检测的方法、系统及相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111796858B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114650293B (zh) * | 2020-12-17 | 2024-02-23 | 中移(苏州)软件技术有限公司 | 一种流量分流的方法、装置、终端和计算机存储介质 |
CN112910991B (zh) * | 2021-01-29 | 2022-10-04 | 杭州涂鸦信息技术有限公司 | 后端应用调用方法、装置、计算机设备和可读存储介质 |
CN112925568B (zh) * | 2021-03-28 | 2022-07-26 | 杭州迪普信息技术有限公司 | 模块间数据传输方法及控制装置 |
CN113110917B (zh) * | 2021-04-28 | 2024-03-15 | 北京链道科技有限公司 | 基于Kubernetes的数据发现和安全访问方法 |
CN113360882A (zh) * | 2021-05-27 | 2021-09-07 | 北京百度网讯科技有限公司 | 集群访问方法、装置、电子设备和介质 |
CN113923204A (zh) * | 2021-10-29 | 2022-01-11 | 深圳证券信息有限公司 | 一种请求转发方法、装置、设备及可读存储介质 |
CN114936898B (zh) * | 2022-05-16 | 2023-04-18 | 广州高专资讯科技有限公司 | 一种基于现货供应的管理系统、方法、设备及存储介质 |
CN115174551A (zh) * | 2022-05-31 | 2022-10-11 | 青岛海尔科技有限公司 | 程序部署方法及装置、存储介质及电子设备 |
CN115150416B (zh) * | 2022-07-01 | 2023-06-06 | 浪潮通用软件有限公司 | 一种Kubernetes集群高效访问方法及设备 |
CN115314432A (zh) * | 2022-07-30 | 2022-11-08 | 济南浪潮数据技术有限公司 | 一种跨集群应用路由访问方法、系统、设备及介质 |
CN115242882B (zh) * | 2022-09-20 | 2023-01-10 | 之江实验室 | 一种基于传输层路由访问k8s容器环境的方法及装置 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5787177A (en) * | 1996-08-01 | 1998-07-28 | Harris Corporation | Integrated network security access control system |
WO2010034608A1 (en) * | 2008-09-24 | 2010-04-01 | Telefonaktiebolaget Lm Ericsson (Publ) | System and method for configuration of processing clusters |
CN109067914A (zh) * | 2018-09-20 | 2018-12-21 | 星环信息科技(上海)有限公司 | Web服务的代理方法、装置、设备及存储介质 |
CN109582441A (zh) * | 2018-11-30 | 2019-04-05 | 北京百度网讯科技有限公司 | 用于提供容器服务的系统、方法和装置 |
CN110209492A (zh) * | 2019-03-21 | 2019-09-06 | 腾讯科技(深圳)有限公司 | 一种数据处理方法及装置 |
CN110535831A (zh) * | 2019-07-30 | 2019-12-03 | 平安科技(深圳)有限公司 | 基于Kubernetes和网络域的集群安全管理方法、装置及存储介质 |
CN111176803A (zh) * | 2019-11-06 | 2020-05-19 | 腾讯科技(深圳)有限公司 | 业务处理方法、装置、服务器及存储介质 |
CN111274591A (zh) * | 2020-01-19 | 2020-06-12 | 北京百度网讯科技有限公司 | 一种访问Kubernetes集群的方法、装置、电子设备和介质 |
CN111290865A (zh) * | 2020-02-10 | 2020-06-16 | 腾讯科技(深圳)有限公司 | 一种服务调用方法、装置、电子设备和存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10673962B2 (en) * | 2017-11-28 | 2020-06-02 | Sap Se | Service cross-consumption based on an open service broker application programming interface |
US10778798B2 (en) * | 2018-10-24 | 2020-09-15 | Hewlett Packard Enterprise Development Lp | Remote service access in a container management system |
-
2020
- 2020-07-07 CN CN202010645661.5A patent/CN111796858B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5787177A (en) * | 1996-08-01 | 1998-07-28 | Harris Corporation | Integrated network security access control system |
WO2010034608A1 (en) * | 2008-09-24 | 2010-04-01 | Telefonaktiebolaget Lm Ericsson (Publ) | System and method for configuration of processing clusters |
CN109067914A (zh) * | 2018-09-20 | 2018-12-21 | 星环信息科技(上海)有限公司 | Web服务的代理方法、装置、设备及存储介质 |
CN109582441A (zh) * | 2018-11-30 | 2019-04-05 | 北京百度网讯科技有限公司 | 用于提供容器服务的系统、方法和装置 |
CN110209492A (zh) * | 2019-03-21 | 2019-09-06 | 腾讯科技(深圳)有限公司 | 一种数据处理方法及装置 |
CN110535831A (zh) * | 2019-07-30 | 2019-12-03 | 平安科技(深圳)有限公司 | 基于Kubernetes和网络域的集群安全管理方法、装置及存储介质 |
CN111176803A (zh) * | 2019-11-06 | 2020-05-19 | 腾讯科技(深圳)有限公司 | 业务处理方法、装置、服务器及存储介质 |
CN111274591A (zh) * | 2020-01-19 | 2020-06-12 | 北京百度网讯科技有限公司 | 一种访问Kubernetes集群的方法、装置、电子设备和介质 |
CN111290865A (zh) * | 2020-02-10 | 2020-06-16 | 腾讯科技(深圳)有限公司 | 一种服务调用方法、装置、电子设备和存储介质 |
Non-Patent Citations (3)
Title |
---|
TOSCA-Based and Federation-Aware Cloud Orchestration for Kubernetes Container Platform;Dongmin Kim;applied sciences;1-13 * |
基于K8S的Docker分布式容器自动化运维系统的设计与实现;金子威;中国优秀硕士学位论文全文数据库 信息科技辑;I139-140 * |
基于Kubernetes云资源管理方法的研究与设计;何鹏;中国优秀硕士学位论文全文数据库 信息科技辑;I137-19 * |
Also Published As
Publication number | Publication date |
---|---|
CN111796858A (zh) | 2020-10-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111796858B (zh) | Kubernetes集群内部应用程序访问检测的方法、系统及相关设备 | |
US9973390B2 (en) | Method of discovering network topology | |
US11509505B2 (en) | Method and apparatus for operating smart network interface card | |
US8726298B1 (en) | Cloud-based instrument driver system | |
CN110119350B (zh) | 软件开发工具包测试方法、装置和设备及计算机存储介质 | |
CN110708215A (zh) | 深度包检测规则库生成方法、装置、网络设备及存储介质 | |
CN105376114A (zh) | 路由器网桥模式下无线终端类型的识别系统及方法 | |
CN105893097A (zh) | 一种处理bios的选项信息的方法及装置 | |
CN112995166B (zh) | 资源访问的鉴权方法及装置、存储介质、电子设备 | |
US11005813B2 (en) | Systems and methods for modification of p0f signatures in network packets | |
CN106330483B (zh) | 信息获取方法、客户端设备和服务端设备 | |
CN110222510A (zh) | 一种漏洞检测方法、装置及计算机系统 | |
CN114422254B (zh) | 云蜜罐部署方法、装置、云蜜罐服务器及可读存储介质 | |
KR20200034022A (ko) | 클라우드 환경 모니터링 시스템 및 방법 | |
CN108965403B (zh) | 运维监控连接的建立方法及终端设备 | |
CN112235300B (zh) | 云虚拟网络漏洞检测方法、系统、装置及电子设备 | |
CN111371678B (zh) | 第三方服务运行方法和装置、网关设备及存储介质 | |
CN111447273A (zh) | 云处理系统及基于云处理系统的数据处理方法 | |
CN110881030A (zh) | 基于logstash的记录web服务管理员操作日志的方法及装置 | |
CN115022397B (zh) | 接口参数精简方法、装置、电子设备及存储介质 | |
CN114915565B (zh) | 网络调试的方法和系统 | |
US10491654B2 (en) | Communicating with a remote service through a hypertext transfer protocol (HTTP) session | |
TW201421955A (zh) | 網卡資訊顯示系統及方法 | |
US11330072B2 (en) | Device and method for laboratory data distribution | |
CN106357664B (zh) | 漏洞检测方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |