• 学术搜索
  • 科研智能体
    • Research Labs
    • AI 阅读
    • AI 文库
    • 深度研究
    • 学者亮点
  • 学术资源
    • AI2000
    • 期刊/会议
    • 学者库
    • 学术API
    • 溯源树
    • 数据集
  • 知识沉淀
    • 学术空间
订阅小程序
旧版功能
aminer vip
开通会员低至0.73元/天
一次搞定AI科研
立即登录
  • English
  • 联系方式
    专

    一种糖响应性多功能水凝胶及其制备方法与在创面敷料中的应用

    17709726041A
    发明人
    郭亮, 雷祎凤, 黄卓, 王敏, 叶丽丽, 郭佳, 陈丹洋, 周凌, 杨旭霞
    受让人
    UNIV WUHAN ZHONGNAN HOSPITAL (UYWU-C)
    申请人
    Nishanth R. Sastry, Steven I. Ross, Daniel M. Gruen, Susanne C. Hupfer
    申请号
    071303
    申请日
    2003-09-03
    公开(公告)号
    17709726041A
    公开(公告)日
    2005-09-12
    IPC分类号
    H01M004/68C23C016/40H01M010/18H01M004/20B32B015/08B32B017/02B32B017/04B32B007/10C23C014/08H01M010/20H01M004/14H01M004/64H01M004/66H01M004/58H01M006/48H01M004/60B23P013/00
    CPC分类号
    -
    优先权号
    339155
    优先权日
    1993-12-05
    摘要

    In moulding materials (I) contg. unsatd. polyester, styrene, natural fibres and normal additives, the styrene is replaced by a mixt. of 1-85 wt.% styrene and 15-99 wt.% di(meth)acrylate ester (II) of a 2-9C (cyclo)aliphatic diol.

    Pref. mixt. contains 3-30 wt.% styrene and 70-97 wt.% di(meth)acrylate ester of a 3-6C aliphatic diol, pref. butane-1,4-diol; fibre component is jute mat.

    USE/ADVANTAGE -(I) are useful, e.g. for the prodn. of interior linings for motor vehicles; materials (I) can be hot-press moulded to give prods. with residual styrene content below 0.1 (esp. below 0.01) wt.% and residual diester content below 0.05 wt.%, which do not cause fogging of windscreens.

    Prods. are obtd. from (I) by hot press moulding, with residual monomer contents as above. In an example, 51 pts. wt. unsatd. polyester (from 3 mols. maleic anhydride, 1 mol. phthalic anhydride, 1.4 mols. diethylene glycol and 3 mols. 1,2-propylene glycol) was dissolved in a mixt. of 10 pts. wt. styrene and 39 pts. wt. 1,4-butanediol dimethacrylate (80 wt.% in the mixt.). Resin soln. obtd. was used to make a jute mat prepreg (resin/jute ratio 1:1; contg. mixed peroxide catalyst), which was hot-pressed at 135 deg. C. Prod. contained 0.002 wt.% residual styrene and below 0.05 wt.% residual diester (by GLC of acetone extracts) (c.g. 0.5 wt.% styrene for a resin soln. contg. no di

    权利要求
    1.열 안정한 기재(heat-stable substrate)의 접착제 접합을 위한 방법으로서,i) 1-성분 열경화성 에폭시 수지 조성물을 열 안정한 기재(S1), 특히 금속의 표면에 도포하는 단계;ii) 도포된 상기 열경화성 에폭시 수지 조성물을 추가의 열 안정한 기재(S2), 특히 금속의 표면과 접촉시키는 단계로서, ii) 단계 이후에 상기 열경화성 에폭시 수지 조성물의 두께는 0.8㎜ 이상, 특히 1㎜ 이상인, 상기 접촉시키는 단계iii) 100 내지 220℃, 특히 120 내지 200℃, 바람직하게는 130 및 150℃ 사이, 더욱 바람직하게는 130 및 140℃ 사이 온도로 상기 에폭시 수지 조성물을 가열하는 단계를 포함하되,상기 1-성분 열경화성 에폭시 수지 조성물은,a) 분자당 평균 1개 초과의 에폭시기를 갖는 적어도 1종의 에폭시 수지(A);b) 에폭시 수지(B)를 위한 적어도 1종의 잠재성 경화제를 포함하고, 상기 적어도 1종의 인성 개선제(D)에 대해 상기 분자당 평균 1개 초과의 에폭시기를 갖는 적어도 1종의 에폭시 수지(A)의 중량비는 0.3 내지 2.2이고,상기 인성 개선제(D)는 하기 화학식 (I)을 갖는 말단 블로킹된 예비중합체이며:식 중, R1은 말단 아이소사이아네이트기의 제거 후 아이소사이아네이트기에 의해 종결된 선형 또는 분지형 폴리우레탄 예비중합체의 p-가 라디칼이고;p는 2 내지 8의 값을 가지며;R2는 100℃ 초과의 온도에서 탈착되는 블로킹기이고,R2는 및 로 이루어진 군으로부터 선택된 치환기가 아니며,식 중,R12는2 내지 5개의 탄소 원자를 갖고, 선택적으로 이중 결합을 갖거나 또는 치환된 알킬렌기이거나, 또는 페닐렌기 또는 수소화된 페닐렌기, 특히 NH 양성자의 제거 후의 ε-카프로락탐이고; 그리고R19는 하이드록실기가 제거된 후 비스페놀, 특히 비스페놀 A, 비스페놀 F 및 2,2'-다이알릴비스페놀 A를 나타내며, 그리고1-성분 열경화성 에폭시 수지 조성물은 최대 선형 팽창(maximum linear expansion)인 최대 연신(Max. elongation)이 1.65㎜ 이상이고, 가열되고 경화된 중첩 전단 시편의 냉각 동안 중첩 전단 시험에 의해 결정되며, 그리고 상기 최대 선형 팽창인 최대 연신은 0.40㎜/분의 변형속도 Vst에서 중첩 전단 시험을 통하여 측정되고, 그리고중첩 전단 시험에서 중첩 전단 시편의 온도는 측정의 시작 시 180℃, 특히 190℃이며, 중첩 전단 시료는 25℃의 온도까지 40℃/분의 냉각속도로 측정의 시작까지 냉각되고, 그 온도에서 정치되는 것인, 열 안정한 기재(heat-stable substrate)의 접착제 접합을 위한 방법.
    2.제1항에 있어서, R2는 독립적으로 하기로 이루어진 군으로부터 선택된 치환기인, 열 안정한 기재의 접착제 접합을 위한 방법:식 중, R5, R6, R7 및 R8은, 각각 독립적으로, 알킬 또는 사이클로알킬 또는 아르알킬 또는 아릴알킬기이거나,또는 R5는 R6과 함께, 또는 R7은 R8과 함께, 4- 내지 7-원의, 선택적으로 치환된 고리의 일부를 형성하고;R9, R9' 및 R10은, 각각 독립적으로 알킬 또는 아르알킬 또는 아릴알킬기 또는 알킬옥시 또는 아릴옥시 또는 아르알킬옥시기이고;R11은 알킬기이고,R13 및 R14는, 각각 독립적으로, 2 내지 5개의 탄소 원자를 갖고, 선택적으로 이중 결합을 갖거나 또는 치환되는 알킬렌기, 또는 페닐렌기 또는 수소화된 페닐렌기이고;R15, R16 및 R17은 각각 독립적으로 H 또는 알킬기 또는 아릴기 또는 아르알킬기이고; 그리고R18은 아르알킬기이거나, 또는 방향족 하이드록실기를 선택적으로 갖는 단환식 또는 다환식, 치환 또는 비치환 방향족 기이고;R4는 하이드록실기 및 에폭시기의 제거 후 1차 또는 2차 하이드록실기를 함유하는 지방족, 지환식, 방향족 또는 방향지방족 에폭사이드의 라디칼이고;그리고 m은 1, 2 또는 3의 값이다.
    3.제1항 또는 제2항에 있어서,R2는 독립적으로 하기로 이루어진 군으로부터 선택된 치환기이고:(식 중,R5, R6, R7 및 R8은 각각 독립적으로 알킬 또는 사이클로알킬 또는 아르알킬 또는 아릴알킬기이거나,또는 R5는 R6과 함께, 또는 R7은 R8과 함께, 4- 내지 7-원의, 선택적으로 치환된 고리의 일부를 형성하고;R15, R16 및 R17은 각각 독립적으로 H 또는 알킬기 또는 아릴기 또는 아르알킬기이고; 그리고R18은 아르알킬기이거나, 또는 선택적으로 방향족 하이드록실기를 갖는 단환식 또는 다환식, 치환 또는 비치환 방향족 기임);R2는 바람직하게는 로 이루어진 군으로부터 선택되고, R2는 로 이루어진 군으로부터 선택되며,R2는 바람직하게는 로 이루어진 군으로부터 선택되고, R2는 가장 바람직하게는 인, 열 안정한 기재의 접착제 접합을 위한 방법.
    4.제1항 내지 제3항 중 어느 한 항에 있어서, 적어도 1종의 인성 개선제(D)에 대한 상기 분자당 평균 1개 초과의 에폭시기를 갖는 적어도 1종의 에폭시 수지(A)의 중량비는 0.4 내지 2.0이고, 더욱 바람직하게는 0.5 내지 1.8인, 열 안정한 기재의 접착제 접합을 위한 방법.
    5.제1항 내지 제4항 중 어느 한 항에 있어서, R1은 말단 아이소사이아네이트기의 제거 후 아이소사이아네이트기에 의해 종결된 선형 또는 분지형 폴리우레탄 예비중합체의 p-가 라디칼이고, 상기 폴리우레탄 예비중합체는 적어도 1종의 다이이소사이아네이트 또는 트라이이소사이아네이트으로부터 제조되거나, 또는 말단 아미노, 티올 또는 하이드록실기를 갖는 중합체(Qpm)로부터 제조되는, 열 안정한 기재의 접착제 접합을 위한 방법.
    6.제5항에 있어서, 상기 말단 아미노, 티올 또는 하이드록실기를 갖는 상기 중합체(Qpm)는 폴리에틸렌 글리콜, 폴리프로필렌 글리콜, 폴리에틸렌 글리콜-폴리프로필렌 글리콜 블록 중합체, 폴리부틸렌 글리콜, 폴리테트라메틸렌 에터 글리콜, 하이드록실-말단 폴리부타다이엔, 하이드록실-말단 부타다이엔-아크릴로나이트릴 공중합체 및 이들의 혼합물, 특히 바람직하게는 폴리테트라메틸렌 에터 글리콜 및 하이드록실-말단 폴리부타다이엔으로 이루어진 군으로부터 선택된 600 내지 6000 달톤의 평균 분자량을 갖는 폴리올을 포함하는, 열 안정한 기재의 접착제 접합을 위한 방법.
    7.제6항에 있어서, 상기 말단 아미노, 티올 또는 하이드록실기를 갖는 상기 중합체(Qpm)는 폴리테트라메틸렌 에터 글리콜 및 하이드록실-말단 폴리부타다이엔으로 이루어진 군으로부터 선택된 600 내지 6000 달톤의 평균 분자량을 갖는 폴리올을 포함하고, 폴리테트라메틸렌 에터 글리콜 대 하이드록실-말단 폴리부타다이엔의 중량비는 100/0 내지 70/30, 더 바람직하게는 100/0 내지 60/40, 더 바람직하게는 100/0 내지 90/10의 범위, 가장 바람직하게는 100/0인, 열 안정한 기재의 접착제 접합을 위한 방법.
    8.제1항 내지 제7항 중 어느 한 항에 있어서, ii) 단계 이후에 상기 열경화성 에폭시 수지 조성물의 두께는 1.0㎜ 이상, 특히 1.2㎜ 이상, 바람직하게는 1.5㎜ 이상인, 열 안정한 기재의 접착제 접합을 위한 방법.
    9.제1항 내지 제8항 중 어느 한 항에 있어서, 상기 최대 선형 팽창인 최대 연신은 0.40 ㎜/분, 특히 0.52 ㎜/분, 바람직하게는 0.68 ㎜/분의 변형속도 Vst에서 중첩 전단 시험으로 측정되는, 열 안정한 기재의 접착제 접합을 위한 방법.
    10.제1항 내지 제9항 중 어느 한 항에 있어서, 상기 단계 iii)에서 상기 에폭시 수지 조성물은 100 내지 220℃, 특히 120 내지 200℃, 바람직하게는 140 내지 200℃ 사이, 더욱 바람직하게는 150 내지 190℃ 사이의 온도에서 가열하고, 상기 에폭시 수지 조성물은 상기 전술한 온도 범위에서 10분 내지 6시간, 10분 내지 2시간, 10분 내지 60분, 10분 내지 30분, 더욱 바람직하게는 10분 내지 20분간 정치하는, 열 안정한 기재의 접착제 접합을 위한 방법.
    11.제1항 내지 제10항 중 어느 한 항에 있어서, 상기 중첩 전단 시험은 중첩 전단 시편이 다음의 특징을 갖는 중첩 전단 시험인, 열 안정한 기재의 접착제 접합을 위한 방법:- 25 ㎜×100 ㎜×1.5 ㎜의 치수를 갖는 강판,- 1.5㎜, 바람직하게는 1.0 ㎜의 두께를 갖고, 10 ㎜×25 ㎜의 치수를 갖는 경화된 1-성분 열경화성 에폭시 수지 조성물의 접합 면적.
    12.제1항 내지 제11항 중 어느 한 항에 있어서, 상기 최대 선형 팽창인 최대 연신은 1.8㎜ 이상, 바람직하게는 2.0㎜ 이상, 바람직하게는 2.145㎜ 이상, 바람직하게는 2.2㎜ 이상, 바람직하게는 2.5㎜ 이상, 바람직하게는 2.8㎜ 이상, 바람직하게는 3.0㎜ 이상, 바람직하게는 3.5㎜ 이상, 바람직하게는 4.0㎜ 이상인, 열 안정한 기재의 접착제 접합을 위한 방법.
    13.제1항 내지 제12항 중 어느 한 항에 있어서, 측정된 최대 힘은 6000N 이하, 바람직하게는 5000N 이하, 바람직하게는 4500N 이하, 바람직하게는 4000N 이하, 바람직하게는 3500N 이하, 바람직하게는 3000N 이하, 바람직하게는 2500N 이하, 바람직하게는 2000N 이하인, 열 안정한 기재의 접착제 접합을 위한 방법.
    14.제1항 내지 제13항 중 어느 한 항에 있어서, 1.8㎜ 이상, 바람직하게는 2.0㎜ 이상, 바람직하게는 2.145㎜ 이상의 상기 최대 선형 팽창인 최대 연신의 달성 시 측정된 힘은, 바람직하게는 4000N 이하, 바람직하게는 3000N 이하, 바람직하게는 2500N 이하, 바람직하게는 2000N 이하, 바람직하게는 1500N 이하, 바람직하게는 1000N 이하, 바람직하게는 800N 이하, 바람직하게는 700N 이하인, 열 안정한 기재의 접착제 접합을 위한 방법.
    15.제1항 내지 제14항 중 어느 한 항에 있어서, 자동차 구성 및 샌드위치 패널 구성의 방법인, 열 안정한 기재의 접착제 접합을 위한 방법.
    说明书
    [0001]CROSS-REFERENCE TO RELATED APPLICATION
    [0002]This application claims priority to Chinese Patent Application No. 202111536894.2, filed to China National Intellectual Property Administration on Dec. 16, 2021 and entitled “Container Application Scheduling Method and Apparatus, Electronic Device and Storage Medium”, the entire content of which is hereby incorporated by reference.
    [0003]FIELD
    [0004]The present application relates to the technical field of computers, in particular to a container application scheduling method and apparatus, an electronic device and a storage medium.
    [0005]BACKGROUND
    [0006]Cloud Native is a distributed cloud based on distributed deployment and unified operation and management, which is a cloud technology product system established on the basis of technologies such as containers, Microservices and DevOps. At present, the usage of container-based cloud-native technologies is increasing, which brings convenience such as flexibility and elasticity to various applications. In terms of construction of a container cloud platform, how to automatically deploy container applications has become a key research content.
    [0007]In the prior art, typically according to a running internal memory of each compute node, a target compute node where a running internal memory is enough to meet the container scheduling requirement is selected from these compute nodes to perform, based on the target compute node, a subsequent container scheduling operation.
    [0008]However, the applicant has realized that when a compute node schedules a container, a container image needs to be cached, whereby the container might be started to perform computation at the compute node. If local storage of the node is exhausted, the compute node cannot continue to host container application scheduling even when the running internal memory is sufficient, and thus, the success rate of container application scheduling cannot be ensured.
    [0009]SUMMARY
    [0010]The present application provides a container application scheduling method and apparatus, an electronic device and a storage medium.
    [0011]A first aspect of the present application provides a container application scheduling method, including:
    [0012]acquiring image file information of a container application to be scheduled and image file cache information of all compute nodes; where the image file cache information includes local storage residual resources and cached container image layer file information of the compute nodes; determining a local storage resource requirement of the container application for each compute node according to the image file information and the cached container image layer file information of each compute node; and determining, according to the local storage resource requirement and the local storage residual resources of each compute node, a target compute node configured for performing container application scheduling.
    [0013]In some implementation modes, the determining a local storage resource requirement of the container application for each compute node according to the image file information and the cached container image layer file information of each compute node includes:
    [0014]determining container image layer file information to be cached of each compute node according to the image file information and the cached container image layer file information of each compute node; and determining the local storage resource requirement of the container application for each compute node according to the container image layer file information to be cached.
    [0015]In some implementation modes, the determining, according to the local storage resource requirement and the local storage residual resources of each compute node, a target compute node configured for performing container application scheduling includes:
    [0016]determining compute nodes where the local storage residual resources are enough to meet corresponding local storage resource requirements as candidate compute nodes, when the local storage residual resources of the compute nodes are enough to meet corresponding local storage resource requirements; determining the priority of each candidate compute node according to the size of the corresponding local storage resource requirement of each candidate compute node; and determining a candidate compute node with the highest priority as the target compute node.
    [0017]In some implementation modes, the local storage resource requirement characterizes the total size of a container image layer file to be cached in the compute node, and the determining the priority of each candidate compute node according to the size of the corresponding local storage resource requirement of each candidate compute node includes:
    [0018]determining, for each container image layer file to be cached in each candidate compute node, a ratio of the number of compute nodes where the container image layer file to be cached has been cache-hit to the total number of the compute nodes as a weighting coefficient of the container image layer file to be cached; and determining the priority of each candidate compute node according to the size of each container image layer file to be cached in each candidate compute node and a corresponding weighting coefficient of each container image layer file to be cached.
    [0019]In some implementation modes, the method further includes:
    [0020]acquiring a resource request of the container application to be scheduled and internal memory resource information of each compute node; and determining a compute node to be filtered, according to the resource request of the container application to be scheduled and the internal memory resource information of each compute node.
    [0021]In some implementation modes, the method further includes:
    [0022]acquiring locating information of the target compute node; and sending the locating information to a container application management center to enable the container application management center to issue, based on the locating information, a container application scheduling task to the target compute node.
    [0023]In some implementation modes, the method further includes:
    [0024]determining, based on a pre-set compute node forced anti-affinity policy, the corresponding target compute node for each Pod, when a container scheduling mode of the container application to be scheduled is multi-copy Pod scheduling.
    [0025]In some implementation modes, the method further includes:
    [0026]determining that one target compute node executes a subsequent container application scheduling flow, when the container scheduling mode of the container application to be scheduled is single-copy Pod scheduling.
    [0027]A second aspect of the present application provides a container application scheduling apparatus, including:
    [0028]an acquisition module, configured for acquiring image file information of a container application to be scheduled and image file cache information of all compute nodes; where the image file cache information includes local storage residual resources and cached container image layer file information of the compute nodes; a determination module, configured for determining a local storage resource requirement of the container application for each compute node according to the image file information and the cached container image layer file information of each compute node; and a scheduling module, configured for determining, according to the local storage resource requirement and the local storage residual resources of each compute node, a target compute node configured for performing container application scheduling.
    [0029]In some implementation modes, the determination module is configured for:
    [0030]determining container image layer file information to be cached of each compute node according to the image file information and the cached container image layer file information of each compute node; and determining the local storage resource requirement of the container application for each compute node according to the container image layer file information to be cached.
    [0031]In some implementation modes, the scheduling module is configured for:
    [0032]determining compute nodes where the local storage residual resources are enough to meet corresponding local storage resource requirements as candidate compute nodes, when the local storage residual resources of the compute nodes are enough to meet corresponding local storage resource requirements; determining the priority of each candidate compute node according to the size of the corresponding local storage resource requirement of each candidate compute node; and determining a candidate compute node with the highest priority as the target compute node.
    [0033]In some implementation modes, the scheduling module is configured for:
    [0034]determining, for each container image layer file to be cached in each candidate compute node, a ratio of the number of compute nodes where the container image layer file to be cached has been cache-hit to the total number of the compute nodes as a weighting coefficient of the container image layer file to be cached; and determining the priority of each candidate compute node according to the size of each container image layer file to be cached in each candidate compute node and a corresponding weighting coefficient of each container image layer file to be cached.
    [0035]In some implementation modes, the apparatus further includes:
    [0036]a filtering module, configured for acquiring a resource request of a container application to be scheduled and internal memory resource information of each compute node; determining a compute node to be filtered, according to the resource request of the container application to be scheduled and the internal memory resource information of each compute node.
    [0037]In some implementation modes, the scheduling module is further configured for:
    [0038]acquiring locating information of the target compute node; and sending the locating information to a container application management center to enable the container application management center to issue, based on the locating information, a container application scheduling task to the target compute node.
    [0039]In some implementation modes, the scheduling module is further configured for:
    [0040]determining, based on a pre-set compute node forced anti-affinity policy, the corresponding target compute node for each Pod, when a container scheduling mode of the container application to be scheduled is multi-copy Pod scheduling.
    [0041]A third aspect of the present application provides an electronic device, a memory, and one or more processors, the memory storing therein computer-readable instructions that, when executed by the one or more processors, cause the one or more processors to execute the steps of the container application scheduling method according to any of the above implementation modes.
    [0042]A fourth aspect of the present application provides one or more non-transitory storage media storing the computer-readable instructions that, when executed by one or more processors, cause the one or more processors to execute the steps of the container application scheduling method according to any of the above implementation modes.
    [0043]The details of one or more embodiments of the present application will be set forth in the drawings and the description below. Other features and advantages of the present application will be apparent from the description and drawings, and claims.
    [0044]BRIEF DESCRIPTION OF THE DRAWINGS In order to describe the technical solutions in the embodiments of the present application or in the prior art more clearly, the drawings needed to be used in descriptions about the embodiments or the conventional art will be simply introduced below. It is apparent that the drawings described below are some embodiments of the present application. For those of ordinary skill in the art, other drawings may also be obtained according to these drawings. FIG. 1 is a schematic structural diagram of a container application scheduling system provided in one or more embodiments of the present application: FIG. 2 is a flowchart of a container application scheduling method provided in one or more embodiments of the present application; FIG. 3 is a schematic structural diagram of an exemplary container application scheduling system provided in one or more embodiments of the present application: FIG. 4 is a schematic structural diagram of a container application scheduling apparatus provided in one or more embodiments of the present application; and FIG. 5 is a schematic structural diagram of an electronic device provided in one or more embodiments of the present application.
    [0045]Specific embodiments of the present application have been shown through the above drawings, and will be described in more details hereinafter. These drawings and text description are not intended to limit the scope of the disclosed concepts in any way, but rather to illustrate the concepts of the present application to those skilled in the art with reference to particular embodiments.
    [0046]DETAILED DESCRIPTION
    [0047]In order that the objects, technical solutions and advantages of the embodiments of the present application will become more apparent, the technical solutions in the embodiments of the present application will now be described clearly and completely with reference to the drawings in the embodiments of the present application. It is obvious that the described embodiments are some, but not all, embodiments of the present application. All other embodiments obtained by a person of ordinary skill in the art based on the embodiments in the present application without making creative efforts fall within the scope of protection of the present application.
    [0048]Furthermore, the terms “first”, “second” and the like are used for descriptive purposes only and cannot be construed as indicating or implying relative importance or implicitly designating the number of technical features indicated. In the description of each following embodiment, “a plurality of” means two or more, unless otherwise explicitly and in some embodiments defined.
    [0049]In a container cloud platform, computing resources mainly consist of CPU internal memories of compute nodes, and the local storage of the compute nodes is not considered effectively when the resources are scheduled. In addition to hosting an operating system itself, system logs, application logs and the like, the local storage also needs to cache container images, whereby a container might be started at the node for computation. If the local storage is exhausted, even if the CPU internal memory of the node is sufficient, the node cannot continue to host container scheduling, or even a whole magnetic disc space will be exhausted and the node will be paralyzed. Current schedulers schedule the CPU internal memory under the assumption that local storage resources are sufficient, without considering the condition of a local magnetic disc. Therefore, when the container is scheduled, scheduling is prone to fail due to insufficient local storage, especially when there are compute nodes with a smaller local magnetic disc specification. With a built-in scheduling policy of Kubemetes, it might be judged according to whether there is an overall image or not that if the node caches the image, the priority is high, and the cache miss priority is low. There are two problems about such judgment: the first problem is that the situation of insufficient local magnetic disc space is not considered, and the second problem is that the judgment based on the image as granularity is relatively coarse. The container images are stored in layers, and even if the image is not present, some of layer files of the images may also be present, as different images might share underlying read-only layer files.
    [0050]Aiming at the above-mentioned problems, according to a container application scheduling method and apparatus, an electronic device and a storage medium provided in the embodiments of the present application, image file information of a container application to be scheduled and image file cache information of all compute nodes are acquired; where the image file cache information includes local storage residual resources and cached container image layer file information of the compute nodes; a local storage resource requirement of the container application for each compute node is determined according to the image file information and the cached container image layer file information of each compute node; and a target compute node configured for performing container application scheduling is determined according to the local storage resource requirement and the local storage residual resources of each compute node. According to the method provided in the above-mentioned solution, the target compute node is determined according to usage situations of the local storage resources of different compute nodes in order to ensure that the target compute node might cache the overall image of the container application to be scheduled, thereby improving the success rate of container application scheduling.
    [0051]The following specific embodiments might be combined with each other, and the same or similar concepts or processes may not be repeated in certain embodiments. Hereinafter, the embodiments of the present application will be described in conjunction with the drawings.
    [0052]Firstly, the structure of the container application scheduling system on which the present application provided is described:
    [0053]The container application scheduling method and apparatus, the electronic device and the storage medium provided in the embodiments of the present application are configured for scheduling the container application for a distributed system to implement flexible deployment of application functions. As shown in FIG. 1 , it is a schematic structural diagram of a container application scheduling system on which the embodiments of the present application provided, where the container application scheduling system mainly includes a plurality of compute nodes and the container application scheduling apparatus configured for performing container application scheduling. In some embodiments, the container application scheduling apparatus acquires the image file information of the container application currently to be scheduled and the image file cache information of all the compute nodes, and then, determines, according to these pieces of information, the target compute node that might finally perform container application scheduling.
    [0054]The embodiments of the present application provide a container application scheduling method, configured for scheduling the container application for the distributed system. Execution subjects of the embodiments of the present application are electronic devices, such as servers, desktop computers, notebook computers, tablet computers, and other electronic devices that may be configured for container application scheduling.
    [0055]As shown in FIG. 2 , it is a flowchart of a container application scheduling method provided in the embodiments of the present application, where the method includes:
    [0056]Step 201 : acquire the image file information of the container application to be scheduled and the image file cache information of all the compute nodes.
    [0057]The image file cache information includes the local storage residual resources (residual space of the local magnetic disc) of the compute node and the cached container image layer file information.
    [0058]It should be noted that the image file information includes at least an ID identifier of the image file of the container application to be scheduled and an ID identifier and size of each layer file. The ID identifier of the image file and the ID identifier of the layer file might both be obtained by performing digest computation through a preset hash algorithm, and can characterize the description content of the file.
    [0059]In some embodiments, the container application scheduling method provided in the embodiments of the present application might be implemented based on a framework of a Kubernetes container orchestration engine. Therefore, the image file cache information of the compute node might be acquired based on a corresponding command of a local docker process of the compute node. The command is: docker manifest inspect name:tag.
    [0060]Step 202 : determine the local storage resource requirement of the container application for each compute node according to the image file information and the cached container image layer file information of each compute node.
    [0061]In some embodiments, the ID identifier of the cached container image layer file of each compute node might be determined according to the cached container image layer file information of each compute node, and then the container image layer file to be cached in each compute node is determined according to the ID identifier of the cached container image layer file of each compute node and the corresponding ID identifier of each layer file of the container application to be scheduled, thereby determining the local storage resource requirement of each compute node for the container application.
    [0062]In some embodiments, in an embodiment, the container image layer file information to be cached of each compute node might be determined according to the image file information and the cached container image layer file information of each compute node; and the local storage resource requirement of the container application for each compute node is determined according to the container image layer file information to be cached.
    [0063]The container image layer file information to be cached may be the ID identifier of the container image layer file to be cached, and then, the total size of all the container image layer files to be cached is computed for each compute node according to the ID identifier of the container image layer file to be cached and the ID identifier and size of each layer file (container image layer file) recorded in the image file information. The local storage resource requirement of the container application for the compute node is equal to the total size of all the container image layer files to be cached in the compute node.
    [0064]Exemplarily, the total size of all the container image layer files to be cached in the compute node might be determined according to the following formula:
    [0065]Total_size=image1_layerX_size+image1_layerY_size+ . . . +imageN_layerX_size+imageN_layerY_size
    [0066]where Total_size represents the total size of all the container image layer files to be cached, image1_layerX_size and image1_layerY_size represent the size of a layer file (container image layer file to be cached) that a container image image1 is not cached in the compute node, and similarly, imageN_layerX_size and imageN_layerY_size are the size of a layer file that imageN is not cached in the compute node.
    [0067]Step 203 : determine, according to the local storage resource requirement and the local storage residual resources of each compute node, the target compute node configured for performing container application scheduling.
    [0068]In some embodiments, by comparing a size relationship between the local storage resource requirement and the local storage residual resources of each compute node, it might be judged whether each compute node might cache the overall image of the container application to be scheduled or not, thereby determining the target compute node that might be configured for performing container application scheduling.
    [0069]On the basis of the above-mentioned embodiments, since there are generally a large number of compute nodes, a compute node that might cache the overall image of the container application to be scheduled is generally not unique. In order to improve the scheduling efficiency of the container application, as an implementable mode, in an embodiment, the determining, according to the local storage resource requirement and the local storage residual resources of each compute node, a target compute node configured for performing container application scheduling includes:
    [0070]Step 2031 : judge whether the local storage residual resources of each compute node are enough to meet the corresponding local storage resource requirements or not;
    [0071]Step 2032 : determine the compute nodes where the local storage residual resources are enough to meet the corresponding local storage resource requirements as candidate compute nodes;
    [0072]Step 2033 : determine the priority of each candidate compute node according to the size of the corresponding local storage resource requirement of each candidate compute node; and
    [0073]Step 2034 : determine a candidate compute node with the highest priority as the target compute node.
    [0074]In some embodiments, it is judged whether the local storage residual resources of each compute node are enough to meet the corresponding local storage resource requirements or not. If it is judged that the local storage residual resources of the compute node are enough to meet the corresponding local storage resource requirements, based on this judgment result, the compute nodes where the local storage residual resources are enough to meet the corresponding local storage resource requirements as the candidate compute nodes.
    [0075]In some embodiments, the compute nodes that might cache the overall image of the container application to be scheduled may be determined as the candidate compute nodes, and then the priority of each candidate compute node is determined according to the total size (local storage resource requirements) of the container image layer file to be cached in each candidate node. The lower the local storage resource requirement is, the higher the corresponding priority thereof is, that is, the candidate compute node with a minimum local storage resource requirement (highest priority) might be determined as the target compute node.
    [0076]The fewer container image layer files that the target compute node needs to pull, the higher the pulling efficiency. Therefore, this target compute node is beneficial for improving the scheduling efficiency of the container application.
    [0077]In some embodiments, in an embodiment, in order to avoid the occurrence of a hotspot compute node, and also in order to ensure compute node load balance, for each container image layer file to be cached in each candidate compute node, the ratio of the number of the compute nodes where the container image layer file to be cached has been cache-hit to the total number of the compute nodes might be determined as the weighting coefficient of the container image layer file to be cached; the priority of each candidate compute node is determined according to the size of each container image layer file to be cached in each candidate compute node and a corresponding weighting coefficient of each container image layer file to be cached.
    [0078]The compute node where cache-hit in some embodiments refers to a compute node where the cached container image layer file includes a container image layer file to be cached in another compute node.
    [0079]In some embodiments, a priority index of each candidate compute node might be computed according to the following formula:
    [0080]score=image1_layerX_size*nodeNum/totalNodeNum+ . . . +imageN_layerY_size *nodeNum/totalNodeNum
    [0081]where score represents the priority index, image1_layerX_size represents the size of one container image layer file to be cached in the candidate compute node, nodeNum represents the number of compute nodes where the container image layer file (such as image1_layerX) has been cache-hit, and totalNodeNum represents the total number of the compute nodes.
    [0082]In some embodiments, the larger the priority index score, the higher the corresponding priority, that is, the candidate compute node with the largest priority index score might be determined as the target compute node. The higher the weighting coefficient (the ratio of the number of the compute nodes where the container image layer file to be cached has been cache-hit to the total number of the compute nodes), the lower the corresponding hotness, and the larger the obtained priority index score, thereby achieving the effect of avoiding the occurrence of the hotspot compute node.
    [0083]On the basis of the above-mentioned embodiments, in order to further ensure the success rate of container application scheduling, as an implementable mode, in an embodiment, the method further includes:
    [0084]Step 301 : acquire a resource request of the container application to be scheduled and internal memory resource information of each compute node; and
    [0085]Step 302 : determine compute nodes to be filtered, according to the resource request of the container application to be scheduled and the internal memory resource information of each compute node.
    [0086]In some embodiments, compute nodes (compute nodes to be filtered) that does not meet internal memory resources and device characteristics might be filtered by employing an existing filter filtering algorithm of Kubernetes firstly according to a resource request (the resource request of the container application to be scheduled) issued by a user.
    [0087]Exemplarily, as shown in FIG. 3 , it is a schematic structural diagram of an exemplary container application scheduling system provided in an embodiment of the present application, and the distributed system applied by the embodiment of the present application includes a control node and a compute node, where the control node is configured for controlling the compute node in the system, and the compute node is configured for hosting a computing task. Each compute node includes a collection module, configured for collecting internal memory resource information and image file cache information of a corresponding compute node, and sending these pieces of collected information to a scheduling module, and the scheduling module might select, according to the received information, a target compute node configured for performing container application scheduling from these compute nodes. The control node includes a scheduling module configured for scheduling the container application. The scheduling module includes a filter and an optimizer, where the filter is configured for filtering out compute nodes where internal memory resources and local storage resources cannot meet container application scheduling requirements, and the optimizer is configured for selecting a target compute node from filtered compute nodes (candidate compute nodes).
    [0088]In some embodiments, in an embodiment, after the target compute node is determined, locating information of the target compute node might be acquired; the locating information is sent to a container application management center to enable the container application management center to issue, based on the locating information, a container application scheduling task to the target compute node.
    [0089]The locating information of the target compute node may include a name, an IP address and the like of the target compute node.
    [0090]In some embodiments, the locating information of the target compute node might be stored to a database of Kubernetes to enable the container application management center to locate the target compute node according to the locating information for subsequent other modules to perform subsequent scheduling flows.
    [0091]In some embodiments, in an embodiment, it might also be judged whether a container scheduling mode of the container application to be scheduled is multi-copy Pod scheduling or not; if yes, the corresponding target compute node is determined for each Pod, based on a pre-set compute node forced anti-affinity policy.
    [0092]In some embodiments, it might also be judged whether the container scheduling mode of the container application to be scheduled is multi-copy Pod scheduling or not. When it is judged that the container scheduling mode of the container application to be scheduled is multi-copy Pod scheduling, based on this judgment result, the corresponding target compute node is determined for each Pod, based on the pre-set compute node forced anti-affinity policy.
    [0093]In Kubernetes, starting is performed in units of Pod, and Pod is a container set. Therefore, a scheduling will include a plurality of container images.
    [0094]In some embodiments, for the container application where the container scheduling mode the multi-copy Pod scheduling, in order to guarantee high availability, same compute node scheduling should be avoided. Therefore, the compute node forced anti-affinity policy might be used in conjunction. A determination flow of the target compute node of each Pod may refer to the above-mentioned embodiments.
    [0095]Conversely, in an embodiment, if the container scheduling mode of the container application to be scheduled is single-copy Pod scheduling, a target compute node might be determined directly based on the above-mentioned embodiments to perform subsequent container application scheduling flows.
    [0096]In some embodiments, in the present application, it might be judged whether the container scheduling mode of the container application to be scheduled is multi-copy Pod scheduling or not. When it is judged that the container scheduling mode of the container application to be scheduled is single-copy Pod scheduling, based on this judgment result, one target compute node might be determined directly based on the above-mentioned embodiments to perform the subsequent container application scheduling flows.
    [0097]According to the container application scheduling method provided in the embodiments of the present application, the image file information of the container application to be scheduled and the image file cache information of all the compute nodes are acquired; where the image file cache information includes the local storage residual resources and the cached container image layer file information of the compute nodes; the local storage resource requirement of the container application for each compute node is determined according to the image file information and the cached container image layer file information of each compute node; and the target compute node configured for performing container application scheduling is determined according to the local storage resource requirement and the local storage residual resources of each compute node. According to the method provided in the above-mentioned solution, the target compute node is determined according to usage situations of the local storage resources of different compute nodes in order to ensure that the target compute node might cache the overall image of the container application to be scheduled, thereby improving the success rate of container application scheduling. Moreover, files cache-hit in the compute node is performed based on the container image layer file, rather than the entire container image, and thus, the cache-hit rate might be computed more accurately. Moreover, the local storage resources might be saved, the network overhead of pulling images might be reduced, the container scheduling efficiency might be improved, and the resource utilization might be improved.
    [0098]The embodiments of the present application provide a container application scheduling apparatus, configured for executing the container application scheduling method provided in the above-mentioned embodiments.
    [0099]As shown in FIG. 4 , it is a schematic structural diagram of a container application scheduling apparatus provided in the embodiments of the present application. The container application scheduling apparatus 40 includes: an acquisition module 401 , a determination module 402 and a scheduling module 403 .
    [0100]The acquisition module is configured for acquiring the image file information of the container application to be scheduled and the image file cache information of all the compute nodes; where the image file cache information includes the local storage residual resources and the cached container image layer file information of the compute nodes; the determination module is configured for determining the local storage resource requirement of the container application for each compute node according to the image file information and the cached container image layer file information of each compute node; and the scheduling module is configured for determining, according to the local storage resource requirement and the local storage residual resources of each compute node, the target compute node configured for performing container application scheduling.
    [0101]In some embodiments, in an embodiment, the determination module is in some embodiments configured for:
    [0102]determining the container image layer file information to be cached of each compute node according to the image file information and the cached container image layer file information of each compute node; determining the local storage resource requirement of the container application for each compute node according to the container image layer file information to be cached.
    [0103]In some embodiments, in an embodiment, the scheduling module is in some embodiments configured for
    [0104]judging whether the local storage residual resources of each compute node are enough to meet the corresponding local storage resource requirements or not; determining the compute nodes where the local storage residual resources are enough to meet the corresponding local storage resource requirements as the candidate compute nodes; determining the priority of each candidate compute node according to the size of the corresponding local storage resource requirement of each candidate compute node; and determining a candidate compute node with the highest priority as the target compute node.
    [0105]In some embodiments, in an embodiment, the scheduling module is in some embodiments configured for:
    [0106]determining, for each container image layer file to be cached in each candidate compute node, a ratio of the number of compute nodes where the container image layer file to be cached has been cache-hit to the total number of the compute nodes as a weighting coefficient of the container image layer file to be cached; determining the priority of each candidate compute node according to the size of each container image layer file to be cached in each candidate compute node and a corresponding weighting coefficient of each container image layer file to be cached.
    [0107]In some embodiments, in an embodiment, the container application scheduling apparatus further includes:
    [0108]a filtering module, configured for acquiring a resource request of a container application to be scheduled and internal memory resource information of each compute node; determining a compute node to be filtered, according to the resource request of the container application to be scheduled and the internal memory resource information of each compute node.
    [0109]In some embodiments, in an embodiment, the scheduling module is further configured for:
    [0110]acquiring the locating information of the target compute node; sending the locating information to a container application management center to enable the container application management center to issue, based on the locating information, a container application scheduling task to the target compute node.
    [0111]In some embodiments, in an embodiment, the scheduling module is further configured for:
    [0112]judging whether the container scheduling mode of the container application to be scheduled is multi-copy Pod scheduling or not; and if yes, determining, based on a pre-set compute node forced anti-affinity policy, the corresponding target compute node for each Pod.
    [0113]With respect to the container application scheduling apparatus in this embodiment, the specific way in which various modules execute operations has been described in details with respect to the embodiments of the method, which will not be described in details here.
    [0114]The container application scheduling apparatus provided in the embodiments of the present application is configured for executing the container application scheduling method provided in the above-mentioned embodiment, and its implementation mode and principle are same, which will not be repeated.
    [0115]The embodiments of the present application provide an electronic device, configured for executing the container application scheduling method provided in the above-mentioned embodiments.
    [0116]As shown in FIG. 5 , it is a schematic structural diagram of an electronic device provided in the embodiments of the present application. The electronic device 50 includes: at least one processor 51 and a storage device 52 . The memory stores therein computer-readable instructions that, when executed by one or more processors, cause the one or more processors to execute the container application scheduling method as provided in the above-mentioned embodiments.
    [0117]The embodiments of the present application provide an electronic device, configured for executing the container application scheduling method provided in the above-mentioned embodiments, and its implementation mode and principle are same, which will not be repeated.
    [0118]The embodiments of the present application further provide one or more non-transitory storage media storing computer-readable instructions that, when executed by one or more processors, cause the one or more processors to execute the container application scheduling method as provided in any of the above-mentioned embodiments.
    [0119]The storage medium including the computer-executable instructions of the embodiments of the present application might be configured for storing the computer-executable instructions of the container application scheduling method provided in the aforementioned embodiments, and its implementation mode and principle are same, which will not be repeated.
    [0120]In several embodiments provided in the present application, it should be understood that the disclosed apparatus and method may be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative. For example, the division of units is merely a logical function division, and there may be additional division ways in actual implementation. For example, a plurality of units or assemblies might be combined or integrated into another system, or some features may be omitted, or not executed. In another aspect, the displayed or discussed mutual couplings or direct couplings or communication connections may be implemented by using some interfaces. The indirect couplings or communication connections between the apparatuses or units might be implemented in electronic, mechanical or other forms.
    [0121]The units described as separate components may be or may not be physically separated, and the components displayed as units may be or may not be physical units, that is, they might be located in one place, or they might be distributed onto a plurality of network units. Some or all of the units might be selected according to the actual needs to achieve the purpose of this embodiment solution.
    [0122]In addition, all functional units in each embodiment of the present application might be integrated into one processing unit, or all the units might be present physically alone, or two or more units might be integrated into one unit. The above-mentioned integrated units might be implemented either in the form of hardware or in the form of hardware plus software functional units.
    [0123]The above-mentioned integrated unit implemented in the form of the software functional units might be stored in a computer-readable storage medium. The above-mentioned software functional units are stored in a storage medium, including several instructions for causing a computer device (which may be a personal computer, a server, a network device or the like) or a processor to execute some of the steps of the method of each embodiment of the present application. The aforementioned memory medium includes: a USB flash disk, an external hard drive, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disc, and various other media that might store program codes.
    [0124]Those skilled in the art might clearly understood that for the convenience and brevity of description, only the division of the above-mentioned functional modules is exemplified. In practical application, the above-mentioned functions might be allocated to and completed by different functional modules as needed. That is, an internal structure of the apparatus is divided into different functional modules to complete all or some of the functions described above. The detailed operation process of the apparatus described above may be referred to a corresponding process in the aforementioned method embodiments, which will not be repeated here.
    [0125]Finally, it should be noted that the above-mentioned embodiments are merely illustrative of the technical solution of the present application, and do not limit the same. While the present application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications might still be made to the technical solutions recorded in the above-mentioned embodiments, or equivalent substitutions might be made to some or all of the technical features, and these modifications or substitutions do not make the essence of the corresponding technical solution depart from the scope of the technical solution of each embodiment of the present application.
    同族专利
    暂无同族专利