KR20160083989A - Resource Allocation Method for Multiple Service Cluster and Apparatus thereof - Google Patents

Resource Allocation Method for Multiple Service Cluster and Apparatus thereof Download PDF

Info

Publication number
KR20160083989A
KR20160083989A KR1020150000211A KR20150000211A KR20160083989A KR 20160083989 A KR20160083989 A KR 20160083989A KR 1020150000211 A KR1020150000211 A KR 1020150000211A KR 20150000211 A KR20150000211 A KR 20150000211A KR 20160083989 A KR20160083989 A KR 20160083989A
Authority
KR
South Korea
Prior art keywords
service cluster
server
virtual
resource
virtual resource
Prior art date
Application number
KR1020150000211A
Other languages
Korean (ko)
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 KR1020150000211A priority Critical patent/KR20160083989A/en
Publication of KR20160083989A publication Critical patent/KR20160083989A/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0896Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
    • H04L41/0897Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities by horizontal or vertical scaling of resources, or by migrating entities, e.g. virtual resources or entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3051Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0896Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/40Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1031Controlling of the operation of servers by a load balancer, e.g. adding or removing servers that serve requests

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)

Abstract

The present invention relates to a resource allocation method for a multiple service cluster, and more specifically, to a method and an apparatus to allocate or release virtual resources for a service cluster based on attribute information of the service cluster. According to the present invention, the method to allocate resources for a multiple service cluster comprises the steps of: monitoring a load for at least service cluster; determining a server to allocate virtual resources for the service cluster based on the attribute information of the service cluster when the allocation of the virtual resources for a random service cluster is requested according to the monitoring result; and allocating the virtual resources for the service cluster to the determined server.

Description

다중 서비스 클러스터에 대한 자원 할당 방법 및 그 장치{Resource Allocation Method for Multiple Service Cluster and Apparatus thereof}[0001] The present invention relates to a resource allocation method for a multi-service cluster,

본 발명은 다중 서비스 클러스터에 대한 자원 할당 방법에 관한 것으로, 특히 서비스 클러스터의 속성 정보를 기초로 서비스 클러스터에 대한 가상 자원을 할당 또는 해제하는 방법 및 장치에 관한 것이다. The present invention relates to a resource allocation method for a multi-service cluster, and more particularly, to a method and apparatus for allocating or releasing a virtual resource for a service cluster based on attribute information of a service cluster.

일반적으로 데이터 센터의 각 서버는 통신 대역폭에 비하여 그 처리 성능이 충분하지 못하기 때문에, 데이터 센터는 서비스 클러스터에 의한 부하를 복수의 서버에 분배하여 운용하는 부하 분배 기능을 이용한다. 부하 분배 기능을 이용하면, 복수의 서버에 할당된 자원을 이용하여 서비스를 제공할 수 있게 되므로, 부족한 서버의 성능을 보완할 수 있다. In general, each server in the data center does not have sufficient processing performance compared to the communication bandwidth. Therefore, the data center uses a load distribution function that distributes the load by the service cluster to a plurality of servers. By using the load distribution function, the service can be provided by using the resources allocated to a plurality of servers, so that the performance of the deficient server can be compensated.

현재 부하 분배 기능을 이용하는 데이터 센터는, 서비스 클러스터에 의한 부하를 데이터 센터 내의 모든 서버에 동등하게 배분하여 특정 서버에 부하가 집중되지 않도록 한다. 서버의 성능이 서로 다를 경우, 데이터 센터는 서버에 따라 부하 분배를 위한 가중치를 설정하여, 각 서버의 성능에 알맞게 부하를 분배한다.A data center using the current load distribution function distributes the load of the service cluster equally among all the servers in the data center so that the load is not concentrated on a specific server. If the server's performance is different, the data center sets the weight for the load distribution according to the server, and distributes the load according to the performance of each server.

데이터 센터는 부하 분배 기능을 이용함에 있어서 서비스 제공의 성능 저하를 막기 위해, 부하가 가장 클 때(피크 부하)를 고려하여 서버의 수를 구성하기 때문에, 부하가 적은 경우에도 모든 서버가 운용된다. 부하가 피크인 시간은 전체 서버 운용 시간의 일부에 해당하기 때문에 대부분의 경우 데이터 센터 내의 서버들의 사용률은 낮다. Since the data center uses the load distribution function to configure the number of servers in consideration of peak load (peak load) in order to prevent degradation of service provisioning, all servers are operated even when load is low. In most cases, the utilization rate of servers in the data center is low because the load peak time is part of the total server operating time.

또한, 서버는 사용률에 따른 전력 사용량의 변화가 크지 않으므로, 기존의 부하 분배 방법은 데이터 센터의 전력을 비효율적으로 사용하게 한다. In addition, since the server does not change the power usage according to the usage rate, the conventional load distribution method causes the power of the data center to be inefficiently used.

이러한 비효율성을 해결하기 위하여, 최근에는 데이터 센터에서 부하에 따라 필요한 수만큼의 서버만을 운용하고, 필요하지 않은 서버를 사용하지 않음으로써 전력 사용을 감소시키는 방법이 제안되고 있다. 운용되는 서버의 수를 결정하기 위한 방법의 일 예로, 클라이언트와 서버 간의 성능을 측정하여 서버에 부하를 적절히 분배하는 방법이 제안되었다. 클라이언트와 서버 간의 성능 측정에 있어서는, 클라이언트의 개별 요청에 대하여 클라이언트의 요청과 서버의 응답에 대한 정보를 수집 및 관리하는 방법이 제안되었다. 구체적으로 제안된 방법에서는, 데이터 센터가, 응답 패턴의 통신 프로토콜을 사용하는 클라이언트-서버 컴퓨팅 환경에서, 클라이언트와 서버 간 통신을 연결하는 에이전트를 실행하면, 에이전트가 클라이언트의 요청 및 서버의 응답을 서버 및 클라이언트로 전달하면서 클라이언트의 요청 및 서버의 응답에 대한 정보를 수집/관리한다. 데이터 센터는 에이전트를 통하여 수집/관리되는 정보를 이용하여 각 서버에 적절한 부하를 분배한다.In order to solve this inefficiency, recently, a method has been proposed in which only a required number of servers are operated according to a load in a data center, and power consumption is reduced by not using an unnecessary server. As an example of a method for determining the number of servers to be operated, a method of appropriately allocating the load to the server by measuring the performance between the client and the server has been proposed. In the performance measurement between the client and the server, a method of collecting and managing the information of the client's request and the server's response to the client's individual request has been proposed. Specifically, in the proposed method, when a data center executes an agent that connects communication between a client and a server in a client-server computing environment using a communication protocol of a response pattern, the agent sends a request of the client and a response of the server to the server And collects / manages information about the client's request and the server's response while delivering it to the client. The data center distributes the appropriate load to each server using the information collected / managed through the agent.

하지만, 종래에 제안된 방법에서는, 단일 서비스 클라이언트의 부하 분배 방법만을 제시할 뿐, 서로 다른 종류의 서비스 제공에 따른 복수의 서비스 클러스터가 구성되는 경우, 서버의 전력 절감을 위한 효율적인 부하 분배 방법을 제공하지는 않는다. However, in the conventional method, only a load distribution method of a single service client is presented, and when a plurality of service clusters according to different types of service provision are configured, an efficient load distribution method for power saving of the server is provided I do not.

