WO2019132300A1 - 분산 클라우드 환경에서 퍼지값 재조정에 따른 마이그레이션 시스템 및 방법 - Google Patents

분산 클라우드 환경에서 퍼지값 재조정에 따른 마이그레이션 시스템 및 방법 Download PDF

Info

Publication number
WO2019132300A1
WO2019132300A1 PCT/KR2018/015419 KR2018015419W WO2019132300A1 WO 2019132300 A1 WO2019132300 A1 WO 2019132300A1 KR 2018015419 W KR2018015419 W KR 2018015419W WO 2019132300 A1 WO2019132300 A1 WO 2019132300A1
Authority
WO
WIPO (PCT)
Prior art keywords
fuzzy
unit
resource
resource usage
learning
Prior art date
Application number
PCT/KR2018/015419
Other languages
English (en)
French (fr)
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
Priority claimed from KR1020180035005A external-priority patent/KR102027303B1/ko
Application filed by 경희대학교산학협력단 filed Critical 경희대학교산학협력단
Publication of WO2019132300A1 publication Critical patent/WO2019132300A1/ko

Links

Images

Classifications

    • 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]

Definitions

  • the present invention relates to a migration system and method, and more particularly, to a system and method for predicting a state of a virtual machine through a fuzzy value readjustment in a distributed cloud environment and performing a migration.
  • Migration techniques for managing resources can identify the nature of the workload to be performed at the point of time when a virtual machine (VM) allocation is required, and place the virtual machine in a physical resource so that the workload can be performed most efficiently. It also uses migration technology to optimize performance and lower power consumption.
  • VM virtual machine
  • the purpose of existing migration technologies is to reduce the overall migration time, and the service latency is not taken into consideration, so that the performance of the application program can not be precisely predicted under a heavy load of the system as a whole, .
  • the physical machine since the physical machine has a hotspot problem in which performance is degraded if the allocated virtual machines do not have sufficient resources required, the CPU, memory, and network resource requirements of the virtual machine are dynamically allocated Systems and methods are needed.
  • the migration system includes a resource monitoring unit for monitoring resource use, a fuzzy logic unit for performing fuzzy learning and learning on the resource use data monitored through the resource monitoring unit, A fuzzy system for determining whether or not a re-adjustment is necessary, and a migration manager for determining whether or not the fuzzy system is migrated according to the determination of fuzzy readjustment.
  • the resource monitoring unit may include a workload analysis unit that analyzes the workload to be provided to the user based on the resource usage data, and a metric calculator for calculating a metric related to the resource usage data to be fuzzy based on the analysis result of the workload. And a metric analysis unit for selecting the metric analysis unit.
  • the workload analysis unit may analyze a pattern of the resource usage data of the workload and perform clustering on the resource usage data based on the analyzed pattern of the resource usage data.
  • the fuzzy system includes a fuzzy unit for performing fuzzy through a scale mapping that changes the range of the resource use data value to a corresponding universe of discourse, A rule generating unit for generating and managing a fuzzy rule, a decision logic for determining a rule based on the fuzzy rule generated by the rule generating unit, And a de-mapping unit for performing the de-mapping through scale mapping for changing into a discussion area corresponding to a range of the result value of the fuzzy inference unit.
  • the fuzzy system may further include a learning unit that performs learning on the resource usage data fuzed through the fuzzy unit.
  • the apparatus may further include a re-adjustment determining unit that determines whether the fuzzy re-adjustment is necessary based on the prediction data acquired through the learning unit.
  • the re-adjustment determination unit may determine whether the fuzzy re-adjustment is necessary by comparing the QoS value for the prediction data with a predetermined threshold value.
  • the rule generator may generate a new fuzzy rule if it is determined that the fuzzy readjustment is necessary according to the readjustment determiner.
  • the method includes the steps of: (a) monitoring resource usage; (b) performing fuzzy learning and learning on resource usage data monitored through (a); (c) Determining whether or not the fuzzy readjustment is necessary based on the prediction data acquired in the step (b); and (d) determining whether to perform the fuzzy readjustment in the step (c) have.
  • the step (a) includes the steps of: (a-1) analyzing a workload to be provided to a user based on the resource use data; and (a-2) And selecting a metric related to the resource use data to be converted.
  • the step (b) includes the steps of: (f-1) performing fuzzy addition on the resource use data; and (b-2) And acquiring the prediction data.
  • the step (b) may further comprise a step (b-3) of performing the re-clustering on the fuzzy resource use data.
  • the step (c) may determine whether the fuzzy readjustment is necessary by comparing the QoS value for the prediction data with a predetermined threshold value.
  • the steps (b) to (c) may be repeatedly performed until it is determined that the purging is not necessary.
  • resources can be efficiently utilized and performance can be improved by utilizing migration in a distributed cloud environment, and improved service in a distributed cloud environment can be guaranteed.
  • FIG. 1 illustrates an example of a cloud data center system to which the present invention may be applied.
  • FIG. 2 is a block diagram of a migration system according to an embodiment of the present invention.
  • FIG. 3 shows a block diagram of a resource monitoring unit.
  • FIG. 4 is a flowchart of a migration method according to an embodiment of the present invention.
  • FIG. 5 is a graph showing the results before and after learning for purge rebalancing.
  • FIG. 6 is a graph showing an example of the result of the purge rebalancing.
  • FIG. 7 illustrates a comparison of the accuracy of a migration system and method and an existing algorithm according to an embodiment of the present invention.
  • first, second, or the like may be used to describe various elements, but the elements should not be limited by the terms.
  • the terms may be named for the purpose of distinguishing one element from another, for example without departing from the scope of the right according to the concept of the present invention, the first element being referred to as the second element, Similarly, the second component may also be referred to as the first component.
  • FIG. 1 illustrates an example of a cloud data center system to which the present invention may be applied.
  • the cloud data center system 1 may be a Software-Defined Networking (SDN) based system.
  • the cloud data center system 1 may include a data center 10, an SDN 20, and a migration system 30.
  • the data center 10 includes a transmission / reception unit connected to the outside, a service recognition unit for recognizing a service requested by the user, a resource monitoring unit for monitoring resource usage, and a virtual host And a virtual machine management unit for determining a virtual machine.
  • the SDN 20 extends the virtual network to control and manage the cloud data centers 10 so that they can be interconnected.
  • the SDN 20 may include a controller that verifies the API and converts the interface into an interface that the network device can understand, and then transmits the controller to the network device and a service recognition unit that recognizes the service requested by the user.
  • the SDN controller manages open flow switches constituting a physical network and an open virtual switch (hereinafter, OvS: Open Virtual Switch) constituting a virtual network. These OvSs allow virtual machines created on the physical machine to be connected to the network.
  • OvS Open Virtual Switch
  • a virtual machine connected to a network through OvS is a machine that is virtually created and operated based on the resources of the physical machine.
  • Each virtual machine can operate as an independent computing device by separately operating an operating system (OS).
  • OS operating system
  • the system in any one virtual machine can be migrated to another virtual machine.
  • Migration refers to the migration of systems, applications, or modules in a particular environment to another environment.
  • the existing environment and the new environment in which the system exists may not be identical to each other.
  • the system resources (CPU, memory, etc.) provided to the existing virtual machine and the system resources provided to the new virtual machine may be different from each other.
  • the migration system 30 according to an embodiment of the present invention to be described below is applicable not only to the SDN-based network environment described above as an example but also to other network environments.
  • FIG. 2 is a block diagram of a migration system according to an embodiment of the present invention.
  • the migration system 30 is a system for migrating a system in any virtual machine among virtual machines to another virtual machine.
  • the system includes a transceiver 310, a resource monitoring unit 330, a fuzzy system 350 And a migration management unit 370.
  • the transmission / reception unit 310 exchanges data with the data center 10 via the SDN 20.
  • the resource monitoring unit 330 monitors the state of the virtual machine and / or resources provided to the virtual machine. More specifically, the resource monitoring unit 330 acquires data on the state of the virtual machine or the resource usage provided to the virtual machine by monitoring the usage amount of the CPU of the virtual machine, the memory usage amount of the RAM and / or the network resource state, can do. In addition, the resource monitoring unit 330 may monitor the time (waiting time) of the virtual machine, the time when the virtual machine has operated (execution time), the period when the operation of the virtual machine is terminated, and / And the like.
  • the monitoring result of the resource monitoring unit 330 may be transmitted to the fuzzy system 350.
  • the resource monitoring unit 330 may transmit monitoring results to the fuzzy system 350 periodically or continuously.
  • the resource monitoring unit 330 may include a workload analysis unit and a metric analysis unit.
  • the workload analysis unit analyzes the workload according to the service to be provided to the user based on the resource usage data monitored by the resource monitoring unit 330. [ More specifically, the workload analysis unit analyzes the patterns of the resource usage data monitored through the resource monitoring unit 330, and performs a cluster analysis on the resource usage data by clustering based on the analyzed resource usage pattern data.
  • the K-means algorithm may be used as the clustering algorithm used for cluster analysis, but various algorithms can be used without being limited thereto.
  • the workload analysis unit may perform the re-clustering according to the falsified resource usage data through the fuzzy control unit 351.
  • the metric analyzer performs an analysis on the metric and selects a metric for the resource usage data to be fuzed.
  • the metric analysis unit may compare the metrics based on the purpose of the recognized service and the clustered resource usage data through the service recognition unit, and may select a metric for improving the migration efficiency.
  • Table 1 below is an example of a metric according to the purpose of a service.
  • the fuzzy system 350 performs learning of the monitored resource use data through the resource monitoring unit 330 or performs fuzzy analysis on the resource usage data of the selected metric based on the monitoring result and the learning result, Can be generated.
  • the purge control unit 351 includes a purge control unit 351, a learning unit 353 and a rebalancing determination unit 355.
  • the purge control unit 351 receives a resource monitoring result and a resource of a selected metric based on the learning result
  • the fuzzy rule can be generated and the fuzzy rule can be generated.
  • the purge control section 351 includes a purge section 351a, a rule generation section 351d, a fuzzy inference section 351b, and a defuzzification section 351c.
  • the fuzzification unit 351a can convert the input variable, which is the average value of the monitored resource use data, into a predetermined value at which the instruction can be realized, thereby performing the fuzzification. That is, the fuzzification unit 351a fuzzles the input variable through a scale mapping that changes the range of values of the input variable to a corresponding universe of discourse.
  • the rule generation unit 351d records and manages a set of control rules. On the other hand, the rule generating unit 351d can generate a new rule when the fuzzy readjustment is necessary according to the readjustment determining unit 355 to be described later.
  • the fuzzy inference unit 351b may perform decision-making logic to determine a rule based on the fuzzy input and the fuzzy rule generated by the rule generation unit 351d.
  • the result value obtained by performing the fuzzification is transmitted to the diffusing unit 351c.
  • the diffusing unit 351c performs a scale mapping operation of converting the output variable into a desired range and switching to the discussion area.
  • the resultant values that have been classified according to the scale mapping can be transmitted to the resource monitoring unit 330.
  • the learning unit 353 performs machine learning on the fuzzy resource use data.
  • the machine learning can be implemented using a predetermined machine learning algorithm.
  • the machine learning algorithms can be classified into two types: Deep Neural Network (DNN), Convolutional Neural Network (CNN), Recurrent Neural Network (RNN), Deep Belief Network (DBN) And deep Q-networks, but the machine learning algorithm that can be implemented is not limited thereto.
  • the learning unit 353 can perform learning based on the fuzzy resource use data to check a change in the resource state.
  • the fuzzy control unit 351 according to the learning result (i.e., Performing fuzzification can reflect accurate resource usage.
  • the re-adjustment determination unit 355 determines whether or not the fuzzy re-adjustment is necessary depending on whether or not the QoS is satisfied. More specifically, the re-adjustment determination unit 355 determines whether the QoS is satisfied using the prediction data, which can be determined by comparing the QoS value for the prediction data with a predetermined threshold value.
  • the QoS value defined by Equation (1) Is less than a predetermined threshold value ), It can be determined that the QoS is satisfied.
  • the QoS value ( ) Is less than a predetermined threshold value ), It can be judged that it is not necessary to perform the fuzzy re-adjustment considering that the QoS for the purpose of minimizing the migration execution time is satisfied.
  • the QoS value defined by the following equation (2) Is less than a predetermined threshold value
  • a QoS value (MSE) value associated with traffic demand ) Is less than a predetermined threshold value ), It can be judged that it is not necessary to perform the fuzzy readjustment because the demand forecast is within the error range.
  • MSE QoS value
  • the re-adjustment determination unit 355 determines whether or not the QoS is satisfied to determine whether the fuzzy re-adjustment is to be performed. If the QoS is not satisfied, the re-adjustment determination unit 355 may transmit a signal for the fuzzy re-adjustment to the fuzzy system 350.
  • the QoS value for determining whether or not the fuzzy readjustment is performed is not limited to the above-described embodiment, but can be changed according to the service objective and metric provided to the user.
  • the migration management unit 370 determines whether the purge system 350 is to be migrated or not based on the determination of purge rebalancing. If it is determined that the purge rebalancing is no longer needed, the migration management unit 370 can determine whether to migrate according to the state of the virtual machine predicted through the virtual machine management unit.
  • FIG. 4 is a flowchart of a migration method according to an embodiment of the present invention.
  • the description of the parts overlapping with those described above will be omitted.
  • step S410 performs an analysis on the workload.
  • a pattern of resource usage data monitored by the resource monitoring unit 330 is analyzed, and cluster analysis is performed based on the analyzed pattern to perform cluster analysis on the resource usage data of the workload.
  • the step of monitoring the state of the virtual machine and / or the provided resources provided to the virtual machine through the resource monitoring unit 330 may be performed prior to step S410.
  • step S420 the metrics are analyzed according to the cluster usage resource data and the metrics for improving the migration efficiency (i.e., for guaranteeing QoS) are selected in step S410.
  • a score indicating a degree of importance for the metric selection may be calculated and a step of comparing the score may be additionally performed. Meanwhile, a plurality of metrics can be used at the same time depending on the purpose of the service.
  • the resource utilization data related to the selected metric based on the monitored resource usage data is fuzzy.
  • the fuzzification is performed through the purge system 350.
  • the fuzzy readjustment may be performed based on the monitored resource usage data and the learned resource usage data to reflect the status of the resource again.
  • Step S440 performs re-clustering on the fuzzy resource usage data. That is, clustering of fuzzy resource use data is performed again to perform cluster analysis, and reflects the state of resources.
  • step S450 the resource usage data is learned to predict a change in resource use.
  • a change in resource use can be predicted using the learned model through step S450, and it is possible to determine whether or not the fuzzy readjustment is based on the predicted change.
  • step S460 it is determined whether the purge is to be readjusted.
  • the re-adjustment may be performed by comparing the QoS value of the resource usage data predicted through step S450 with a preset threshold value.
  • step S460 If it is determined in step S460 that the predetermined QoS value is satisfied (S470), the state of the virtual machine is predicted (S480), and the migration is determined according to the prediction result (S490)
  • step S460 If it is determined in step S460 that the preset QoS value is not satisfied (S470), it is determined that the fuzzy re-adjustment is necessary (S430b)
  • learning is performed on arbitrary resource use data in order to determine whether or not the fuzzy readjustment is performed.
  • Table 2 below shows the newly generated fuzzy rules.
  • a fuzzy rule for each metric is newly generated, and the state of the virtual machine is predicted according to each newly generated fuzzy rule.
  • FIG. 6 showing an example of the result of the fuzzy rebalance
  • the state (energy consumption) of the virtual machine can be predicted according to each fuzzy rule.
  • FIG. 7 illustrates a comparison of the accuracy of a migration system and method and an existing algorithm according to an embodiment of the present invention.
  • the horizontal axis represents time intervals (T1: ⁇ 3h, T2: 3-6h, T3: 7-12h, T4: 13-24h), and the vertical axis is the MSE for the predicted state of the virtual machine. That is, it can be seen that the prediction of the virtual machine according to the present invention shows an improved prediction ratio as compared with the conventional prediction algorithm in most of the time intervals.
  • the migration efficiency can be improved through the purge reordering according to the requirements of the user and the purpose of the service in the distributed cloud environment.
  • the apparatus described above may be implemented as a hardware component, a software component, and / or a combination of hardware components and software components.
  • the apparatus and components described in the embodiments may be implemented within a computer system, such as, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable array (FPA) A programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions.
  • the processing device may execute an operating system (OS) and one or more software applications running on the operating system.
  • the processing device may also access, store, manipulate, process, and generate data in response to execution of the software.
  • OS operating system
  • the processing device may also access, store, manipulate, process, and generate data in response to execution of the software.
  • the processing apparatus may be described as being used singly, but those skilled in the art will recognize that the processing apparatus may have a plurality of processing elements and / As shown in FIG.
  • the processing unit may comprise a plurality of processors or one processor and one controller.
  • Other processing configurations are also possible, such as a parallel processor.
  • the software may include a computer program, code, instructions, or a combination of one or more of the foregoing, and may be configured to configure the processing device to operate as desired or to process it collectively or collectively Device can be commanded.
  • the software and / or data may be in the form of any type of machine, component, physical device, virtual equipment, computer storage media, or device , Or may be permanently or temporarily embodied in a transmitted signal wave.
  • the software may be distributed over a networked computer system and stored or executed in a distributed manner.
  • the software and data may be stored on one or more computer readable recording media.
  • the method according to an embodiment may be implemented in the form of a program command that can be executed through various computer means and recorded in a computer-readable medium.
  • the computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination.
  • the program instructions to be recorded on the medium may be those specially designed and configured for the embodiments or may be available to those skilled in the art of computer software.
  • Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tape; optical media such as CD-ROMs and DVDs; magnetic media such as floppy disks; Magneto-optical media, and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like.
  • program instructions include machine language code such as those produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like.
  • the hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.

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

