KR102317716B1 - Method and apparatus for scheduling deployment of software based on resource usages - Google Patents
Method and apparatus for scheduling deployment of software based on resource usages Download PDFInfo
- Publication number
- KR102317716B1 KR102317716B1 KR1020150156576A KR20150156576A KR102317716B1 KR 102317716 B1 KR102317716 B1 KR 102317716B1 KR 1020150156576 A KR1020150156576 A KR 1020150156576A KR 20150156576 A KR20150156576 A KR 20150156576A KR 102317716 B1 KR102317716 B1 KR 102317716B1
- Authority
- KR
- South Korea
- Prior art keywords
- distribution
- software
- time
- resource usage
- service equipment
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 17
- 238000012544 monitoring process Methods 0.000 claims description 6
- 238000009434 installation Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000007689 inspection Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Classifications
-
- H04L67/325—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0896—Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0876—Network utilisation, e.g. volume of load or congestion level
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/16—Threshold monitoring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
- H04L67/62—Establishing a time schedule for servicing the requests
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Environmental & Geological Engineering (AREA)
- Information Transfer Between Computers (AREA)
Abstract
본 발명에 따르면, 자원 사용량에 따른 소프트웨어 배포 자동 스케줄링에 있어서, 네트워크 트래픽 등의 자원 사용량에 대한 제어가 필요한 데이터센터 등의 환경에서 소프트웨어 배포 수행 시, 기존 서비스 장비들의 시간대별 자원 사용량 통계에 근거하여 네트워크상 자원 사용량이 상대적으로 가장 낮은 것으로 평가되는 최적의 시간에 배포가 수행되도록 하고, 실제 소프트웨어 배포시에도 서비스 장비들의 실시간 자원 사용량이 미리 정의된 임계점을 넘지 않는 범위 내에서 배포를 순차적으로 수행하는 자동 스케줄링이 가능하게 된다.According to the present invention, in the automatic scheduling of software distribution according to resource usage, when performing software distribution in an environment such as a data center that requires control of resource usage such as network traffic, based on the resource usage statistics for each time period of existing service equipment, It ensures that the distribution is performed at the optimal time when the resource usage on the network is evaluated to be relatively low, and the distribution is sequentially performed within the range where the real-time resource usage of service equipment does not exceed a predefined threshold even during actual software distribution. Automatic scheduling is enabled.
Description
본 발명은 자원 사용량에 따른 소프트웨어 배포 자동 스케줄링에 관한 것으로, 보다 상세하게는 네트워크 트래픽 등의 자원 사용량에 대한 제어가 필요한 데이터센터 등의 환경에서 소프트웨어 배포 수행 시, 기존 서비스 장비들의 시간대별 자원 사용량 통계에 근거하여 네트워크상 자원 사용량이 상대적으로 가장 낮은 것으로 평가되는 최적의 시간에 배포가 수행되도록 하고, 실제 소프트웨어 배포시에도 서비스 장비들의 실시간 자원 사용량이 미리 정의된 임계점을 넘지 않는 범위 내에서 배포를 순차적으로 수행하는 자원 사용량을 고려한 소프트웨어 배포 스케줄링 방법 및 장치에 관한 것이다.The present invention relates to automatic scheduling of software distribution according to resource usage, and more particularly, when performing software distribution in an environment such as a data center that requires control of resource usage such as network traffic, statistics on resource usage by time of existing service equipment Based on this, the distribution is performed at the optimal time when the resource usage on the network is evaluated to be relatively low, and the distribution is sequentially performed within the range where the real-time resource usage of service equipment does not exceed a predefined threshold even during actual software distribution. It relates to a method and apparatus for scheduling software distribution in consideration of resource usage performed by
일반적으로 프로비저닝(provisioning)은 특정 서비스를 제공받기 위하여 서비스 설치부터 시작해 서비스 환경 구성 및 실행 등 서비스를 제공받기 전 단계까지 처리되는 일련의 절차를 말한다.In general, provisioning refers to a series of procedures that are processed from service installation to service environment configuration and execution before receiving a service in order to receive a specific service.
이러한 프로비저닝 중 소프트웨어(software : S/W)를 시스템에 설치하고 필요한 모든 구성 및 설정 작업을 해서 소프트웨어가 실행될 수 있는 환경을 갖추는 과정을 소프트웨어 프로비저닝이라 부른다.Among such provisioning, the process of installing software (S/W) on the system and performing all necessary configuration and setting work to prepare an environment in which the software can be executed is called software provisioning.
한편, 이러한 소프트웨어 프로비저닝에 있어서 많은 서비스를 운영하고 있는 데이터센터 등의 환경에서는 네트워크 트래픽 등의 자원 사용량을 일정 임계값 이하로 유지하는 것이 서비스의 QoS 유지에 있어서 매우 중요하다. Meanwhile, in software provisioning, in an environment such as a data center where many services are operated, it is very important to maintain the resource usage such as network traffic below a certain threshold in maintaining QoS of the service.
예를 들어 네트워크 트래픽이나 디스크 이용률 등의 자원 사용량이 일시적으로 과도하게 증가하게 되면 최악의 경우 서비스의 장애로 이어질 수도 있기 때문이다. For example, if resource usage, such as network traffic or disk utilization, temporarily increases excessively, in the worst case, it may lead to service failure.
따라서, 이러한 환경에서 다수의 서비스 노드에 OS나 기타 소프트웨어를 배포하기 위해서는 위와 같은 자원 사용량에 있어서의 제한사항을 고려하여 배포 작업 스케줄링을 해야 하는데 대규모의 서버가 운영되고 있는 실제 서비스 환경에서는 이러한 과정이 매우 복잡하므로 사람이 일일이 판단하여 스케줄링을 수행하는 것은 어려운 문제점이 있었다. Therefore, in order to distribute OS or other software to multiple service nodes in such an environment, it is necessary to schedule the distribution task in consideration of the above limitations in resource usage. Since it is very complicated, it is difficult for a person to individually judge and perform the scheduling.
따라서, 본 발명에서는 네트워크 트래픽 등의 자원 사용량에 대한 제어가 필요한 데이터센터 등의 환경에서 소프트웨어 배포 수행 시, 기존 서비스 장비들의 시간대별 자원 사용량 통계에 근거하여 네트워크상 자원 사용량이 상대적으로 가장 낮은 것으로 평가되는 최적의 시간에 배포가 수행되도록 하고, 실제 소프트웨어 배포시에도 서비스 장비들의 실시간 자원 사용량이 미리 정의된 임계점을 넘지 않는 범위 내에서 배포를 순차적으로 수행하는 자원 사용량을 고려한 소프트웨어 배포 스케줄링 방법 및 장치를 제공하고자 한다.Therefore, in the present invention, when software distribution is performed in an environment such as a data center that requires control of resource usage such as network traffic, it is evaluated that the resource usage on the network is relatively low based on the resource usage statistics by time of the existing service equipment. A software distribution scheduling method and device that allows distribution to be performed at the optimal time for distribution would like to provide
상술한 본 발명은 자원 사용량을 고려한 소프트웨어 배포 스케줄링 방법으로서, 복수의 서비스 장비를 포함하는 네트워크에서 각 서비스 장비에 대하여 최대 허용 가능한 자원 사용량의 임계값을 설정하는 단계와, 상기 네트워크에서 적어도 하나의 타겟 노드에 대해 배포될 소프트웨어를 설정하는 단계와, 상기 소프트웨어의 배포에 소요되는 배포 예상시간을 산출하는 단계와, 상기 배포 예상시간과 상기 각 서비스 장비에서의 과거 시간별 자원 사용량 정보를 기반으로 상기 타겟 노드에 대한 상기 소프트웨어의 배포 수행 시간을 선정하는 단계를 포함한다.The present invention described above is a software distribution scheduling method in consideration of resource usage, comprising the steps of: setting a threshold value of the maximum allowable resource usage for each service device in a network including a plurality of service devices; Setting the software to be distributed for the node, calculating the expected distribution time required for distribution of the software, and the target node based on the expected distribution time and the resource usage information for each service device in the past time and selecting a distribution execution time for the software.
또한, 상기 배포 수행 시간을 선정하는 단계는, 상기 각 서비스 장비의 과거 자원 사용량에 대한 정보를 상기 배포 예상시간의 단위로 정렬시키는 단계와, 상기 정렬된 단위 시간 구간 중 상기 각 서비스 장비의 과거 자원 사용량이 모두 상기 임계값을 초과하지 않는 단위 시간 구간을 검색하는 단계와, 상기 검색된 단위 시간 구간을 상기 타겟 노드에 대한 상기 소프트웨어의 배포 수행 시간으로 선정하는 단계를 포함하는 것을 특징으로 한다.In addition, the step of selecting the distribution execution time includes arranging the information on the past resource usage of each service equipment in units of the expected distribution time, and past resources of each service equipment in the aligned unit time period. It characterized in that it comprises the steps of searching for a unit time period in which all usage does not exceed the threshold value, and selecting the searched unit time period as a time for performing distribution of the software to the target node.
또한, 상기 검색하는 단계는, 상기 각 서비스 장비의 자원 항목별 자원 사용량을 상기 단위 시간 구간으로 정렬시키는 단계와, 상기 각 서비스 장비의 상기 자원 항목별 자원 사용량이 각 자원 항목에 설정된 임계값보다 모두 낮은 후보 단위 시간 구간을 검색하는 단계와, 상기 후보 단위 시간 구간이 둘 이상인 경우 상기 자원 항목별 서로 다른 값으로 부여된 가중치를 기반으로 상기 네트워크 시스템상 가장 자원 사용량이 낮은 것으로 평가되는 하나의 단위 시간 구간을 최종 선정하는 단계를 포함하는 것을 특징으로 한다.In addition, the searching includes: arranging the resource usage for each resource item of each service equipment into the unit time interval; Searching for a low candidate unit time interval, and when there are two or more candidate unit time intervals, one unit time evaluated as having the lowest resource usage in the network system based on weights assigned to different values for each resource item It is characterized in that it comprises the step of finally selecting the section.
또한, 상기 방법은, 상기 선정된 상기 배포 수행 시간에 상기 타겟 노드에 대한 상기 소프트웨어의 배포를 수행하는 단계와, 상기 배포 수행 시 상기 각 서비스 장비의 자원 사용량을 실시간으로 모니터링하는 단계와, 상기 모니터링결과 상기 각 서비스 장비의 자원 사용량이 상기 임계값을 초과하는 경우 상기 배포 수행을 일시 중지시키되, 상기 자원 사용량이 상기 임계값 이하로 내려가는 경우 상기 배포 수행을 재개시키는 단계를 포함하는 것을 특징으로 한다.In addition, the method includes the steps of performing distribution of the software to the target node at the selected distribution execution time, and monitoring resource usage of each service equipment in real time when the distribution is performed; As a result, when the resource usage of each service equipment exceeds the threshold, the distribution is temporarily stopped, and when the resource usage falls below the threshold, the distribution is resumed.
또한, 상기 배포 예상시간을 산출하는 단계는, 상기 소프트웨어가 과거에 배포 이력이 있는 경우 과거 배포에 수행된 시간을 상기 배포 예상시간으로 사용하는 단계와, 상기 소프트웨어가 과거에 배포 이력이 없는 경우에는 상기 소프트웨어의 배포 스크립트를 분석하여 상기 배포 예상시간을 추정하는 단계를 포함하는 것을 특징으로 한다.In addition, the step of calculating the expected distribution time may include: if the software has a distribution history in the past, using a time performed in the past distribution as the distribution expected time, and if the software does not have a distribution history in the past and estimating the expected distribution time by analyzing the distribution script of the software.
또한, 본 발명은 자원 사용량을 고려한 소프트웨어 배포 스케줄링 장치로서, 복수의 서비스 장비를 포함하는 네트워크에서 각 서비스 장비에 대하여 사용 가능한 자원 사용량의 임계값과 상기 네트워크에서 적어도 하나의 타겟 노드로 배포할 소프트웨어를 설정하는 배포 설정부와, 상기 타겟 노드로 상기 소프트웨어를 배포하는데 소요되는 배포 예상시간을 산출하고, 상기 배포 예상시간과 상기 각 서비스 장비에서의 과거 시간별 자원 사용량 정보를 기반으로 상기 타겟 노드에 대한 상기 소프트웨어의 배포 수행 시간을 선정하는 스케줄러를 포함하는 것을 특징으로 한다.In addition, the present invention provides a software distribution scheduling device in consideration of resource usage, a threshold value of resource usage available for each service device in a network including a plurality of service devices, and software to be distributed to at least one target node in the network. a distribution setting unit to set, calculates an estimated distribution time required to distribute the software to the target node, and provides the target node based on the expected distribution time and the resource usage information for each service device in the past time. It is characterized in that it includes a scheduler that selects the distribution execution time of the software.
또한, 상기 스케줄러는, 상기 각 서비스 장비의 과거 자원 사용량에 대한 정보를 상기 배포 예상시간의 단위로 정렬시키고, 상기 정렬된 단위 시간 구간 중 상기 각 서비스 장비의 과거 자원 사용량이 모두 상기 임계값을 초과하지 않는 최적의 단위 시간 구간을 상기 타겟 노드에 대한 상기 소프트웨어의 배포 수행 시간으로 선정하는 것을 특징으로 한다.In addition, the scheduler aligns the information on the past resource usage of each service device in units of the expected distribution time, and all of the past resource usages of the respective service devices in the aligned unit time interval exceed the threshold value It is characterized in that an optimal unit time period not performed is selected as a time for performing distribution of the software to the target node.
또한, 상기 장치는, 상기 선정된 배포 수행 시간에 상기 타겟 노드에 대한 상기 소프트웨어의 배포를 수행하는 배포부를 더 포함하며, 상기 배포부는, 상기 배포 수행 시 상기 각 서비스 장비의 자원 사용량을 실시간으로 모니터링하고, 상기 각 서비스 장비의 자원 사용량이 상기 임계값을 초과하는 경우 상기 배포를 일시 중지시키며, 상기 자원 사용량이 상기 임계값 이하로 내려가는 경우 상기 배포를 재개시키는 것을 특징으로 한다.In addition, the device further comprises a distribution unit that distributes the software to the target node at the selected distribution execution time, wherein the distribution unit monitors resource usage of each service equipment in real time when the distribution is performed. and, when the resource usage of each service equipment exceeds the threshold, the distribution is temporarily stopped, and when the resource usage falls below the threshold, the distribution is resumed.
본 발명에 따르면, 자원 사용량에 따른 소프트웨어 배포 자동 스케줄링에 있어서, 네트워크 트래픽 등의 자원 사용량에 대한 제어가 필요한 데이터센터 등의 환경에서 소프트웨어 배포 수행 시, 기존 서비스 장비들의 시간대별 자원 사용량 통계에 근거하여 네트워크상 자원 사용량이 상대적으로 가장 낮은 것으로 평가되는 최적의 시간에 배포가 수행되도록 하고, 실제 소프트웨어 배포시에도 서비스 장비들의 실시간 자원 사용량이 미리 정의된 임계점을 넘지 않는 범위 내에서 배포를 순차적으로 수행하는 자동 스케줄링을 가능하게 함으로써, 사용자가 복잡한 조건을 고려하여 배포 시간을 결정할 필요가 없어지게 되는 이점이 있다. According to the present invention, in the automatic scheduling of software distribution according to resource usage, when performing software distribution in an environment such as a data center that requires control of resource usage such as network traffic, based on the resource usage statistics for each time period of existing service equipment, It ensures that the distribution is performed at the optimal time when the resource usage on the network is evaluated to be relatively low, and the distribution is sequentially performed within the range where the real-time resource usage of service equipment does not exceed a predefined threshold even during actual software distribution. By enabling automatic scheduling, there is an advantage that the user does not need to determine the distribution time considering complex conditions.
또한, 사용자의 수작업으로 인한 실수를 미연에 방지할 수 있게 되며, 실제 통계 데이터 및 실시간 사용량에 근거하여 배포를 수행함으로서, 실제 소프트웨어의 배포 시의 트래픽 발생 등으로 인해 기존 서비스 노드의 서비스의 QoS에 영향을 주거나 장애가 초래되는 것을 방지시킬 수 있는 이점이 있다.In addition, it is possible to prevent mistakes due to user's manual operation in advance, and by performing distribution based on actual statistical data and real-time usage, the QoS of existing service nodes is affected by traffic generation during actual software distribution. It has the advantage of being able to prevent it from being affected or causing a disability.
도 1은 본 발명의 실시예에 따른 자원 사용량을 고려한 소프트웨어 배포 스케줄링 장치의 상세 블록 구성도,
도 2는 본 발명의 실시예에 따라 각 서비스 장비에서 과거 자원 사용량의 임계값 초과 여부를 단위 시간 구간으로 정렬시킨 매트릭스 예시도,
도 3은 본 발명의 실시예에 따라 자원 사용량을 고려하여 소프트웨어 배포를 스케줄링하는 동작 제어 흐름도,
도 4는 본 발명의 실시예에 따른 자원 사용량을 고려한 소프트웨어 배포 스케줄링에 따라 소프트웨어를 배포하는 동작 제어 흐름도.1 is a detailed block diagram of an apparatus for scheduling software distribution in consideration of resource usage according to an embodiment of the present invention;
2 is an exemplary matrix diagram in which whether or not the threshold value of past resource usage in each service equipment is exceeded in unit time intervals according to an embodiment of the present invention;
3 is an operation control flowchart for scheduling software distribution in consideration of resource usage according to an embodiment of the present invention;
4 is a control flow chart for distributing software according to software distribution scheduling in consideration of resource usage according to an embodiment of the present invention.
이하, 첨부된 도면을 참조하여 본 발명의 동작 원리를 상세히 설명한다. 하기에서 본 발명을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.Hereinafter, the operating principle of the present invention will be described in detail with reference to the accompanying drawings. In the following description of the present invention, if it is determined that a detailed description of a well-known function or configuration may unnecessarily obscure the gist of the present invention, the detailed description thereof will be omitted. In addition, the terms described below are terms defined in consideration of functions in the present invention, which may vary according to intentions or customs of users and operators. Therefore, the definition should be made based on the content throughout this specification.
도 1은 본 발명의 실시예에 따른 자원 사용량을 고려한 소프트웨어 배포 스케줄링 장치(100)의 상세 블록 구성을 도시한 것으로, 자원 모니터부(105), 배포 설정부(110), 스케줄러(scheduler)(120), 배포부(deployer)(130) 등을 포함할 수 있다.1 shows a detailed block configuration of a software distribution scheduling apparatus 100 in consideration of resource usage according to an embodiment of the present invention, a
이하, 위 도 1을 참조하여 본 발명의 소프트웨어 배포 스케줄링 장치(100)의 각 구성요소에서의 동작을 상세히 설명하기로 한다.Hereinafter, an operation in each component of the software distribution scheduling apparatus 100 of the present invention will be described in detail with reference to FIG. 1 above.
먼저, 자원 모니터부(105)는 네트워크상 복수의 서비스 장비(148)에서 측정되는 자원 사용량을 모니터링(monitoring)한다. 이때, 이러한 서비스 장비(148)는 예를 들어 서비스 노드(서버 등)(140, 141)나 스위치(142), 공유 디스크(144) 등을 의미할 수 있으나, 이에 한정되는 것은 아니다. 또한, 자원 모니터부(105)는 위와 같이 각 서비스 장비(148) 즉, 서비스 노드(140, 141), 스위치(142) 및 공유 디스크(144) 등의 자원 사용량을 계속 모니터링하면서 특정 기간 동안의 과거 자원 사용량 정보를 보관한다. 이때, 특정 기간은 예를 들어 현재 시점부터 과거의 3개월, 1개월, 1주일 동안 등의 기간을 의미할 수 있으나, 이에 한정되는 것은 아니다. 또한, 이때, 이러한 자원 사용량은 서비스 노드(140, 141)간의 RTT(round-trip time), 스위치(142)의 프로세서(processor)의 이용률, 또는 네트워크 상의 공유 디스크(144) 등의 디스크 이용률 또는 IOPS(초당 입출력량) 등이 될 수 있다.First, the
배포 설정부(110)는 서비스 노드(140, 141), 스위치(142) 및 공유 디스크(144) 등에서 사용 가능한 자원 사용량의 임계값을 설정하며, 타겟 노드(150, 152, 154)에 배포할 소프트웨어에 대한 정보를 설정한다. The
이때, 이러한 임계값은 시스템에서 제공하는 자원에 대해 서비스 노드(140, 141), 스위치(142) 및 공유 디스크(144) 등에서 최대 허용 가능한 자원 사용량을 의미할 수 있으며, 이러한 임계값은 전체 시스템의 운영에 문제가 발생하지 않도록 미리 추정되어 시스템 관리자 등에 의해 입력될 수 있으나 이에 한정되는 것은 아니다. 즉, 예를 들어 임계값 설정은 서비스 노드(140, 141) 간의 RTT 값이나, 스위치(142)의 프로세서 이용률, 공유 디스크(144)의 IOPS 등이 전체 시스템의 정상 운영에 영향을 미치지 않도록 하는 범위 내에서 관리자에 의해 설정될 수 있다.At this time, this threshold may mean the maximum allowable resource usage in the
또한, 이러한 소프트웨어에 대한 정보는 네트워크상 타겟 노드(150, 152, 154)로 배포 작업을 수행하여야 하는 소프트웨어의 목록을 의미할 수 있으며, 이러한 소프트웨어의 목록이 시스템 관리자 등에 의해 선택되는 경우, 배포 설정부(110)에서 이를 인식하여 타겟 노드(150, 152, 154)에 배포할 소프트웨어에 대한 정보로 사용할 수 있다. 이때, 타겟 노드(150, 152, 154)로 배포할 소프트웨어가 네트워크상 소프트웨어 목록에 없는 새로운 소프트웨어인 경우 관리자 등은 해당 소프트웨어의 이름과 배포 스크립트(script)를 입력하여 등록 요청할 수 있으며, 이에 따라 배포 설정부(110)에서는 새로운 소프트웨어 이름과 배포 스크립트 정보를 입력받아 타겟 노드(150, 152, 154)에 배포할 소프트웨어로 등록할 수 있다.In addition, the information on the software may mean a list of software to be distributed to the target nodes 150 , 152 , 154 on the network. When the list of software is selected by a system administrator, distribution settings The
스케줄러(120)는 네트워크상 소프트웨어의 배포가 필요한 적어도 하나의 타겟 노드(150, 152, 154)에 대해 해당 소프트웨어의 배포에 소요되는 배포 예상시간을 산출한다. 또한, 이와 같이 산출한 배포 예상시간과 서비스 노드(140, 141), 스위치(142), 공유 디스크(144) 등에서의 과거 시간별 자원 사용량 정보를 기반으로 타겟 노드(150, 152, 154)에 대한 소프트웨어의 배포 수행 시간을 선정한다.The
즉, 스케줄러(120)는 관리자 등에 의해 선택된 각 소프트웨어의 배포 예상시간을 합산하여 총 배포 예상 시간(Td)를 산출하고, 서비스 노드(140, 141), 스위치(142), 공유 디스크(144) 등에서의 과거 자원 사용량 통계에 근거하여 타켓 노드(150, 152, 154)로 소프트웨어를 배포할 최적의 시간대(time slot)를 찾아 자동으로 스케줄링을 수행한다. That is, the scheduler 120 calculates the total expected distribution time (T d ) by summing the expected distribution time of each software selected by the administrator, etc., and the
이때, 스케줄러(120)에서 소프트웨어를 배포할 최적의 시간대 즉, 최적의 소프트웨어 배포 수행 시간을 선정함에 있어서, 먼저, 스케줄러(120)는 서비스 노드(140, 141), 스위치(142), 공유 디스크(144) 등에서의 과거 자원 사용량에 대한 정보를 배포 예상시간의 단위로 정렬시킨다. 이어, 스케줄러(120)는 정렬된 단위 시간 구간(Td) 중 서비스 노드(140, 141), 스위치(142), 공유 디스크(144) 등에서의 과거 자원 사용량이 모두 임계값을 초과하지 않는 단위 시간 구간을 검색한 후, 검색된 단위 시간 구간을 소프트웨어를 배포할 최적의 시간대로 인식하여 타겟 노드(150, 152, 154)에 대한 소프트웨어의 배포 수행 시간으로 선정할 수 있다.At this time, in selecting the optimal time for software distribution in the
이때, 서비스 노드(140, 141), 스위치(142), 공유 디스크(144) 등에서의 과거 자원 사용량이 모두 임계값을 초과하지 않는 단위 시간 구간이 둘 이상 존재하는 경우, 예를 들어 각 단위 시간 구간에 대해 자원 항목별 서로 다른 값으로 부여된 가중치를 기반으로 네트워크상 가장 자원 사용량이 낮은 것으로 평가되는 단위 시간 구간을 찾아내어 타겟 노드(150, 152, 154)에 대한 소프트웨어의 배포 수행 시간으로 선정할 수 있다.At this time, if there are two or more unit time intervals in which the past resource usage in the
도 2는 본 발명의 실시예에 따라 서비스 노드(140, 141), 스위치(142), 공유 디스크(144) 등에서 과거 자원 사용량의 임계값 초과 여부를 단위 시간 구간으로 정렬시킨 매트릭스(matrix)를 예시한 것이다. 2 illustrates a matrix in which the threshold value of past resource usage in the
한편, 위 도 2에서는 편의상 1개의 서비스 노드(140), 스위치(142) 및 공유디스크(144)를 예시하였으며, 자원 항목을 서비스 노드간 RTT, 스위치(142)의 프로세서 이용률, 공유 디스크(144)의 디스크 이용률 등 3개의 항목으로 예시하여 해당 값들이 각각의 자원 항목에 대해 선정된 임계값을 초과하는지에 대한 정보를 예시하였으나, 이는 설명의 편의를 위한 것일 뿐, 이에 한정되는 것은 아니다.On the other hand, in FIG. 2 above, one
즉, 단위 시간 구간(Td)이 예를 들어 30분이라고 가정하는 경우 위 도 2에서와 같이 서비스 노드(140), 스위치(142), 공유 디스크(144) 등에서의 과거 자원 사용량에 대한 정보가 30분 단위로 정렬되어 표시될 수 있으며, 이때, 30분 단위로 구분된 다수의 단위 시간 구간 중 서비스 노드(140), 스위치(142), 공유 디스크(144) 등에서의 자원 항목별 과거 자원 사용량이 모두 임계값을 초과하지 않는 단위 시간 구간이 제1 구간(200), 제2 구간(202), 제3 구간(204) 등으로 검색된 것을 표시하고 있다. 위 도 2에서 N은 임계값을 초과하지 않은 것을 표시할 수 있으며, Y는 임계값을 초과한 것을 표시할 수 있다.That is, if it is assumed that the unit time period (T d ) is, for example, 30 minutes, information on past resource usage in the
따라서, 스케줄러(120)는 위와 같이 검색된 제1 구간(200), 제2 구간(202), 제3 구간(204)을 타겟 노드(150, 152, 154)로 소프트웨어를 배포할 후보 시간대로 인식하여 타겟 노드(150, 152, 154)에 대한 소프트웨어의 배포 수행 시간으로 선정할 수 있다.Accordingly, the
한편, 위와 같이, 서비스 노드(140), 스위치(142), 공유 디스크(144) 등에서의 과거 자원 사용량이 모두 임계값을 초과하지 않는 단위 시간 구간이 제1 구간(200), 제2 구간(202), 제3 구간(204) 등으로 둘 이상 검색된 경우, 스케줄러(120)는 각 단위 시간 구간에 대해 서비스 노드(140), 스위치(142), 공유 디스크(144) 등에서의 자원 항목별 서로 다른 값으로 부여된 가중치를 기반으로 네트워크상 가장 자원 사용량이 낮은 것으로 평가되는 단위 시간 구간을 찾아내어 타겟 노드(150, 152, 154)에 대한 소프트웨어의 배포 수행 시간으로 선정할 수 있다.On the other hand, as described above, the unit time period in which the past resource usage in the
이때, 위와 같은 자원 항목에는 본 발명의 실시예에 따라 네트워크의 운영상 미치는 중요도를 고려하여 서로 다른 가중치가 설정될 수 있으며, 가장 큰 영향을 미칠 수 있는 자원에 상대적으로 더 큰 가중치가 설정되도록 할 수 있다. 따라서 예를 들어 프로세서 이용률에 가장 큰 가중치가 부여된 경우 제1 구간(200), 제2 구간(202), 제3 구간(204)의 단위 시간 구간 중 프로세서 이용률이 가장 낮은 단위 시간 구간이 네트워크상 가장 자원 사용량이 낮은 것으로 평가되어 타겟 노드(150, 152, 154)에 대한 소프트웨어의 배포 수행 시간으로 선정할 수 있는 것이다.In this case, different weights may be set for the above resource items in consideration of the importance that they have on the operation of the network according to an embodiment of the present invention, and a relatively larger weight may be set for the resource that can have the greatest influence. have. Therefore, for example, when the greatest weight is given to the processor utilization rate, the unit time section having the lowest processor utilization rate among the unit time sections of the
또한, 스케줄러(120)는 위와 같은 배포 예상시간을 산출함에 있어서, 타겟 노드(150, 152, 154)에 배포 요청된 소프트웨어가 과거에 배포 이력이 있는 경우 과거 배포에 소요된 시간을 가져와서 배포 예상시간으로 사용할 수 있으며, 배포 요청된 소프트웨어가 과거에 배포 이력이 없는 경우에는 해당 소프트웨어의 배포 스크립트 등을 분석하여 배포 예상시간을 추정할 수 있다. In addition, in calculating the expected distribution time as described above, the
이때, 배포 예상시간을 추정함에 있어서, 스케줄러(120)는 예를 들어 배포 스크립트내 포함된 패키지 설치, 환경 설정, 권한 설정 등의 단위 기능들 각각을 실행하는데 소요되는 예상 시간을 기존 통계치로부터 구한 후, 각 단위 기능별 예상 소요 시간을 합산하여 소프트웨어의 배포 예상시간을 추정할 수 있다. At this time, in estimating the expected distribution time, the
배포부(130)는 스케줄러(120)에 의해 설정된 소프트웨어 배포 수행 시점이 되면 해당 소프트웨어를 타겟 노드(150, 152, 154)로 실제 배포하는 작업을 수행한다.The
또한, 배포부(130)는 타겟 노드(150, 152, 154)에 대한 소프트웨어의 배포 수행 시 네트워크 상 서비스 노드(140, 141), 스위치(142) 및 공유 디스크(144) 등의 자원 사용량을 실시간으로 검사하고, 검사결과 해당 자원 사용량이 임계값을 초과하는 경우 타겟 노드(150, 152, 154)에 대한 소프트웨어 배포 수행을 일시 중지시킨 후, 자원 사용량이 임계값 이하로 내려가는 경우 배포를 재개시킬 수 있다.In addition, the
즉, 배포부(130)는 모든 타겟 노드에 한꺼번에 소프트웨어 배포를 수행하는 것이 아니라 네트워크상 서비스 노드(140, 141), 스위치(142), 공유 디스크(144) 등에서의 자원 사용량이 임계값 이하인지 실시간으로 계속 모니터링하면서 임계값 이상일 경우에는 일정 시간 대기하고, 임계값 이하일 경우에만 추가로 소프트웨어 배포 작업이 이루어지지 않은 일정 개수의 다른 타겟 노드에 소프트웨어 배포 작업을 수행할 수 있다.That is, the
도 3은 본 발명의 실시예에 따라 자원 사용량을 고려하여 소프트웨어 배포를 스케줄링하는 동작 제어 흐름을 도시한 것이다. 이하, 도 1 내지 도 3을 참조하여 본 발명의 실시예를 상세히 설명하기로 한다.3 is a flowchart illustrating an operation control flow for scheduling software distribution in consideration of resource usage according to an embodiment of the present invention. Hereinafter, an embodiment of the present invention will be described in detail with reference to FIGS. 1 to 3 .
먼저, 스케줄링 장치(100)의 배포 설정부(110)에서 네트워크상 각 서비스 장비(148) 즉, 서비스 노드(140, 141), 스위치(142), 공유 디스크(144) 등에서 최대 허용 가능한 자원 사용량의 임계값을 설정한다(S300).First, in the
이때, 이러한 임계값은 시스템에서 제공하는 자원에 대해 서비스 노드(140, 141), 스위치(142) 및 공유 디스크(144) 등에서 최대 허용 가능한 자원 사용량을 의미할 수 있으며, 이러한 임계값은 전체 시스템의 운영에 문제가 발생하지 않도록 미리 추정되어 시스템 관리자 등에 의해 입력될 수 있다.At this time, this threshold may mean the maximum allowable resource usage in the
이와 같이 관리자 등에 의해 임계값이 입력되는 경우 배포 설정부(110)에서 이를 인식하여 네트워크상 서비스 노드(140, 141), 스위치(142), 공유 디스크(144) 등에서 최대 허용 가능한 자원 사용량의 임계값을 설정할 수 있다. In this way, when a threshold value is input by an administrator, etc., the
이어, 위와 같이 자원 사용량에 대한 임계값을 설정하는 경우 배포 설정부(110)는 타겟 노드에 배포할 소프트웨어에 대한 정보를 설정한다(S302). Next, when setting a threshold for resource usage as above, the
이때, 이러한 소프트웨어에 대한 정보는 네트워크상 타겟 노드(150, 152, 154)로 배포 작업을 수행하여야 하는 소프트웨어의 목록을 의미할 수 있으며, 이러한 소프트웨어의 목록이 시스템 관리자 등에 의해 선택되는 경우, 배포 설정부(110)에서 이를 인식하여 타겟 노드(150, 152, 154)에 배포할 소프트웨어에 대한 정보로 사용할 수 있다.In this case, the information about the software may mean a list of software that should be distributed to the target nodes 150 , 152 , and 154 on the network. The
이때, 타겟 노드(150, 152, 154)로 배포할 소프트웨어가 네트워크상 소프트웨어 목록에 없는 새로운 소프트웨어인 경우 관리자 등은 해당 소프트웨어의 이름과 배포 스크립트를 입력하여 등록 요청할 수 있으며, 이에 따라 배포 설정부(110)에서는 새로운 소프트웨어 이름과 배포 스크립트 정보를 입력받아 타겟 노드(150, 152, 154)에 배포할 소프트웨어로 등록할 수 있다.At this time, if the software to be distributed to the target nodes 150, 152, 154 is new software that is not in the software list on the network, the administrator may request registration by inputting the name and distribution script of the software, and accordingly, the distribution setting unit ( In 110), a new software name and distribution script information may be input and registered as software to be distributed to the target nodes 150 , 152 , 154 .
위와 같이 배포 설정부(110)를 통해 임계값 설정과 타겟 노드(150, 152, 154)로 배포할 소프트웨어에 대한 정보가 설정되는 경우, 이러한 임계값 설정과 타겟 노드(150, 152, 154)로 배포할 소프트웨어에 대한 정보는 스케줄러(120)로 제공될 수 있다.As above, when the threshold value setting and information about the software to be distributed to the target nodes 150, 152, 154 are set through the
그러면, 스케줄러(120)는 타겟 노드(150, 152, 154)로 배포 요청된 소프트웨어가 과거에 배포된 이력이 있는지 여부를 검사한다(S304).Then, the
이때, 타겟 노드(150, 152, 154)에 배포 요청된 소프트웨어가 과거에 배포 이력이 있는 경우 스케줄러(120)는 과거 배포에 소요된 시간을 가져와서 배포 예상시간으로 사용할 수 있다(S306).At this time, if the software requested to be distributed to the target nodes 150 , 152 , 154 has a distribution history in the past, the
그러나, 이와 달리, 배포 요청된 소프트웨어가 과거에 배포 이력이 없는 경우 스케줄러(120)는 해당 소프트웨어의 배포 스크립트 등을 분석하여 배포 예상시간을 추정할 수 있다(S308). 이때, 배포 예상시간을 추정함에 있어서, 스케줄러(120)는 예를 들어 배포 스크립트내 포함된 패키지 설치, 환경 설정, 권한 설정 등의 단위 기능들 각각을 실행하는데 소요되는 예상 시간을 기존 통계치로부터 구한 후, 각 단위 기능별 예상 소요 시간을 합산하여 소프트웨어의 배포 예상시간을 추정할 수 있으나, 이에 한정되는 것은 아니다. However, in contrast to this, when the distribution requested software has no distribution history in the past, the
이어, 위와 같이 배포 요청된 각각의 소프트웨어에 대한 배포 예상시간을 산출한 경우, 스케줄러(120)는 관리자 등에 의해 선택된 각 소프트웨어의 배포 예상시간을 합산하여 총 배포 예상 시간(Td)를 산출한다(S310).Next, when the expected distribution time for each software requested for distribution is calculated as described above, the
위와 같이 총 배포 예상 시간을 산출한 경우, 스케줄러(120)는 서비스 노드(140, 141), 스위치(142), 공유 디스크(144) 등에서의 과거 자원 사용량 통계에 근거하여 타켓 노드(150, 152, 154)로 소프트웨어를 배포할 최적의 시간대(time slot)를 찾아낸다(S312).When the total distribution expected time is calculated as above, the
이때, 위와 같이 스케줄러(120)에서 소프트웨어를 배포할 최적의 시간대 즉, 최적의 소프트웨어 배포 수행 시간을 선정함에 있어서, 먼저, 스케줄러(120)는 서비스 노드(140, 141), 스위치(142), 공유 디스크(144)등에서의 과거 자원 사용량에 대한 정보를 총 배포 예상시간의 단위로 정렬시킨다. At this time, in selecting the optimal time period for software distribution in the
이어, 스케줄러(120)는 정렬된 단위 시간 구간(Td) 중 서비스 노드(140, 141), 스위치(142), 공유 디스크(144) 등에서의 과거 자원 사용량이 모두 임계값을 초과하지 않는 단위 시간 구간을 검색한 후, 검색된 단위 시간 구간을 소프트웨어를 배포할 후보 시간대로 인식하여 타겟 노드(150, 152, 154)에 대한 소프트웨어의 배포 수행 시간으로 선정할 수 있다.Next, the
또한, 서비스 노드(140, 141), 스위치(142), 공유 디스크(144) 등에서의 과거 자원 사용량이 모두 임계값을 초과하지 않는 단위 시간 구간이 둘 이상 존재하는 경우, 위 도 2에서 설명한 바와 같이 각 단위 시간 구간에 대해 서비스 노드(140, 141), 스위치(142), 공유 디스크(144) 등에서의 자원 항목별 서로 다른 값으로 부여된 가중치를 기반으로 네트워크상 가장 자원 사용량이 낮은 것으로 평가되는 단위 시간 구간을 찾아내어 타겟 노드(150, 152, 154)에 대한 소프트웨어의 배포 수행 시간으로 선정할 수 있다.In addition, when there are two or more unit time intervals in which past resource usage in the
이어, 스케줄러(120)는 위와 같이 타겟 노드(150, 152, 154)로 소프트웨어를 배포할 최적의 배포 수행시간이 검색되는지 여부를 검사하고(S314), 배포 수행시간이 검색되지 않는 경우 서비스 노드(140, 141), 스위치(142), 공유 디스크(144) 등에 대한 자원 사용량 임계값이 조정되도록 한 후(S316), (S312) 내지 (S314)단계를 반복 수행하게 된다.Next, the
이와 달리, 타겟 노드(150, 152, 154)로 소프트웨어를 배포할 최적의 배포 수행시간이 검색된 경우 스케줄러(120)는 배포 수행시간을 배포부(130)로 인가하여 해당 배포 수행시간에 배포가 수행되도록 스케줄링할 수 있다(S318).On the other hand, when the optimal distribution execution time for distributing software to the target nodes 150, 152, 154 is found, the
도 4는 본 발명의 실시예에 따른 자원 사용량을 고려한 소프트웨어 배포 스케줄링에 따라 소프트웨어를 배포하는 동작 제어 흐름을 도시한 것이다. 이하, 도 1 내지 도 4를 참조하여 본 발명의 실시예를 상세히 설명하기로 한다.4 is a flowchart illustrating an operation control flow for distributing software according to software distribution scheduling in consideration of resource usage according to an embodiment of the present invention. Hereinafter, an embodiment of the present invention will be described in detail with reference to FIGS. 1 to 4 .
위 도 3에서와 같이 스케줄링 장치(100)의 스케줄러(120)에서 타겟 노드(150, 152, 154)로 소프트웨어를 배포할 최적의 배포 수행시간이 선정되는 경우, 이러한 배포 수행시간에 대한 정보가 배포부(130)로 인가될 수 있다.As shown in FIG. 3 above, when the optimal distribution execution time for distributing software from the
그러면, 배포부(130)는 스케줄러(120)에 의해 설정된 타겟 노드(150, 152, 154)에 대한 소프트웨어 배포 수행 시간 정보를 참조하여 배포 수행 시간이 되는 경우 일정 개수의 타겟 노드(150, 152, 154)로 해당 소프트웨어를 배포하는 작업을 수행한다(S400).Then, the
이어, 배포부(130)는 위와 같이 타겟 노드(150, 152, 154)에 대한 소프트웨어 배포를 수행한 후, 소프트웨어를 배포해야할 타겟 노드(150, 152, 154)가 남아있는지를 검사한다(S402).Next, the
이때, 타겟 노드(150, 152, 154)가 남아 있는 경우 배포부(130)는 남아 있는 타겟 노드(150, 152, 154)에 대해 곧바로 다시 소프트웨어 배포를 수행하기 전에 네트워크상 서비스 노드(140, 141), 스위치(142), 공유 디스크(144) 등에서의 자원 사용량을 실시간으로 모니터링하여, 자원 사용량이 임계값을 초과하는지 여부를 검사한다(S404).At this time, when the target nodes 150 , 152 , and 154 remain, the
이때 만일 서비스 노드(140, 141), 스위치(142), 공유 디스크(144) 등에서의 자원 사용량이 임계값을 초과하지 않는 경우 배포부(130)는 남아 있는 타겟 노드(150, 152, 154) 중 일정 개수의 노드로 소프트웨어를 배포한다(S400).At this time, if the resource usage in the
그러나, 이와 달리 서비스 노드(140, 141), 스위치(142), 공유 디스크(144) 등에서의 자원 사용량이 임계값을 초과하는 경우 배포부(130)는 타겟 노드(150, 152, 154)에 대한 소프트웨어 배포 수행을 일시 중지시킨 후, 일정 시간동안 대기한다(S406).However, if the resource usage in the service nodes (140, 141), the switch (142), the shared disk (144), etc. exceeds the threshold value unlike this, the
이어, 배포부(130)는 위와 같이 일정 시간동안 대기한 후, 다시 네트워크상 서비스 노드(140, 141), 스위치(142), 공유 디스크(144) 등에서의 자원 사용량이 임계값을 초과하는지 여부를 검사하여(S404) 임계값을 초과하지 않는 경우 남아 있는 타겟 노드(150, 152, 154)로 소프트웨어를 배포하는 과정을 반복하게 된다.Next, the
상기한 바와 같이, 본 발명에 따르면, 자원 사용량에 따른 소프트웨어 배포 자동 스케줄링에 있어서, 네트워크 트래픽 등의 자원 사용량에 대한 제어가 필요한 데이터센터 등의 환경에서 소프트웨어 배포 수행 시, 기존 서비스 장비들의 시간대별 자원 사용량 통계에 근거하여 네트워크상 자원 사용량이 상대적으로 가장 낮은 것으로 평가되는 최적의 시간에 배포가 수행되도록 하고, 실제 소프트웨어 배포시에도 서비스 장비들의 실시간 자원 사용량이 미리 정의된 임계점을 넘지 않는 범위 내에서 배포를 순차적으로 수행하는 자동 스케줄링이 가능하게 된다.As described above, according to the present invention, in the automatic scheduling of software distribution according to resource usage, when software distribution is performed in an environment such as a data center that requires control of resource usage such as network traffic, time-based resources of existing service equipment Based on the usage statistics, the distribution is performed at the optimal time when the resource usage on the network is evaluated as the relatively lowest, and the real-time resource usage of the service equipment does not exceed a predefined threshold even during actual software distribution. Automatic scheduling of sequentially performing is possible.
한편 상술한 본 발명의 설명에서는 구체적인 실시예에 관해 설명하였으나, 여러 가지 변형이 본 발명의 범위에서 벗어나지 않고 실시될 수 있다. 따라서 발명의 범위는 설명된 실시 예에 의하여 정할 것이 아니고 특허청구범위에 의해 정하여져야 한다.Meanwhile, although specific embodiments have been described in the above description of the present invention, various modifications may be made without departing from the scope of the present invention. Therefore, the scope of the invention should not be determined by the described embodiments, but should be determined by the claims.
본 발명의 실시예에 따른 자원 사용량에 따른 소프트웨어 배포 자동 스케줄링을 적용하는 경우, 사용자가 복잡한 조건을 고려하여 배포 시간을 결정할 필요가 없어지게 되어 소프트웨어 배포 스케줄링이 보다 효율적으로 이루어질 수 있게 된다. When the automatic software distribution scheduling according to the resource usage according to the embodiment of the present invention is applied, the user does not need to determine the distribution time in consideration of complex conditions, so that the software distribution scheduling can be performed more efficiently.
105 : 자원 모니터부 110 : 배포 설정부
120 : 스케줄러 130 : 배포부
140, 141 : 서비스 노드 142 : 스위치
144 : 공유 디스크 150, 152, 154 : 타겟 노드105: resource monitor unit 110: distribution setting unit
120: scheduler 130: distribution unit
140, 141: service node 142: switch
144: shared disk 150, 152, 154: target node
Claims (8)
복수의 서비스 장비를 포함하는 네트워크에서 각 서비스 장비에 대하여 최대 허용 가능한 자원 사용량의 임계값을 설정하는 단계와,
상기 네트워크에서 적어도 하나의 타겟 노드에 대해 배포될 소프트웨어를 설정하는 단계와,
상기 소프트웨어의 배포에 소요되는 배포 예상시간을 산출하는 단계와,
상기 각 서비스 장비의 과거 시간별 자원 사용량에 대한 정보를 상기 배포 예상시간의 단위로 정렬시키는 단계와,
상기 정렬된 단위 시간 구간 중 상기 각 서비스 장비의 과거 시간별 자원 사용량이 모두 상기 임계값을 초과하지 않는 단위 시간 구간을 검색하는 단계와,
상기 검색된 단위 시간 구간을 상기 타겟 노드에 대한 상기 소프트웨어의 배포 수행 시간으로 선정하는 단계
를 포함하는 소프트웨어 배포 스케줄링 방법.
A software distribution scheduling method performed by a software distribution scheduling device, comprising:
Setting a threshold value of the maximum allowable resource usage for each service equipment in a network including a plurality of service equipment;
setting software to be distributed for at least one target node in the network;
calculating an expected distribution time required for distribution of the software;
arranging information on resource usage by past time of each service equipment in units of the expected distribution time;
Searching for a unit time interval in which the resource usage by past time of each service equipment does not all exceed the threshold value among the aligned unit time intervals;
selecting the searched unit time period as a time for performing distribution of the software to the target node
A software distribution scheduling method comprising:
상기 정렬시키는 단계는 상기 각 서비스 장비의 자원 항목별 자원 사용량을 상기 단위 시간 구간으로 정렬시키고,
상기 검색하는 단계는 상기 각 서비스 장비의 상기 자원 항목별 자원 사용량이 각 자원 항목에 설정된 임계값보다 모두 낮은 후보 단위 시간 구간을 검색하며,
상기 선정하는 단계는 상기 후보 단위 시간 구간이 둘 이상인 경우 상기 자원 항목별 서로 다른 값으로 부여된 가중치를 기반으로 가장 자원 사용량이 낮은 것으로 평가되는 하나의 단위 시간 구간을 최종 선정하는
소프트웨어 배포 스케줄링 방법.
The method of claim 1,
The aligning step aligns the resource usage for each resource item of each service equipment into the unit time interval,
The searching step searches for a candidate unit time interval in which the resource usage for each resource item of each service equipment is lower than a threshold value set for each resource item,
In the selecting step, when there are two or more candidate unit time intervals, one unit time interval that is evaluated as having the lowest resource usage based on the weights assigned to different values for each resource item is finally selected.
How to schedule software distribution.
상기 방법은,
상기 선정된 상기 배포 수행 시간에 상기 타겟 노드에 대한 상기 소프트웨어의 배포를 수행하는 단계와,
상기 배포 수행 시 상기 각 서비스 장비의 자원 사용량을 실시간으로 모니터링하는 단계와,
상기 모니터링의 결과 상기 각 서비스 장비의 자원 사용량이 상기 임계값을 초과하는 경우 상기 배포 수행을 일시 중지시키되, 상기 자원 사용량이 상기 임계값 이하로 내려가는 경우 상기 배포 수행을 재개시키는 단계
를 포함하는 소프트웨어 배포 스케줄링 방법.
The method of claim 1,
The method is
performing distribution of the software to the target node at the selected distribution execution time;
monitoring the resource usage of each service equipment in real time when the distribution is performed;
Pausing the distribution when the resource usage of each service equipment exceeds the threshold as a result of the monitoring, and resuming the distribution when the resource usage falls below the threshold
A software distribution scheduling method comprising:
상기 배포 예상시간을 산출하는 단계는,
상기 소프트웨어가 과거에 배포 이력이 있는 경우 과거 배포에 수행된 시간을 상기 배포 예상시간으로 사용하는 단계와,
상기 소프트웨어가 과거에 배포 이력이 없는 경우에는 상기 소프트웨어의 배포 스크립트를 분석하여 상기 배포 예상시간을 추정하는 단계
를 포함하는 소프트웨어 배포 스케줄링 방법.
The method of claim 1,
Calculating the expected distribution time comprises:
If the software has a distribution history in the past, using the time performed in the past distribution as the distribution estimated time;
estimating the expected distribution time by analyzing the distribution script of the software when the software has no distribution history in the past
A software distribution scheduling method comprising:
상기 타겟 노드로 상기 소프트웨어를 배포하는데 소요되는 배포 예상시간을 산출하고, 상기 각 서비스 장비의 과거 시간별 자원 사용량에 대한 정보를 상기 배포 예상시간의 단위로 정렬시키며, 상기 정렬된 단위 시간 구간 중 상기 각 서비스 장비의 과거 시간별 자원 사용량이 모두 상기 임계값을 초과하지 않는 단위 시간 구간을 상기 타겟 노드에 대한 상기 소프트웨어의 배포 수행 시간을 선정하는 스케줄러
를 포함하는 소프트웨어 배포 스케줄링 장치.
A distribution setting unit for setting a threshold value of resource usage available for each service equipment in a network including a plurality of service equipment and software to be distributed to at least one target node in the network;
Calculating the expected distribution time required to distribute the software to the target node, arranging information on resource usage for each time in the past of each service equipment in units of the expected distribution time, and each A scheduler that selects a time for performing distribution of the software to the target node for a unit time period in which all resource usage by past time of the service equipment does not exceed the threshold
A software distribution scheduling device comprising a.
상기 장치는,
상기 선정된 배포 수행 시간에 상기 타겟 노드에 대한 상기 소프트웨어의 배포를 수행하는 배포부를 더 포함하며,
상기 배포부는, 상기 배포 수행 시 상기 각 서비스 장비의 자원 사용량을 실시간으로 모니터링하고, 상기 각 서비스 장비의 자원 사용량이 상기 임계값을 초과하는 경우 상기 배포를 일시 중지시키되, 상기 자원 사용량이 상기 임계값 이하로 내려가는 경우 상기 배포를 재개시키는 소프트웨어 배포 스케줄링 장치.7. The method of claim 6,
The device is
Further comprising a distribution unit that distributes the software to the target node at the selected distribution execution time,
The distribution unit monitors the resource usage of each service equipment in real time when the distribution is performed, and temporarily suspends the distribution when the resource usage of each service equipment exceeds the threshold value, wherein the resource usage is the threshold value A software distribution scheduling device that resumes the distribution if it goes below.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150156576A KR102317716B1 (en) | 2015-11-09 | 2015-11-09 | Method and apparatus for scheduling deployment of software based on resource usages |
KR1020210121276A KR102421633B1 (en) | 2015-11-09 | 2021-09-10 | Method and apparatus for scheduling deployment of software based on resource usages |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150156576A KR102317716B1 (en) | 2015-11-09 | 2015-11-09 | Method and apparatus for scheduling deployment of software based on resource usages |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210121276A Division KR102421633B1 (en) | 2015-11-09 | 2021-09-10 | Method and apparatus for scheduling deployment of software based on resource usages |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20170053971A KR20170053971A (en) | 2017-05-17 |
KR102317716B1 true KR102317716B1 (en) | 2021-10-26 |
Family
ID=59048732
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020150156576A KR102317716B1 (en) | 2015-11-09 | 2015-11-09 | Method and apparatus for scheduling deployment of software based on resource usages |
KR1020210121276A KR102421633B1 (en) | 2015-11-09 | 2021-09-10 | Method and apparatus for scheduling deployment of software based on resource usages |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210121276A KR102421633B1 (en) | 2015-11-09 | 2021-09-10 | Method and apparatus for scheduling deployment of software based on resource usages |
Country Status (1)
Country | Link |
---|---|
KR (2) | KR102317716B1 (en) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060075399A1 (en) * | 2002-12-27 | 2006-04-06 | Loh Choo W | System and method for resource usage prediction in the deployment of software applications |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001025918A2 (en) * | 1999-10-01 | 2001-04-12 | Accenture Llp | Frameworks for methods and systems of providing netcentric computing |
KR100894813B1 (en) | 2004-12-23 | 2009-04-24 | 에스지어드밴텍(주) | The P2P-based Network Segmentation Method and system for Specific Software Distribution and Installation automatically |
WO2010050335A1 (en) * | 2008-10-27 | 2010-05-06 | 株式会社 日立製作所 | Resource management method and building-in device |
-
2015
- 2015-11-09 KR KR1020150156576A patent/KR102317716B1/en active IP Right Grant
-
2021
- 2021-09-10 KR KR1020210121276A patent/KR102421633B1/en active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060075399A1 (en) * | 2002-12-27 | 2006-04-06 | Loh Choo W | System and method for resource usage prediction in the deployment of software applications |
Also Published As
Publication number | Publication date |
---|---|
KR20210116394A (en) | 2021-09-27 |
KR20170053971A (en) | 2017-05-17 |
KR102421633B1 (en) | 2022-07-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10585693B2 (en) | Systems and methods for metric driven deployments to cloud service providers | |
US10877801B2 (en) | Systems and methods for scheduling tasks | |
JP5954074B2 (en) | Information processing method, information processing apparatus, and program. | |
CN109936604B (en) | Resource scheduling method, device and system | |
US9680708B2 (en) | Method and apparatus for cloud resource delivery | |
CN109669758A (en) | Concocting method, device, equipment and the storage medium of server resource | |
WO2020168356A3 (en) | Systems and methods for cloud migration readiness | |
US20150263906A1 (en) | Method and apparatus for ensuring application and network service performance in an automated manner | |
US20070250629A1 (en) | Method and a system that enables the calculation of resource requirements for a composite application | |
CN101211277A (en) | Method of selecting one of execution schedules of guest OS and virtual machine monitor employing the method | |
CN111404992A (en) | Tenant-controlled cloud updates | |
KR20170139872A (en) | Multi-tenant based system and method for providing services | |
CN106557369A (en) | A kind of management method and system of multithreading | |
US20120324468A1 (en) | Product-specific system resource allocation within a single operating system instance | |
CN103164253A (en) | Virtual machine deployment system and virtual machine deployment method | |
CN114302429B (en) | NWDAF network element determination method, device, equipment and storage medium | |
CN106030536A (en) | Method, computer program and node for management of resources | |
KR101448413B1 (en) | Method and apparatus for scheduling communication traffic in atca-based equipment | |
CN109739634A (en) | A kind of atomic task execution method and device | |
CN103902054A (en) | Equipment sharing method and equipment sharing system | |
US20210298033A1 (en) | Priority Control Method and Data Processing System | |
US9674093B2 (en) | Method and apparatus for ripple rate sensitive and bottleneck aware resource adaptation for real-time streaming workflows | |
CN109347982A (en) | A kind of dispatching method and device of data center | |
KR102421633B1 (en) | Method and apparatus for scheduling deployment of software based on resource usages | |
KR101600743B1 (en) | Apparatus and method for processing data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |