KR102014246B1 - Mesos process apparatus for unified management of resource and method for the same - Google Patents

Mesos process apparatus for unified management of resource and method for the same Download PDF

Info

Publication number
KR102014246B1
KR102014246B1 KR1020170159396A KR20170159396A KR102014246B1 KR 102014246 B1 KR102014246 B1 KR 102014246B1 KR 1020170159396 A KR1020170159396 A KR 1020170159396A KR 20170159396 A KR20170159396 A KR 20170159396A KR 102014246 B1 KR102014246 B1 KR 102014246B1
Authority
KR
South Korea
Prior art keywords
resource
unit
mesos
resources
allocated
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
KR1020170159396A
Other languages
Korean (ko)
Other versions
KR20190061241A (en
Inventor
김선호
김기용
Original Assignee
주식회사 비디
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 비디 filed Critical 주식회사 비디
Priority to KR1020170159396A priority Critical patent/KR102014246B1/en
Publication of KR20190061241A publication Critical patent/KR20190061241A/en
Application granted granted Critical
Publication of KR102014246B1 publication Critical patent/KR102014246B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

리소스 통합관리를 위한 메소스 처리 장치는 적어도 하나의 CPU 엘리먼트, 적어도 하나의 GPU 엘리먼트와 적어도 하나의 메모리 엘리먼트를 리소스로서 포함하는 컴퓨팅 리소스 유닛, 상기 컴퓨팅 리소스 유닛에 관한 리소스 할당 요청에 따라 리소스 스케쥴링을 수행하여 태스크 정보를 생성하는 메소스 프레임워크 유닛(MESOS Framework Unit), 상기 컴퓨팅 리소스 유닛에 있는 리소스의 할당을 요청하고, 상기 할당 요청된 리소스 중 적어도 일부(이하, 할당 리소스)가 성공적으로 할당되어 해당 태스크 정보가 수신되면 상기 할당 리소스 전용의 도커 수행기를 통해 해당 태스크를 수행하는 메소스 슬레이브 유닛(MESOS Slave Unit) 및 상기 메소스 슬레이브 유닛으로부터 상기 리소스의 할당을 요청받으면 주어진 리소스 정책에 따라 상기 리소스의 할당을 결정하여 상기 메소스 프레임 워크 유닛에 통보하여 태스크들 간에 리소스 공유를 제어하는 메소스 마스터 유닛(MESOS Master Unit)을 포함한다.The resource processing apparatus for integrated resource management may include at least one CPU element, a computing resource unit including at least one GPU element and at least one memory element as resources, and resource scheduling according to a resource allocation request for the computing resource unit. A request for allocation of resources in the computing resource unit, and at least some of the requested resources (hereinafter, allocated resources) have been successfully allocated. When a corresponding task information is received, a request is made to allocate a resource from a Mesos slave unit that performs the task through a docker executor dedicated to the allocated resource and the meso slave unit. To determine the allocation of It includes methoxy source master unit (MESOS Master Unit) that controls the resources shared among the tasks to notify the mail source framework unit.

Description

리소스 통합관리를 위한 메소스 처리 장치 및 방법{MESOS PROCESS APPARATUS FOR UNIFIED MANAGEMENT OF RESOURCE AND METHOD FOR THE SAME}Mesos processing device and method for integrated resource management {MESOS PROCESS APPARATUS FOR UNIFIED MANAGEMENT OF RESOURCE AND METHOD FOR THE SAME}

본 발명은 리소스 관리 기술에 관한 것으로, 보다 상세하게는, GPU(graphic processing unit)를 포함하는 다양한 리소스들을 효율적으로 공유할 수 있는 리소스 통합관리를 위한 메소스 처리 장치 및 방법에 관한 것이다.The present invention relates to a resource management technology, and more particularly, to a method and an apparatus and method for resource integrated management capable of efficiently sharing various resources including a graphic processing unit (GPU).

메소스(Mesos) 기술은 데이터 센터 내의 자원에 관한 공유 및 격리를 관리하는 기술로서, 클러스터링 환경에서 동적으로 자원을 할당하고 격리해 주는 매커니즘을 기반으로 동작할 수 있다. 메소스 기술은 응용 프로그램에 맞는 최적의 자원을 할당하는 방식으로 공유된 기존 자원을 할당하여 응용 프로그램 간의 자원 간섭을 막아줌으로써 각 응용프로그램들의 독립적인 실행을 지원할 수 있다. 메소스 기술은 동적 클러스터 환경에서 다양한 작업들의 실행을 최적화할 수 있도록 다양한 방면으로 개발되고 있다.Mesos technology manages the sharing and isolation of resources within a data center and can operate based on a mechanism for dynamically allocating and isolating resources in a clustered environment. Mesos technology can support independent execution of each application by allocating existing shared resources by allocating the optimal resources for the application to prevent resource interference between the applications. Mesos technology is being developed in various ways to optimize the execution of various tasks in a dynamic cluster environment.

한국등록특허 제10-1781063호(2017.09.18)는 동적 자원 관리를 위한 2단계 자원 관리 방법 및 장치에 관한 것으로, 클러스터 시스템에서 실행하고자 하는 작업을 입력 받고, 상기 입력된 작업에 대응되는 제1 유휴작업을 생성하여 상기 생성된 제1 유휴작업에 대응되는 제1 가상 머신을 생성하고, 생성된 제1 가상 머신에서 상기 입력된 작업을 실행하고, 상기 입력된 작업이 실행되는 중, 상기 제1 가상 머신의 가상 노드의 자원 사용을 감시하여 상기 가상 노드가 과부하 또는 저부하 상태인 경우, 상기 가상 노드의 조정을 수행함으로써, 작업이 실행될 때 자원의 사용 상태에 따라서 동적으로 자원을 조정할 수 있도록 하여 시스템의 자원 활용 효율을 높이고, 자원 부족으로 인한 서비스의 성능 저하를 방지할 수 있다.Korean Patent No. 10-1781063 (2017.09.18) relates to a two-stage resource management method and apparatus for dynamic resource management, and receives a task to be executed in a cluster system, and receives a first task corresponding to the input task. Generating an idle task to generate a first virtual machine corresponding to the generated first idle task, executing the input task in the generated first virtual machine, and executing the input task By monitoring the resource usage of the virtual node of the virtual machine to adjust the virtual node when the virtual node is in an overloaded or lightly loaded state, the resource can be dynamically adjusted according to the resource usage state when the task is executed. It can improve the resource utilization efficiency of the system and prevent the degradation of service due to lack of resources.

한국공개특허 제10-2017-0088096호(2017.08.01)는 가상 클러스터 자원 분배 장치 및 방법에 관한 것으로, 복수개의 컴퓨트 노드들의 개수에 상응하는 복수개의 가상 머신(VIRTUAL MACHINE, VM)들을 생성하여 배치하는 것으로 가상 클러스터를 생성하는 자원 할당부 및 상기 가상 클러스터의 구성을 고려하여 상기 가상 클러스터를 더 생성하는 병렬 생성부를 포함한다.Korean Patent Publication No. 10-2017-0088096 (2017.08.01) relates to a virtual cluster resource distribution apparatus and method, and generates a plurality of virtual machines (VIRTUAL MACHINE, VM) corresponding to the number of a plurality of compute nodes It includes a resource allocation unit for generating a virtual cluster by placing and a parallel generation unit for generating the virtual cluster further in consideration of the configuration of the virtual cluster.

한국등록특허 제10-1781063호(2017.09.18)Korea Patent Registration No. 10-1781063 (2017.09.18) 한국공개특허 제10-2017-0088096호(2017.08.01)Korea Patent Publication No. 10-2017-0088096 (2017.08.01)

본 발명의 일 실시예는 GPU(graphic processing unit)를 포함하는 다양한 리소스들을 효율적으로 공유할 수 있는 리소스 통합관리를 위한 메소스 처리 장치 및 방법을 제공하고자 한다.An embodiment of the present invention is to provide an apparatus and method for processing a resource for integrated resource management that can efficiently share a variety of resources including a graphics processing unit (GPU).

본 발명의 일 실시예는 할당 리소스에 최적화된 리소스 컨테이너를 통해 리소스 공유 및 격리 효율을 향상시킬 수 있는 리소스 통합관리를 위한 메소스 처리 장치 및 방법을 제공하고자 한다.An embodiment of the present invention is to provide an apparatus and method for processing resources for integrated resource management that can improve resource sharing and isolation efficiency through a resource container optimized for allocation resources.

본 발명의 일 실시예는 GPU 리소스를 사용할 수 있고 각 노드의 일부 또는 전체 GPU 리소스를 사용 및 관리할 수 있는 리소스 통합관리를 위한 메소스 처리 장치 및 방법을 제공하고자 한다.An embodiment of the present invention is to provide a method and method for processing resources integrated resource management that can use the GPU resources and use and manage some or all of the GPU resources of each node.

실시예들 중에서, 리소스 통합관리를 위한 메소스 처리 장치는 적어도 하나의 CPU 엘리먼트, 적어도 하나의 GPU 엘리먼트와 적어도 하나의 메모리 엘리먼트를 리소스로서 포함하는 컴퓨팅 리소스 유닛, 상기 컴퓨팅 리소스 유닛에 관한 리소스 할당 요청에 따라 리소스 스케쥴링을 수행하여 태스크 정보를 생성하는 메소스 프레임워크 유닛(MESOS Framework Unit), 상기 컴퓨팅 리소스 유닛에 있는 리소스의 할당을 요청하고, 상기 할당 요청된 리소스 중 적어도 일부(이하, 할당 리소스)가 성공적으로 할당되어 해당 태스크 정보가 수신되면 상기 할당 리소스 전용의 도커 수행기를 통해 해당 태스크를 수행하는 메소스 슬레이브 유닛(MESOS Slave Unit) 및 상기 메소스 슬레이브 유닛으로부터 상기 리소스의 할당을 요청받으면 주어진 리소스 정책에 따라 상기 리소스의 할당을 결정하여 상기 메소스 프레임 워크 유닛에 통보하여 태스크들 간에 리소스 공유를 제어하는 메소스 마스터 유닛(MESOS Master Unit)을 포함하고, 상기 메소스 슬레이브 유닛은 상기 할당 리소스 전용의 도커 수행기가 상기 할당 리소스 중 적어도 하나의 특정 리소스를 사용할 수 있는 리소스 컨테이너를 인스턴스화 하여 상기 리소스 컨테이너의 라이프사이클을 관리할 수 있다.Among the embodiments, an apparatus for processing resources for integrated resource management may include a computing resource unit including at least one CPU element, at least one GPU element, and at least one memory element as a resource, and a resource allocation request for the computing resource unit. A MESOS Framework Unit (MESOS Framework Unit) for performing task scheduling to generate task information, requesting allocation of resources in the computing resource unit, and at least some of the requested allocation resources (hereinafter, allocating resources). Is successfully allocated and the corresponding resource information is received when a request is made to allocate the resource from a Mesos slave unit (MESOS Slave Unit) and the mesos slave unit performing the task through a docker executor dedicated to the allocated resource. Resource as per policy A Mesos Master Unit (MESOS Master Unit) for determining allocation and notifying the MesoS framework unit to control resource sharing among tasks, wherein the Meso Slave unit is assigned by the Docker performer dedicated to the allocated resource. A lifecycle of the resource container can be managed by instantiating a resource container that can use at least one specific resource among the resources.

상기 메소스 슬레이브 유닛은 상기 할당 리소스 전용의 도커 수행기를 수행기 내에 독립적 쓰레드로 생성할 수 있다.The method slave unit may create a docker performer dedicated to the allocated resource as an independent thread in the performer.

삭제delete

상기 메소스 슬레이브 유닛은 상기 리소스 컨테이너의 라이프사이클 과정에서 상기 리소스 컨테이너가 상기 해당 태스크 정보에 의해 명시되고 상기 할당 리소스의 동적 사용과 연관된 가상 리소스가 모두 사용되는지 여부를 확인할 수 있다.The method slave unit may determine whether the resource container is specified by the corresponding task information and all virtual resources associated with the dynamic use of the allocated resource are used in the life cycle of the resource container.

상기 메소스 슬레이브 유닛은 상기 가상 리소스가 모두 사용되는 경우에는 상기 할당 리소스 이외의 추가적인 리소스 증원을 상기 메소스 마스터 유닛에게 요청할 수 있다.The meso slave unit may request the meso master unit to increase additional resources other than the allocated resources when the virtual resources are used up.

상기 메소스 슬레이브 유닛은 상기 가상 리소스의 사용 비율이 특정 비율을 넘어서면 추가적인 리소스 증원을 결정하고, 하기 수학식을 기초로 상기 특정 비율을 동적 조정할 수 있다.The mesos slave unit may determine an additional resource increase when the usage ratio of the virtual resource exceeds a specific ratio and dynamically adjust the specific ratio based on the following equation.

[수학식][Equation]

Figure 112017117900303-pat00001
Figure 112017117900303-pat00001

(여기에서, 상기 r은 상기 특정 비율을 나타내고, 상기 r0는 1의 자리보다 작은 자리 값을 가진 0 보다 크고 1 보다 작은 소수로서, 설계자 또는 관리자에 의해 설정된 기준 비율을 나타내며, 상기 ncall은 상기 라이프사이클 과정에서 발생된 총 추가 리소스 증원 요청 횟수를 나타냄)(Where r represents the specific ratio, r 0 represents a reference ratio set by a designer or a manager as a prime number greater than 0 and less than 1 with a digit value less than 1 digit, and n call is Represents the total number of additional resource increase requests generated during the lifecycle process)

상기 메소스 슬레이브 유닛은 상기 리소스 컨테이너의 라이프사이클 과정에서 상기 리소스 컨테이너가 가상 리소스의 할당 위배를 야기하면 상기 할당 리소스 전용의 도커 수행기가 상기 할당 위배와 연관된 상기 할당 리소스 전용의 시스템 호출을 처리할 수 있다.If the resource container causes an allocation violation of a virtual resource in the lifecycle of the resource container, the method slave unit may process a system call dedicated to the allocation resource associated with the allocation violation, by a docker performer dedicated to the allocation resource. have.

상기 메소스 슬레이브 유닛은 상기 할당 리소스 전용의 시스템 호출 처리 과정에서 상기 리소스 컨테이너가 상기 메소스 마스터 유닛의 관여 없이 해당 리소스 엘리먼트에 관한 직접적 제어를 허용하도록 할 수 있다.The meso slave unit may allow the resource container to directly control the resource element without involvement of the meso master unit in a system call processing process dedicated to the allocated resource.

실시예들 중에서, 리소스 통합관리를 위한 메소스 처리 방법은 컴퓨팅 리소스 유닛이 적어도 하나의 CPU 엘리먼트, 적어도 하나의 GPU 엘리먼트와 적어도 하나의 메모리 엘리먼트를 리소스로서 준비하는 단계, 메소스 프레임워크 유닛이 상기 컴퓨팅 리소스 유닛에 관한 리소스 할당 요청에 따라 리소스 스케쥴링을 수행하여 태스크 정보를 생성하는 단계, 메소스 슬레이브 유닛이 상기 컴퓨팅 리소스 유닛에 있는 리소스의 할당을 요청하고, 상기 할당 요청된 리소스 중 적어도 일부(이하, 할당 리소스)가 성공적으로 할당되어 해당 태스크 정보가 수신되면 상기 할당 리소스 전용의 도커 수행기를 통해 해당 태스크를 수행하는 단계 및 메소스 마스터 유닛이 상기 메소스 슬레이브 유닛으로부터 상기 리소스의 할당을 요청받으면 주어진 리소스 정책에 따라 상기 리소스의 할당을 결정하여 상기 메소스 프레임 워크 유닛에 통보하여 태스크들 간에 리소스 공유를 제어하는 단계를 포함한다.Among the embodiments, the method for processing a method for integrated resource management, the computing resource unit preparing at least one CPU element, at least one GPU element and at least one memory element as a resource, the Meso framework framework unit is Generating task information by performing resource scheduling according to a resource allocation request for a computing resource unit, the method slave unit requesting an allocation of a resource in the computing resource unit, and performing at least some of the requested allocation resources (hereinafter, Performing a task through a docker executor dedicated to the allocated resource when the allocated resource) is successfully allocated and the corresponding task information is received, and when the resource master unit is requested to allocate the resource from the resource slave unit, According to the resource policy And a step of notification by the mail source framework unit determines the allocation of the resource control of the resources shared among the tasks.

실시예들 중에서, 기록매체는 리소스 통합관리를 위한 메소스 처리 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록하고 컴퓨터 판독 가능하다. 상기 기록매체에 있어서, 상기 리소스 통합관리를 위한 메소스 처리 방법은 컴퓨팅 리소스 유닛이 적어도 하나의 CPU 엘리먼트, 적어도 하나의 GPU 엘리먼트와 적어도 하나의 메모리 엘리먼트를 리소스로서 준비하는 단계, 메소스 프레임워크 유닛이 상기 컴퓨팅 리소스 유닛에 관한 리소스 할당 요청에 따라 리소스 스케쥴링을 수행하여 태스크 정보를 생성하는 단계, 메소스 슬레이브 유닛이 상기 컴퓨팅 리소스 유닛에 있는 리소스의 할당을 요청하고, 상기 할당 요청된 리소스 중 적어도 일부(이하, 할당 리소스)가 성공적으로 할당되어 해당 태스크 정보가 수신되면 상기 할당 리소스 전용의 도커 수행기를 통해 해당 태스크를 수행하는 단계 및 메소스 마스터 유닛이 상기 메소스 슬레이브 유닛으로부터 상기 리소스의 할당을 요청받으면 주어진 리소스 정책에 따라 상기 리소스의 할당을 결정하여 상기 메소스 프레임 워크 유닛에 통보하여 태스크들 간에 리소스 공유를 제어하는 단계를 포함한다.Among the embodiments, the recording medium is computer readable and records a program for executing a method of processing a method for integrated resource management on a computer. In the recording medium, the method of processing a method for integrated resource management, the computing resource unit comprises the steps of preparing at least one CPU element, at least one GPU element and at least one memory element as a resource, Meso framework unit Generating task information by performing resource scheduling according to the resource allocation request for the computing resource unit, the method slave unit requesting an allocation of a resource in the computing resource unit, and at least a part of the allocation requested resource Performing a task through a docker executor dedicated to the allocated resource and requesting an allocation of the resource from the meso slave unit Received if given Depending on the policy, it determines the allocation of the resources to notify the mail source framework unit and a step of controlling the resources shared among the tasks.

개시된 기술은 다음의 효과를 가질 수 있다. 다만, 특정 실시예가 다음의 효과를 전부 포함하여야 한다 거나 다음의 효과만을 포함하여야 한다는 의미는 아니므로, 개시된 기술의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.The disclosed technique can have the following effects. However, since a specific embodiment does not mean to include all of the following effects or only the following effects, it should not be understood that the scope of the disclosed technology is limited by this.

본 발명의 일 실시예에 따른 리소스 통합관리를 위한 메소스 처리 장치 및 방법은 GPU(graphic processing unit)를 포함하는 다양한 리소스들을 효율적으로 공유할 수 있다.The method and apparatus for processing resources for integrated resource management according to an embodiment of the present invention can efficiently share various resources including a graphic processing unit (GPU).

본 발명의 일 실시예에 따른 리소스 통합관리를 위한 메소스 처리 장치 및 방법은 할당 리소스에 최적화된 리소스 컨테이너를 통해 리소스 공유 및 격리 효율을 향상시킬 수 있다.The method and apparatus for processing resources for integrated resource management according to an embodiment of the present invention can improve resource sharing and isolation efficiency through a resource container optimized for allocation resources.

본 발명의 일 실시예에 따른 리소스 통합관리를 위한 메소스 처리 장치 및 방법은 GPU 리소스를 사용할 수 있고 각 노드의 일부 또는 전체 GPU 리소스를 사용 및 관리할 수 있다.The method and apparatus for processing resources for integrated resource management according to an embodiment of the present invention may use GPU resources and use and manage some or all GPU resources of each node.

도 1은 본 발명의 일 실시예에 따른 리소스 통합관리를 위한 메소스 처리 장치를 설명하는 도면이다.
도 2는 도 1에 있는 리소스 통합관리를 위한 메소스 처리 장치를 보다 상세히 설명하기 위한 일 실시 도면이다.
도 3은 도 2에 있는 할당 리소스 전용의 도커 수행기의 구조 및 논리적 실행 구조를 설명하기 위한 도면이다.
도 4는 도 1에 있는 리소스 통합관리를 위한 메소스 처리 장치가 리소스 통합관리를 수행하는 과정을 설명하는 흐름도이다.
FIG. 1 is a diagram illustrating an apparatus for processing a method for integrated resource management according to an exemplary embodiment of the present invention.
FIG. 2 is a diagram illustrating an example of a method of processing a method for resource integrated management in FIG. 1 in more detail.
FIG. 3 is a diagram for describing a structure and a logical execution structure of a docker performer dedicated to allocation resources in FIG. 2.
FIG. 4 is a flowchart illustrating a process of performing resource integrated management by a method source processing apparatus for resource integrated management in FIG. 1.

본 발명에 관한 설명은 구조적 내지 기능적 설명을 위한 실시예에 불과하므로, 본 발명의 권리범위는 본문에 설명된 실시예에 의하여 제한되는 것으로 해석되어서는 아니 된다. 즉, 실시예는 다양한 변경이 가능하고 여러 가지 형태를 가질 수 있으므로 본 발명의 권리범위는 기술적 사상을 실현할 수 있는 균등물들을 포함하는 것으로 이해되어야 한다. 또한, 본 발명에서 제시된 목적 또는 효과는 특정 실시예가 이를 전부 포함하여야 한다 거나 그러한 효과만을 포함하여야 한다는 의미는 아니므로, 본 발명의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.Description of the present invention is only an embodiment for structural or functional description, the scope of the present invention should not be construed as limited by the embodiments described in the text. That is, since the embodiments may be variously modified and may have various forms, the scope of the present invention should be understood to include equivalents capable of realizing the technical idea. In addition, the objects or effects presented in the present invention does not mean that a specific embodiment should include all or only such effects, the scope of the present invention should not be understood as being limited thereby.

한편, 본 출원에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다.On the other hand, the meaning of the terms described in the present application should be understood as follows.

"제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.Terms such as "first" and "second" are intended to distinguish one component from another component, and the scope of rights should not be limited by these terms. For example, the first component may be named a second component, and similarly, the second component may also be named a first component.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결될 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어"있다고 언급된 때에는 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 한편, 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에" 와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.When a component is referred to as being "connected" to another component, it should be understood that there may be other components in between, although it may be directly connected to the other component. On the other hand, when a component is referred to as being "directly connected" to another component, it should be understood that there is no other component in between. On the other hand, other expressions describing the relationship between the components, such as "between" and "immediately between" or "neighboring to" and "directly neighboring", should be interpreted as well.

단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "포함하다" 또는 "가지다" 등의 용어는 실시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.Singular expressions should be understood to include plural expressions unless the context clearly indicates otherwise, and terms such as "comprise" or "have" refer to a feature, number, step, operation, component, part or implementation thereof. It is to be understood that the combination is intended to be present and does not exclude in advance the possibility of the presence or addition of one or more other features or numbers, steps, operations, components, parts or combinations thereof.

각 단계들에 있어 식별부호(예를 들어, a, b, c 등)는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 일어날 수 있다. 즉, 각 단계들은 명기된 순서와 동일하게 일어날 수도 있고 실질적으로 동시에 수행될 수도 있으며 반대의 순서대로 수행될 수도 있다.In each step, an identification code (e.g., a, b, c, etc.) is used for convenience of description, and the identification code does not describe the order of the steps, and each step clearly indicates a specific order in context. Unless stated otherwise, they may occur out of the order noted. That is, each step may occur in the same order as specified, may be performed substantially simultaneously, or may be performed in the reverse order.

본 발명은 컴퓨터가 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현될 수 있고, 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.The present invention can be embodied as computer readable code on a computer readable recording medium, and the computer readable recording medium includes all kinds of recording devices in which data can be read by a computer system. . Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage device, and the like. The computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.

여기서 사용되는 모든 용어들은 다르게 정의되지 않는 한, 본 발명이 속하는 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한 이상적이거나 과도하게 형식적인 의미를 지니는 것으로 해석될 수 없다.All terms used herein have the same meaning as commonly understood by one of ordinary skill in the art unless otherwise defined. Generally, the terms defined in the dictionary used are to be interpreted to coincide with the meanings in the context of the related art, and should not be interpreted as having ideal or excessively formal meanings unless clearly defined in the present application.

도 1은 본 발명의 일 실시예에 따른 리소스 통합관리를 위한 메소스 처리 장치를 설명하는 도면이다.FIG. 1 is a diagram illustrating an apparatus for processing a method for integrated resource management according to an exemplary embodiment of the present invention.

도 1을 참조하면, 리소스 통합관리를 위한 메소스 처리 장치(100)는 컴퓨팅 리소스 유닛(110), 메소스 프레임워크 유닛(MESOS Framework Unit)(120), 메소스 슬레이브 유닛(MESOS Slave Unit)(130) 및 메소스 마스터 유닛(MESOS Master Unit)(140)를 포함한다.Referring to FIG. 1, the mesos processing apparatus 100 for integrated resource management includes a computing resource unit 110, a mesos framework unit 120, and a mesos slave unit (MESOS Slave Unit) ( 130 and a MESOS Master Unit 140.

컴퓨팅 리소스 유닛(110)은 적어도 하나의 CPU 엘리먼트(112), 적어도 하나의 GPU 엘리먼트(114)와 적어도 하나의 메모리 엘리먼트(116)를 리소스로서 포함한다.Computing resource unit 110 includes at least one CPU element 112, at least one GPU element 114, and at least one memory element 116 as a resource.

적어도 하나의 CPU(central processing unit) 엘리먼트(112) 각각은 리소스로서 특정 메소스 슬레이브 유닛(130)에 할당되면 해당 메소스 슬레이브 유닛(130)과 연관된 태스크를 독립적으로 처리 및 수행할 수 있는 프로세서로 구현될 수 있다.Each of the at least one central processing unit (CPU) element 112 is a processor capable of independently processing and performing a task associated with the corresponding meso slave unit 130 when allocated to a particular meso slave unit 130 as a resource. Can be implemented.

적어도 하나의 GPU(graphic processing unit) 엘리먼트(114) 각각은 각각은 리소스로서, 일 실시예에서, 특정 메소스 슬레이브 유닛(130)에 할당되면 해당 메소스 슬레이브 유닛(130)과 연관된 태스크의 수행 과정에서 해당 태스크와 연관된 그래픽 연산 전용의 프로세서로 구현될 수 있다.Each of the at least one graphic processing unit (GPU) element 114 is a resource, and in one embodiment, when assigned to a specific method slave unit 130, a process of performing a task associated with the method method slave unit 130. It can be implemented as a processor dedicated to graphics operations associated with the task in the.

적어도 하나의 메모리 엘리먼트(116) 각각은 리소스로서 특정 메소스 슬레이브 유닛(130)에 할당되면 해당 메소스 슬레이브 유닛(130)과 연관된 태스크의 수행 과정에서 생성되거나 필요한 데이터 전반을 저장하는데 사용될 수 있고, 보조기억장치로서 기능할 수 있는 비휘발성 메모리 및 주기억장치로서 기능할 수 있는 주기억장치 중 적어도 하나를 통해 구현될 수 있다.Each of the at least one memory element 116 may be used to store overall data generated or necessary in the course of performing a task associated with the corresponding method slave unit 130 when allocated to a specific method slave unit 130 as a resource. The memory device may be implemented through at least one of a nonvolatile memory that may function as an auxiliary memory device and a main memory device that may function as a main memory device.

메소스 프레임워크 유닛(120)은 컴퓨팅 리소스 유닛(110)에 관한 리소스 할당 요청에 따라 리소스 스케쥴링을 수행하여 태스크 정보를 생성한다. 일 실시예에서, 메소스 프레임워크 유닛(120)은 메소스 마스터 유닛(140)으로부터 특정 메소스 슬레이브 유닛(130)과 연관되고 해당 메소스 프레임워크 유닛(120)에서 실행 가능한 컴퓨팅 리소스 유닛(110) 중 적어도 일부의 리소스 요청량을 포함하는 리소스 할당 요청을 수신할 수 있고, 예를 들어, 메소스 슬레이브 유닛 식별자(identifier) 및 리소스별 요청 할당량을 포함하는 리소스 할당 요청을 수신할 수 있다. 일 실시예에서, 리소스 할당 요청은 특정 시간 구간으로 지정된 리소스 할당 예약시간 및 최소 리소스 할당 요청량을 더 포함할 수 있다.The meso framework framework unit 120 performs resource scheduling according to the resource allocation request for the computing resource unit 110 to generate task information. In one embodiment, the Mesos framework unit 120 is associated with a particular Mesos slave unit 130 from the Mesos master unit 140 and is a computing resource unit 110 executable in the Mesos framework unit 120. ) May receive a resource allocation request including a resource request amount of at least a portion, and, for example, may receive a resource allocation request including a method slave unit identifier and a resource-specific request quota. In one embodiment, the resource allocation request may further include a resource allocation reservation time and a minimum resource allocation request amount designated in a specific time interval.

메소스 프레임워크 유닛(120)은 수신된 리소스 할당 요청을 기초로 실행하고자 하는 적어도 하나의 태스크 정보 및 해당 태스크별 필요 리소스 정보를 생성하는 리소스 스케쥴링을 수행할 수 있다. 메소스 프레임워크 유닛(120)은 수신된 리소스 할당 요청 중 적어도 일부 조건을 충족시키는 리소스 스케줄링을 통해 생성된 태스크 정보 및 해당 필요 리소스 정보를 메소스 마스터 유닛(140)에 전송할 수 있다.The meso framework framework 120 may perform resource scheduling to generate at least one task information to be executed and necessary resource information for each task, based on the received resource allocation request. The meso framework framework unit 120 may transmit, to the meso master unit 140, task information and corresponding necessary resource information generated through resource scheduling satisfying at least some conditions of the received resource allocation request.

일 실시예에서, 메소스 프레임워크 유닛(120)은 리소스 할당 요청이 수신되면 전체 가용 리소스 정보(예를 들어, CPU 20개, GPU 20개 및 메모리 200GB)와 현재 리소스 이용 상황(예를 들어, 현재 CPU 5개, GPU 3개 및 메모리 50GB 공유 중)을 분석하여 가용 리소스 정보(예를 들어, 현재 CPU 15개, GPU 17개 및 메모리 150GB 신규 할당 가능)를 검출할 수 있고, 검출된 가용 리소스 정보를 기초로 해당 리소스 할당 요청에 대응되는 리소스 할당을 위한 리소스 스케줄링을 수행할 수 있다.In one embodiment, the MesoS framework unit 120, upon receipt of a resource allocation request, receives all available resource information (e.g., 20 CPUs, 20 GPUs, and 200GB of memory) and a current resource usage situation (e.g., Analyzing available resource information (for example, 15 current CPUs, 17 GPUs, and 150GB new allocation of memory) by analyzing five CPUs, three GPUs, and 50GB of shared memory, and detected detected resources Resource scheduling for resource allocation corresponding to the resource allocation request may be performed based on the information.

메소스 슬레이브 유닛(130)은 컴퓨팅 리소스 유닛(110)에 있는 리소스의 할당을 요청할 수 있다. 보다 구체적으로, 메소스 슬레이브 유닛(130)은 메소스 마스터 유닛(140)에 자신이 사용하고자 하는 리소스 정보(예를 들어, CPU 5개, 메모리 20GB)를 전송하여 해당 리소스 정보에 대응되는 리소스의 할당을 요청할 수 있다. 일 실시예에서, 메소스 슬레이브 유닛(130)은 복수 개로 구성된 메소스 마스터 유닛(140) 중 대기 상태에 있는 하나에게 리소스 할당을 요청할 수 있다.The mesos slave unit 130 may request allocation of resources in the computing resource unit 110. More specifically, the mesos slave unit 130 transmits resource information (for example, five CPUs and 20 GB of memory) to be used by the mesos master unit 140 to determine the resource corresponding to the resource information. You can request an assignment. In one embodiment, the mesos slave unit 130 may request resource allocation from one of the plurality of mesos master units 140 in the standby state.

메소스 슬레이브 유닛(130)은 할당 요청된 리소스 중 적어도 일부(이하, 할당 리소스)가 성공적으로 할당되어 해당 태스크 정보가 수신되면 할당 리소스 전용의 도커 수행기(docker executor)(212)를 통해 해당 태스크를 수행한다. 이러한 내용은 도 2를 참조하여 보다 상세히 서술하도록 한다.When at least some of the requested resources (hereinafter, allocated resources) are successfully allocated and the corresponding task information is received, the method slave unit 130 performs the task through a docker executor 212 dedicated to the allocated resources. Perform. This will be described in more detail with reference to FIG. 2.

도 2는 도 1에 있는 리소스 통합관리를 위한 메소스 처리 장치를 보다 상세히 설명하기 위한 일 실시 도면이다.FIG. 2 is a diagram illustrating an example of a method of processing a method for resource integrated management in FIG. 1 in more detail.

도 2에서, 메소스 슬레이브 유닛(130)은 메소스 마스터 유닛(140)으로부터 메소스 프레임워크 유닛(120)에 의해 생성된 리소스 스케줄링 정보를 수신할 수 있고, 해당 리소스 스케줄링 정보에 있는 적어도 하나의 태스크를 메소스 에이전트를 통해 실행시킬 수 있다.In FIG. 2, the mesos slave unit 130 may receive resource scheduling information generated by the mesos framework unit 120 from the mesos master unit 140, and may include at least one of the resource scheduling information. Tasks can be run through the Mesos agent.

도 2를 참조하면, 메소스 슬레이브 유닛(130)은 메소스 에이전트 각각을 실행시키기 위한 수행기(executor)(210)를 포함하고, 수행기(210)는 할당 리소스 전용의 도커 수행기(212), 메소스 수행기(MESOS executor)(214) 및 도커 수행기(216)를 포함할 수 있다.Referring to FIG. 2, the Mesos slave unit 130 includes an executor 210 for executing each Mesos agent, and the executor 210 includes a docker executor 212 and a mesos dedicated to allocated resources. It may include a MESOS executor 214 and a docker executor 216.

일 실시예에서, 할당 리소스 전용의 도커 수행기(212)는 Nvidia-docker를 이용하여 수행될 수 있고, 예를 들어, 메소스 수행 모듈을 기본적으로 사용하며 메소스 컨테이너 환경 하에서 리소스 컨테이너 환경을 구축할 수 있다. 일 실시예에서, 메소스 수행기(214)는 cgroup을 이용하여 수행될 수 있고, 도커 수행기(216)는 docker를 이용하여 수행될 수 있다.In one embodiment, the docker performer 212 dedicated to allocated resources may be performed using Nvidia-docker, for example, using the Mesos execution module by default and building a resource container environment under the Mesos container environment. Can be. In one embodiment, the Mesos executor 214 may be performed using a cgroup, and the docker executor 216 may be performed using a docker.

할당 리소스 전용의 도커 수행기(212)는 메소스 마스터 유닛(140)의 제어 하에 메소스 슬레이브 유닛(130) 상에서 런칭되어 수신된 리소스 스케줄링 정보에서 우선적으로 스케줄된 태스크 정보 순으로 태스크들을 순차 수행할 수 있다.The docker performer 212 dedicated to the allocated resources may be launched on the Mesos slave unit 130 under the control of the Mesos master unit 140 and sequentially perform tasks in order of the scheduled task information based on the received resource scheduling information. have.

메소스 슬레이브 유닛(130)은 할당 리소스 전용의 도커 수행기(212)를 수행기(210) 내에 독립적 쓰레드로 생성할 수 있고, 예를 들어, 수행기(210) 내에 메소스 수행기(214) 및 도커 수행기(216)에 독립적인 쓰레드로서 생성될 수 있다.The Mesos slave unit 130 may create a docker performer 212 dedicated to allocated resources as an independent thread in the performer 210, for example, in the performer 210, the mesos performer 214 and the docker performer ( 216 can be created as a thread independent.

메소스 슬레이브 유닛(130)은 할당 리소스 전용의 도커 수행기(212)가 리소스 컨테이너(resource container)(210)를 인스턴스화 하여 리소스 컨테이너(310)의 라이프사이클을 관리할 수 있다. 이러한 내용은 도 3를 참조하여 보다 상세히 설명하도록 한다.In the method slave unit 130, a docker performer 212 dedicated to allocated resources may instantiate a resource container 210 to manage a life cycle of the resource container 310. This will be described in more detail with reference to FIG. 3.

도 3은 도 2에 있는 할당 리소스 전용의 도커 수행기의 구조 및 논리적 실행 구조를 설명하기 위한 도면이다.FIG. 3 is a diagram for describing a structure and a logical execution structure of a docker performer dedicated to allocation resources in FIG. 2.

도 3을 참조하면, 할당 리소스 전용의 도커 수행기(212)는 메소스 수행 모듈, CLI(Command Line Interface) 생성 모듈 및 할당 리소스 전용의 도커 수행 모듈을 포함할 수 있다.Referring to FIG. 3, the docker performer 212 dedicated to allocated resources may include a method source module, a command line interface (CLI) generation module, and a docker perform module dedicated to allocated resources.

할당 리소스 전용의 도커 수행기(212)는 할당 리소스 중 적어도 하나의 특정 리소스(예를 들어, GPU)를 사용할 수 있는 리소스 컨테이너(310)를 생성할 수 있고, 생성된 리소스 컨테이너(310)를 인스턴스화하여 리소스 컨테이너(310)의 라이프사이클을 관리할 수 있다. 일 실시예에서, 할당 리소스 전용의 도커 수행기(212)는 메소스 에이전트의 수행 과정에서 특정 에이전트 노드에 해당 리소스 스케줄링에 따른 적어도 하나의 리소스 컨테이너(310)를 인스턴스화하고 해당 리소스 컨테이너(310)를 통해 어플리케이션을 실행시킬 수 있으며, 이러한 과정 전반에서 런(run), 킬(kill) 및 모니터링(monitoring)을 포함하는 라이프사이클 과정을 통해 해당 리소스 컨테이너(310)를 관리할 수 있다. 예를 들어, 할당 리소스 전용의 도커 수행기(212)는 요청된 리소스 할당 요청에 따라 제1 및 제2 태스크와 해당 태스크에 따른 리소스가 할당되었다면 제1 리소스 컨테이너(310a)를 통해 해당 제1 어플리케이션을 런한 후에 제1 태스크의 수행을 모니터링하고 해당 수행이 종료되면 제1 리소스 컨테이너(310a)를 킬한 후에 제2 리소스 컨테이너(310b)를 통해 해당 제2 어플리케이션을 런하는 등의 라이프사이클 과정을 제어할 수 있다.The docker performer 212 dedicated to the allocated resources may create a resource container 310 that can use at least one specific resource (eg, GPU) of the allocated resources, and instantiate the generated resource container 310 to The life cycle of the resource container 310 may be managed. In one embodiment, the docker performer 212 dedicated to the allocated resources instantiates at least one resource container 310 according to the scheduling of the corresponding resource to a specific agent node during the execution of the Mesos agent and through the corresponding resource container 310. An application may be executed, and the resource container 310 may be managed through a lifecycle process including run, kill, and monitoring. For example, the docker performer 212 dedicated to allocation resources may allocate the first application through the first resource container 310a if the first and second tasks and resources according to the task are allocated according to the requested resource allocation request. After the execution, the performance of the first task may be monitored, and if the execution is completed, the first resource container 310a may be killed, and then the life cycle process of running the second application may be controlled through the second resource container 310b. have.

메소스 슬레이브 유닛(130)은 리소스 컨테이너(310)의 라이프사이클 과정에서 리소스 컨테이너(310)가 해당 태스크 정보에 의해 명시되고 할당 리소스의 동적 사용과 연관된 가상 리소스가 모두 사용되는지 여부를 확인할 수 있다. 예를 들어, 메소스 슬레이브 유닛(130)은 해당 태스크를 위해 10개의 CPU 엘리먼트(112), 10개의 GPU 엘리먼트(114) 및 100GB의 메모리 엘리먼트(116)의 리소스 할당을 요청하였으나 실제로 상기 순서로 7개, 7개 및 70GB의 리소스를 할당받았다면, 실제 할당된 리소스들(7개, 7개 및 70GB)과 가상 리소스들(10개, 10개 및 100GB) 간의 매핑을 통해 실제 요청량보다 부족한 3개, 3개 및 30GB의 리소스가 할당된 리소스들 중 적어도 일부에 중첩 매핑될 수 있고, 메소스 마스터 유닛(140)을 통해 해당 가상 리소스가 모두 사용되는지 여부를 확인할 수 있다. 해당 실시예에서, 메소스 프레임워크 유닛(120)은 해당 가상 리소스와 실제 할당 리소스 간의 매핑을 수행할 수 있고, 메소스 마스터 유닛(140)은 이러한 매핑 결과를 수신하여 관리할 수 있다.The method slave unit 130 may check whether the resource container 310 is specified by the task information and all virtual resources associated with the dynamic use of the allocated resource are used during the life cycle of the resource container 310. For example, the Mesos slave unit 130 requested resource allocation of 10 CPU elements 112, 10 GPU elements 114, and 100 GB of memory elements 116 for the task, but in fact the order was 7 , 7, and 70 GB of resources, if less than the actual request amount, can be achieved by mapping between the actual allocated resources (7, 7, and 70 GB) and virtual resources (10, 10, and 100 GB). , Three, and 30 GB resources may be mapped to at least some of the allocated resources, and the meso master unit 140 may determine whether all of the corresponding virtual resources are used. In this embodiment, the Mesos framework unit 120 may perform mapping between the virtual resource and the actual allocated resource, and the Mesos master unit 140 may receive and manage the mapping result.

메소스 슬레이브 유닛(130)은 해당 가상 리소스가 모두 사용되는 경우에는 해당 할당 리소스 이외의 추가적인 리소스 증원을 메소스 마스터 유닛(140)에게 요청할 수 있다. 예를 들어, 메소스 슬레이브 유닛(130)은 실제 할당 리소스들과 매핑된 모든 가상 리소스들이 사용되는 경우에는 추가적인 리소스가 필요한 것으로 판단할 수 있다.The meso slave unit 130 may request the meso master unit 140 for additional resource increase other than the corresponding allocated resource when all the virtual resources are used. For example, the mesos slave unit 130 may determine that additional resources are needed when all virtual resources mapped with actual allocation resources are used.

일 실시예에서, 메소스 슬레이브 유닛(130)은 해당 가상 리소스의 사용 비율이 특정 비율을 넘어서면 추가적인 리소스 증원을 메소스 마스터 유닛(140)에게 요청할 수 있고, 하기의 수학식 1을 기초로 특정 비율을 동적으로 조정할 수 있다.In one embodiment, the Mesos slave unit 130 may request the Mesos master unit 140 for additional resource increase if the usage rate of the corresponding virtual resource exceeds a certain rate, and may be specified based on Equation 1 below. The ratio can be adjusted dynamically.

[수학식 1][Equation 1]

Figure 112017117900303-pat00002
Figure 112017117900303-pat00002

(여기에서, r은 특정 비율을 나타내고, r0는 1의 자리보다 작은 자리 값을 가진 0 보다 크고 1 보다 작은 소수로서, 설계자 또는 관리자에 의해 설정된 기준 비율(예를 들어, 0.9)을 나타내며, ncall은 해당 라이프사이클 과정에서 발생된 총 추가 리소스 증원 요청 횟수를 나타냄)(Where r represents a specific ratio, r 0 is a prime number greater than 0 and less than 1 with a place value less than 1 place, representing a reference rate set by the designer or administrator (eg, 0.9), n call represents the total number of additional resource augmentation requests that occurred during the lifecycle)

메소스 슬레이브 유닛(130)은 리소스 컨테이너(310)의 라이프사이클 과정에서 해당 리소스 컨테이너(310)가 가상 리소스의 할당 위배를 야기하면 할당 리소스 전용의 도커 수행기(212)가 해당 할당 위배와 연관된 할당 리소스 전용의 시스템 호출을 처리할 수 있다. 예를 들어, 메소스 슬레이브 유닛(130)은 7개의 CPU 엘리먼트(112), 7개의 GPU 엘리먼트(114) 및 70GB의 메모리 엘리먼트(116)를 리소스로서 할당받은 상태에서 해당 리소스와 기준 값 이상 연관되지 않은 다른 리소스에 대한 접근이 시도되면 가상 리소스의 할당 위배가 야기된 것으로 판단할 수 있고, 새로운 프로세스 또는 태스크의 수행을 위한 할당 리소스 전용의 시스템(예를 들어, 새로운 그래픽 연산) 호출 요청으로서 인지할 수 있다.If the resource container 310 causes an allocation violation of a virtual resource during the lifecycle of the resource container 310, the method slave unit 130 allocates the assigned resource associated with the docker performer 212 dedicated to the allocation violation. Dedicated system calls can be handled. For example, the Mesos slave unit 130 is assigned with seven CPU elements 112, seven GPU elements 114, and 70 GB of memory elements 116 as resources, and is not associated with the resource above the reference value. If an attempt is made to access another resource that has not been accessed, it may be determined that an allocation violation of the virtual resource has been caused, and that it is recognized as a system (eg, a new graphical operation) call request dedicated to the allocated resource for the execution of a new process or task. Can be.

메소스 슬레이브 유닛(130)은 할당 리소스 전용의 시스템 호출 처리 과정에서 리소스 컨테이너(310)가 메소스 마스터 유닛(140)의 관여 없이 해당 리소스 엘리먼트에 관한 직접적 제어를 허용하도록 할 수 있다.The mesos slave unit 130 may allow the resource container 310 to directly control the resource element without the involvement of the mesos master unit 140 in the system call processing dedicated to the allocated resource.

예를 들어, 메소스 슬레이브 유닛(130)은 할당 리소스 전용의 시스템의 호출에 따라 획득된 임시적 직접제어권한을 기초로 해당 리소스 컨테이너(310)가 해당 할당 위배와 연관된 리소스 엘리먼트(예를 들어, CPU 엘리먼트(110))에 대해 한정적인 직접적 제어를 수행하여 미리 설정된 특정 기준 범위 내에서 추가적인 리소스를 증원하도록 할 수 있다.For example, the MesoSlave unit 130 is a resource element (e.g., a CPU) associated with the violation of the allocation based on the temporary direct control authority acquired according to a system call dedicated to the allocation resource. Limited direct control of element 110 may be performed to augment additional resources within a particular predetermined reference range.

다른 예를 들어, 메소스 슬레이브 유닛(130)은 할당 리소스 전용의 시스템의 호출 과정에서 메소스 마스터 유닛(140)에 특정 리소스 엘리먼트에 관한 가상 리소스의 할당 위배 여부를 전송하여 메소스 마스터 유닛(140)이 해당 리소스 엘리먼트에 관해 해당 리소스 컨테이너(310)에 의한 직접적 제어를 허용하도록 요청할 수 있고, 리소스 컨테이너(310)는 해당 허용에 따라 해당 할당 위배와 연관된 리소스 엘리먼트에 대해 비한정적인 직접 제어를 수행하여 미리 설정된 특정 기준 범위 내에서 추가적인 리소스를 증원할 수 있다.For another example, the Mesos slave unit 130 transmits whether the allocation of a virtual resource for a specific resource element is violated to the Mesos master unit 140 during the call of the system dedicated to the allocated resource, and thus the Mesos master unit 140. ) May request direct control by the resource container 310 on the resource element, and the resource container 310 performs non-limiting direct control on the resource element associated with the allocation violation according to the permission. This allows additional resources to be increased within a specific preset range.

메소스 마스터 유닛(140)은 메소스 슬레이브 유닛(130)으로부터 리소스의 할당을 요청받으면 주어진 리소스 정책에 따라 리소스의 할당을 결정하여 메소스 프레임 워크 유닛(120)에 통보하여 태스크들 간에 리소스 공유를 제어한다. 일 실시예에서, 메소스 마스터 유닛(140)은 리소스 할당 요청이 수신되면 기 저장된 리소스 정책을 기초로 메소스 프레임 워크 유닛(120)에 요청하고자 하는 리소스별 요청 할당량을 결정하여 전송할 수 있고, 해당 메소스 프레임 워크 유닛(120)로부터 수신된 리소스 스케줄링 및 태스크 정보에 따라 해당 메소스 슬레이브 유닛(130)의 노드에 해당 할당된 리소스 기반의 태스크를 실행시켜 메소스 슬레이브 유닛(130)에 의해 수행되는 애플리케이션 간에 리소스 공유가 가능하도록 제어할 수 있다.When the mesos master unit 140 receives a request for resource allocation from the mesos slave unit 130, it determines the resource allocation according to a given resource policy and notifies the mesoframe framework unit 120 to share resources among tasks. To control. In an embodiment, when the resource allocation request is received, the method of master resource 140 may determine and transmit a request quota for each resource to be requested to the method framework unit 120 based on a previously stored resource policy. According to the resource scheduling and task information received from the MesoS framework unit 120, the node based on the allocated resource based on the node of the MesoSlave unit 130 is executed by the MesoSlave unit 130. You can control the sharing of resources between applications.

일 실시예에서, 리소스 정책은 메소스 프레임 워크 유닛별 가용 자원량을 기준으로 자원의 할당량을 균등 할당하기 위한 제1 리소스 정책, 사전에 기 설정된 기준 할당량으로 정밀 할당하기 위한 제2 리소스 정책, 특정 주기로 갱신되는 총 자원 할당량을 기준으로 최소 및 최대 할당량을 결정하여 이들 간의 할당량으로 동적 할당하기 위한 제3 리소스 정책 및 특정 주기로 갱신되는 총 자원 요청량을 기준으로 최소 및 최대 할당량을 결정하여 이들 간의 할당량으로 동적 할당하기 위한 제4 리소스 정책을 포함할 수 있다. 일 실시예에서, 리소스 정책은 외부로부터 신규 리소스 정책을 수신하는 메소스 마스터 유닛(140)의 정책 갱신 모듈을 통해 새로운 리소스 정책이 수신되면 갱신될 수 있다.In one embodiment, the resource policy is a first resource policy for equally allocating a quota of resources based on the amount of available resources for each MesoS framework unit, a second resource policy for precisely allocating a predetermined reference quota, and at a specific interval. The minimum and maximum quotas are determined based on the third resource policy for determining the minimum and maximum quotas based on the total resource quotas updated and dynamically allocated to the quotas between them, and the minimum and maximum quotas based on the total resource requests updated at specific intervals. And a fourth resource policy for dynamic allocation. In one embodiment, the resource policy may be updated when a new resource policy is received through the policy update module of the Mesos master unit 140 that receives the new resource policy from the outside.

메소스 마스터 유닛(140)은 특정 메소스 프레임워크 유닛(120)을 통해 메소스 슬레이브 유닛(130)으로부터 요청된 리소스의 할당에 관한 요청 중 일부만 충족되었다면 해당 요청이 모두 충족될 때까지 적어도 하나의 다른 메소스 프레임워크 유닛(120)을 통해 나머지를 충족하기 위한 시도를 반복할 수 있다. 일 실시예에서, 메소스 마스터 유닛(140)은 이러한 과정에서 메소스 프레임워크 유닛(120) 중 가장 오래 대기되었거나 해당 메소스 프레임워크 유닛(120)과 제일 높게 연관된 상위 N 개(N은 자연수)의 대기 유닛을 검출하여 나머지 리소스 할당을 위한 시도를 수행할 수 있다.If only some of the requests for allocation of resources requested from the Mesos slave unit 130 through the particular Mesos framework unit 120 are met, the mesos master unit 140 may have at least one request until all of the requests are satisfied. It is possible to repeat the attempt to meet the rest via another MesoS framework unit 120. In one embodiment, the Mesos master unit 140 is the longest of the Mesos framework units 120 in this process or the top N (N is a natural number) associated with the Mesos framework unit 120 the highest. The standby unit of may be detected and an attempt may be made for remaining resource allocation.

컴퓨팅 리소스 유닛(110), 메소스 프레임워크 유닛(120), 메소스 슬레이브 유닛(130) 및 메소스 마스터 유닛(140)은 각각 물리적인 컴퓨팅 장치로 구현될 수 있고, 이들 중 적어도 일부는 서버로서 기능할 수 있다.The computing resource unit 110, the mesos framework unit 120, the mesos slave unit 130, and the mesos master unit 140 may each be implemented as a physical computing device, at least some of which may be implemented as servers. Can function.

도 4는 도 1에 있는 리소스 통합관리를 위한 메소스 처리 장치가 리소스 통합관리를 수행하는 과정을 설명하는 흐름도이다.FIG. 4 is a flowchart illustrating a process of performing resource integrated management by a method source processing apparatus for resource integrated management in FIG. 1.

도 4에서, 리소스 통합관리를 위한 메소스 처리 장치(100)는 적어도 하나의 CPU 엘리먼트(112), 적어도 하나의 GPU 엘리먼트(114)와 적어도 하나의 메모리 엘리먼트(116)를 리소스로서 준비한다(단계 S410). 메소스 프레임워크 유닛(120)은 컴퓨팅 리소스 유닛(110)에 관한 리소스 할당 요청에 따라 리소스 스케쥴링을 수행하여 태스크 정보를 생성한다(단계 S420). 메소스 슬레이브 유닛(130)은 컴퓨팅 리소스 유닛(110)에 있는 리소스의 할당을 요청할 수 있다(단계 S430). 메소스 슬레이브 유닛(130)은 할당 리소스가 성공적으로 할당되어 해당 태스크 정보가 수신되면 할당 리소스 전용의 도커 수행기(212)를 통해 해당 태스크를 수행한다(단계 S440). 메소스 마스터 유닛(140)은 메소스 슬레이브 유닛(130)으로부터 리소스의 할당을 요청받으면 주어진 리소스 정책에 따라 리소스의 할당을 결정하여 메소스 프레임 워크 유닛(120)에 통보하여 태스크들 간에 리소스 공유를 제어한다(단계 S450).In FIG. 4, the method source processing apparatus 100 for resource integrated management prepares at least one CPU element 112, at least one GPU element 114, and at least one memory element 116 as resources (step 1). S410). The meso framework framework unit 120 performs resource scheduling according to the resource allocation request for the computing resource unit 110 to generate task information (step S420). The method slave unit 130 may request allocation of resources in the computing resource unit 110 (step S430). If the allocated resource is successfully allocated and the corresponding task information is received, the method slave unit 130 performs the corresponding task through the docker performer 212 dedicated to the allocated resource (step S440). When the mesos master unit 140 receives a request for resource allocation from the mesos slave unit 130, it determines the resource allocation according to a given resource policy and notifies the mesoframe framework unit 120 to share resources among tasks. Control (step S450).

상기에서는 본 출원의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 통상의 기술자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 출원을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.Although described above with reference to a preferred embodiment of the present application, those skilled in the art various modifications of the present application without departing from the spirit and scope of the invention described in the claims below And can be changed.

100: 리소스 통합관리를 위한 메소스 처리 장치
110: 컴퓨팅 리소스 유닛
120: 메소스 프레임워크 유닛
130: 메소스 슬레이브 유닛
140: 메소스 마스터 유닛
100: Mesos processing unit for integrated resource management
110: computing resource unit
120: Mesos Framework Unit
130: Mesos slave unit
140: Mesos Master Unit

Claims (10)

적어도 하나의 CPU 엘리먼트, 적어도 하나의 GPU 엘리먼트와 적어도 하나의 메모리 엘리먼트를 리소스로서 포함하는 컴퓨팅 리소스 유닛;
상기 컴퓨팅 리소스 유닛에 관한 리소스 할당 요청에 따라 리소스 스케쥴링을 수행하여 태스크 정보를 생성하는 메소스 프레임워크 유닛(MESOS Framework Unit);
상기 컴퓨팅 리소스 유닛에 있는 리소스의 할당을 요청하고, 상기 할당 요청된 리소스 중 적어도 일부(이하, 할당 리소스)가 성공적으로 할당되어 해당 태스크 정보가 수신되면 상기 할당 리소스 전용의 도커 수행기를 통해 해당 태스크를 수행하는 메소스 슬레이브 유닛(MESOS Slave Unit); 및
상기 메소스 슬레이브 유닛으로부터 상기 리소스의 할당을 요청받으면 주어진 리소스 정책에 따라 상기 리소스의 할당을 결정하여 상기 메소스 프레임 워크 유닛에 통보하여 태스크들 간에 리소스 공유를 제어하는 메소스 마스터 유닛(MESOS Master Unit)을 포함하고,
상기 메소스 슬레이브 유닛은 상기 할당 리소스 전용의 도커 수행기가 상기 할당 리소스 중 적어도 하나의 특정 리소스를 사용할 수 있는 리소스 컨테이너를 인스턴스화 하여 상기 리소스 컨테이너의 라이프사이클을 관리하는 것을 특징으로 하는 리소스 통합관리를 위한 메소스 처리 장치.
A computing resource unit including at least one CPU element, at least one GPU element and at least one memory element as a resource;
A MESOS Framework Unit for generating task information by performing resource scheduling according to a resource allocation request for the computing resource unit;
If a request for allocation of resources in the computing resource unit is requested and at least some of the requested resources (hereinafter, allocated resources) are successfully allocated and the corresponding task information is received, the task is performed through a docker performer dedicated to the allocated resources. A mesos slave unit (MESOS Slave Unit) to perform; And
MESOS Master Unit (MESOS Master Unit) to control the sharing of resources among tasks by determining the allocation of the resource according to a given resource policy and notifying the MesoS framework unit when the allocation of the resource is requested from the MesoSlave unit. ),
The method slave unit may manage a lifecycle of the resource container by instantiating a resource container that the docker performer dedicated to the allocated resource can use at least one specific resource among the allocated resources. Mesos processing unit.
제1항에 있어서, 상기 메소스 슬레이브 유닛은
상기 할당 리소스 전용의 도커 수행기를 수행기 내에 독립적 쓰레드로 생성하는 것을 특징으로 하는 리소스 통합관리를 위한 메소스 처리 장치.
The method of claim 1, wherein the Mesos slave unit
And a docker executor dedicated to the allocated resources as an independent thread in the executor.
삭제delete 제1항에 있어서, 상기 메소스 슬레이브 유닛은
상기 리소스 컨테이너의 라이프사이클 관리 과정에서 상기 리소스 컨테이너가 상기 해당 태스크 정보에 의해 명시되고 상기 할당 리소스의 동적 사용과 연관된 가상 리소스가 모두 사용되는지 여부를 확인하는 것을 특징으로 하는 리소스 통합관리를 위한 메소스 처리 장치.
The method of claim 1, wherein the Mesos slave unit
During the lifecycle management of the resource container, the resource container is identified by the corresponding task information and checks whether all of the virtual resources associated with the dynamic use of the allocated resource are used. Processing unit.
제4항에 있어서, 상기 메소스 슬레이브 유닛은
상기 가상 리소스가 모두 사용되는 경우에는 상기 할당 리소스 이외의 추가적인 리소스 증원을 상기 메소스 마스터 유닛에게 요청하는 것을 특징으로 하는 리소스 통합관리를 위한 메소스 처리 장치.
The method of claim 4, wherein the Mesos slave unit
And when the virtual resources are used up, requesting additional resource reinforcement other than the allocated resources to the mesos master unit.
제4항에 있어서, 상기 메소스 슬레이브 유닛은
상기 가상 리소스의 사용 비율이 특정 비율을 넘어서면 추가적인 리소스 증원을 결정하고, 하기 수학식을 기초로 상기 특정 비율을 동적 조정하는 것을 특징으로 하는 리소스 통합관리를 위한 메소스 처리 장치.
[수학식]
Figure 112019502971929-pat00003