마이그레이션 시스템이 개시된다. 상기 마이그레이션 시스템은 자원 사용을 모니터링하는 자원 모니터링부, 상기 자원 모니터링부를 통해 모니터링된 자원 사용 데이터에 대하여 퍼지화 및 학습을 수행하고, 학습을 통해 획득한 예측 데이터를 토대로 퍼지 재조정이 필요한지 여부를 판단하는 퍼지 시스템, 및 상기 퍼지 시스템의 퍼지 재조정 여부의 판단에 따라 마이그레이션 여부를 결정하는 마이그레이션 관리부를 포함한다.

Description

분산 클라우드 환경에서 퍼지값 재조정에 따른 마이그레이션 시스템 및 방법
본 발명은 마이그레이션 시스템 및 방법에 관한 것으로서, 보다 구체적으로 분산 클라우드 환경에서 퍼지값 재조정을 통해 가상머신의 상태를 예측하고, 마이그레이션을 실시하는 시스템 및 방법에 관한 것이다.
최근 데이터센터의 증가로 인해 에너지 사용량이 증가하고 있으며 분산된 클라우드 환경에서 특정 데이터센터로부터 서비스를 받던 사용자가 다른 지역으로 이동하더라도 지리적으로 가까운 새로운 데이터센터로부터 기존의 서비스를 연속적으로 받을 수 있는 방법이 필요하다.
자원을 관리하기 위한 마이그레이션 기술은 가상머신(VM) 할당이 필요한 시점에 수행하려는 워크로드의 특성을 파악하여 워크로드를 가장 효율적으로 수행시킬 수 있도록 가상머신을 물리적 자원에 위치시킬 수 있다. 또한, 성능 최적화 및 저전력 운용을 위해 마이그레이션 기술을 활용하여 그 효율을 높이고 있다.
한편, 기존 마이그레이션 기술들의 목적은 전체 마이그레이션 시간을 줄이는 것일 뿐이고, 서비스 대기시간도 고려되지 않아 전체적으로 시스템의 부하가 큰 상황에서는 응용 프로그램의 성능을 정확하게 예측하지 못하고 있으며 동적으로 자원을 할당하지 못한다는 문제점이 가지고 있다. 특히, 물리머신은 할당된 가상머신들의 시간에 따라 요구되는 자원을 충분히 보유하지 못하면 성능이 저하되는 Hotspot 문제가 발생하기 때문에 가상머신의 CPU, 메모리, 네트워크 자원요구를 서비스에 적합하게 동적으로 할당할 수 있는 시스템 및 방법이 필요하다.
본 발명의 목적은 분산된 데이터센터 내에서 사용자가 자원을 효율적으로 사용할 수 있도록 사용자에게 끊임없는 서비스를 보장해주고, QoS를 높여줄 수 있는 마이그레이션 시스템 및 방법을 제공하는 것에 있다.
본 발명의 일 실시 예에 따른 마이그레이션 시스템은 자원 사용을 모니터링하는 자원 모니터링부, 상기 자원 모니터링부를 통해 모니터링된 자원 사용 데이터에 대하여 퍼지화 및 학습을 수행하고, 학습을 통해 획득한 예측 데이터를 토대로 퍼지 재조정이 필요한지 여부를 판단하는 퍼지 시스템, 및 상기 퍼지 시스템의 퍼지 재조정 여부의 판단에 따라 마이그레이션 여부를 결정하는 마이그레이션 관리부를 포함할 수 있다.
여기에, 상기 자원 모니터링부는 상기 자원 사용 데이터를 토대로 사용자에 제공될 워크로드에 대한 분석을 수행하는 워크로드 분석부, 및 상기 워크로드에 대한 분석 결과를 토대로 퍼지화될 상기 자원 사용 데이터에 관한 메트릭을 선정하는 메트릭 분석부를 포함할 수 있다.
여기에, 상기 워크로드 분석부는 상기 워크로드의 자원 사용 데이터의 패턴을 분석하고, 분석된 상기 자원 사용 데이터의 패턴을 기반으로 상기 자원 사용 데이터에 대한 클러스터링을 수행할 수 있다.
여기에, 상기 퍼지 시스템은 상기 자원 사용 데이터 값의 범위에 대해 상응하는 논의 영역(Universe of discourse)으로 변화시키는 스케일 맵핑(Scale Mapping)을 통해 퍼지화를 수행하는 퍼지화부, 제어 규칙의 집합인 퍼지 룰(Fuzzy Rule)을 생성하고 관리하는 룰 생성부, 상기 퍼지화부를 통해 퍼지화된 자원 사용 데이터 및 상기 룰 생성부에서 생성된 퍼지 룰에 기반하여 규칙을 결정하는 의사 결정 논리(Decision-Making Logic)를 수행하는 퍼지 추론부, 및 상기 퍼지 추론부의 결과값의 범위에 상응되는 논의 영역으로 변화시키는 스케일 맵핑을 통해 디퍼지화를 수행하는 디퍼지화부를 포함할 수 있다.
여기에, 상기 퍼지 시스템은 상기 퍼지화부를 통해 퍼지화된 상기 자원 사용 데이터에 대하여 학습을 수행하는 학습부를 더 포함할 수 있다.
여기에, 상기 학습부를 통해 획득한 예측 데이터를 토대로 퍼지 재조정이 필요한지 여부를 판단하는 재조정 판단부를 더 포함할 수 있다.
여기에, 상기 재조정 판단부는 상기 예측 데이터에 대한 QoS값과 기 설정된 임계값의 비교를 통하여 퍼지 재조정이 필요한지 여부를 판단할 수 있다.
여기에, 상기 룰 생성부는 상기 재조정 판단부에 따라 퍼지 재조정이 필요한 것으로 판단되면, 새로운 퍼지 룰을 생성할 수 있다.
본 발명의 일 실시 예에 따른 마이그레이션 방법은 (a) 자원 사용을 모니터링하는 단계, (b) 상기 (a) 단계를 통해 모니터링된 자원 사용 데이터에 대하여 퍼지화 및 학습을 수행하는 단계, (c) 상기 (b) 단계를 통해 획득한 예측 데이터를 토대로 퍼지 재조정이 필요한지 여부를 판단하는 단계, 및 (d) 상기 (c) 단계의 퍼지 재조정 여부의 판단에 따라 마이그레이션 여부를 결정하는 단계를 포함할 수 있다.
여기에, 상기 (a) 단계는 (a-1) 상기 자원 사용 데이터를 토대로 사용자에 제공될 워크로드에 대한 분석을 수행하는 단계, 및 (a-2) 상기 워크로드에 대한 분석 결과를 토대로 퍼지화될 상기 자원 사용 데이터에 관한 메트릭을 선정하는 단계를 더 포함할 수 있다.
여기에, 상기 (b) 단계는 (b-1) 상기 자원 사용 데이터에 대하여 퍼지화를 수행하는 단계, 및 (b-2) 상기 (b-1) 단계를 통해 퍼지화된 상기 자원 사용 데이터에 대하여 학습을 수행하고, 예측 데이터를 획득하는 단계를 더 포함할 수 있다.
여기에, 상기 (b) 단계는 (b-3) 상기 퍼지화된 자원 사용 데이터에 대하여 재 클러스터링을 수행하는 단계를 더 포함할 수 있다.
여기에, 상기 (c) 단계는 상기 예측 데이터에 대한 QoS값과 기 설정된 임계값의 비교를 통하여 퍼지 재조정이 필요한지 여부를 판단할 수 있다.
여기에, 상기 (c) 단계를 통해 퍼지 재조정이 필요한 것으로 판단되면, 퍼지 재조정이 필요하지 않다고 판단될 때까지 상기 (b) 단계 내지 상기 (c) 단계를 반복적으로 수행할 수 있다.
본 발명의 일 실시 예에 따르면, 분산 클라우드 환경에서의 마이그레이션을 활용하여 자원을 효율적으로 활용하고 성능을 향상시킬 수 있으며, 분산 클라우드 환경에서의 향상된 서비스를 보장할 수 있다.
또한, 마이그레이션시 사용되는 지표의 값들을 퍼지화 시키고, 퍼지 재조정을 통한 값을 반영하여 마이그레이션에 영향을 줄 수 있는 요소들을 재조정하고, 마이그레이션시 자원 효율을 높일 수 있다.
도 1은 본 발명이 적용될 수 있는 클라우드 데이터센터 시스템의 일 예를 도시한 것이다.
도 2는 본 발명의 일 실시 예에 따른 마이그레이션 시스템의 블록도이다.
도 3은 자원 모니터링부의 블록도를 도시한 것이다.
도 4는 본 발명의 일 실시 예에 따른 마이그레이션 방법의 순서도이다.
도 5는 퍼지 재조정을 위한 학습 전·후의 결과를 도시한 그래프이다.
도 6은 퍼지 재조정에 따른 결과의 일 예를 도시한 그래프이다.
도 7은 본 발명의 일 실시 예에 따른 마이그레이션 시스템 및 방법과 기존의 알고리즘과의 정확도를 비교한 것을 도시한 것이다.
본 명세서에 개시되어 있는 본 발명의 개념에 따른 실시예들에 대해서 특정한 구조적 또는 기능적 설명들은 단지 본 발명의 개념에 따른 실시예들을 설명하기 위한 목적으로 예시된 것으로서, 본 발명의 개념에 따른 실시예들은 다양한 형태로 실시될 수 있으며 본 명세서에 설명된 실시예들에 한정되지 않는다.
본 발명의 개념에 따른 실시예들은 다양한 변경들을 가할 수 있고 여러 가지 형태들을 가질 수 있으므로 실시예들을 도면에 예시하고 본 명세서에 상세하게 설명하고자 한다. 그러나 이는 본 발명의 개념에 따른 실시예들을 특정한 개시형태들에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 변경, 균등물, 또는 대체물을 포함한다.
제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만, 예를 들어 본 발명의 개념에 따른 권리 범위로부터 이탈되지 않은 채, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 표현들, 예를 들어 "~사이에"와 "바로~사이에" 또는 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
본 명세서에서 사용한 용어는 단지 특정한 실시예들을 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. 이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 본 발명이 적용될 수 있는 클라우드 데이터센터 시스템의 일 예를 도시한 것이다.
도 1을 참조하면, 클라우드 데이터센터 시스템(1)은 SDN(Software-Defined Networking) 기반의 시스템일 수 있다. 이때, 클라우드 데이터센터 시스템(1)은 데이터센터(10), SDN(20) 및 마이그레이션 시스템(30)을 포함할 수 있다.
데이터센터(10)는 외부와 연결되는 송수신부, 사용자가 요청한 서비스를 인식하는 서비스 인식부, 자원 사용을 모니터링하는 자원 모니터링부 및 우선순위를 고려하여 가상머신의 상태를 예측하고, 마이그레이션을 수행할 가상머신을 결정하는 가상머신 관리부를 포함할 수 있다.
SDN(20)은 가상 네트워크를 확장하여 클라우드 데이터센터(10)들이 상호 연결될 수 있도록 제어 및 관리한다. SDN(20)은 API를 확인하여 네트워크 장치가 이해할 수 있는 인터페이스로 변환한 다음에 네트워크 장치에 전달하는 컨트롤러 및 사용자가 요청한 서비스를 인식하는 서비스 인식부를 포함할 수 있다. 한편, SDN 컨트롤러는 물리 네트워크를 구성하는 오픈 플로우 스위치들과, 가상 네트워크를 구성하는 오픈 가상 스위치(이하, OvS : Open Virtual Switch)를 관리한다. 이러한 OvS들은 물리머신에 생성되는 가상머신들이 네트워크에 접속되도록 할 수 있다.
OvS를 통해 네트워크에 접속되는 가상머신은 물리머신의 자원을 기반으로 가상적으로 생성되어 동작하는 머신을 의미한다. 가상머신은 각각 별도로 운영체제(OS)를 구동시켜 각각 분리된 컴퓨팅 장치인 것처럼 동작할 수 있다.
이때, 어느 하나의 가상머신 내의 시스템은 다른 가상머신으로 마이그레이션될 수 있다. 마이그레이션은 특정한 환경의 시스템, 애플리케이션 또는 모듈 등을 그대로 다른 환경으로 이주시키는 것을 의미한다. 이 경우, 시스템 등이 존재하던 기존의 환경과 새로운 환경은 서로 동일하지 않을 수 있다. 예를 들어, 기존의 가상머신에 제공되던 시스템 자원(CPU, 메모리 등)과 새로운 가상머신에 제공되는 시스템 자원은 서로 상이할 수 있다.
한편, 이하에서 설명할 본 발명의 일 실시 예에 따른 마이그레이션 시스템(30)은 앞서 일 예로서 설명한 SDN 기반의 네트워크 환경뿐만 아니라, 다른 네트워크 환경에서도 적용 가능함은 자명하다.
도 2는 본 발명의 일 실시 예에 따른 마이그레이션 시스템의 블록도이다.
도 2를 참조하면, 마이그레이션 시스템(30)은 가상머신 중 어느 하나의 가상머신 내의 시스템을 다른 가상머신으로 마이그레이션하기 위한 시스템으로서, 송수신부(310), 자원 모니터링부(330), 퍼지 시스템(350) 및 마이그레이션 관리부(370)를 포함한다.
송수신부(310)는 SDN(20)을 통해 데이터센터(10)와 데이터를 주고받는다.
자원 모니터링부(330)는 가상머신의 상태 및/또는 가상머신에 제공되는 자원을 모니터링한다. 보다 구체적으로, 자원 모니터링부(330)는 가상머신의 CPU의 사용량, 램 등의 메모리 사용량 및/또는 네트워크 자원 상태 등을 모니터링함으로써 가상머신의 상태나 가상머신에 제공되는 자원 사용에 대한 데이터를 획득할 수 있다. 또한, 자원 모니터링부(330)는 가상머신이 대기한 시간(대기 시간)이나, 가상머신이 동작한 시간(실행 시간)이나, 가상머신의 동작이 종료된 기간이나, 및/또는 전력 공급의 중단의 빈도 등을 모니터링하는 것도 가능하다.
자원 모니터링부(330)의 모니터링 결과는 퍼지 시스템(350)으로 전달될 수 있다. 이 경우, 자원 모니터링부(330)는 주기적으로 또는 연속적으로 퍼지 시스템(350)에 모니터링 결과를 전송할 수도 있다.
자원 모니터링부의 블록도를 도시한 도 3을 참조하면, 자원 모니터링부(330)는 워크로드 분석부 및 메트릭 분석부를 포함할 수 있다.
워크로드 분석부는 자원 모니터링부(330)에서 모니터링된 자원 사용 데이터를 토대로 사용자에 제공될 서비스에 따른 워크로드에 대한 분석을 수행한다. 보다 구체적으로, 워크로드 분석부는 자원 모니터링부(330)를 통하여 모니터링되는 자원 사용 데이터의 패턴을 분석하고, 분석된 자원 사용 패턴 데이터를 기반으로 클러스터링하여 자원 사용 데이터에 대한 군집 분석을 수행한다. 이때, 군집 분석에 사용되는 클러스터링 알고리즘으로는 K-means 알고리즘이 사용될 수 있으나, 여기에 한정되지 않고 다양한 알고리즘이 사용될 수 있다.
또한, 워크로드 분석부는 퍼지 컨트롤부(351)를 통해 퍼지화된 자원 사용 데이터에 따라 재 클러스터링을 수행할 수 있다.
메트릭 분석부는 메트릭(metric)에 대한 분석을 수행하고, 퍼지화될 자원 사용 데이터에 관한 메트릭을 선정한다. 메트릭 분석부는 서비스 인식부를 통해 인식된 서비스의 목적 및 클러스터링된 자원 사용 데이터를 기반으로 메트릭을 비교하고, 마이그레이션 효율을 향상시키기 위한 메트릭을 선정할 수 있다.
아래의 표 1은 서비스의 목적에 따른 메트릭의 일 예이다.
서비스 목적 목표 Metrics
Performance efficiency Minimizing time Transferred pages
Network traffic
Bandwidth
Waiting time
Number of migration
VM execution time
VM RAM workload
Increasing resource utilization Resource utilizationResponse time
Load balancing Resource utilization
Improving Reliability Scalability
Throughput
Response time
Power consumption Increasing resource utilization Numberof migration
Running server/VM
Resource utilization
Power consumption
Energy consumption
frequency
Reducing Bottleneck Resource utilization
Bandwidth
퍼지 시스템(350)은 자원 모니터링부(330)를 통하여 모니터링된 자원 사용 데이터의 학습을 수행하거나, 모니터링 결과와 학습 결과를 기반으로 선정된 메트릭의 자원 사용 데이터에 대한 퍼지화를 수행하고 퍼지 룰을 생성할 수 있다. 퍼지 시스템(350)은 퍼지 컨트롤부(351), 학습부(353) 및 재조정 판단부(355)를 포함한다.퍼지 컨트롤부(351)는 자원 모니터링 결과와 학습 결과를 기반으로 선정된 메트릭의 자원 사용 데이터에 대한 퍼지화를 수행하고, 퍼지 룰을 생성할 수 있다. 퍼지 컨트롤부(351)는 퍼지화부(351a), 룰 생성부(351d), 퍼지 추론부(351b) 및 디퍼지화부(351c)를 포함한다.
퍼지화부(351a)는 모니터링된 자원 사용 데이터의 평균값인 입력 변수를 명령이 실현될 수 있는 소정의 수치로 변환시켜 퍼지화를 수행할 수 있다. 즉, 퍼지화부(351a)는 입력 변수의 값의 범위에 대해 상응하는 논의 영역(Universe of discourse)으로 변화시키는 스케일 맵핑(Scale Mapping)을 통해 입력 변수를 퍼지화시킨다.
룰 생성부(351d)는 제어 규칙의 집합을 기록하고 관리한다. 한편, 룰 생성부(351d)는 후술할 재조정 판단부(355)에 따라 퍼지 재조정이 필요한 경우 새로운 룰을 생성할 수 있다.
퍼지 추론부(351b)는 퍼지화된 입력과 룰 생성부(351d)에서 생성된 퍼지 룰에 기반하여 규칙을 결정하는 의사 결정 논리(Decision-Making Logic)를 수행할 수 있다. 퍼지화가 수행된 결과 값은 디퍼지화부(351c)로 전달된다.
디퍼지화부(351c)는 출력 변수를 원하는 범위로 변환하여 논의 영역으로 전환하는 스케일 매핑 작업을 수행한다. 스케일 매핑에 따라 디퍼지화된 결과값은 자원 모니터링부(330)로 전달될 수 있다.
학습부(353)는 퍼지화된 자원 사용 데이터에 대하여 기계 학습(machine learning)을 수행한다. 기계 학습은 소정의 기계 학습 알고리즘을 이용하여 구현 가능하다. 기계 학습 알고리즘은, 예를 들어, 심층 신경망(DNN, Deep Neural Network), 콘볼루션 신경망(CNN, Convolutional Neural Network), 순환 신경망(RNN, Recurrent Neural Network), 심층 신뢰 신경망(DBN, Deep Belief Network) 및 심층 Q-네트워크(Deep Q-Networks) 중 적어도 하나를 이용하여 구현될 수 있으나, 구현 가능한 기계 학습 알고리즘은 이에 한정되는 것은 아니다.
학습부(353)는 퍼지화된 자원 사용 데이터를 기반으로 학습을 수행하여 자원 상태의 변화를 확인할 수 있으며, 퍼지 컨트롤부(351)에서 학습 결과에 따라(즉, 자원 상태의 변화에 따라) 재 퍼지화를 수행하도록 함으로써 정확한 자원의 사용을 반영할 수 있다.
재조정 판단부(355)는 학습부(353)를 통해 획득한 예측 데이터를 토대로 QoS를 만족하는지 여부에 따라 퍼지 재조정이 필요한지 여부를 판단한다. 보다 구체적으로, 재조정 판단부(355)는 예측 데이터를 이용하여 QoS를 만족하는지 여부를 판단하는데, 이는 예측 데이터에 대한 QoS값과 기 설정된 임계값과의 비교를 통하여 판단할 수 있다.
일 예로서, 퍼포먼스 효율 향상이 목적인 서비스라면, 아래의 수학식 1에 의해 정의되는 QoS값(
Figure PCTKR2018015419-appb-I000001
)이 기 설정된 임계값(
Figure PCTKR2018015419-appb-I000002
) 보다 작다면, QoS를 만족하는 것으로 판단할 수 있다.
Figure PCTKR2018015419-appb-M000001
즉, QoS값(
Figure PCTKR2018015419-appb-I000003
)이 기 설정된 임계값(
Figure PCTKR2018015419-appb-I000004
) 보다 작다면 마이그레이션 실행 시간을 최소화하는 목적에 대한 QoS를 만족하는 것으로 보아 퍼지 재조정을 할 필요가 없는 것으로 판단할 수 있다.
다른 일 예로서, 퍼포먼스 효율 향상이 목적인 서비스라면, 아래의 수학식 2에 의해 정의되는 QoS값(
Figure PCTKR2018015419-appb-I000005
)이 기 설정된 임계값(
Figure PCTKR2018015419-appb-I000006
) 보다 작다면, QoS를 만족하는 것으로 판단할 수 있다.
Figure PCTKR2018015419-appb-M000002
여기서,
Figure PCTKR2018015419-appb-I000007
이다. 즉, 트래픽 수요와 관련된 평균제곱오차(MSE)값인 QoS값(
Figure PCTKR2018015419-appb-I000008
)이 기 설정된 임계값(
Figure PCTKR2018015419-appb-I000009
) 보다 작다면 수요 예측이 오차 범위 내에 이루어진 것으로 보아 퍼지 재조정을 할 필요가 없는 것으로 판단할 수 있다.
즉, 재조정 판단부(355)는 퍼지 재조정 여부를 판단하기 위해 QoS를 만족하는지 여부에 대한 판단을 수행하고, QoS를 만족하지 못한다면 퍼지 재조정을 위한 신호를 퍼지 시스템(350)에 전송할 수 있다.
한편, 퍼지 재조정 여부의 판단을 위한 QoS값은 위와 같은 실시예에 한정되지 않으며, 사용자에게 제공되는 서비스 목적 및 메트릭에 따라서 달라질 수 있다는 것은 자명하다.
마이그레이션 관리부(370)는 퍼지 시스템(350)의 퍼지 재조정 여부의 판단에 따라 마이그레이션 여부를 결정한다. 마이그레이션 관리부(370)는 퍼지 재조정이 더 이상 필요 없는 것으로 판단되면, 가상머신 관리부를 통해 예측된 가상머신의 상태에 따라 마이그레이션 여부를 결정할 수 있다.
도 4는 본 발명의 일 실시 예에 따른 마이그레이션 방법의 순서도이다. 이하에서는 앞서 설명한 부분과 중복되는 부분에 대한 설명은 생략하기로 한다.
도 4를 참조하면, S410 단계는 워크로드에 대한 분석을 수행한다. S410 단계에서는 자원 모니터링부(330)에서 모니터링되는 자원 사용 데이터의 패턴을 분석하고, 분석된 패턴을 기반으로 클러스터링하여 워크로드의 자원 사용 데이터에 대한 군집 분석을 수행한다. 이를 위해, S410 단계에 앞서 자원 모니터링부(330)를 통하여 가상머신의 상태 및/또는 가상머신에 제공되는 제공되는 자원을 모니터링하는 단계가 수행될 수 있다.
S420 단계는 S410 단계에서 클러스터링된 자원 사용 데이터에 따라 메트릭을 분석하고, 마이그레이션 효율 향상을 위한(즉, QoS 보장을 위한) 메트릭을 선정한다. S420 단계에서는 메트릭 선정을 위해 중요도를 나타내는 스코어를 산출하고, 이를 비교하는 단계가 추가적으로 수행될 수 있다. 한편, 서비스의 목적에 따라 다양한 메트릭이 동시에 다수가 사용될 수 있다.
S430a 단계는 모니터링된 자원 사용 데이터를 기반으로 선정된 메트릭과 관련된 자원 사용 데이터에 대하여 퍼지화를 수행한다. 퍼지화는 퍼지 시스템(350)을 통해 수행된다. 한편, 후술할 S440 단계 내지 S470 단계를 통하여 퍼지 재조정이 필요한 것으로 판단되면, 모니터링된 자원 사용 데이터 및 학습된 자원 사용 데이터를 기반으로 재 퍼지화를 수행하여 자원의 상태를 다시 반영하도록 할 수 있다.(S430b)
S440 단계는 퍼지화된 자원 사용 데이터에 대하여 재 클러스터링을 수행한다. 즉, 퍼지화된 자원 사용 데이터에 대한 클러스터링을 다시 수행하여 군집 분석을 수행하고, 자원의 상태를 반영한다.
S450 단계는 자원 사용의 변화를 예측하기 위하여 자원 사용 데이터에 대한 학습을 수행한다. S450 단계를 통해 학습된 모델을 이용하여 자원 사용의 변화를 예측할 수 있으며, 이를 기반으로 퍼지 재조정 여부를 판단할 수 있다.
S460 단계는 퍼지 재조정 여부를 판단한다. 재조정 여부는 S450 단계를 통해 예측된 자원 사용 데이터에 대한 QoS값과 기 설정된 임계값과의 비교를 통하여 판단하며, 이때 기 설정된 임계값은 서비스 목적 및 선정된 메트릭에 따라서 달라질 수 있다.
S460 단계를 통해 기 설정된 QoS값을 만족하는 것으로 판단되면(S470), 가상머신의 상태를 예측하고(S480), 예측 결과에 따라 마이그레이션 여부를 결정한다.(S490)
한편, S460 단계를 통해 기 설정된 QoS값을 만족하지 못한 것으로 판단되면(S470), 퍼지 재조정이 필요한 것으로 보아 재 퍼지화를 수행할 수 있다.(S430b)
이하에서는 본 발명인 마이그레이션 시스템(30) 및 방법의 일 실시예를 살펴본다.
<실시예>
본 발명의 일 실시 예에 따라, 퍼지 재조정 여부를 판단하기 위하여 임의의 자원 사용 데이터에 대하여 학습을 수행한다.
퍼지 재조정을 위한 학습 전·후의 결과를 도시한 도 5를 참조하면, 학습을 통해 퍼지화된 자원 사용 데이터(CPU 사용량 및 RAM 사용량)의 변화 추이를 알 수 있으며, 이러한 자원 사용의 변화에 대한 예측을 기반으로 새로운 퍼지 룰을 생성할 수 있다.
아래의 표 2는 새로이 생성된 퍼지 룰을 나타낸 것이다.
Power Resource Utilization Number of VM Waiting time
1 Very high Very high Very high Very high
2 Very high Very low Very low Very low
3 Very low Very high Very low Very low
4 Very low Very low Very low Very low
5 Very low Very low Very high Very low
6 Very low Very low Very low Very high
7 Very low Very low Very low Very low
즉, 각 메트릭에 대한 퍼지 룰을 새로이 생성하고, 새로이 생성된 각각의 퍼지 룰에 따라 가상머신의 상태를 예측한다.퍼지 재조정에 따른 결과의 일 예를 도시한 도 6을 참조하면, 새로이 생성된 각각의 퍼지 룰에 따라 가상머신의 상태(에너지 소모)를 예측할 수 있다.
도 7은 본 발명의 일 실시 예에 따른 마이그레이션 시스템 및 방법과 기존의 알고리즘과의 정확도를 비교한 것을 도시한 것이다.
도 7을 참조하면, 가로축은 시간 간격(T1 : ~3h, T2 : 3-6h, T3 : 7-12h, T4 : 13-24h)이며, 세로축은 예측된 가상머신의 상태에 대한 MSE이다. 즉, 대부분의 시간 구간에서 본 발명에 따른 가상머신의 예측이 기존의 예측 알고리즘에 비하여 향상된 예측률을 나타내는 것을 확인할 수 있다.
결국, 본 발명을 이용하는 경우에 분산 클라우드 환경에서 사용자의 요구사항 및 서비스의 목적에 따른 퍼지 재조정을 통하여 마이그레이션 효율을 향상시킬 수 있다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (14)

  1. 자원 사용을 모니터링하는 자원 모니터링부;
    상기 자원 모니터링부를 통해 모니터링된 자원 사용 데이터에 대하여 퍼지화 및 학습을 수행하고, 학습을 통해 획득한 예측 데이터를 토대로 퍼지 재조정이 필요한지 여부를 판단하는 퍼지 시스템; 및
    상기 퍼지 시스템의 퍼지 재조정 여부의 판단에 따라 마이그레이션 여부를 결정하는 마이그레이션 관리부를 포함하는 마이그레이션 시스템.
  2. 제1항에 있어서,
    상기 자원 모니터링부는
    상기 자원 사용 데이터를 토대로 사용자에 제공될 워크로드에 대한 분석을 수행하는 워크로드 분석부; 및
    상기 워크로드에 대한 분석 결과를 토대로 퍼지화될 상기 자원 사용 데이터에 관한 메트릭을 선정하는 메트릭 분석부를 포함하는 마이그레이션 시스템.
  3. 제2항에 있어서,
    상기 워크로드 분석부는 상기 워크로드의 자원 사용 데이터의 패턴을 분석하고, 분석된 상기 자원 사용 데이터의 패턴을 기반으로 상기 자원 사용 데이터에 대한 클러스터링을 수행하는 마이그레이션 시스템.
  4. 제1항에 있어서,
    상기 퍼지 시스템은
    상기 자원 사용 데이터 값의 범위에 대해 상응하는 논의 영역(Universe of discourse)으로 변화시키는 스케일 맵핑(Scale Mapping)을 통해 퍼지화를 수행하는 퍼지화부;
    제어 규칙의 집합인 퍼지 룰(Fuzzy Rule)을 생성하고 관리하는 룰 생성부;
    상기 퍼지화부를 통해 퍼지화된 자원 사용 데이터 및 상기 룰 생성부에서 생성된 퍼지 룰에 기반하여 규칙을 결정하는 의사 결정 논리(Decision-Making Logic)를 수행하는 퍼지 추론부; 및
    상기 퍼지 추론부의 결과값의 범위에 상응되는 논의 영역으로 변화시키는 스케일 맵핑을 통해 디퍼지화를 수행하는 디퍼지화부를 포함하는 마이그레이션 시스템.
  5. 제4항에 있어서,
    상기 퍼지 시스템은
    상기 퍼지화부를 통해 퍼지화된 상기 자원 사용 데이터에 대하여 학습을 수행하는 학습부를 더 포함하는 마이그레이션 시스템.
  6. 제5항에 있어서,
    상기 학습부를 통해 획득한 예측 데이터를 토대로 퍼지 재조정이 필요한지 여부를 판단하는 재조정 판단부를 더 포함하는 마이그레이션 시스템.
  7. 제6항에 있어서,
    상기 재조정 판단부는 상기 예측 데이터에 대한 QoS값과 기 설정된 임계값의 비교를 통하여 퍼지 재조정이 필요한지 여부를 판단하는 마이그레이션 시스템.
  8. 제7항에 있어서,
    상기 룰 생성부는 상기 재조정 판단부에 따라 퍼지 재조정이 필요한 것으로 판단되면, 새로운 퍼지 룰을 생성하는 마이그레이션 시스템.
  9. (a) 자원 사용을 모니터링하는 단계;
    (b) 상기 (a) 단계를 통해 모니터링된 자원 사용 데이터에 대하여 퍼지화 및 학습을 수행하는 단계;
    (c) 상기 (b) 단계를 통해 획득한 예측 데이터를 토대로 퍼지 재조정이 필요한지 여부를 판단하는 단계; 및
    (d) 상기 (c) 단계의 퍼지 재조정 여부의 판단에 따라 마이그레이션 여부를 결정하는 단계를 포함하는 마이그레이션 방법.
  10. 제9항에 있어서,
    상기 (a) 단계는
    (a-1) 상기 자원 사용 데이터를 토대로 사용자에 제공될 워크로드에 대한 분석을 수행하는 단계; 및
    (a-2) 상기 워크로드에 대한 분석 결과를 토대로 퍼지화될 상기 자원 사용 데이터에 관한 메트릭을 선정하는 단계를 더 포함하는 마이그레이션 방법.
  11. 제9항에 있어서,
    상기 (b) 단계는
    (b-1) 상기 자원 사용 데이터에 대하여 퍼지화를 수행하는 단계; 및
    (b-2) 상기 (b-1) 단계를 통해 퍼지화된 상기 자원 사용 데이터에 대하여 학습을 수행하고, 예측 데이터를 획득하는 단계를 더 포함하는 마이그레이션 방법.
  12. 제11항에 있어서,
    상기 (b) 단계는
    (b-3) 상기 퍼지화된 자원 사용 데이터에 대하여 재 클러스터링을 수행하는 단계를 더 포함하는 마이그레이션 방법.
  13. 제11항에 있어서,
    상기 (c) 단계는 상기 예측 데이터에 대한 QoS값과 기 설정된 임계값의 비교를 통하여 퍼지 재조정이 필요한지 여부를 판단하는 마이그레이션 방법.
  14. 제9항에 있어서,
    상기 (c) 단계를 통해 퍼지 재조정이 필요한 것으로 판단되면, 퍼지 재조정이 필요하지 않다고 판단될 때까지 상기 (b) 단계 내지 상기 (c) 단계를 반복적으로 수행하는 마이그레이션 방법.
