本发明涉及云计算容器paas平台,尤其涉及一种基于公有云iaas资源构建serverless kubernetes的方法。
背景技术:
1、随着云原生的理念在软件开发领域的兴起,越来越多开发者将软件服务通过以容器技术为基础的k8s容器服务平台上。使用k8s容器容器服务的前提是搭建一个k8s集群,现有技术采用的方式大多是在公有云上创建虚拟机,并且在虚拟机的基础上创建出k8s集群,用于devops环境和生产服务的部署。
2、但是,通过人工创建的集群需要大量维护成本,包括应用管理和集群节点、网络、存储等资源管理;而且,现有技术中的开源社区已经存在的virtual cluster的虚拟k8s的服务,也仅提供了k8s的控制面的隔离和专用,数据面的容器以及网络仍然共享的宿主机的计算和网络资源,隔离和安全无法得到保障。
技术实现思路
1、本部分的目的在于概述本发明的实施例的一些方面以及简要介绍一些较佳实施例。在本部分以及本申请的说明书摘要和发明名称中可能会做些简化或省略以避免使本部分、说明书摘要和发明名称的目的模糊,而这种简化或省略不能用于限制本发明的范围。
2、因此,为解决上述技术问题,本发明提供如下技术方案:一种基于公有云iaas资源构建serverless kubernetes的方法,基于公有云创建的元集群,借助云上的弹性网卡、vcluster虚拟k8s服务,虚拟kubelet构建免运维的serverless kubernetes容器集群;
3、具体的:首先在公有云iaas环境中部署vcluster组件,管理租户的控制面组件,其中,vcluster技术包括在公有云iaas资源上部署vcluster管理组件,用于管理多个租户的控制面组件;
4、租户的k8s控制面组件(apiserver和kube-controller-manager)被集成到一个pod容器中(vc pod),该pod容器部署在元集群的某个worker节点上;将vc pod部署到元集群的worker节点时,使用高可用的调度策略以确保vc pod的稳定性和可靠性。
5、通过公有云的弹性网卡服务,在规划好的vpc下创建弹性网卡,并将其绑定到vcpod对应的worker节点的虚拟机中;弹性网卡服务通过api接口动态创建和释放,以提高资源利用率和网络配置灵活性;
6、利用k8s自定义cni插件,将弹性网卡加入到vc pod的网络命名空间,使其能够加入租户的vpc网络;自定义cni插件包括网络隔离和安全策略,以确保不同租户间的网络安全性。
7、在vc pod中部署virtual kubelet(vk)资源,vk模拟一个node的完整生命周期,但不直接管理容器;virtual kubelet(vk)资源通过api与apiserver通信,以实现node的生命周期管理。通过vk创建云服务的openapi实例,采用serverless的方式部署业务容器实例,如阿里云的eci serverless容器实例;通过vk创建云服务的openapi实例时,自动配置实例的网络、安全组和存储等资源,以简化部署流程;serverless容器实例的部署包括根据负载情况动态扩展和缩减容器实例,以优化资源使用。
8、作为本发明所述基于公有云iaas资源构建serverless kubernetes的方法的一种优选方案,其中:该方法还包括监控和日志记录模块,用于实时监控serverless k8s集群的运行状态,并提供故障排查和性能优化的建议。
9、作为本发明所述基于公有云iaas资源构建serverless kubernetes的方法的一种优选方案,其中:该方法支持跨区域的多集群管理,以实现全球化的业务部署和管理。
10、本发明的有益效果:
11、1、本发明提供了一种利用公有云iaas资源构建serverless kubernetes的方法,基于公有云创建的元集群,借助云上的弹性网卡、vcluster虚拟k8s服务,虚拟vk构建免运维的serverless kubernetes容器集群,通过使用vc技术和vk资源,实现了在公有云环境下的serverless kubernetes集群部署和管理。
12、2、本发明提供了一种利用公有云iaas资源构建serverless kubernetes的方法,通过利用公有云iaas资源和serverless架构,实现了kubernetes集群的自动化部署和管理,简化了用户操作,提高了资源利用率和系统的可扩展性,为用户提供了一种高效、灵活的云计算解决方案。
13、3、本发明提供了一种利用公有云iaas资源构建serverless kubernetes的方法,通过公有云弹性计算和弹性网络的能力,对用户提供免运维、轻量、原生的serverless k8s集群服务;提供标准k8s应用部署能力,同时降低的用户管理和使用k8s的成本。
1.一种基于公有云iaas资源构建serverless kubernetes的方法,其特征在于:基于公有云创建元集群,借助云上的弹性网卡、virtualcluster虚拟k8s服务和虚拟kubelet,构建免运维的serverless kubernetes容器集群;
2.如权利要求1的基于公有云iaas资源构建serverless kubernetes的方法,其特征在于:步骤a)中的vcluster技术包括在公有云iaas资源上部署vcluster管理组件,用于管理多个租户的控制面组件。
3.如权利要求1的基于公有云iaas资源构建serverless kubernetes的方法,其特征在于:步骤b)中将vc pod部署到元集群的worker节点时,使用高可用的调度策略以确保vcpod的稳定性和可靠性。
4.如权利要求1的基于公有云iaas资源构建serverless kubernetes的方法,其特征在于:步骤c)中的弹性网卡服务通过api接口动态创建和释放,以提高资源利用率和网络配置灵活性。
5.如权利要求1的基于公有云iaas资源构建serverless kubernetes的方法,其特征在于:步骤d)中的自定义cni插件包括网络隔离和安全策略,以确保不同租户间的网络安全性。
6.如权利要求1的基于公有云iaas资源构建serverless kubernetes的方法,其特征在于:步骤e)中的virtual kubelet资源通过api与apiserver通信,以实现node的生命周期管理。
7.如权利要求1的基于公有云iaas资源构建serverless kubernetes的方法,其特征在于:步骤f)中通过vk创建云服务的openapi实例时,自动配置实例的网络、安全组和存储资源,以简化部署流程。
8.如权利要求1的基于公有云iaas资源构建serverless kubernetes的方法,其特征在于:步骤g)中的serverless容器实例的部署包括根据负载情况动态扩展和缩减容器实例,以优化资源使用。
9.如权利要求1的基于公有云iaas资源构建serverless kubernetes的方法,其特征在于:该方法还包括监控和日志记录模块,用于实时监控serverless k8s集群的运行状态,并提供故障排查和性能优化的建议。
10.如权利要求1的基于公有云iaas资源构建serverless kubernetes的方法,其特征在于:该方法支持跨区域的多集群管理,以实现全球化的业务部署和管理。