一种边缘计算虚拟机镜像缓存方法技术

技术编号:37997455 阅读:17 留言:0更新日期:2023-06-30 10:11
本发明专利技术公开了一种边缘计算虚拟机镜像缓存方法,包括:根据用户需要将虚拟机的自定义镜像导出,同时生成缓存文件;基于nginx对缓存文件进行访问,将虚拟机的自定义镜像上传到image

【技术实现步骤摘要】
一种边缘计算虚拟机镜像缓存方法


[0001]本专利技术属于边缘计算
,特别是涉及一种边缘计算虚拟机镜像缓存方法。

技术介绍

[0002]在边缘计算场景,用户需要将虚拟机的自定义镜像导出到云端备份,并且使用导出的镜像在原来的集群创建新的虚拟机。这种场景特征是用户导出镜像非常大,边缘到云端的上传下载受到带宽限制,耗时严重。而基于nginx做开发,nginx缓存模块只能缓存后端服务的http响应,无法缓存上传镜像的body内容,因此,需要一种镜像缓存解决方案,加快镜像获取,缩短虚拟机部署时间。

技术实现思路

[0003]为实现上述目的,本专利技术提供了如下方案:一种边缘计算虚拟机镜像缓存方法,包括:
[0004]根据用户需要将虚拟机的自定义镜像导出,同时生成缓存文件;
[0005]基于nginx作为HTTP和反向代理web服务器,对所述缓存文件进行访问,通过启用sendfile()系统调用来替换read()和write()调用,将所述虚拟机的自定义镜像上传到image

proxy镜像服务代理程本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种边缘计算虚拟机镜像缓存方法,其特征在于,包括:根据用户需要将虚拟机的自定义镜像导出,同时生成缓存文件;基于nginx作为HTTP和反向代理web服务器,对所述缓存文件进行访问,通过启用sendfile()系统调用来替换read()和write()调用,将所述虚拟机的自定义镜像上传到image

proxy镜像服务代理程序;通过image

proxy镜像服务代理程序将镜像文件以数据流的形式上传到云端备份,在上传云端的过程中生成nginx缓存文件,通过io.tee管道的方式,一边上传镜像一边写缓存文件,进行云端镜像备份;基于nginx下载镜像,在原来的集群创建新的虚拟机,完成虚拟机部署。2.根据权利要求1所述的边缘计算虚拟机镜像缓存方法,其特征在于,在上传云端的过程中生成nginx缓存文件,通过io.tee管道的方式,一边上传镜像一边写缓存文件,进行云端镜像备份的过程包括,通过io.tee管道的方式,破解nginx缓存文件的文件格式,将上传的镜像数据转换为nginx缓存,实现image

proxy的自定义缓存;所述破解nginx缓存文件的文件格式的过程包括,获取缓存文件名称和缓存目录结构,基于所述缓存文件名和缓存目录结构破解缓存文件格式。3.根据权利要求2所述的边缘计算虚拟机镜像缓存方法,其特征在于,所述获取缓存文件名称和缓存目录结构的过程包括,基于nginx配置proxy_cache_key,为每个镜像生成一个hash值,将所述hash值传递到image

proxy,获得缓存文件名称;根据proxy_cache_path的level值设置缓存文件的索引目录层级,获得缓存目录结构。4.根据权利要求3所述的边缘计算虚拟机镜像缓存方法,其特征在于,基于nginx配置proxy_cache_key,为每个镜像生成一个hash值,将所述hash值传递到image

proxy,获得缓存文件名称的过程包括,通过ngx_http_request_t*r结构获取proxy_hash_key,通过ngx_crc32_update和ngx_md5_update方法生成crc32值和hash值;开发nginx模块,基于所述nginx模块开发cache

hash

header指令,设置所述nginx模块的postconfiguration回调函数,将指令挂载在NGX_HTTP_REWRITE_PHASE阶段,在nginx发送代理请求时将crc32值和hash值添加到proxy header传递到image

proxy。5.根据权利要求2所述的边缘计算虚拟机镜像缓存方法,其特征在于,基于所述缓存文件名和缓存目录结构破解缓存文件格式的过程包括,通过src/http/ngx_http_file_cache.c的ngx_http_file_cache_read方法,当nginx读取缓存文件时,通过校验crc32值判断文件有效性,通过校验valid_sec判断缓存是否过期,image

proxy构建获得缓存文件头部;按业务需求自定义其余文件内容的header和body,更新Content

Length字段为body大小,发送reload信号至nginx加载缓存文件。6.根据权利要求1所述的边缘计算虚拟机镜像缓存方法,其特征在于,基于nginx下载镜像,在原...

【专利技术属性】
技术研发人员:刘敏健安雨顺魏文生黎梓安田红艳
申请(专利权)人:天翼云科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1