본 발명은 상기한 문제점을 해결하기 위한 것으로, 데이터 센터에서의 전력 절감을 위해 가상화 시스템을 이용하여 하나의 물리적 서버에 복수의 서비스 클러스터를 구성하는 방법 및 그 장치를 제공한다. The present invention provides a method and apparatus for configuring a plurality of service clusters in a single physical server using a virtualization system to reduce power consumption in a data center.

또한, 본 발명은 데이터 센터에서 복수의 종류의 서비스를 제공하기 위하여, 각 서비스별로 클러스터를 구성하되, 클러스터의 속성에 따라 서버의 자원을 효율적으로 할당함으로써 운용해야 할 서버의 수를 최소화할 수 있는 자원 할당 방법 및 그 장치를 제공한다.Also, in order to provide a plurality of types of services in a data center, a cluster is configured for each service, and the number of servers to be operated can be minimized by efficiently allocating resources of the servers according to attributes of clusters A resource allocation method and apparatus are provided.

상술한 과제를 해결하기 위한 본 발명에 따른 다중 서비스 클러스터에 대한 자원 할당 방법은, 적어도 하나의 서비스 클러스터에 대한 부하를 모니터링하는 단계, 상기 모니터링 결과에 따라, 임의의 서비스 클러스터에 대한 가상 자원 할당이 요구되면, 상기 서비스 클러스터의 속성 정보를 기초로, 상기 서비스 클러스터에 대한 가상 자원을 할당할 서버를 결정하는 단계 및 상기 결정된 서버에 상기 서비스 클러스터에 대한 가상 자원을 할당하는 단계를 포함하는 것을 특징으로 한다. According to an aspect of the present invention, there is provided a method for allocating resources for a multi-service cluster, the method comprising: monitoring a load on at least one service cluster; Determining a server to which a virtual resource for the service cluster is to be allocated based on the attribute information of the service cluster, and allocating a virtual resource for the service cluster to the determined server, do.

또한, 상술한 과제를 해결하기 위한 본 발명에 따른 다중 서비스 클러스터에 대한 자원 할당 장치는, 외부와 데이터 통신을 수행하는 통신부 및 적어도 하나의 서비스 클러스터에 대한 부하를 모니터링하고, 상기 모니터링 결과에 따라, 임의의 서비스 클러스터에 대한 가상 자원 할당이 요구되면, 상기 서비스 클러스터의 속성 정보를 기초로, 상기 서비스 클러스터에 대한 가상 자원을 할당할 서버를 결정하고, 상기 결정된 서버에 상기 서비스 클러스터에 대한 가상 자원을 할당하는 제어부를 포함하는 것을 특징으로 한다. According to another aspect of the present invention, there is provided a resource allocation apparatus for a multi-service cluster, the apparatus comprising: a monitoring unit for monitoring a load on at least one service cluster and a communication unit for performing data communication with the outside; Wherein when a virtual resource allocation for an arbitrary service cluster is requested, a server to allocate a virtual resource for the service cluster is determined based on attribute information of the service cluster, and a virtual resource for the service cluster is allocated to the determined server And a control unit for assigning the control unit.

본 발명에 따른 다중 서비스 클러스터에 대한 자원 할당 방법 및 그 장치는 각 서비스 클러스터의 특성에 따라 가상화 기술을 이용하여 서버의 가상 자원을 동적으로 운용함으로써, 서비스 제공에 필요한 서버의 수를 최소화할 수 있으며, 이에 따라 데이터 센터의 소비 전력을 절감할 수 있도록 한다. The resource allocation method and apparatus for a multi-service cluster according to the present invention can minimize the number of servers required for service provision by dynamically operating virtual resources of a server using virtualization technology according to characteristics of each service cluster , Thereby reducing the power consumption of the data center.

도 1은 본 발명에 따른 다중 서비스 클러스터 시스템을 나타낸 도면이다.
도 2는 본 발명에 따른 다중 서비스 클러스터 시스템에서 자원 할당 장치의 구성을 나타낸 블록도이다.
도 3은 본 발명에 따른 다중 서비스 클러스터 시스템에서 자원 할당 방법을 나타낸 순서도이다.
1 is a diagram illustrating a multi-service cluster system according to the present invention.
2 is a block diagram illustrating a configuration of a resource allocation apparatus in a multi-service cluster system according to the present invention.
3 is a flowchart illustrating a resource allocation method in a multi-service cluster system according to the present invention.

본 발명은 다중 서비스 클러스터 시스템을 지원하는 데이터 센터의 가상 자원 관리를 위해 적용될 수 있다. 이하의 설명에서 가상 자원은 가상 머신, 가상 서버, 가상 데스크탑 등으로 명명될 수 있으며, 본 발명의 기술적 사상이 변경되지 않는 범위 내에서 다양한 변경이 가능하다. 또한, 이하의 설명에서 가상 자원을 할당한다는 것은 가상 머신을 실행(온으로 제어)한다는 것으로, 가상 자원을 해제한다는 것은 가상 머신을 중지(오프로 제어)한다는 의미와 동일하게 해석될 수 있다. The present invention can be applied to virtual resource management of a data center supporting a multi-service cluster system. In the following description, the virtual resources may be referred to as virtual machines, virtual servers, virtual desktops, and the like, and various modifications may be made without departing from the technical idea of the present invention. In the following description, allocating a virtual resource means executing (turning on) a virtual machine, and releasing a virtual resource can be interpreted in the same way as stopping (turning off) a virtual machine.

이하, 첨부된 도면을 참조하여 본 발명을 설명한다. 본 명세서에서는 본 발명의 특정 실시 예들이 도면에 예시되고 관련된 상세한 설명이 기재되어 있으나, 본 발명의 사상이 변경되지 않는 범위 내에서 본 발명의 다양한 변형이 가능하다. 따라서, 본 명세서는 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경 또는 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조부호가 사용되었다.Hereinafter, the present invention will be described with reference to the accompanying drawings. Although specific embodiments of the invention have been illustrated in the drawings and detailed description of the invention are set forth in the drawings, various modifications of the invention are possible without departing from the spirit of the invention. Accordingly, the specification should not be construed as limited to any particular embodiment, and is intended to cover all modifications, equivalents, and alternatives falling within the spirit and scope of the invention. In connection with the description of the drawings, like reference numerals have been used for like elements.

본 명세서에서 사용되는 "포함한다," "포함할 수 있다." 등의 표현은 개시된 해당 기능, 동작, 구성요소 등의 존재를 가리키며, 추가적인 하나 이상의 기능, 동작, 구성요소 등을 제한하지 않는다. 또한, 본 명세서에서, "포함하다." 또는 "가지다." 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.  Quot ;, " include, "" include," as used herein. And the like are intended to indicate the presence of disclosed features, operations, components, etc., and are not intended to limit the invention in any way. Also, in this specification, "include." Or "have." , Etc. are intended to designate the presence of stated features, integers, steps, operations, components, parts, or combinations thereof, may be combined with one or more other features, steps, operations, components, It should be understood that they do not preclude the presence or addition of combinations thereof.

