【技术实现步骤摘要】
进程维护管理方法、容器维护方法、装置和操作系统
本申请涉及计算机软件
,尤其涉及一种进程维护管理方法、容器维护方法、装置和操作系统。
技术介绍
在Linux操作系统中,每个容器(Container)进程都是Daemon进程的子进程,由Daemon进程创建;每个Container进程都具有不同的PID命名空间。通过命名空间技术,可实现容器间的进程隔离。另外,Daemon进程也会利用PID命名空间的树状结构,实现了对容器中的进程交互、监控和回收。但是,在现有技术的方案中,一旦Daemon进程崩溃,其所创建的容器都会丢失,且容器内的正常服务都会中断,从而导致服务不可用。如何避免Daemon进程的崩溃影响容器内服务的使用,是本申请所要解决的技术问题。
技术实现思路
本申请实施例的目的是提供一种进程维护管理方法、容器维护方法、装置和操作系统,能够增加操作系统的鲁棒性。为解决上述技术问题,本申请实施例是这样实现的:第一方面,提供了一种操作系统的容器维护方法,该方法包括:操作系统中的Daemon进程创建容器进程,并在该容器进程的命名空间设置用于表示进程类型为容器进程的标识,并 ...
【技术保护点】
1.一种操作系统的容器维护方法,其特征在于,包括:操作系统中的Daemon进程创建容器进程,并在所述容器进程的命名空间设置用于表示进程类型为容器进程的标识,并将所述容器进程在所述操作系统的内核的全局进程身份标识PID列表中的PID存储到指定存储空间;在所述Daemon进程崩溃后,所述操作系统中的init进程接管包括容器进程在内的孤儿进程,确定所述孤儿进程中命名空间设置有所述标识的进程为容器进程,并确定保留容器进程的资源;重启的Daemon进程获取所述指定存储空间中的PID,并恢复重启的Daemon进程对所述指定存储空间中的PID对应的容器进程的控制。
【技术特征摘要】
1.一种操作系统的容器维护方法,其特征在于,包括:操作系统中的Daemon进程创建容器进程,并在所述容器进程的命名空间设置用于表示进程类型为容器进程的标识,并将所述容器进程在所述操作系统的内核的全局进程身份标识PID列表中的PID存储到指定存储空间;在所述Daemon进程崩溃后,所述操作系统中的init进程接管包括容器进程在内的孤儿进程,确定所述孤儿进程中命名空间设置有所述标识的进程为容器进程,并确定保留容器进程的资源;重启的Daemon进程获取所述指定存储空间中的PID,并恢复重启的Daemon进程对所述指定存储空间中的PID对应的容器进程的控制。2.如权利要求1所述的方法,其特征在于,所述重启的Daemon进程恢复对所述指定存储空间中的PID对应的容器进程的控制包括:所述重启的Daemon进程按照PID从小到大的顺序,恢复所述重启的Daemon进程对所述指定存储空间中的PID对应的容器进程的控制。3.如权利要求1所述的方法,其特征在于,所述重启的Daemon进程恢复对所述指定存储空间中的PID对应的容器进程的控制包括:所述重启的Daemon进程按照容器进程的优先级,恢复所述重启的Daemon进程对所述指定存储空间中的PID对应的容器进程的控制;其中,所述Daemon进程将所述容器进程在全局进程身份标识PID列表中的PID存储到指定存储空间包括:所述Daemon进程将所述容器进程在所述全局PID列表中的PID及所述容器进程的优先级信息存储到所述指定存储空间。4.如权利要求1所述的方法,其特征在于,所述重启的Daemon进程恢复对所述指定存储空间中的PID对应的容器进程的控制包括:所述重启的Daemon进程按照容器进程所占用的资源从多到少或从少到多的顺序,恢复所述重启的Daemon进程对所述指定存储空间中的PID对应的容器进程的控制;其中,所述Daemon进程将所述容器进程在全局进程身份标识PID列表中的PID存储到指定存储空间包括:所述Daemon进程将所述容器进程在所述全局PID列表中的PID及所述容器进程所占用的资源信息存储到所述指定存储空间。5.如权利要求1-4中任一项所述的方法,其特征在于,所述指定存储空间为所述操作系统内存的用户态存储空间中指定的环境变量;或者所述指定存储空间为所述操作系统内存以外的本地存储设备上的指定位置。6.一种操作系统中的容器维护装置,其特征在于,包括:容器创建模块,通过操作系统中的Daemon进程创建容器进程,并在所述容器进程的命名空间中标记进程类型为容器进程,并将所述容器进程在所述操作系统中的内核的全局进程身份标识PID列表中的PID存储到指定存储空间;容器接管模块,在Daemon进程崩溃后,通过所述操作系统中的init进程包括容器进程在内的孤儿进程,确定所述孤儿进程中命名空间设置有所述标识的进程为容器进程,并确定保留容器进程的资源;进程重启模块,用于在所述Daemon进程崩溃后重启Daemon进程;容器恢复模块,通过重启的Daemon进程获取所述指定存储空间中的PID,并恢复所述重启的Daemon进程对所述指定存储空间中的PID对应的容器进程的控制。7.如权利要求6所述的装置,其特征在于,容器恢复模块具体用于通过所述重启的Daemon进程获取所述指定存储空间中的PID,并按照PID从小到大的顺序恢复所述重启的Daemon进程对所述指定存储空间中的PID对应的容器进程的控制。8.如权利要求6所述的装置,其特征在于,容器恢复模块具体用于通过所述重启的Daemon进程获取所述指定存储空间中的PID,并按照容器进程的优先级恢复所述重启的Daemon进程对所述指定存储空间中的PID对应的容器进程的控制;其中,所述容器创建模块具体用于通过所述Daemon进程将所述容器进程在所述全局PID列表中的PID及所述容器进程的优先级信息存储到所述指定存储空间。9.如权利要求6所述的装置,其特征在于,容器恢复模块具体用于通过所述重启的Daemon进程,按照容器进程所占用的资源从多到少或从少到多的顺序,恢复所述重启的Daemon进程对所述...
【专利技术属性】
技术研发人员:陈显鹭,车漾,陈萌辉,秦妤嘉,
申请(专利权)人:阿里巴巴集团控股有限公司,
类型:发明
国别省市:开曼群岛,KY
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。