一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种弹性容器实例实现方法与流程

2021-11-09 22:15:00 来源:中国专利 TAG:


1.本发明涉及无服务器容器、kubernetes和openstack领域,具体提供一种弹性容器实例实现方法。


背景技术:

2.无服务器容器(serverless container)是一种架构理念,是指租户无需创建和管理服务器,不必担心服务器的运行状态,至专注与业务开发,而把服务器留给专门的人员管理和维护开发模式。
3.kubernetes是一种容器编排技术方案,能够为容器提供部署运行、资源调度、服务发现和动态伸缩等一系列功能,提高了大规模容器集群管理的便捷性。
4.openstack是一个开源的云计算管理平台项目,目标是提供实施简单、可大规模扩展、丰富、标准统一的云计算管理平台。
5.传统上运行容器需要先创建kubernetes服务器集群,然后在集群中部署应用负载。当负载占用资源较少时,集群本身占用的资源反而造成了浪费。如何避免此种现象的发生,是本领域技术人员亟待解决的技术问题。


技术实现要素:

6.本发明是针对上述现有技术的不足,提供一种实用性强的。
7.本发明解决其技术问题所采用的技术方案是:
8.一种弹性容器实例实现方法,具有以下步骤:
9.s1、使用共享kubernetes集群作为容器实例真实的运行环境;
10.s2、命名空间级别的隔离;
11.s3、使用轻量级安全沙箱技术达到底层资源强隔离;
12.s4、内网通信;
13.s5、暴露服务到外部网络。
14.进一步的,在步骤s1中,租户仅针对自身应用申请合适的资源并运行即可,对于容器的调度,扩容/缩容均无需租户操作,由集群自动完成。
15.进一步的,在步骤s2中,每个租户在集群上对应唯一的命名空间,租户资源均放在此命名空间下,不同命名空间资源无法互相访问,用于数据隔离。
16.进一步的,在步骤s2中,租户创建eci时,先查询是否存在同名的命名空间:
17.a)不存在,新建命名空间并创建资源;
18.b)存在,直接在此命名空间下创建资源。
19.进一步的,在步骤s3中,所述安全沙箱是一种轻量级的虚拟机,按照容器运行时标准构建。
20.作为优选,所述安全沙箱为每个容器启动一个虚机,使得每个容器具有独立的内核,互相之间不影响。
21.进一步的,在步骤s4中,在kubernetes集群上引入网络适配插件,所述插件能够整合openstack vpc网络,使得eci可以处于相同或者不同的vpc网络。
22.进一步的,插件通过监听kubernetes api捕获创建eci的请求,调用openstack接口在相应vpc下创建port并绑定到eci。
23.进一步的,eci默认仅允在内部vpc建访问,如果要从外部网络访问,就要需要为其绑定eip,一个容器实例只允许绑定一个eip。
24.本发明的一种弹性容器实例实现方法和现有技术相比,具有以下突出的有益效果:
25.本发明所有租户共享一个kubernetes集群,服务方节约了资源,租户节约了费用。引入了openstack网络资源,租户可以根据需求为容器实例划分网络,相比kubernetes集群更为灵活。引入安全沙箱技术,确保eci间在底层上是强隔离的。通过绑定eip进一步加强了eci的访问能力。
附图说明
26.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
27.附图1是一种弹性容器实例实现方法中租户数据隔离的示意图;
28.附图2是一种弹性容器实例实现方法中安全沙箱的结构示意图;
29.附图3是一种弹性容器实例实现方法中租户网络隔离的示意图。
具体实施方式
30.为了使本技术领域的人员更好的理解本发明的方案,下面结合具体的实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例都属于本发明保护的范围。
31.下面给出一个最佳实施例:
32.本实施例中的一种弹性容器实例实现方法,具有以下步骤:
33.s1、使用共享kubernetes集群作为容器实例真实的运行环境:
34.共享的kubernetes作为容器实例运行的真实服务器,由管理员进行维护。对租户来说无需关心此集群的状态,只需要针对自身应用申请合适的资源并运行即可,对于容器的调度,扩容/缩容均无需租户操作,由集群自动完成。
35.s2、命名空间级别的隔离:
36.示意图请参照图1;
37.每个租户在集群上对应唯一的命名空间,租户资源均放在此命名空间下,不同命名空间资源无法互相访问,达到数据隔离的目的。
38.租户创建eci时,先查询是否存在同名的命名空间:
39.a)不存在,新建命名空间并创建资源;
40.b)存在,直接在此命名空间下创建资源。
41.其中,每个租户都在kubernetes中有唯一的命名空间与之映射,且资源均存放在与之对应的命名空间下。
42.s3、使用轻量级安全沙箱技术达到底层资源强隔离:
43.示意图请参照图2;
44.安全沙箱一种轻量级的虚拟机,按照容器运行时标准构建。
45.传统容器运行时跑在共享内核之上,通过cgroups隔离,安全性不高。安全沙箱则是为每个容器启动一个虚机,使得每个容器具有独立的内核,相互之间互不影响。
46.s4、内网通信:
47.示意图请参考图3;
48.kubernetes集群在设计上仅支持一个网络,当集群作用于多租户时,所有租户的容器都会处在同一个网络下,可以互相访问,显然无法满足网络隔离的要求。因此引入了网络适配插件,该插件能够整合openstack vpc网络,使得eci可以处于相同或者不同的vpc网络。
49.插件通过监听kubernetes api捕获创建eci的请求,调用openstack接口在相应vpc下创建port并绑定到eci。
50.其中,eci必须从属于一个vpc,一个vpc下可包含多个eci,每个eci对应一个虚拟机。
51.s5、暴露服务到外部网络:
52.示意图请参考图3;
53.eci默认仅允在内部vpc建访问,如果要从外部网络访问,就要需要为其绑定eip,一个容器实例只允许绑定一个eip。
54.其中,网络插件可以整合openstack vpc与kubernetes网络,eci属于某个vpc且可以绑定eip。
55.上述具体的实施方式仅是本发明具体的个案,本发明的专利保护范围包括但不限于上述具体的实施方式,任何符合本发明的一种弹性容器实例实现方法权利要求书的且任何所述技术领域普通技术人员对其做出的适当变化或者替换,皆应落入本发明的专利保护范围。
56.尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献