PCT/KR2018/015419 2017-12-26 2018-12-06 분산 클라우드 환경에서 퍼지값 재조정에 따른 마이그레이션 시스템 및 방법 WO2019132300A1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR20170179209 2017-12-26
KR10-2017-0179209 2017-12-26
KR1020180035005A KR102027303B1 (ko) 2017-12-26 2018-03-27 분산 클라우드 환경에서 퍼지값 재조정에 따른 마이그레이션 시스템 및 방법
KR10-2018-0035005 2018-03-27

Publications (1)

Publication Number Publication Date
WO2019132300A1 true WO2019132300A1 (ko) 2019-07-04

Family

ID=67067752

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2018/015419 WO2019132300A1 (ko) 2017-12-26 2018-12-06 분산 클라우드 환경에서 퍼지값 재조정에 따른 마이그레이션 시스템 및 방법

Country Status (1)

Country Link
WO (1) WO2019132300A1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140117905A (ko) * 2013-03-27 2014-10-08 인하대학교 산학협력단 클라우드 서비스의 가상자원 할당을 위한 퍼지 로직 기반의 자원평가 장치 및 방법
KR20160070636A (ko) * 2014-12-10 2016-06-20 경희대학교 산학협력단 분산 클라우드 환경에서의 마이그레이션 제어 장치 및 이를 이용한 마이그레이션 제어 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140117905A (ko) * 2013-03-27 2014-10-08 인하대학교 산학협력단 클라우드 서비스의 가상자원 할당을 위한 퍼지 로직 기반의 자원평가 장치 및 방법
KR20160070636A (ko) * 2014-12-10 2016-06-20 경희대학교 산학협력단 분산 클라우드 환경에서의 마이그레이션 제어 장치 및 이를 이용한 마이그레이션 제어 방법

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
FUZZU THERORY, 1 December 2015 (2015-12-01), Retrieved from the Internet <URL:https://gomoveyongs.tistory.com/76> [retrieved on 20190212] *
PARK ET AL: "Fuzzy Logic-based Priority Live Migration Model for Efficiency", JOURNAL OF THE KOREA SOCIETY FOR SIMULATION, vol. 24, no. 4, December 2015 (2015-12-01), pages 11 - 21, XP055624004 *
SON ET AL: "A Study on Migration for QoS Based on Multi-Metric in Cloud Computing", PROCEEDING OF THE KOREAN INSTITUTE OF COMMUNICATIONS AND INFORMATION SCIENCES (KICS) WINTER CONFERENCE, January 2017 (2017-01-01), pages 1227 - 1228 *