(여기에서, 상기 r은 상기 특정 비율을 나타내고, 상기 r0는 1의 자리보다 작은 자리 값을 가진 0 보다 크고 1 보다 작은 소수로서, 설계자 또는 관리자에 의해 설정된 기준 비율을 나타내며, 상기 ncall은 상기 라이프사이클 관리 과정에서 발생된 총 추가 리소스 증원 요청 횟수를 나타냄)
The method of claim 4, wherein the Mesos slave unit
And determining an additional resource increase if the usage ratio of the virtual resource exceeds a specific ratio, and dynamically adjusting the specific ratio based on the following equation.
[Equation]
Figure 112019502971929-pat00003

(Where r represents the specific ratio, r 0 represents a reference ratio set by a designer or a manager as a prime number greater than 0 and less than 1 with a digit value less than 1 digit, and n call is Represents the total number of additional resource increase requests generated during the lifecycle management process)
제1항에 있어서, 상기 메소스 슬레이브 유닛은
상기 리소스 컨테이너의 라이프사이클 관리 과정에서 상기 리소스 컨테이너가 가상 리소스의 할당 위배를 야기하면 상기 할당 리소스 전용의 도커 수행기가 상기 할당 위배와 연관된 상기 할당 리소스 전용의 시스템 호출을 처리하는 것을 특징으로 하는 리소스 통합관리를 위한 메소스 처리 장치.
The method of claim 1, wherein the Mesos slave unit
When the resource container causes an allocation violation of a virtual resource in the lifecycle management of the resource container, a docker performer dedicated to the allocated resource handles a system call dedicated to the allocated resource associated with the allocation violation. Mesos processing unit for management.
제7항에 있어서, 상기 메소스 슬레이브 유닛은
상기 할당 리소스 전용의 시스템 호출 처리 과정에서 상기 리소스 컨테이너가 상기 메소스 마스터 유닛의 관여 없이 해당 리소스 엘리먼트에 관한 직접적 제어를 허용하도록 하는 것을 특징으로 하는 리소스 통합관리를 위한 메소스 처리 장치.
The method of claim 7, wherein the Mesos slave unit
And the resource container allows direct control of the corresponding resource element without involvement of the method master unit in the system call processing process dedicated to the allocated resource.
컴퓨팅 리소스 유닛이 적어도 하나의 CPU 엘리먼트, 적어도 하나의 GPU 엘리먼트와 적어도 하나의 메모리 엘리먼트를 리소스로서 준비하는 단계;
메소스 프레임워크 유닛이 상기 컴퓨팅 리소스 유닛에 관한 리소스 할당 요청에 따라 리소스 스케쥴링을 수행하여 태스크 정보를 생성하는 단계;
메소스 슬레이브 유닛이 상기 컴퓨팅 리소스 유닛에 있는 리소스의 할당을 요청하고, 상기 할당 요청된 리소스 중 적어도 일부(이하, 할당 리소스)가 성공적으로 할당되어 해당 태스크 정보가 수신되면 상기 할당 리소스 전용의 도커 수행기를 통해 해당 태스크를 수행하는 단계; 및
메소스 마스터 유닛이 상기 메소스 슬레이브 유닛으로부터 상기 리소스의 할당을 요청받으면 주어진 리소스 정책에 따라 상기 리소스의 할당을 결정하여 상기 메소스 프레임 워크 유닛에 통보하여 태스크들 간에 리소스 공유를 제어하는 단계를 포함하고,
상기 해당 태스크를 수행하는 단계는
상기 할당 리소스 전용의 도커 수행기가 상기 할당 리소스 중 적어도 하나의 특정 리소스를 사용할 수 있는 리소스 컨테이너를 인스턴스화 하여 상기 리소스 컨테이너의 라이프사이클을 관리하는 것을 특징으로 하는 리소스 통합관리를 위한 메소스 처리 방법.
The computing resource unit preparing at least one CPU element, at least one GPU element and at least one memory element as resources;
Generating, by the method framework unit, resource scheduling according to a resource allocation request for the computing resource unit to generate task information;
A Messock slave unit requests allocation of resources in the computing resource unit, and at least some of the requested resources (hereinafter, allocated resources) have been successfully allocated and the corresponding task information is received, the docker performer dedicated to the allocated resources. Performing the task through; And
If a MesoS master unit is requested to allocate the resource from the MesoSlave unit, determining the allocation of the resource according to a given resource policy and notifying the MesoS framework unit to control resource sharing among tasks. and,
The step of performing the task
And a docker executor dedicated to the allocated resources instantiates a resource container capable of using at least one specific resource among the allocated resources to manage a life cycle of the resource container.
리소스 통합관리를 위한 메소스 처리 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록매체에 있어서,
상기 리소스 통합관리를 위한 메소스 처리 방법은
컴퓨팅 리소스 유닛이 적어도 하나의 CPU 엘리먼트, 적어도 하나의 GPU 엘리먼트와 적어도 하나의 메모리 엘리먼트를 리소스로서 준비하는 단계;
메소스 프레임워크 유닛이 상기 컴퓨팅 리소스 유닛에 관한 리소스 할당 요청에 따라 리소스 스케쥴링을 수행하여 태스크 정보를 생성하는 단계;
메소스 슬레이브 유닛이 상기 컴퓨팅 리소스 유닛에 있는 리소스의 할당을 요청하고, 상기 할당 요청된 리소스 중 적어도 일부(이하, 할당 리소스)가 성공적으로 할당되어 해당 태스크 정보가 수신되면 상기 할당 리소스 전용의 도커 수행기를 통해 해당 태스크를 수행하는 단계; 및
메소스 마스터 유닛이 상기 메소스 슬레이브 유닛으로부터 상기 리소스의 할당을 요청받으면 주어진 리소스 정책에 따라 상기 리소스의 할당을 결정하여 상기 메소스 프레임 워크 유닛에 통보하여 태스크들 간에 리소스 공유를 제어하는 단계를 포함하고,
상기 해당 태스크를 수행하는 단계는
상기 할당 리소스 전용의 도커 수행기가 상기 할당 리소스 중 적어도 하나의 특정 리소스를 사용할 수 있는 리소스 컨테이너를 인스턴스화 하여 상기 리소스 컨테이너의 라이프사이클을 관리하는 것을 특징으로 하는 컴퓨터 판독 가능한 기록매체.
A computer-readable recording medium having recorded thereon a program for executing a method of processing a method for integrated resource management on a computer,
Mesos processing method for the integrated resource management
The computing resource unit preparing at least one CPU element, at least one GPU element and at least one memory element as resources;
Generating, by the method framework unit, resource scheduling according to a resource allocation request for the computing resource unit to generate task information;
If a method slave unit requests an allocation of resources in the computing resource unit, and at least some of the requested allocation resources (hereinafter, allocated resources) are successfully allocated and corresponding task information is received, a docker performer dedicated to the allocated resources Performing the task through; And
If the method of the Meso master unit is requested to allocate the resource from the Meso slave unit, determining the allocation of the resource according to a given resource policy and notifying the Meso framework framework unit to control resource sharing between tasks and,
The step of performing the task
And a docker performer dedicated to the allocated resources manages the life cycle of the resource container by instantiating a resource container capable of using at least one specific resource among the allocated resources.
KR1020170159396A 2017-11-27 2017-11-27 Mesos process apparatus for unified management of resource and method for the same Active KR102014246B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170159396A KR102014246B1 (en) 2017-11-27 2017-11-27 Mesos process apparatus for unified management of resource and method for the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170159396A KR102014246B1 (en) 2017-11-27 2017-11-27 Mesos process apparatus for unified management of resource and method for the same