또한, 본 명세서에서 "및/또는" 등의 표현은 함께 나열된 단어들의 어떠한, 그리고 모든 조합을 포함한다. 예를 들어, A 및/또는 B는, A를 포함할 수도, B를 포함할 수도, 또는 A 와 B 모두를 포함할 수도 있다.Furthermore, the expressions "and / or" in this specification include any and all combinations of the words listed together. For example, A and / or B may comprise A, comprise B, or both A and B.

또한, 본 명세서 가운데 "제1," "제2," "첫째," "둘째," 등의 표현들이 본 명세서의 다양한 구성요소들을 수식할 수 있지만, 해당 구성요소들을 한정하지 않는다. 예를 들어, 상기 표현들은 해당 구성요소들의 순서 및/또는 중요도 등을 한정하지 않는다. 상기 표현들은 한 구성요소를 다른 구성요소와 구분 짓기 위해 사용될 수 있다. Also, in this specification, expressions such as "first," "second," "first," "second," etc. can modify various elements of the specification, but do not limit the constituent elements. For example, the representations do not limit the order and / or importance of the components. The representations may be used to distinguish one component from another.

또한, 본 명세서에서 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.Furthermore, the singular forms "a", "an," and "the" include plural referents unless the context clearly dictates otherwise.

이하, 첨부된 도면을 참조하여 본 발명의 실시 예를 상세히 설명한다.
Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명에 따른 다중 서비스 클러스터 시스템을 나타낸 도면이다.1 is a diagram illustrating a multi-service cluster system according to the present invention.

도 1을 참조하면, 본 발명에 따른 다중 서비스 클러스터 시스템은 네트워크(10), 적어도 하나의 부하 분배 서버(20a, 20b, 20c), 자원 할당 장치(30) 및 적어도 하나의 서버(40a, 40b, 40c)를 포함하여 구성된다. 1, a multi-service cluster system according to the present invention includes a network 10, at least one load distribution server 20a, 20b, 20c, a resource allocation device 30 and at least one server 40a, 40b, 40c.