Similar Documents

Publication Publication Date Title
JP7094352B2 (ja) タスク並列処理の実現方法、装置、機器及び媒体
WO2019117593A1 (ko) 컨테이너 기반의 자원 할당을 지원하는 클라우드 컴퓨팅 장치 및 방법
US11620163B2 (en) Controlling resource allocation in a data center by monitoring load on servers and network links
Fu et al. Adaptive resource efficient microservice deployment in cloud-edge continuum
KR101867487B1 (ko) 클라우드 환경에서 퍼지기반의 마이그레이션 시스템 및 방법
KR102027303B1 (ko) 분산 클라우드 환경에서 퍼지값 재조정에 따른 마이그레이션 시스템 및 방법
Sufiev et al. A dynamic load balancing architecture for SDN
WO2012067431A2 (en) Resource distribution apparatus and method in cloud computing
Huang et al. Maximizing throughput of delay-sensitive NFV-enabled request admissions via virtualized network function placement
Cao et al. {ENVI}: elastic resource flexing for network function virtualization
Yao et al. Forecasting assisted VNF scaling in NFV-enabled networks
CN113553160A (zh) 用于人工智能物联网的边缘计算节点任务调度方法及系统
Billingsley et al. Parallel algorithms for the multiobjective virtual network function placement problem
WO2019132300A1 (ko) 분산 클라우드 환경에서 퍼지값 재조정에 따른 마이그레이션 시스템 및 방법
Yuan et al. A DRL-Based Container Placement Scheme with Auxiliary Tasks.
Qin et al. Interference and topology-aware VM live migrations in software-defined networks
Nikbazm et al. KSN: Modeling and simulation of knowledge using machine learning in NFV/SDN-based networks
Mahjoub et al. A multi-criteria decision based on adaptive routing algorithms with discrete operators for on-chip networks
Ding et al. Partitioning stateful data stream applications in dynamic edge cloud environments
He et al. A density algorithm for controller placement problem in software defined wide area networks
Li et al. Multi-threshold SDN controllers load balancing algorithm based on controller load
Feltin et al. Dnn partitioning for inference throughput acceleration at the edge
WO2023106466A1 (ko) 학습 클라우드 유형 기반의 인공지능 클라우드 학습장치 및 방법
Cardoso et al. An efficient energy-aware mechanism for virtual machine migration
WO2023106467A1 (ko) 인공지능 기반 클라우드 학습장치 및 방법

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18893599

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18893599

Country of ref document: EP

Kind code of ref document: A1