Publications (2)

Publication Number Publication Date
KR20190061241A KR20190061241A (en) 2019-06-05
KR102014246B1 true KR102014246B1 (en) 2019-10-21

Family

ID=66845312

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170159396A Active KR102014246B1 (en) 2017-11-27 2017-11-27 Mesos process apparatus for unified management of resource and method for the same

Country Status (1)

Country Link
KR (1) KR102014246B1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110275777B (en) * 2019-06-10 2021-10-29 广州市九重天信息科技有限公司 Resource scheduling system
US11182716B2 (en) * 2020-01-30 2021-11-23 Coupang Corp. Cost efficiency tracking for configuration management database
CN120872510B (en) * 2025-09-26 2026-01-02 西南石油大学 User and data full life cycle server management system of laboratory collaboration environment

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101585160B1 (en) * 2015-03-12 2016-01-13 주식회사 모비젠 Distributed Computing System providing stand-alone environment and controll method therefor
JP2016048536A (en) 2014-08-27 2016-04-07 財團法人資訊工業策進會 Master device, slave device and computing method thereof for cluster computing system

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100516929B1 (en) * 2002-10-23 2005-09-23 한국과학기술정보연구원 Apparatus and method for analyzing task management, and storage media having program thereof
KR101781063B1 (en) 2012-04-12 2017-09-22 한국전자통신연구원 Two-level resource management method and appratus for dynamic resource management
KR20140125893A (en) * 2013-01-28 2014-10-30 한국과학기술원 Virtualized many-core environment job distribution system and method, and recording medium thereof
KR20170088096A (en) 2016-01-22 2017-08-01 한국전자통신연구원 Apparatus for provisioning resource of virtual cluster and method using the same
KR20170094899A (en) * 2016-02-12 2017-08-22 삼성에스디에스 주식회사 System and method for managing computing resources
US10877816B2 (en) * 2016-04-20 2020-12-29 Samsung Electronics Co., Ltd. Optimal task scheduler

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016048536A (en) 2014-08-27 2016-04-07 財團法人資訊工業策進會 Master device, slave device and computing method thereof for cluster computing system
KR101585160B1 (en) * 2015-03-12 2016-01-13 주식회사 모비젠 Distributed Computing System providing stand-alone environment and controll method therefor