적어도 하나의 부하 분배 서버(20a, 20b, 20c)는 복수의 서비스 클러스터 각각에 대하여 구비될 수 있다. 각각의 부하 분배 서버(20a, 20b, 20c) 네트워크(10)를 통하여 클라이언트로부터 요청되는 서비스 클러스터의 부하를 모니터링하여 자원 할당 장치(30)에 알려준다. 또한, 각각의 부하 분배 서버(20a, 20b, 20c)는 자원 할당 장치(30)로부터 수신되는 자원 할당 정보를 기초로, 자신이 관리하는 서비스 클러스터에 대하여 할당된 가상 자원에 부하를 분배하거나 분배를 중단한다. 각각의 부하 분배 서버(20a, 20b, 20c)는 자원 할당 장치(30)에 의하여 임의의 서버에 자신의 서비스 클러스터를 위한 가상 자원이 할당되면, 해당 서버의 해당 가상 자원에 부하를 분배한다. 반대로, 각각의 부하 분배 서버(20a, 20b, 20c)는 자원 할당 장치(30)에 의하여 임의의 서버에 자신의 서비스 클러스터를 위한 가상 자원이 해제되면, 해당 서버의 해당 가상 자원에 부하를 분배하지 않는다. At least one load distribution server (20a, 20b, 20c) may be provided for each of a plurality of service clusters. Monitors the loads of the service clusters requested from the clients through the respective load distribution servers 20a, 20b, 20c network 10, and informs the resource allocation device 30 of the load of the service clusters. Each of the load distribution servers 20a, 20b, and 20c distributes or distributes the load to the virtual resources allocated to the service cluster managed by itself, based on the resource allocation information received from the resource allocation device 30 Stop. Each of the load distribution servers 20a, 20b, and 20c distributes the load to a corresponding virtual resource of the corresponding server when a virtual resource for its service cluster is allocated to the server by the resource allocation device 30. [ On the other hand, when the virtual resource for the service cluster is released to any server by the resource allocation device 30, the load distribution servers 20a, 20b, and 20c do not distribute the load to the corresponding virtual resources of the server Do not.

자원 할당 장치(30)는 본 발명의 실시 예에 따라, 서비스 클러스터의 속성 정보를 기초로 적어도 하나의 서비스 클러스터에 대한 가상 자원을 할당한다. The resource allocation device 30 allocates virtual resources for at least one service cluster based on the attribute information of the service cluster according to the embodiment of the present invention.

구체적으로, 자원 할당 장치(30)는 적어도 하나의 서비스 클러스터에 대한 부하를 모니터링 한다. 자원 할당 장치(30)는 적어도 하나의 부하 분배 서버(20a, 20b, 20c)로부터 각 서비스 클러스터의 부하에 관한 정보를 수신할 수 있다. Specifically, the resource allocation device 30 monitors the load on at least one service cluster. The resource allocation device 30 can receive information on the load of each service cluster from at least one load distribution server 20a, 20b, 20c.

자원 할당 장치(30)는 모니터링 결과에 따라, 임의의 서비스 클러스터에 대한 가상 자원의 할당/해제 여부를 판단할 수 있다. 자원 할당 장치(30)는 임의의 서비스 클러스터에 대한 부하가 증가하면, 해당 서비스 클러스터에 대하여 가상 자원을 추가로 할당해야 할 것으로 판단할 수 있다. 반대로, 자원 할당 장치(30)는 임의의 서비스 클러스터에 대한 부하가 감소하면, 해당 서비스 클러스터에 대하여 할당되었던 가상 자원을 해제할 것으로 판단할 수 있다. The resource allocation device 30 may determine whether to allocate / release virtual resources for an arbitrary service cluster according to the monitoring result. The resource allocation device 30 may determine that a virtual resource should be additionally allocated to the service cluster when the load on an arbitrary service cluster increases. Conversely, when the load on a certain service cluster decreases, the resource allocation device 30 can determine that the virtual resource allocated to the service cluster is released.

가상 자원 할당이 결정되면, 자원 할당 장치(30)는 다중 서비스 클러스터 시스템에 존재하는 적어도 하나의 서버(40a, 40b, 40c) 중 해당 서비스 클러스터를 위한 가상 자원을 할당할 서버를 결정할 수 있다. When the virtual resource allocation is determined, the resource allocation device 30 can determine a server to allocate virtual resources for the corresponding service cluster among the at least one servers 40a, 40b, and 40c existing in the multiple service cluster system.

본 발명의 다양한 실시 예에서, 자원 할당 장치(30)는 각 서버의 자원 할당 상태 및 해당 서비스 클러스터의 속성 정보를 기초로 가상 자원을 할당할 서버를 결정할 수 있다. 일 실시 예에서, 각 서버의 자원 할당 상태는 각 서버에 할당된 가상 자원에 대응하는 서비스 클러스터의 속성 정보, 각 서버에서 이용 가능한 가상 자원의 종류 및 상태, 각 서버의 자원 사용률 등을 포함할 수 있다. 일 실시 예에서, 속성 정보는 서비스의 종류에 관한 정보 및 서비스 클러스터가 사용하는 주된 자원에 관한 정보 중 어느 하나를 포함할 수 있다. 주된 자원은, 예를 들어, CPU, 메모리 및 대역폭 중 적어도 하나를 포함할 수 있다. In various embodiments of the present invention, the resource allocation device 30 may determine a server to which a virtual resource is allocated based on a resource allocation state of each server and attribute information of the corresponding service cluster. In one embodiment, the resource allocation status of each server may include attribute information of the service cluster corresponding to the virtual resource allocated to each server, the type and state of the virtual resource available in each server, resource utilization rate of each server, and the like have. In one embodiment, the attribution information may include either information about the type of service and information about the main resource used by the service cluster. The primary resource may include, for example, at least one of CPU, memory and bandwidth.

자원 할당 장치(30)는 동일한 속성의 서비스 클러스터를 위한 가상 자원이 동일한 서버에 할당되지 않도록 가상 자원을 할당할 서버를 결정할 수 있다. 일 실시 예에서, 자원 할당 장치(30)는 동일한 종류의 자원을 주된 자원으로 하는 복수의 서비스 클러스터들이 동일한 서버에 할당되지 않도록 한다. 예를 들어, 도 1에서 제1 서비스 클러스터가 사용하는 주된 자원은 CPU이고, 제2 서비스 클러스터 및 제3 서비스 클러스터가 사용하는 주된 자원은 메모리이며, 제1 서버(40a)에는 제1 서비스 클러스터를 위한 가상 자원 및 제2 서비스 클러스터를 위한 가상 자원이 할당되어 있고, 제2 서버(40b)에는 제1 서비스 클러스터를 위한 가상 자원만이 할당되어 있을 때, 자원 할당 장치(30)는 제3 서비스 클러스터를 위한 가상 할당 자원을 제2 서버(40b)에 할당할 수 있다. 이로써, 자원 할당 장치(30)는 서로 다른 종류의 자원을 주된 자원으로 하는 복수의 서비스 클러스터에 대한 가상 자원이 하나의 물리적 서버에 골고루 할당되도록 한다. The resource allocation device 30 can determine the server to which the virtual resource is allocated so that the virtual resources for the service cluster of the same attribute are not allocated to the same server. In one embodiment, the resource allocation device 30 prevents a plurality of service clusters having the same kind of resource as the main resource from being allocated to the same server. For example, in FIG. 1, the primary resource used by the first service cluster is a CPU, the primary resource used by the second service cluster and the third service cluster is memory, and the first server 40a includes a first service cluster And a virtual resource for the second service cluster is allocated to the second server 40b and only a virtual resource for the first service cluster is allocated to the second server 40b, May allocate virtual allocated resources for the second server 40b to the second server 40b. In this way, the resource allocation device (30) allows virtual resources for a plurality of service clusters having different kinds of resources as main resources to be allocated evenly to one physical server.

하나의 서버에서는 각 종류의 자원에 대하여 이용 가능한 양이 제한되어 있기 때문에, 하나의 물리적 서버에 주된 사용 자원이 동일한 여러 개의 서비스 클러스터를 위하여 가상 자원이 할당되면, 하나의 서버에서 특정 자원에 대한 과부하가 발생하여 효율적인 부하 분배가 이루어질 수 없게 된다. 따라서, 본 발명의 다양한 실시 예에서는, 상술한 바와 같이 서비스 클러스터가 사용하는 주된 자원의 종류를 기초로 가상 자원을 추가 할당할 서버를 결정한다. 즉, 본 발명의 다양한 실시 예에서는, 동일한 자원을 주로 사용하는 서비스 클러스터의 가상 자원이 각 서버에 고루 할당될 수 있도록 하여, 효율적인 부하 분배가 이루어질 수 있도록 한다. Since the amount available for each kind of resource is limited in one server, when a virtual resource is allocated for a plurality of service clusters having the same main usage resource in one physical server, the overload So that efficient load distribution can not be achieved. Therefore, in various embodiments of the present invention, the server to which the virtual resource is additionally allocated is determined based on the type of the main resource used by the service cluster as described above. That is, in the various embodiments of the present invention, virtual resources of a service cluster mainly using the same resource can be evenly allocated to each server, so that efficient load distribution can be achieved.

상기한 바에 따라 자원 할당을 수행하면, 다양한 서비스 클러스터를 위한 자원 할당이 하나의 물리적 서버에서 이루어질 수 있으므로, 다중 서비스 클러스터를 위해 운용되어야 하는 서버의 수가 최소화되며, 데이터 센터의 소비 전력을 절감시킬 수 있다. Since resource allocation for various service clusters can be performed in one physical server by performing resource allocation according to the above, the number of servers to be operated for a multi-service cluster can be minimized, and power consumption of the data center can be reduced have.

자원 할당 장치(30)는 가상 자원을 할당하기로 결정된 서버에 대하여 해당 서비스 클러스터를 위한 가상 자원을 할당하고, 할당된 가상 자원에 대한 웹 서버를 실행한다. 자원 할당 장치(30)는 할당된 가상 자원에 관한 정보를 해당 서비스 클러스터를 관리하는 부하 분배 서버(20a, 20b, 20c)로 전송하여, 부하 분배 서버(20a, 20b, 20c)가 할당된 가상 서버에 부하를 분배하도록 할 수 있다. The resource allocation device 30 allocates a virtual resource for the service cluster to the server determined to allocate the virtual resource and executes the web server for the allocated virtual resource. The resource allocation device 30 transmits information on the allocated virtual resources to the load distribution servers 20a, 20b, and 20c that manage the corresponding service clusters, and allocates the virtual resources to the load distribution servers 20a, 20b, To distribute the load to the load.

일 실시 예에서, 현재 온 상태인 서버에 가상 자원의 추가 할당이 불가능하면, 자원 할당 장치(30)는 휴면 또는 오프 상태인 서버에 자원 할당이 가능하도록 해당 서버의 상태를 변경할 수 있다.In one embodiment, if it is not possible to allocate a virtual resource to a server that is currently on, the resource allocation device 30 may change the state of the server so that resources can be allocated to the server that is in a sleep or off state.

가상 자원 해제가 결정되면, 자원 할당 장치(30)는 다중 서비스 클러스터 시스템에 존재하는 적어도 하나의 서버(40a, 40b, 40c) 중 해당 서비스 클러스터를 위한 가상 자원을 해제할 서버를 결정할 수 있다.When the virtual resource release is determined, the resource allocation device 30 can determine a server to release the virtual resource for the corresponding service cluster among at least one server 40a, 40b, 40c existing in the multi-service cluster system.

본 발명의 다양한 실시 예에서, 자원 할당 장치(30)는 각 서버의 자원 할당 상태 및 해당 서비스 클러스터의 속성 정보를 기초로 가상 자원을 할당할 서버를 결정할 수 있다. In various embodiments of the present invention, the resource allocation device 30 may determine a server to which a virtual resource is allocated based on a resource allocation state of each server and attribute information of the corresponding service cluster.

자원 할당 장치(30)는 서로 다른 속성의 서비스 클러스터를 위한 가상 자원이 하나의 서버에 할당되도록, 가상 자원을 해제할 서버를 결정할 수 있다. 즉, 자원 할당 장치(30)는 동일한 자원을 주된 자원으로 하는 서비스 클러스터들에 대한 가상 자원이 서로 다른 서버에 할당되어 있고, 해당 서비스 클러스터에 대한 부하가 감소되어 가상 자원 해제가 요구되는 경우에, 주된 자원이 다른 서비스 클러스터의 가상 자원이 할당되지 않은 서버의 가상 자원을 우선하여 해제할 수 있다. 예를 들어, 도 1에서 제1 서비스 클러스터가 사용하는 주된 자원은 CPU이고, 제2 서비스 클러스터가 사용하는 주된 자원은 메모리이며, 제1 서버(40a)에는 제1 서비스 클러스터를 위한 가상 자원 및 제2 서비스 클러스터를 위한 가상 자원이 할당되어 있고, 제2 서버(40b)에는 제2 서비스 클러스터를 위한 가상 자원만이 할당되어 있을 때, 자원 할당 장치(30)는 제2 서버(40b)에 할당된 가상 자원을 해제할 수 있다. The resource allocation device 30 can determine a server to release the virtual resources so that virtual resources for service clusters having different attributes are allocated to one server. That is, when the virtual resource for the service clusters having the same resource as the main resource is allocated to different servers and the load on the corresponding service cluster is reduced and the virtual resource release is required, The virtual resource of the server whose main resource is not allocated to the virtual resource of the other service cluster can be released first. For example, in FIG. 1, the main resource used by the first service cluster is a CPU, the main resource used by the second service cluster is a memory, and the first server 40a stores a virtual resource for the first service cluster, When a virtual resource for the second service cluster is allocated to the second server 40b and only a virtual resource for the second service cluster is allocated to the second server 40b, Virtual resources can be released.

자원 할당 장치(30)는 가상 자원을 해제하기로 결정된 서버에 대하여 해당 서비스 클러스터를 위한 웹 서버를 중지하고, 할당된 가상 자원을 해제한다. 자원 할당 장치(30)는 해제된 가상 자원에 관한 정보를 해당 서비스 클러스터를 관리하는 부하 분배 서버(20a, 20b, 20c)로 전송하여, 부하 분배 서버(20a, 20b, 20c)가 할당된 가상 서버에 부하를 분배하지 않도록 할 수 있다. The resource allocation device 30 suspends the web server for the service cluster to the server determined to release the virtual resource and releases the allocated virtual resource. The resource allocation apparatus 30 transmits the information on the released virtual resources to the load distribution servers 20a, 20b, and 20c that manage the service cluster, It is possible to prevent the load from being distributed.

자원 할당 장치(30)는 상기한 동작을 수행하기 위한 적어도 하나의 구성 요소를 포함할 수 있다. 자원 할당 장치(30)의 구체적인 구성 요소에 대하여는, 도 2를 참조하여 후술하도록 한다.
The resource allocation device 30 may include at least one component for performing the above operations. Specific components of the resource allocation device 30 will be described later with reference to FIG.

도 2는 본 발명에 따른 다중 서비스 클러스터 시스템에서 자원 할당 장치의 구성을 나타낸 블록도이다.2 is a block diagram illustrating a configuration of a resource allocation apparatus in a multi-service cluster system according to the present invention.

도 2를 참조하면, 자원 할당 장치(30)는 통신부(31) 및 제어부(32)를 포함하여 구성될 수 있다. Referring to FIG. 2, the resource allocation device 30 may include a communication unit 31 and a control unit 32.

통신부(31)는 외부와 데이터 통신을 수행한다. 통신부(31)는 제어부(32)의 제어에 따라 외부 서버와 데이터 통신을 수행할 수 있다. The communication unit 31 performs data communication with the outside. The communication unit 31 can perform data communication with the external server under the control of the control unit 32. [

제어부(32)는 본 발명에 따른 자원 할당 동작을 수행하기 위하여 자원 할당 장치(30)의 구성 요소를 제어할 수 있다. 도 2를 참조하면, 제어부(32)는 클러스터 관리 모듈(33), 부하 관리 모듈(34), 서버 관리 모듈(35), 가상 자원 관리 모듈(36) 및 서버 성능 관리 모듈(37)을 포함하여 구성될 수 있다. The control unit 32 may control the components of the resource allocation device 30 to perform the resource allocation operation according to the present invention. 2, the control unit 32 includes a cluster management module 33, a load management module 34, a server management module 35, a virtual resource management module 36, and a server performance management module 37 Lt; / RTI >

클러스터 관리 모듈(33)은 데이터 센터의 서비스 클러스터들을 관리하며, 특히 서비스 클러스터의 속성 정보를 수집/관리할 수 있다. 클러스터 관리 모듈(33)은 서비스 클러스터의 속성 정보로써, 서비스 클러스터의 종류 및 서비스 클러스터가 사용하는 주된 자원(예를 들어, CPU, 메모리 및 대역폭 등)에 관한 정보를 관리할 수 있다. The cluster management module 33 manages service clusters in the data center, and can collect / manage attribute information of the service cluster in particular. The cluster management module 33 can manage information about the types of service clusters and the main resources (for example, CPU, memory, bandwidth, etc.) used by the service clusters as attribute information of the service clusters.

부하 관리 모듈(34)은 각 서비스 클러스터의 부하를 모니터링하고 제어할 수 있다. 부하 관리 모듈(34)은 적어도 하나의 부하 분배 서버로부터 각 서비스 클러스터의 부하에 관한 정보를 수신할 수 있다. 부하 관리 모듈(34)은 임의의 서비스 클러스터의 부하 증가/감소 여부에 따라 해당 서비스 클러스터를 위하여 가상 자원을 추가로 할당할지 이미 할당된 가상 자원을 해제할지 여부를 결정할 수 있다. The load management module 34 can monitor and control the load of each service cluster. The load management module 34 may receive information regarding the load of each service cluster from at least one load distribution server. The load management module 34 may determine whether to allocate a virtual resource for the corresponding service cluster or to release the already allocated virtual resource according to whether the load of the service cluster is increased or decreased.

서버 관리 모듈(35)은 각 서버의 자원 정보 및 각 서버에 할당된 가상 자원들이 어떤 서비스 클러스터를 위한 것인지에 관련된 정보 들을 관리할 수 있다. 또한, 서버 관리 모듈(35)은 서버의 사용 유무에 따른 온/오프 제어를 수행할 수 있다. The server management module 35 can manage the resource information of each server and information related to which service cluster the virtual resources allocated to each server are for. In addition, the server management module 35 can perform on / off control according to whether the server is used or not.

가상 자원 관리 모듈(36)은 가상 자원에 관련된 정보를 관리하고 가상 자원의 할당/해제(가상 머신의 온/오프)를 관리한다. 가상 자원 관리 모듈(36)은 부하 관리 모듈(34), 서버 관리 모듈(35) 및 서버 성능 관리 모듈(37)을 통해 수집된 정보를 기초로 가상 자원을 할당/해제할 서버를 결정할 수 있다. 가상 자원 관리 모듈(36)은 가상 자원의 할당/해제가 결정된 서버에 대하여 웹 서버를 실행/중지시키는 등의 제어를 수행한다. The virtual resource management module 36 manages information related to virtual resources and manages allocation / release of virtual resources (on / off of the virtual machine). The virtual resource management module 36 can determine a server to allocate / release virtual resources based on the information collected through the load management module 34, the server management module 35, and the server performance management module 37. The virtual resource management module 36 performs control such as executing / stopping the web server with respect to the server for which allocation / cancellation of virtual resources is determined.

서버 성능 관리 모듈(37)은 서버의 성능(예를 들어, 응답 시간, 자원 사용률 등)에 관한 모니터링을 수행하고 관리할 수 있다. The server performance management module 37 can monitor and manage the performance of the server (e.g., response time, resource utilization rate, etc.).

본 발명의 다양한 실시 예에서, 부하 관리 모듈(34)은 적어도 하나의 부하 분배 서버로부터 각 서비스 클러스터의 부하에 관한 정보를 수신하여, 각 서비스 클러스터에 대한 부하를 모니터링한다. 부하 관리 모듈(34)은 임의의 서비스 클러스터에 대한 부하가 증가하면, 해당 서비스 클러스터에 대하여 가상 자원을 추가로 할당해야 할 것으로 판단할 수 있다. 반대로, 부하 관리 모듈(34)은 임의의 서비스 클러스터에 대한 부하가 감소하면, 해당 서비스 클러스터에 대하여 할당되었던 가상 자원을 해제할 것으로 판단할 수 있다. 자원의 할당/해제가 결정되면 부하 관리 모듈(34)은 해당 정보를 가상 자원 관리 모듈(36)로 전달한다. In various embodiments of the invention, the load management module 34 receives information about the load of each service cluster from at least one load distribution server and monitors the load for each service cluster. The load management module 34 may determine that a virtual resource should be additionally allocated to the service cluster when the load on an arbitrary service cluster increases. Conversely, the load management module 34 may determine that, when the load on a certain service cluster decreases, the virtual resource allocated to the service cluster is released. When the resource allocation / release is determined, the load management module 34 transfers the information to the virtual resource management module 36.

가상 자원 관리 모듈(36)은 부하 관리 모듈(34), 서버 관리 모듈(35) 및 서버 성능 관리 모듈(37)을 통해 수집된 정보를 기초로 가상 자원을 할당/해제할 서버를 결정할 수 있다. 가상 자원을 할당/해제할 서버가 결정되면, 가상 자원 관리 모듈(36)은 해당 서버의 가상 머신을 실행/중단하거나 웹 서버를 실행/중지시키는 등의 제어를 수행한다. The virtual resource management module 36 can determine a server to allocate / release virtual resources based on the information collected through the load management module 34, the server management module 35, and the server performance management module 37. When a server to allocate / release a virtual resource is determined, the virtual resource management module 36 performs control such as executing / stopping the virtual machine of the server, or executing / stopping the web server.

가상 자원 관리 모듈(36)은 할당/해제된 가상 자원에 관한 정보를 부하 관리 모듈(34)에게 전달하고, 부하 관리 모듈(34)은 이를 부하 분배 서버로 전달하여, 부하 분배 서버가 서비스 클러스터의 부하를 해당 서버로 분배할 수 있도록 한다.
The virtual resource management module 36 transmits information on the allocated / released virtual resources to the load management module 34. The load management module 34 transfers the information to the load distribution server, So that the load can be distributed to the server.

도 3은 본 발명에 따른 다중 서비스 클러스터 시스템에서 자원 할당 방법을 나타낸 순서도이다. 3 is a flowchart illustrating a resource allocation method in a multi-service cluster system according to the present invention.

도 3을 참조하면, 본 발명에 따른 자원 할당 장치는, 적어도 하나의 서비스 클러스터에 대한 부하를 모니터링한다(101). 자원 할당 장치는 적어도 하나의 부하 분배 서버로부터 각 서비스 클러스터의 부하에 관한 정보를 수신할 수 있다. Referring to FIG. 3, a resource allocation apparatus according to the present invention monitors load for at least one service cluster (101). The resource allocation device may receive information on the load of each service cluster from at least one load distribution server.

다음으로, 자원 할당 장치는 부하의 변화가 감지되는지 여부를 판단한다(103). 부하의 변화가 감지되지 않으면, 자원 할당 장치는 이전 단계로 회귀하여 서비스 클러스터에 대한 부하를 계속해서 모니터링한다.Next, the resource allocation device determines whether a change in load is detected (103). If no change in load is detected, the resource allocation device returns to the previous step and continues to monitor the load on the service cluster.

임의의 서비스 클러스터에 대한 부하의 변화가 감지되면, 자원 할당 장치는 부하가 증가하였는지 또는 감지하였는지 여부를 판단한다(105).If a change in load for any service cluster is detected, the resource allocation device determines whether the load has increased or has been detected (105).

부하가 증가하였으면, 자원 할당 장치는 해당 서비스 클러스터를 위하여 추가로 자원을 할당할 서버를 결정한다(107). 자원 할당 장치는 각 서버의 자원 할당 상태 및 해당 서비스 클러스터의 속성 정보를 기초로 가상 자원을 할당할 서버를 결정할 수 있다. 일 실시 예에서, 각 서버의 자원 할당 상태는 각 서버에 할당된 가상 자원에 대응하는 서비스 클러스터의 속성 정보, 각 서버에서 이용 가능한 가상 자원의 종류 및 상태, 각 서버의 자원 사용률 등을 포함할 수 있다. 일 실시 예에서, 속성 정보는 서비스의 종류에 관한 정보 및 서비스 클러스터가 사용하는 주된 자원에 관한 정보 중 어느 하나를 포함할 수 있다. 주된 자원은, 예를 들어, CPU, 메모리 및 대역폭 중 적어도 하나를 포함할 수 있다. If the load increases, the resource allocation apparatus determines a server to allocate additional resources for the service cluster (107). The resource allocation apparatus can determine a server to which a virtual resource is allocated based on a resource allocation state of each server and attribute information of the corresponding service cluster. In one embodiment, the resource allocation status of each server may include attribute information of the service cluster corresponding to the virtual resource allocated to each server, the type and state of the virtual resource available in each server, resource utilization rate of each server, and the like have. In one embodiment, the attribution information may include either information about the type of service and information about the main resource used by the service cluster. The primary resource may include, for example, at least one of CPU, memory and bandwidth.

자원 할당 장치는 동일한 속성의 서비스 클러스터를 위한 가상 자원이 동일한 서버에 할당되지 않도록 가상 자원을 할당할 서버를 결정할 수 있다. 이로써, 자원 할당 장치는 서로 다른 종류의 자원을 주된 자원으로 하는 복수의 서비스 클러스터에 대한 가상 자원이 하나의 물리적 서버에 골고루 할당되도록 한다. The resource allocation apparatus can determine the server to which the virtual resource is allocated so that the virtual resources for the service cluster of the same attribute are not allocated to the same server. Thus, the resource allocation device allows virtual resources for a plurality of service clusters having different kinds of resources as main resources to be allocated evenly to one physical server.

가상 자원을 할당할 서버를 결정하면, 자원 할당 장치는 해당 서버에 가상 자원을 할당하고(109), 웹 서버를 실행한다(111). After determining the server to which the virtual resource is to be allocated, the resource allocation apparatus allocates a virtual resource to the server (109) and executes the web server (111).

부하가 감소하였으면, 자원 할당 장치는 해당 서비스 클러스터에 대한 가상 자원의 적어도 일부를 해제할 서버를 결정한다(113). 자원 할당 장치는 각 서버의 자원 할당 상태 및 해당 서비스 클러스터의 속성 정보를 기초로 가상 자원을 해제할 서버를 결정할 수 있다. 일 실시 예에서, 각 서버의 자원 할당 상태는 각 서버에 할당된 가상 자원에 대응하는 서비스 클러스터의 속성 정보, 각 서버에서 이용 가능한 가상 자원의 종류 및 상태, 각 서버의 자원 사용률 등을 포함할 수 있다. 일 실시 예에서, 속성 정보는 서비스의 종류에 관한 정보 및 서비스 클러스터가 사용하는 주된 자원에 관한 정보 중 어느 하나를 포함할 수 있다. 주된 자원은, 예를 들어, CPU, 메모리 및 대역폭 중 적어도 하나를 포함할 수 있다. If the load has decreased, the resource allocation device determines (113) a server to release at least a portion of the virtual resources for the service cluster. The resource allocation apparatus can determine the server to release the virtual resource based on the resource allocation status of each server and the attribute information of the corresponding service cluster. In one embodiment, the resource allocation status of each server may include attribute information of the service cluster corresponding to the virtual resource allocated to each server, the type and state of the virtual resource available in each server, resource utilization rate of each server, and the like have. In one embodiment, the attribution information may include either information about the type of service and information about the main resource used by the service cluster. The primary resource may include, for example, at least one of CPU, memory and bandwidth.

자원 할당 장치는 서로 다른 속성의 서비스 클러스터를 위한 가상 자원이 하나의 서버에 할당되도록, 가상 자원을 해제할 서버를 결정할 수 있다. 즉, 자원 할당 장치는 동일한 자원을 주된 자원으로 하는 서비스 클러스터들에 대한 가상 자원이 서로 다른 서버에 할당되어 있고, 해당 서비스 클러스터에 대한 부하가 감소되어 가상 자원 해제가 요구되는 경우에, 주된 자원이 다른 서비스 클러스터의 가상 자원이 할당되지 않은 서버의 가상 자원을 우선하여 해제할 수 있다. The resource allocation apparatus can determine the server to release the virtual resources so that the virtual resources for the service cluster having different attributes are allocated to one server. That is, when the resource allocation apparatuses allocate virtual resources for service clusters having the same resource as the main resource to different servers and the load on the corresponding service cluster is reduced and the virtual resource release is required, A virtual resource of a server to which a virtual resource of another service cluster is not allocated can be released in priority.

가상 자원을 해제할 서버를 결정하면, 자원 할당 장치는 해당 서버에 대하여 해당 서비스 클러스터를 위한 웹 서버를 중지하고(115), 할당된 가상 자원을 해제한다(117).After determining the server to release the virtual resource, the resource allocation apparatus suspends the web server for the corresponding service cluster to the server (115) and releases the allocated virtual resource (117).

이후 자원 할당 장치는 데이터 제공 서비스가 모두 종료될 때까지 서비스 클러스터의 부하 모니터링 및 가상 자원의 할당/해제 동작을 반복하여 수행할 수 있다.
Then, the resource allocation apparatus can repeatedly perform load monitoring and virtual resource allocation / release operations of the service cluster until the data providing services are all terminated.

본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 그리고 본 명세서와 도면에 개시된 실시 예들은 본 발명의 내용을 쉽게 설명하고, 이해를 돕기 위해 특정 예를 제시한 것일 뿐이며, 본 발명의 범위를 한정하고자 하는 것은 아니다. 따라서 본 발명의 범위는 여기에 개시된 실시 예들 이외에도 본 발명의 기술적 사상을 바탕으로 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.It will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined by the appended claims. It is to be understood that both the foregoing general description and the following detailed description of the present invention are exemplary and explanatory and are intended to provide further explanation of the invention as claimed. Accordingly, the scope of the present invention should be construed as being included in the scope of the present invention, all changes or modifications derived from the technical idea of the present invention.

10: 네트워크 20a, 20b, 20c: 부하 분배 서버
30: 자원 할당 장치 31: 통신부
32: 제어부 33: 클러스터 관리 모듈
34: 부하 관리 모듈 35: 서버 관리 모듈
36: 가상 자원 관리 모듈 37: 서버 성능 관리 모듈
40a, 40b, 40c: 서버
10: Network 20a, 20b, 20c: Load distribution server
30: resource allocation device 31:
32: control unit 33: cluster management module
34: load management module 35: server management module
36: virtual resource management module 37: server performance management module
40a, 40b, 40c:

Claims (14)

다중 서비스 클러스터에 대한 자원 할당 방법으로,
적어도 하나의 서비스 클러스터에 대한 부하를 모니터링하는 단계;
상기 모니터링 결과에 따라, 임의의 서비스 클러스터에 대한 가상 자원 할당이 요구되면, 상기 서비스 클러스터의 속성 정보를 기초로, 상기 서비스 클러스터에 대한 가상 자원을 할당할 서버를 결정하는 단계; 및
상기 결정된 서버에 상기 서비스 클러스터에 대한 가상 자원을 할당하는 단계를 포함하는 것을 특징으로 하는 방법.
As a resource allocation method for a multi-service cluster,
Monitoring a load on at least one service cluster;
Determining a server to which a virtual resource for the service cluster is to be allocated, based on the attribute information of the service cluster, when a virtual resource allocation for an arbitrary service cluster is requested according to the monitoring result; And
And allocating virtual resources for the service cluster to the determined server.
제1항에 있어서, 상기 속성 정보는,
상기 서비스 클러스터가 사용하는 주된 자원의 종류를 포함하는 것을 특징으로 하는 방법.
The method according to claim 1,
And a type of a main resource used by the service cluster.
제2항에 있어서, 상기 주된 자원은,
CPU, 메모리 및 대역폭 중 적어도 하나를 포함하는 것을 특징으로 하는 방법.
3. The method of claim 2,
And at least one of a CPU, a memory, and a bandwidth.
제1항에 있어서, 상기 서비스 클러스터에 대한 가상 자원을 할당할 서버를 결정하는 단계는,
적어도 하나의 서버에 할당된 가상 자원에 대응하는 서비스 클러스터의 속성 정보를 획득하는 단계; 및
동일한 속성의 서비스 클러스터를 위한 가상 자원이 동일한 서버에 할당되지 않도록, 상기 서비스 클러스터의 속성 정보를 기초로 상기 서비스 클러스터에 대한 가상 자원을 할당할 서버를 결정하는 단계를 포함하는 것을 특징으로 하는 방법.
2. The method of claim 1, wherein determining a server to allocate virtual resources for the service cluster comprises:
Obtaining attribute information of a service cluster corresponding to a virtual resource allocated to at least one server; And
Determining a server to which a virtual resource for the service cluster is to be allocated based on attribute information of the service cluster so that virtual resources for the service cluster of the same attribute are not allocated to the same server.
제1항에 있어서,
상기 할당된 가상 자원에 대한 정보를 상기 임의의 서비스 클러스터의 분배 서버로 전송하는 단계를 더 포함하는 것을 특징으로 하는 방법.
The method according to claim 1,
And transmitting information on the allocated virtual resource to a distribution server of the arbitrary service cluster.
제1항에 있어서,
상기 모니터링 결과에 따라, 임의의 서비스 클러스터에 대한 가상 자원 해제가 요구되면, 상기 서비스 클러스터의 속성 정보를 기초로, 상기 서비스 클러스터에 대한 가상 자원을 해제할 서버를 결정하는 단계; 및
상기 결정된 서버에 할당된 상기 서비스 클러스터에 대한 가상 자원을 해제하는 단계를 포함하는 것을 특징으로 하는 방법.
The method according to claim 1,
Determining a server to release a virtual resource for the service cluster based on the attribute information of the service cluster when a virtual resource release for an arbitrary service cluster is requested according to the monitoring result; And
And releasing virtual resources for the service cluster assigned to the determined server.
제7항에 있어서,
상기 가상 자원의 할당 및 상기 가상 자원의 해제 결과에 따라, 적어도 하나의 서버에 대한 온/오프를 제어하는 단계를 더 포함하는 것을 특징으로 하는 방법.
8. The method of claim 7,
And controlling on / off for at least one server according to the allocation of the virtual resources and the result of the release of the virtual resources.
다중 서비스 클러스터에 대한 자원 할당 장치로,
외부와 데이터 통신을 수행하는 통신부; 및
적어도 하나의 서비스 클러스터에 대한 부하를 모니터링하고, 상기 모니터링 결과에 따라, 임의의 서비스 클러스터에 대한 가상 자원 할당이 요구되면, 상기 서비스 클러스터의 속성 정보를 기초로, 상기 서비스 클러스터에 대한 가상 자원을 할당할 서버를 결정하고, 상기 결정된 서버에 상기 서비스 클러스터에 대한 가상 자원을 할당하는 제어부를 포함하는 것을 특징으로 하는 장치.
A resource allocation apparatus for a multi-service cluster,
A communication unit for performing data communication with the outside; And
The method of claim 1, further comprising: monitoring a load on at least one service cluster; if a virtual resource allocation for an arbitrary service cluster is requested according to the monitoring result, allocating a virtual resource for the service cluster And allocating virtual resources for the service cluster to the determined server.
제8항에 있어서, 상기 속성 정보는,
상기 서비스 클러스터가 사용하는 주된 자원의 종류를 포함하는 것을 특징으로 하는 장치.
The information processing apparatus according to claim 8,
And a type of a main resource used by the service cluster.
제9항에 있어서, 상기 주된 자원은,
CPU, 메모리 및 대역폭 중 적어도 하나를 포함하는 것을 특징으로 하는 장치.
10. The method of claim 9,
And at least one of a CPU, a memory, and a bandwidth.
제8항에 있어서, 상기 제어부는,
적어도 하나의 서버에 할당된 가상 자원에 대응하는 서비스 클러스터의 속성 정보를 획득하고, 동일한 속성의 서비스 클러스터를 위한 가상 자원이 동일한 서버에 할당되지 않도록, 상기 서비스 클러스터의 속성 정보를 기초로 상기 서비스 클러스터에 대한 가상 자원을 할당할 서버를 결정하는 것을 특징으로 하는 장치.
9. The apparatus according to claim 8,
Wherein the attribute information of the service cluster corresponding to the virtual resource allocated to the at least one server is acquired and the virtual resource for the service cluster of the same attribute is not assigned to the same server, To determine a server to which to allocate a virtual resource for the virtual resource.
제8항에 있어서, 상기 제어부는,
상기 할당된 가상 자원에 대한 정보를 상기 임의의 서비스 클러스터의 분배 서버로 전송하도록 제어하는 것을 특징으로 하는 장치.
9. The apparatus according to claim 8,
And to transmit information on the allocated virtual resource to a distribution server of the arbitrary service cluster.
제8항에 있어서, 상기 제어부는,
상기 모니터링 결과에 따라, 임의의 서비스 클러스터에 대한 가상 자원 해제가 요구되면, 상기 서비스 클러스터의 속성 정보를 기초로, 상기 서비스 클러스터에 대한 가상 자원을 해제할 서버를 결정하고, 상기 결정된 서버에 할당된 상기 서비스 클러스터에 대한 가상 자원을 해제하는 것을 특징으로 하는 장치.
9. The apparatus according to claim 8,
Determining a server to release a virtual resource for the service cluster based on the attribute information of the service cluster when a virtual resource release for an arbitrary service cluster is requested according to the monitoring result, And releases the virtual resources for the service cluster.
제13항에 있어서, 상기 제어부는,
상기 가상 자원의 할당 및 상기 가상 자원의 해제 결과에 따라, 적어도 하나의 서버에 대한 온/오프를 제어하는 것을 특징으로 하는 장치.
14. The apparatus of claim 13,
And controls on / off of at least one server according to a result of the allocation of the virtual resource and the release of the virtual resource.
KR1020150000211A 2015-01-02 2015-01-02 Resource Allocation Method for Multiple Service Cluster and Apparatus thereof KR20160083989A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150000211A KR20160083989A (en) 2015-01-02 2015-01-02 Resource Allocation Method for Multiple Service Cluster and Apparatus thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150000211A KR20160083989A (en) 2015-01-02 2015-01-02 Resource Allocation Method for Multiple Service Cluster and Apparatus thereof

Publications (1)

Publication Number Publication Date
KR20160083989A true KR20160083989A (en) 2016-07-13

Family

ID=56505437

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150000211A KR20160083989A (en) 2015-01-02 2015-01-02 Resource Allocation Method for Multiple Service Cluster and Apparatus thereof

Country Status (1)

Country Link
KR (1) KR20160083989A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109936471A (en) * 2017-12-18 2019-06-25 北京图森未来科技有限公司 A kind of resource allocation methods and device of more clusters

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109936471A (en) * 2017-12-18 2019-06-25 北京图森未来科技有限公司 A kind of resource allocation methods and device of more clusters
CN109936471B (en) * 2017-12-18 2022-05-24 北京图森智途科技有限公司 Multi-cluster resource allocation method and device

Similar Documents

Publication Publication Date Title
CN102187315B (en) Methods and apparatus to get feedback information in virtual environment for server load balancing
US10812395B2 (en) System and method for policy configuration of control plane functions by management plane functions
US8949847B2 (en) Apparatus and method for managing resources in cluster computing environment
US8949410B2 (en) Server load balancer scaling for virtual servers
US20200029110A1 (en) Bandwidth Control Method and Apparatus, and Device
KR100956636B1 (en) System and method for service level management in virtualized server environment
CN102457906B (en) Load balancing control method and system of message queues
CN109167702A (en) A kind of distributed test method and device based on load balancing
CN105052074A (en) Methods, systems, and computer readable media for providing a virtualized diameter network architecture and for routing traffic to dynamically instantiated diameter resource instances
JP2009181578A (en) Method and device for dynamically allocating resources to a plurality of virtual machines
US10541901B2 (en) Methods, systems and computer readable media for optimizing placement of virtual network visibility components
CN103067293A (en) Method and system for multiplex and connection management of a load balancer
JP2011521319A (en) Method and apparatus for managing computing resources of a management system
CN109726005A (en) For managing method, server system and the computer program product of resource
US20230222006A1 (en) Container Orchestration System
WO2016095524A1 (en) Resource allocation method and apparatus
WO2006029771A1 (en) Computer arrangement and method for providing services for clients over a network
CN109729113A (en) Manage method, server system and the computer program product of dedicated processes resource
CN112882827A (en) Method, electronic device and computer program product for load balancing
WO2019034091A1 (en) Distribution method for distributed data computing, device, server and storage medium
KR20160083989A (en) Resource Allocation Method for Multiple Service Cluster and Apparatus thereof
CN115378885B (en) Virtual machine service network bandwidth management method and device under super fusion architecture
KR20130028554A (en) Large capacity distributed processing apparatus using a message bus and the method thereof
US20220350506A1 (en) Dynamically reserved resource allocation
JP2010231601A (en) Grid computing system, method and program for controlling resource

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid