CN112448856A - 一种内网kubernetes对外提供公网访问的方法和*** - Google Patents

一种内网kubernetes对外提供公网访问的方法和*** Download PDF

Info

Publication number
CN112448856A
CN112448856A CN202110121213.XA CN202110121213A CN112448856A CN 112448856 A CN112448856 A CN 112448856A CN 202110121213 A CN202110121213 A CN 202110121213A CN 112448856 A CN112448856 A CN 112448856A
Authority
CN
China
Prior art keywords
service
intranet
container
container management
providing
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.)
Granted
Application number
CN202110121213.XA
Other languages
English (en)
Other versions
CN112448856B (zh
Inventor
王玉虎
王一钧
古强
蔡锡生
李逸锋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Softcom Power Information Technology Co ltd
Original Assignee
Hangzhou Langche Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou Langche Technology Co ltd filed Critical Hangzhou Langche Technology Co ltd
Priority to CN202110121213.XA priority Critical patent/CN112448856B/zh
Publication of CN112448856A publication Critical patent/CN112448856A/zh
Application granted granted Critical
Publication of CN112448856B publication Critical patent/CN112448856B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0806Configuration setting for initial configuration or provisioning, e.g. plug-and-play
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请涉及一种内网kubernetes对外提供公网访问的方法和***,其中,该方法包括:IP提供服务实时检测用户业务应用创建的Service,在检测到业务需要对外提供服务的情况下,向容器管理平台发送请求指令,容器管理服务接收请求指令,向公有云申请服务器负载均衡,并且创建内网穿透服务端,容器管理服务将公网IP和端口发送到IP提供服务,IP提供服务接收公网IP和端口,并创建内网穿透客户端,内网穿透客户端连接到内网穿透服务端,将业务发布到公网上,通过本申请,解决了内网集群中部署的业务提供公网访问必须进行手动配置导致效率低下的问题,实现了内网集群中部署的业务提供公网访问的自动配置,提高了工作效率。

Description

一种内网kubernetes对外提供公网访问的方法和***
技术领域
本申请涉及云计算领域,特别是涉及一种内网kubernetes对外提供公网访问的方法和***。
背景技术
越来越多的公司开始使用kubernetes来部署自己的业务,很多公司都有自己的机房,通过自己机房的机器来搭建kubernetes环境,来完成开发、验证等一系列的工作,但是由于没有公网IP,外部是无法访问kubernetes集群内部的;通常情况下,把自建机房里部署的业务提供到公网上,避免使用公有云的机器,能大大节省经费开销,相关技术中内网提供公网访问是借用商业软件进行内网穿透,或者在公有云上搭建内网穿透工具,存在着为内网kubernetes集群中部署的业务提供公网访问必须进行手动配置导致效率低下的问题。
目前针对相关技术中为内网kubernetes集群中部署的业务提供公网访问必须进行手动配置导致效率低下的问题,尚未提出有效的解决方案。
发明内容
本申请实施例提供了一种内网kubernetes对外提供公网访问的方法和***,以至少解决相关技术中为内网kubernetes集群中部署的业务提供公网访问必须进行手动配置导致效率低下的问题。
第一方面,本申请实施例提供了一种内网kubernetes对外提供公网访问的方法,其特征在于,所述方法包括:
内网穿透机制通过IP提供服务实时检测用户业务应用创建的Service,在所述IP提供服务检测到业务需要对外提供服务的情况下,所述IP提供服务向容器管理平台发送请求指令;
所述内网穿透机制通过部署在所述容器管理平台的容器管理服务接收所述请求指令,所述容器管理服务向公有云申请服务器负载均衡,所述容器管理服务创建内网穿透服务端的容器,所述容器管理服务将公网IP和端口发送到所述IP提供服务;
所述内网穿透机制通过所述IP提供服务接收所述公网IP和所述端口,所述IP提供服务创建内网穿透客户端的容器;
所述内网穿透机制通过所述内网穿透客户端连接到所述内网穿透服务端,将所述业务发布到公网上。
在其中一些实施例中,所述IP提供服务检测到业务需要对外提供服务的情况包括:所述IP提供服务检测到所述Service中描述了需要公网IP和对外开放的端口的情况。
在其中一些实施例中,所述容器管理服务向公有云申请服务器负载均衡,所述容器管理服务创建内网穿透服务端的容器,所述容器管理服务将公网IP和端口发送到所述IP提供服务,所述方法包括:所述容器管理服务向公有云申请服务器负载均衡,所述容器管理服务创建内网穿透服务端的容器,所述服务器负载均衡将后端服务组配置为所述内网穿透服务端的容器所在的云主机,所述容器管理平台将配置后的公网IP和端口发送到所述IP提供服务。
在其中一些实施例中,所述IP提供服务创建内网穿透客户端的容器包括:所述IP提供服务为所述内网穿透客户端配置所述内网穿透服务端的地址和配置所述Service的域名。
第二方面,本申请实施例提供了一种内网kubernetes对外提供公网访问的方法,其特征在于,所述方法包括:
用户业务应用将内网用户kubernetes集群创建的已发布到公网上的业务取消发布,内网穿透机制通过IP提供服务实时检测所述用户业务应用创建的Service,在检测到所述Service已被删除的情况下,所述IP提供服务删除内网穿透客户端的容器,并向容器管理平台发送IP释放请求;
内网穿透机制通过所述容器管理平台接收所述IP释放请求,所述容器管理平台向公有云发送IP释放请求,并删除内网穿透服务端的容器。
第三方面,本申请实施例提供了一种内网kubernetes对外提供公网访问的***,其特征在于,所述***包括:用户业务应用、IP提供服务、容器管理服务、容器管理平台、内网穿透客户端和内网穿透服务端,其中所述用户业务应用和所述IP提供服务部署在内网用户kubernetes集群中,所述容器管理服务部署在所述容器管理平台中,所述容器管理平台部署在公有云中;
所述IP提供服务实时检测所述用户业务应用创建的Service,在所述IP提供服务检测到业务需要对外提供服务的情况下,所述IP提供服务向所述容器管理平台发送请求指令;
所述容器管理服务接收所述请求指令,所述容器管理服务向公有云申请服务器负载均衡,所述容器管理服务创建所述内网穿透服务端的容器,所述容器管理服务将公网IP和端口发送到所述IP提供服务;
所述IP提供服务接收所述公网IP和所述端口,所述IP提供服务创建所述内网穿透客户端的容器;
所述内网穿透客户端连接到所述内网穿透服务端,将所述业务发布到公网上。
在其中一些实施例中,所述IP提供服务检测到业务需要对外提供服务的情况包括:所述IP提供服务检测到所述Service中描述了需要公网IP和对外开放的端口的情况。
在其中一些实施例中,所述容器管理服务向公有云申请服务器负载均衡,所述容器管理服务创建所述内网穿透服务端的容器,所述容器管理服务将公网IP和端口发送到所述IP提供服务,所述***包括:所述容器管理服务向公有云申请服务器负载均衡,所述容器管理服务创建内网穿透服务端的容器,所述服务器负载均衡将后端服务组配置为所述内网穿透服务端的容器所在的云主机,所述容器管理平台将配置后的公网IP和端口发送到所述IP提供服务。
在其中一些实施例中,所述IP提供服务创建所述内网穿透客户端的容器包括:所述IP提供服务为所述内网穿透客户端配置所述内网穿透服务端的地址和配置所述Service的域名。
在其中一些实施例中,所述***包括:
用户业务应用将内网用户kubernetes集群创建的已发布到公网上的业务取消发布的过程如下,所述IP提供服务实时检测所述用户业务应用创建的Service,在检测到所述Service已被删除的情况下,所述IP提供服务删除内网穿透客户端的容器,并向所述容器管理服务发送IP释放请求;
所述容器管理服务接收所述IP释放请求,所述容器管理服务向公有云发送IP释放请求,所述容器管理平台删除内网穿透服务端的容器。
相比于相关技术,本申请实施例提供的一种内网kubernetes对外提供公网访问的方法和***,通过IP提供服务实时检测用户业务应用创建的Service,在IP提供服务检测到业务需要对外提供服务的情况下,IP提供服务向容器管理平台发送请求指令,容器管理服务接收请求指令,容器管理服务向公有云申请服务器负载均衡,容器管理服务创建内网穿透服务端的容器,容器管理服务将公网IP和端口发送到IP提供服务,IP提供服务接收公网IP和端口,IP提供服务创建内网穿透客户端的容器,内网穿透客户端连接到内网穿透服务端,将业务发布到公网上,解决了内网kubernetes集群中部署的业务提供公网访问必须进行手动配置导致效率低下的问题,实现了内网kubernetes集群中部署的业务提供公网访问的自动配置,提高了工作效率。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据相关技术中内网kubernetes集群提供公网访问能力***的结构框图;
图2是根据本申请实施例的内网kubernetes提供公网访问能力***的结构框图;
图3是根据本申请实施例的内网kubernetes提供公网访问能力方法的流程图;
图4是根据本实施例的内网kubernetes取消公网访问能力方法的流程图;
图5是根据本具体实施例的内网kubernetes的公网访问能力方法的流程图。
附图说明:21、用户业务应用;22、IP提供服务;23、容器管理服务;24、容器管理平台;25、内网穿透服务端;26、内网穿透客户端。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行描述和说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。基于本申请提供的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
显而易见地,下面描述中的附图仅仅是本申请的一些示例或实施例,对于本领域的普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图将本申请应用于其他类似情景。此外,还可以理解的是,虽然这种开发过程中所作出的努力可能是复杂并且冗长的,然而对于与本申请公开的内容相关的本领域的普通技术人员而言,在本申请揭露的技术内容的基础上进行的一些设计,制造或者生产等变更只是常规的技术手段,不应当理解为本申请公开的内容不充分。
在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域普通技术人员显式地和隐式地理解的是,本申请所描述的实施例在不冲突的情况下,可以与其它实施例相结合。
除非另作定义,本申请所涉及的技术术语或者科学术语应当为本申请所属技术领域内具有一般技能的人士所理解的通常意义。本申请所涉及的“一”、“一个”、“一种”、“该”等类似词语并不表示数量限制,可表示单数或复数。本申请所涉及的术语“包括”、“包含”、“具有”以及它们任何变形,意图在于覆盖不排他的包含;例如包含了一系列步骤或模块(单元)的过程、方法、***、产品或设备没有限定于已列出的步骤或单元,而是可以还包括没有列出的步骤或单元,或可以还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。本申请所涉及的“连接”、“相连”、“耦接”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电气的连接,不管是直接的还是间接的。本申请所涉及的“多个”是指两个或两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。本申请所涉及的术语“第一”、“第二”、“第三”等仅仅是区别类似的对象,不代表针对对象的特定排序。
在相关技术中,图1是根据相关技术中内网kubernetes集群提供公网访问能力***的结构框图,如图1所示,相关技术中用户通过商业软件实现内网穿透,首先要在内网服务器中安装该商业软件的客户端,当用户有业务需要发布的时候,需要在该商业客户端上手动配置要发布的业务,然后通过商业服务端发布到公网上,因此数据传输的安全性得不到保证,使用商业软件导致成本增加,另外当有大量业务需要发布的时候,频繁的手动配置会造成工作效率的下降。
本申请实施例提供了一种内网kubernetes对外提供公网访问的***,图2是根据本申请实施例的内网kubernetes提供公网访问能力***的结构框图,如图2所示,该***包括:用户业务应用21、IP提供服务22、容器管理服务23、容器管理平台24、内网穿透服务端25和内网穿透客户端26,其中用户业务应用21和IP提供服务22部署在内网用户kubernetes集群中,容器管理服务23部署在容器管理平台24中,容器管理平台24部署在公有云中。
IP提供服务22实时检测用户业务应用21创建的Service,在IP提供服务22检测到业务需要对外提供服务的情况下,IP提供服务22向容器管理平台24发送请求指令,容器管理服务23接收请求指令,容器管理服务23向公有云申请服务器负载均衡(Server LoadBalancer),容器管理服务23创建内网穿透服务端25的容器,容器管理服务23将公网IP和端口发送到IP提供服务22,IP提供服务22接收公网IP和端口,IP提供服务22创建内网穿透客户端26的容器,内网穿透客户端26连接到内网穿透服务端25,将业务发布到公网上。
通过本申请实施例,由于IP提供服务22实时检测用户业务应用21创建的Service,在检测到业务需要对外提供服务的情况下,IP提供服务22发送请求指令到容器管理服务23,容器管理服务23向公有云申请资源和创建内网穿透服务端25的容器,并返回消息到IP提供服务22,IP提供服务22创建内网穿透客户端26的容器,内网穿透客户端26连接到内网穿透服务端25,将业务发布到公网上,所以,用户无需手动申请公有云资源,以及手动配置内网穿透服务端25和内网穿透客户端26,解决了内网kubernetes集群中部署的业务提供公网访问必须进行手动配置导致效率低下的问题,实现了内网kubernetes集群中部署的业务提供公网访问的自动配置,提高了工作效率。
在其中一些实施例中,IP提供服务22实时检测用户业务应用21创建的Service,其中,用户业务应用21创建的Service,该Service的类型为ClusterIP,此类型的Service只能在kubernetes集群内部进行访问,需要说明的是,Service是kubernetes中一个高层的抽象。Service从逻辑上把容器组(Pod)进行分组,并且设置访问的策略。一般通过Label和Selector来达到分组的目的,用App作为Key,数据库(Database)和前端模块(Frontend)作为Value来区分容器组(Pod),通过Selector(App=Frontend和App=Database),可以把这些容器组(Pod)分为两个逻辑组,即两个Service,kubernetes集群中的Service有三种类型,ClusterIP类型的Service通过ClusterIP来获取自己的VirtualIP,VirtualIP是用来和别的Service通信的,只能在集群内部被访问;NodePort类型的Service会创建一个ClusterIP,还会把所有worker node上的一个端口映射到这个Service;LoadBalancer类型的Service会自动创建NodePort和ClusterIP,外部的load balancer会自动路由上去,Service会在一个静态的端口上被暴露,通过底层的cloud provider提供的load balancer来暴露到公网。
在一些具体实施例中,用户在自己的kubernetes集群上安装IP提供服务22,IP提供服务22主动向容器管理平台24所在的云平台注册用户kubernetes集群,IP提供服务22检测到业务需要对外提供服务的情况包括:IP提供服务22检测到Service中描述了需要公网IP和对外开放的端口的情况,其中,用户在用户业务应用21中声明对外提供服务的yaml文件,大致内容如下:
kind: Service
apiVersion: v1
metadata:
annotations:
service.beta.Kubernetes.io/lstack.ip.provider: '10M'
#表明提供10M带宽的IP。
name: app-dist-slb
namespace: default
ports:
- name: cs-service-0
port: 80
protocol: TCP
targetPort: 80
selector:
app: app-dist
type: clusterIp
IP提供服务22检测到用户通过用户业务应用21写入上述yaml文件,主动向容器管理服务23请求10M带宽的公网IP,容器管理服务23创建一个内网穿透服务端25的容器,向公有云申请公网IP或者服务器负载均衡(Server Load Balancer),并绑定到对应的内网穿透服务端25的容器的运行主机上,容器管理服务23将公网IP、内网穿透服务端25的监听端口和鉴定权限的token发送到IP提供服务22,IP提供服务22接收到返回的信息,根据该返回的公网IP、内网穿透服务端25的监听端口和鉴定权限的token,以及所述描述了需要公网IP和对外开放的端口的Service中定义的监听端口80,生成配置文件,创建内网穿透客户端26的容器,配置文件的大致内容如下:
[common]
server_addr = x.x.x.x //服务端地址
server_port = 7000 //服务端端口
token = 123456
[http]
type = tcp
local_ip = app-dist-slb //指向service的域名
local_port = 80 //app-dist-slb这个服务的端口
remote_port = 80 //在服务端开通80端口
所述配置文件包括但不限于内网穿透服务器的地址、对外开放的端口、指向service的域名、对外提供服务的业务的端口、鉴定权限的token和在内网穿透服务端25开通的端口,内网穿透服务端25和内网穿透客户端26自动配置完成后,内网穿透客户端26连接到内网穿透服务端25,将业务发布到公网上。
通过本具体实施例,IP提供服务22实时检测用户业务应用21创建的Service,在检测到业务需要对外提供服务的情况下,IP提供服务22发送请求指令到容器管理服务23,容器管理服务23向公有云申请10M带宽的公网IP和创建内网穿透服务端25的容器,并返回消息到IP提供服务22,IP提供服务22创建内网穿透客户端26的容器,并通过配置文件对内网穿透客户端26进行配置,内网穿透客户端26连接到内网穿透服务端25,将业务发布到公网上,所以,用户无需手动申请公有云资源,以及手动配置内网穿透服务端25和内网穿透客户端26,解决了内网kubernetes集群中部署的业务提供公网访问必须进行手动配置导致效率低下的问题,实现了内网kubernetes集群中部署的业务提供公网访问的自动配置,提高了工作效率。
在其中一些实施例中,IP提供服务22实时检测用户业务应用21创建的Service,在检测到数个Service对应的业务需要对外提供服务的情况下;
IP提供服务22向容器管理平台24发送请求指令,容器管理服务23接收请求指令;
容器管理服务23向公有云申请数个服务器负载均衡,数个服务器负载均衡与数个Service一一对应;
容器管理服务23创建数个内网穿透服务端25的容器,数个服务器负载均衡配置后端服务器一一指向数个内网穿透服务端25的容器;
容器管理服务23将数个公网IP和数个端口发送到IP提供服务22,IP提供服务22接收上述公网IP和端口;
IP提供服务22创建数个内网穿透客户端的容器,内网穿透客户端26一一对应连接到内网穿透服务端25,将数个Service对应的业务发布到公网上。通过本实施例,IP提供服务22自动创建数个内网穿透客户端的容器,容器管理服务23自动创建数个内网穿透服务端25的容器,内网穿透客户端26一一对应连接到内网穿透服务端25,将数个Service对应的业务发布到公网上,解决了内网kubernetes集群中部署的业务批量提供公网访问必须进行手动配置导致效率低下的问题,实现了内网kubernetes集群中部署的业务批量提供公网访问的自动配置,提高了工作效率。
在其中一些实施例中,用户业务应用21将内网用户kubernetes集群创建的已发布到公网上的业务取消发布的过程如下,IP提供服务22实时检测用户业务应用21创建的Service,在检测到Service已被删除的情况下,IP提供服务22删除内网穿透客户端26的容器,并向容器管理服务23发送IP释放请求;
容器管理服务23接收IP释放请求,容器管理服务23向公有云发送IP释放请求,容器管理平台24删除内网穿透服务端25的容器。
通过本实施例,IP提供服务22实时检测用户业务应用21创建的Service,在检测到Service已被删除的情况下,IP提供服务22删除内网穿透客户端26的容器,并向容器管理服务23发送IP释放请求,容器管理服务23接收IP释放请求,向公有云发送IP释放请求和删除内网穿透服务端25的容器,所以,用户无需手动释放公有云的公网IP,以及手动删除内网穿透服务端25和内网穿透客户端26,解决了内网kubernetes集群中部署的业务取消公网访问必须进行手动配置导致效率低下的问题,实现了内网kubernetes集群中部署的业务取消公网访问的自动配置,提高了工作效率。
本申请实施例提供了一种内网kubernetes对外提供公网访问的方法,图3是根据本申请实施例的内网kubernetes提供公网访问能力方法的流程图,如图3所示,该方法包括如下步骤:
S302,内网穿透机制通过IP提供服务22实时检测用户业务应用21创建的Service;
S304,在IP提供服务22检测到业务需要对外提供服务的情况下,IP提供服务22向容器管理平台24发送请求指令;
S306,内网穿透机制通过部署在容器管理平台24的容器管理服务23接收请求指令,容器管理服务23向公有云申请服务器负载均衡,容器管理服务23创建内网穿透服务端25的容器,容器管理服务23将公网IP和端口发送到IP提供服务22;
S308,内网穿透机制通过IP提供服务22接收公网IP和端口,IP提供服务22创建内网穿透客户端26的容器;
S310,内网穿透机制通过内网穿透客户端26连接到内网穿透服务端25,将业务发布到公网上。
通过本申请实施例的步骤S302至S310, IP提供服务22实时检测用户业务应用21创建的Service,在检测到业务需要对外提供服务的情况下,IP提供服务22发送请求指令到容器管理服务23,容器管理服务23向公有云申请资源和创建内网穿透服务端25的容器,并返回消息到IP提供服务22,IP提供服务22创建内网穿透客户端26的容器,内网穿透客户端26连接到内网穿透服务端25,将业务发布到公网上,所以,用户无需手动申请公有云资源,以及手动配置内网穿透服务端25和内网穿透客户端26,解决了内网kubernetes集群中部署的业务提供公网访问必须进行手动配置导致效率低下的问题,实现了内网kubernetes集群中部署的业务提供公网访问的自动配置,提高了工作效率。
在其中一些实施例中,IP提供服务22检测到业务需要对外提供服务的情况包括:IP提供服务22检测到Service中描述了需要公网IP和对外开放的端口的情况。
在其中一些实施例中,容器管理服务23向公有云申请服务器负载均衡,容器管理服务23创建内网穿透服务端25的容器,容器管理服务23将公网IP和端口发送到IP提供服务22,方法包括:容器管理服务23向公有云申请服务器负载均衡,容器管理服务23创建内网穿透服务端25的容器,服务器负载均衡将后端服务组配置为内网穿透服务端25的容器所在的云主机,容器管理平台24将配置后的公网IP和端口发送到IP提供服务22。
在其中一些实施例中,IP提供服务22创建内网穿透客户端26的容器包括:IP提供服务22为内网穿透客户端26配置内网穿透服务端25的地址和配置Service的域名。
在其中一些实施例中,图4是根据本实施例的内网kubernetes取消公网访问能力方法的流程图,如图4所示,该方法包括如下步骤:
S402,内网穿透机制通过IP提供服务22实时检测用户业务应用21创建的Service;
S404,IP提供服务22在检测到Service已被删除的情况下,IP提供服务22删除内网穿透客户端26的容器,并向容器管理平台24发送IP释放请求;
S406,内网穿透机制通过容器管理平台24接收IP释放请求,容器管理平台24向公有云发送IP释放请求,并删除内网穿透服务端25的容器;
通过本具体实施例的步骤S402至S406,IP提供服务22实时检测用户业务应用21创建的Service,在检测到Service已被删除的情况下,IP提供服务22删除内网穿透客户端26的容器,并向容器管理服务23发送IP释放请求,容器管理服务23接收IP释放请求,向公有云发送IP释放请求和删除内网穿透服务端25的容器,所以,用户无需手动释放公有云的公网IP,以及手动删除内网穿透服务端25的容器和内网穿透客户端26的容器,解决了内网kubernetes集群中部署的业务取消公网访问必须进行手动配置导致效率低下的问题,实现了内网kubernetes集群中部署的业务取消公网访问的自动配置,提高了工作效率。
在其中一些具体实施例中,图5是根据本具体实施例的内网kubernetes的公网访问能力方法的流程图,如图5所示,该方法包括如下步骤:
S502,内网穿透机制通过IP提供服务22实时检测用户业务应用21创建的Service;
S504,在IP提供服务22检测到Service中描述了需要公网IP和对外开放的端口的情况下,IP提供服务22向容器管理平台24发送请求指令;
S506,内网穿透机制通过部署在容器管理平台24的容器管理服务23接收请求指令,容器管理服务23向公有云申请服务器负载均衡,容器管理服务23创建内网穿透服务端25的容器,服务器负载均衡将后端服务组配置为内网穿透服务端25的容器所在的云主机,容器管理平台24将配置后的公网IP和端口发送到IP提供服务22;
S508,内网穿透机制通过IP提供服务22接收公网IP和端口,IP提供服务22创建内网穿透客户端26的容器,IP提供服务22为内网穿透客户端26配置内网穿透服务端25的地址和配置Service的域名;
S510,内网穿透机制通过内网穿透客户端26连接到内网穿透服务端25,将业务发布到公网上;
S512,在IP提供服务22检测到Service已被删除的情况下,IP提供服务22删除内网穿透客户端26的容器,并向容器管理平台24发送IP释放请求;
S514,内网穿透机制通过容器管理平台24接收IP释放请求,容器管理平台24向公有云发送IP释放请求,并删除内网穿透服务端25的容器。
通过本具体实施例的步骤S502至S514,IP提供服务22实时检测用户业务应用21创建的Service,在检测到业务需要对外提供服务的情况下,IP提供服务22发送请求指令到容器管理服务23,容器管理服务23向公有云申请公网IP和创建内网穿透服务端25的容器,并返回消息到IP提供服务22,IP提供服务22创建内网穿透客户端26的容器,并通过配置文件对内网穿透客户端26进行配置,内网穿透客户端26连接到内网穿透服务端25,将业务发布到公网上;在检测到Service已被删除的情况下,IP提供服务22删除内网穿透客户端26的容器,并向容器管理服务23发送IP释放请求,容器管理服务23接收IP释放请求,向公有云发送IP释放请求和删除内网穿透服务端25的容器,所以,用户无需手动申请或释放公有云的公网IP,以及手动创建或删除内网穿透服务端25的容器和内网穿透客户端26的容器,解决了内网kubernetes集群中部署的业务提供公网访问和取消公网访问功能的时候,必须进行手动配置导致效率低下的问题,实现了内网kubernetes集群中部署的业务提供公网访问和取消公网访问的自动配置,提高了工作效率。
本领域的技术人员应该明白,以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种内网kubernetes对外提供公网访问的方法,其特征在于,所述方法包括:
内网穿透机制通过IP提供服务实时检测用户业务应用创建的Service,在所述IP提供服务检测到业务需要对外提供服务的情况下,所述IP提供服务向容器管理平台发送请求指令;
所述内网穿透机制通过部署在所述容器管理平台的容器管理服务接收所述请求指令,所述容器管理服务向公有云申请服务器负载均衡,所述容器管理服务创建内网穿透服务端的容器,所述容器管理服务将公网IP和端口发送到所述IP提供服务;
所述内网穿透机制通过所述IP提供服务接收所述公网IP和所述端口,所述IP提供服务创建内网穿透客户端的容器;
所述内网穿透机制通过所述内网穿透客户端连接到所述内网穿透服务端,将所述业务发布到公网上。
2.根据权利要求1所述的方法,其特征在于,所述IP提供服务检测到业务需要对外提供服务的情况包括:所述IP提供服务检测到所述Service中描述了需要公网IP和对外开放的端口的情况。
3.根据权利要求1所述的方法,其特征在于,所述容器管理服务向公有云申请服务器负载均衡,所述容器管理服务创建内网穿透服务端的容器,所述容器管理服务将公网IP和端口发送到所述IP提供服务,所述方法包括:所述容器管理服务向公有云申请服务器负载均衡,所述容器管理服务创建内网穿透服务端的容器,所述服务器负载均衡将后端服务组配置为所述内网穿透服务端的容器所在的云主机,所述容器管理平台将配置后的公网IP和端口发送到所述IP提供服务。
4.根据权利要求1所述的方法,其特征在于,所述IP提供服务创建内网穿透客户端的容器包括:所述IP提供服务为所述内网穿透客户端配置所述内网穿透服务端的地址和配置所述Service的域名。
5.一种内网kubernetes对外提供公网访问的方法,其特征在于,所述方法包括:
用户业务应用将内网用户kubernetes集群创建的已发布到公网上的业务取消发布,内网穿透机制通过IP提供服务实时检测所述用户业务应用创建的Service,在检测到所述Service已被删除的情况下,所述IP提供服务删除内网穿透客户端的容器,并向容器管理平台发送IP释放请求;
内网穿透机制通过所述容器管理平台接收所述IP释放请求,所述容器管理平台向公有云发送IP释放请求,并删除内网穿透服务端的容器。
6.一种内网kubernetes对外提供公网访问的***,其特征在于,所述***包括:用户业务应用、IP提供服务、容器管理服务、容器管理平台、内网穿透客户端和内网穿透服务端,其中所述用户业务应用和所述IP提供服务部署在内网用户kubernetes集群中,所述容器管理服务部署在所述容器管理平台中,所述容器管理平台部署在公有云中;
所述IP提供服务实时检测所述用户业务应用创建的Service,在所述IP提供服务检测到业务需要对外提供服务的情况下,所述IP提供服务向所述容器管理平台发送请求指令;
所述容器管理服务接收所述请求指令,所述容器管理服务向公有云申请服务器负载均衡,所述容器管理服务创建所述内网穿透服务端的容器,所述容器管理服务将公网IP和端口发送到所述IP提供服务;
所述IP提供服务接收所述公网IP和所述端口,所述IP提供服务创建所述内网穿透客户端的容器;
所述内网穿透客户端连接到所述内网穿透服务端,将所述业务发布到公网上。
7.根据权利要求6所述的***,其特征在于,所述IP提供服务检测到业务需要对外提供服务的情况包括:所述IP提供服务检测到所述Service中描述了需要公网IP和对外开放的端口的情况。
8.根据权利要求6所述的***,其特征在于,所述容器管理服务向公有云申请服务器负载均衡,所述容器管理服务创建所述内网穿透服务端的容器,所述容器管理服务将公网IP和端口发送到所述IP提供服务,所述***包括:所述容器管理服务向公有云申请服务器负载均衡,所述容器管理服务创建内网穿透服务端的容器,所述服务器负载均衡将后端服务组配置为所述内网穿透服务端的容器所在的云主机,所述容器管理平台将配置后的公网IP和端口发送到所述IP提供服务。
9.根据权利要求6所述的***,其特征在于,所述IP提供服务创建所述内网穿透客户端的容器包括:所述IP提供服务为所述内网穿透客户端配置所述内网穿透服务端的地址和配置所述Service的域名。
10.根据权利要求6所述的***,其特征在于,所述***包括:
用户业务应用将内网用户kubernetes集群创建的已发布到公网上的业务取消发布的过程如下,所述IP提供服务实时检测所述用户业务应用创建的Service,在检测到所述Service已被删除的情况下,所述IP提供服务删除内网穿透客户端的容器,并向所述容器管理服务发送IP释放请求;
所述容器管理服务接收所述IP释放请求,所述容器管理服务向公有云发送IP释放请求,所述容器管理平台删除内网穿透服务端的容器。
CN202110121213.XA 2021-01-28 2021-01-28 一种内网kubernetes对外提供公网访问的方法和*** Active CN112448856B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110121213.XA CN112448856B (zh) 2021-01-28 2021-01-28 一种内网kubernetes对外提供公网访问的方法和***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110121213.XA CN112448856B (zh) 2021-01-28 2021-01-28 一种内网kubernetes对外提供公网访问的方法和***

Publications (2)

Publication Number Publication Date
CN112448856A true CN112448856A (zh) 2021-03-05
CN112448856B CN112448856B (zh) 2021-05-07

Family

ID=74740149

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110121213.XA Active CN112448856B (zh) 2021-01-28 2021-01-28 一种内网kubernetes对外提供公网访问的方法和***

Country Status (1)

Country Link
CN (1) CN112448856B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112822061A (zh) * 2021-04-16 2021-05-18 杭州朗澈科技有限公司 一种边缘节点对外暴露服务的方法和***
CN113566822A (zh) * 2021-06-30 2021-10-29 杭州易现先进科技有限公司 一种提供视觉定位导航服务的方法和***
CN113835911A (zh) * 2021-11-23 2021-12-24 深圳市明源云科技有限公司 内网穿透代理方法、***、主机及计算机可读存储介质
CN114039949A (zh) * 2021-12-24 2022-02-11 上海观安信息技术股份有限公司 云服务浮动ip绑定方法及***
CN114553414A (zh) * 2022-03-03 2022-05-27 合肥浩瀚深度信息技术有限公司 基于https服务的内网穿透方法及***
CN114785761A (zh) * 2022-03-22 2022-07-22 杭州指令集智能科技有限公司 物联网操作***中一种先进的k8s集群互相通信方法
CN114915545A (zh) * 2022-05-20 2022-08-16 深圳市证通电子股份有限公司 基于dhcp网络高可用集群的应用调度部署管理方法
CN116455868A (zh) * 2023-03-29 2023-07-18 成都康胜思科技有限公司 一种基于泛域名解析加私有协议内网穿透的集成服务***

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107302604A (zh) * 2017-06-30 2017-10-27 挖财网络技术有限公司 基于Kubernetes的PaaS平台域名配置方法及装置和电子设备
CN108924268A (zh) * 2018-09-11 2018-11-30 网宿科技股份有限公司 一种容器云服务***及pod创建方法、装置
CN111193783A (zh) * 2019-12-19 2020-05-22 新浪网技术(中国)有限公司 一种服务访问的处理方法及装置
US10778798B2 (en) * 2018-10-24 2020-09-15 Hewlett Packard Enterprise Development Lp Remote service access in a container management system
CN112202940A (zh) * 2020-10-27 2021-01-08 杭州朗澈科技有限公司 一种kubernetes对外暴露Pod服务方式

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107302604A (zh) * 2017-06-30 2017-10-27 挖财网络技术有限公司 基于Kubernetes的PaaS平台域名配置方法及装置和电子设备
CN108924268A (zh) * 2018-09-11 2018-11-30 网宿科技股份有限公司 一种容器云服务***及pod创建方法、装置
US10778798B2 (en) * 2018-10-24 2020-09-15 Hewlett Packard Enterprise Development Lp Remote service access in a container management system
CN111193783A (zh) * 2019-12-19 2020-05-22 新浪网技术(中国)有限公司 一种服务访问的处理方法及装置
CN112202940A (zh) * 2020-10-27 2021-01-08 杭州朗澈科技有限公司 一种kubernetes对外暴露Pod服务方式

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ISEA533: ""基于 k8s 的 frp 内网穿透配置"", 《HTTPS://WWW.IT610.COM/ARTICLE/1289780429049634816.HTM,基于 K8S 的 FRP 内网穿透配置》 *

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112822061B (zh) * 2021-04-16 2021-07-20 杭州朗澈科技有限公司 一种边缘节点对外暴露服务的方法和***
CN112822061A (zh) * 2021-04-16 2021-05-18 杭州朗澈科技有限公司 一种边缘节点对外暴露服务的方法和***
CN113566822A (zh) * 2021-06-30 2021-10-29 杭州易现先进科技有限公司 一种提供视觉定位导航服务的方法和***
CN113835911A (zh) * 2021-11-23 2021-12-24 深圳市明源云科技有限公司 内网穿透代理方法、***、主机及计算机可读存储介质
CN113835911B (zh) * 2021-11-23 2022-03-01 深圳市明源云科技有限公司 内网穿透代理方法、***、主机及计算机可读存储介质
CN114039949B (zh) * 2021-12-24 2024-03-26 上海观安信息技术股份有限公司 云服务浮动ip绑定方法及***
CN114039949A (zh) * 2021-12-24 2022-02-11 上海观安信息技术股份有限公司 云服务浮动ip绑定方法及***
CN114553414A (zh) * 2022-03-03 2022-05-27 合肥浩瀚深度信息技术有限公司 基于https服务的内网穿透方法及***
CN114553414B (zh) * 2022-03-03 2024-04-05 合肥浩瀚深度信息技术有限公司 基于https服务的内网穿透方法及***
CN114785761A (zh) * 2022-03-22 2022-07-22 杭州指令集智能科技有限公司 物联网操作***中一种先进的k8s集群互相通信方法
CN114915545A (zh) * 2022-05-20 2022-08-16 深圳市证通电子股份有限公司 基于dhcp网络高可用集群的应用调度部署管理方法
CN114915545B (zh) * 2022-05-20 2024-01-26 深圳市证通电子股份有限公司 基于dhcp网络集群的应用调度部署管理方法
CN116455868A (zh) * 2023-03-29 2023-07-18 成都康胜思科技有限公司 一种基于泛域名解析加私有协议内网穿透的集成服务***
CN116455868B (zh) * 2023-03-29 2023-11-07 成都康胜思科技有限公司 一种基于泛域名解析加私有协议内网穿透的集成服务***

Also Published As

Publication number Publication date
CN112448856B (zh) 2021-05-07

Similar Documents

Publication Publication Date Title
CN112448856B (zh) 一种内网kubernetes对外提供公网访问的方法和***
WO2021017279A1 (zh) 基于Kubernetes和网络域的集群安全管理方法、装置及存储介质
CA2943250C (en) Method and system for ensuring an application conforms with security and regulatory controls prior to deployment
CA3101982C (en) Domain pass-through authentication in a hybrid cloud environment
WO2019224645A1 (en) Selectively providing mutual transport layer security using alternative server names
CN111290865A (zh) 一种服务调用方法、装置、电子设备和存储介质
CN103119907A (zh) 提供用于访问控制的智能组的***和方法
CN112925647A (zh) 云边协同***、集群资源的控制方法及装置
US20070117560A1 (en) Remote testing of mobile terminals
CN112202615B (zh) 一种多cni协同工作***与方法
CN104579887A (zh) 云网关、云网关创建配置***及方法
CN103685608A (zh) 一种自动配置安全虚拟机ip地址的方法及装置
WO2020040556A1 (ko) 웹 브라우저 기반 스크래핑 시스템 및 방법
CN112099913A (zh) 一种基于OpenStack实现虚拟机安全隔离的方法
CN114942826A (zh) 跨网络多集群***及其访问方法及云计算设备
CN114285850A (zh) 一种基于容器平台的跨集群多租户资源管理***
CN115022408A (zh) 基于服务网格的数据传输方法及装置、电子设备
CN112468476B (zh) 一种不同类型终端访问应用的设备管理***和方法
CN103391294A (zh) 一种基于服务描述的远程方法调用
CN107623699A (zh) 一种基于云环境的加密***
CN110035099B (zh) 一种多***管理方法、终端设备及存储介质
CN104618313B (zh) 安全管理***和方法
CN105959197A (zh) 一种ssl vpn用户界面定制方法及装置
CN109104482A (zh) 一种地网平台的分布式***
CN112637111B (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
TR01 Transfer of patent right

Effective date of registration: 20220726

Address after: 100094 Room 502, floor 5, building 16, East District, yard 10, northwest Wangdong Road, Haidian District, Beijing

Patentee after: Softcom power information technology (Group) Co.,Ltd.

Address before: 311100 Room 802, building 12, 1818-2, Wenyi West Road, Yuhang street, Yuhang District, Hangzhou City, Zhejiang Province

Patentee before: HANGZHOU LANGCHE TECHNOLOGY Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220825

Address after: 518000 floor 2-24, building a, Zhongshe Plaza, No.1028, Buji Road, Dongxiao street, Luohu District, Shenzhen City, Guangdong Province

Patentee after: Shenzhen Softcom Power Information Technology Co.,Ltd.

Address before: 100094 Room 502, floor 5, building 16, East District, yard 10, northwest Wangdong Road, Haidian District, Beijing

Patentee before: Softcom power information technology (Group) Co.,Ltd.

TR01 Transfer of patent right