Also Published As

Publication number Publication date
KR20190061241A (en) 2019-06-05

Similar Documents

Publication Publication Date Title
US9183016B2 (en) Adaptive task scheduling of Hadoop in a virtualized environment
US11106508B2 (en) Elastic multi-tenant container architecture
US9304803B2 (en) Cooperative application workload scheduling for a consolidated virtual environment
US20220164208A1 (en) Coordinated container scheduling for improved resource allocation in virtual computing environment
US8631403B2 (en) Method and system for managing tasks by dynamically scaling centralized virtual center in virtual infrastructure
US10191771B2 (en) System and method for resource management
US20170031622A1 (en) Methods for allocating storage cluster hardware resources and devices thereof
US20130339956A1 (en) Computer system and optimal arrangement method of virtual machine in computer system
US11461120B2 (en) Methods and apparatus for rack nesting in virtualized server systems
CN110221920B (en) Deployment method, device, storage medium and system
US12229602B2 (en) Memory-aware request placement for virtual GPU enabled systems
CN116450358A (en) Resource management for virtual machines in cloud computing systems
US20170024251A1 (en) Scheduling method and apparatus for distributed computing system
US20120166630A1 (en) Dynamic load balancing system and method thereof
CN105159736B (en) A kind of construction method for the SaaS software deployment schemes for supporting performance evaluation
US11263054B2 (en) Memory-aware placement for virtual GPU enabled systems
KR101474872B1 (en) Method for elastic virtual cluster management for efficient construction of virtual clusters on cloud, apparatus for elastic virtual cluster management and cloud system using the same
US11579942B2 (en) VGPU scheduling policy-aware migration
JPWO2012066640A1 (en) Computer system, migration method and management server
CN109257399B (en) Cloud platform application program management method, management platform and storage medium
KR20130019698A (en) Method for optimizing resource by using migration based on user's scheduler
JP2016115065A (en) Information processor, information processing system, task processing method, and program
US20200065126A1 (en) Resource optimization for virtualization environments
CN110838939A (en) A lightweight container-based scheduling method and edge IoT management platform
KR102014246B1 (en) Mesos process apparatus for unified management of resource and method for the same

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20171127

PA0201 Request for examination
E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20181106

Patent event code: PE09021S01D

AMND Amendment
E601 Decision to refuse application
PE0601 Decision on rejection of patent

Patent event date: 20190425

Comment text: Decision to Refuse Application

Patent event code: PE06012S01D

Patent event date: 20181106

Comment text: Notification of reason for refusal

Patent event code: PE06011S01I

AMND Amendment
PX0901 Re-examination

Patent event code: PX09011S01I

Patent event date: 20190425

Comment text: Decision to Refuse Application

Patent event code: PX09012R01I

Patent event date: 20181226

Comment text: Amendment to Specification, etc.

PX0701 Decision of registration after re-examination

Patent event date: 20190530

Comment text: Decision to Grant Registration

Patent event code: PX07013S01D

Patent event date: 20190522

Comment text: Amendment to Specification, etc.

Patent event code: PX07012R01I

Patent event date: 20190425

Comment text: Decision to Refuse Application

Patent event code: PX07011S01I

Patent event date: 20181226

Comment text: Amendment to Specification, etc.

Patent event code: PX07012R01I

X701 Decision to grant (after re-examination)
PG1501 Laying open of application
GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20190820

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20190821

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
G170 Re-publication after modification of scope of protection [patent]
PG1701 Publication of correction

Patent event code: PG17011E01I

Patent event date: 20200810

Comment text: Request for Publication of Correction

Publication date: 20200814

PR1001 Payment of annual fee

Payment date: 20220720

Start annual number: 4

End annual number: 4

PR1001 Payment of annual fee

Payment date: 20240625

Start annual number: 6

End annual number: 6

PR1001 Payment of annual fee

Payment date: 20250625

Start annual number: 7

End annual number: 7