KR19990087967A - 소프트웨어자동배포시스템 - Google Patents

소프트웨어자동배포시스템 Download PDF

Info

Publication number
KR19990087967A
KR19990087967A KR1019990014981A KR19990014981A KR19990087967A KR 19990087967 A KR19990087967 A KR 19990087967A KR 1019990014981 A KR1019990014981 A KR 1019990014981A KR 19990014981 A KR19990014981 A KR 19990014981A KR 19990087967 A KR19990087967 A KR 19990087967A
Authority
KR
South Korea
Prior art keywords
machine
distribution
software
distributed
list
Prior art date
Application number
KR1019990014981A
Other languages
English (en)
Other versions
KR100308171B1 (ko
Inventor
스즈키마사키
Original Assignee
다니구찌 이찌로오, 기타오카 다카시
미쓰비시덴키 가부시키가이샤
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 다니구찌 이찌로오, 기타오카 다카시, 미쓰비시덴키 가부시키가이샤 filed Critical 다니구찌 이찌로오, 기타오카 다카시
Publication of KR19990087967A publication Critical patent/KR19990087967A/ko
Application granted granted Critical
Publication of KR100308171B1 publication Critical patent/KR100308171B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)
  • Computer And Data Communications (AREA)

Abstract

S/W 배포경로를 동적으로 변경해서 S/W 배포처리를 자동적으로 계속할 수 있는 소프트웨어 자동배포 시스템에 관한 것으로서, 장해회복이나 배포경로 변경을 위한 수동작업이나 불필요한 수동감시를 실행하지 않고 S/W 배포를 단시간에 실행하여 S/W 배포를 효율좋게 실현할 수 있는 소프트웨어 자동배포 시스템을 제공하기 위해, 몇단계의 계층별로 배분된 머신에 대해 소프트웨어를 배포하는 소프트웨어 자동배포 시스템에 있어서 제1 머신에서 제2 머신으로 소프트웨어를 배포했을 때 소프트웨어 배포에 실패한 경우 제2 머신에 대응하는 대체머신으로 소프트웨어를 배포하기 위한 대체머신정보가 기억된 대체머신 정보기억수단 및 제1 머신에서 제2 머신으로 소프트웨어를 배포했을 때 소프트웨어 배포에 실패한 경우 대체머신 정보기억수단에서 리드한 제2 머신에 대응하는 대체머신 정보에 따라 소프트웨어를 배포하는 소프트웨어 배포수단을 갖는 구성으로 하였다.
이와 같이 구성하는 것에 의해, S/W 배포경로를 동적으로 변경해서 S/W배포처리를 자동적으로 계속하여 S/W배포를 효율좋게 실현할 수 있다는 효과가 있다.

Description

소프트웨어 자동배포 시스템{SOFTWARE AUTOMATIC DISTRIBUTION SYSTEM}
본 발명은 몇단계의 계층별로 배분된 여러개의 머신(기계) 중, 적어도 어느 하나의 머신에 대해 소프트웨어를 배포하는 소프트웨어 자동배포 시스템에 관한 것으로서, 상세하게는 특히 S/W 배포경로를 동적으로 변경해서 S/W 배포처리를 자동적으로 계속할 수 있는 소프트웨어 자동배포 시스템에 관한 것이다.
종래, 여러개의 머신을 몇단계의 계층별로 배분해서 S/W를 1대의 머신에서 배포하는 계층형 S/W 자동배포 시스템에 있어서는 어떠한 원인에 의해 중간계층의 머신으로의 S/W 배포를 실패했을 때, 그 S/W 배포가 실패한 머신의 계층 이하의 머신으로의 S/W 배포를 계속하는 경우 장해가 발생한 중간계층의 머신을 수동작업에 의해 회복시키고나서 재차 S/W 배포를 실시하거나 또는 장해가 발생한 머신을 회피하도록 수동작업에 의해 배포경로를 변경하고나서 재차 S/W 배포를 실시하고 있었다.
상기한 바와 같은 종래의 계층형 S/W 자동배포 시스템에서는 어떠한 원인에 의해 중간계층의 머신의 S/W 배포를 실패하면 장해가 발생한 중간계층의 머신을 수동작업에 의해 회복시키고 나서 재차 S/W 배포를 실시하거나 또는 장해가 발생한 머신을 회피하도록 수동작업에 의해 배포경로를 변경하고 나서 재차 S/W 배포를 실시하고 있었으므로 어떠한 경우도 수동작업이 필요하고 또한 예를 들면 지정된 시간까지 S/W 배포를 완료할 필요가 있는 경우, 장해의 발생에 대비해서 S/W 배포가 완료될 때까지 수동에 의한 감시가 필요하다는 등 결국 S/W 배포에 시간이 걸리게 되어 S/W 배포를 효율좋게 배포한다는 점에서 과제가 있었다.
본 발명의 목적은 이와 같은 과제를 해결하기 위해 이루어진 것으로서, 어떠한 원인에 의해 중간계층의 머신으로의 S/W 배포를 실패하였을 때, S/W 배포경로를 동적으로 변경해서 S/W 배포처리를 자동적으로 계속하는 것에 의해, 장해회복이나 배포경로 변경을 위한 수동작업이나 불필요한 수동감시를 실행하지 않고 S/W 배포를 단시간에 실행하여 S/W 배포를 효율좋게 실현할 수 있는 소프트웨어 자동배포 시스템을 제공하는 것이다.
도 1은 계층배포를 도시한 도면,
도 2는 경로정보 마스터를 도시한 도면,
도 3은 배포처 경로정보를 도시한 도면,
도 4는 배포처 리스트를 도시한 도면,
도 5는 장해머신 리스트를 도시한 도면,
도 6은 중간배포처 리스트를 도시한 도면,
도 7은 대체머신 리스트를 도시한 도면,
도 8은 본 발명에 관한 실시예 1의 소프트웨어 자동배포 시스템에 사용되는 대체머신 리스트를 도시한 도면,
도 9는 본 발명에 관한 실시예 1의 소프트웨어 자동배포 시스템의 처리흐름을 도시한 흐름도,
도 10은 본 발명에 관한 실시예 1의 소프트웨어 자동배포 시스템의 처리흐름을 도시한 흐름도,
도 11은 본 발명에 관한 실시예 1의 소프트웨어 자동배포 시스템에 사용되는 중간배포처 리스트를 도시한 도면,
도 12는 본 발명에 관한 실시예 1의 소프트웨어 자동배포 시스템에 사용되는 배포처 경로정보를 도시한 도면,
도 13은 본 발명에 관한 실시예 1의 소프트웨어 자동배포 시스템에 사용되는 배포처 경로정보를 도시한 도면,
도 14는 본 발명에 관한 실시예 1의 소프트웨어 자동배포 시스템에 사용되는 중간배포처 리스트를 도시한 도면,
도 15는 본 발명에 관한 실시예 1의 소프트웨어 자동배포 시스템에 사용되는 배포처 경로정보를 도시한 도면,
도 16은 본 발명에 관한 실시예 1의 소프트웨어 자동배포 시스템에 사용되는 배포처 경로정보를 도시한 도면,
도 17은 본 발명에 관한 실시예 1의 소프트웨어 자동배포 시스템에 사용되는 중간배포처 리스트를 도시한 도면,
도 18은 본 발명에 관한 실시예 1의 소프트웨어 자동배포 시스템에 사용되는 배포처 경로정보를 도시한 도면.
[부호의 설명]
1∼10…머신
이하, 본 발명에 있어서 개시되는 발명 중, 대표적인 구성의 개요에 대해 간단힛 설명하면 다음과 같다.
[1] 본 발명에 관한 소프트웨어 자동배포 시스템은 몇단계의 계층별로 배분된 머신에 대해 소프트웨어를 배포하는 소프트웨어 자동배포 시스템에 있어서, 제1 머신에서 제2 머신으로 소프트웨어를 배포했을 때 소프트웨어 배포에 실패한 경우, 제2 머신에 대응하는 대체머신에 소프트웨어를 배포하기 위한 대체머신 정보가 기억된 대체머신 정보 기억수단 및 제1 머신에서 제2 머신으로 소프트웨어를 배포했을 때 소프트웨어 배포에 실패한 경우, 대체머신 정보 기억수단에서 리드한 제2 머신에 대응하는 대체머신 정보에 따라 소프트웨어를 배포하는 소프트웨어 배포수단을 갖는 것을 특징으로 하는 것이다.
[2] 본 발명에 관한 소프트웨어 자동배포 시스템은 상기 [1]에 있어서, 제1 머신에서 제2 머신으로 소프트웨어를 배포했을 때 소프트웨어 배포에 실패한 사실의 배포결과 정보를 제2 머신에서 제1 머신으로 통지하는 배포결과 정보통지 수단 및 통지된 배포결과 정보에 따라 소프트웨어 배포불량을 검출하는 소프트웨어 배포불량 검출수단을 갖는 것을 특징으로 하는 것이다.
[3] 본 발명에 관한 소프트웨어 자동배포 시스템은 상기 [1]에 있어서, 제1 머신에서 제2 머신으로 소프트웨어를 배포했을 때 소프트웨어 배포결과 정보가 소정시간내에 제1 머신으로 통지되지 않은 경우, 소프트웨어 배포불량으로 판단하는 소프트웨어 배포불량 판단수단을 갖는 것을 특징으로 하는 것이다.
[실시예]
이하, 본 발명의 실시예를 도면을 참조해서 설명한다.
<실시예 1>
우선, 본 발명의 실시예를 설명하기 위해 관련된 용어, (가)계층배포, (나)관리머신, (다)경로정보 마스터, (라)배포처 경로정보, (마)배포처 리스트, (바)장해머신리스트, (사)중간배포처 리스트, (아)대체머신 리스트에 대해 정의한다.
(가) 계층배포
도 1은 계층배포를 도시한 도면이다.
계층배포라는 것은 S/W를 여러개의 머신으로 배포하는 경우 1대의 머신에서 모든 머신으로 직접 S/W를 배포하는 것이 아니라, 도 1에 도시한 바와 같이 몇단계의 머신을 경유해서 S/W를 배포하는 방법을 의미한다. 계층배포는 몇단계의 계층별로 배분된 여러개의 머신에 대해 S/W를 배포하는 방법이지만, 말단의 계층의 머신에만 S/W를 배포해도 좋고, 배포경로상의 머신 전체에 S/W를 배포해도 좋고, 요컨대 배포경로상의 어떤 머신에 S/W를 배포하는 구성이면 좋다. 계층배포는 몇단계의 계층별로 배분된 1개의 머신에 대해 S/W를 배포하도록 구성해도 좋다.
(나) 관리머신
관리머신은 계층배포를 관리하는 최상계층의 머신을 의미하고, 도 1의 예에서는 계층(0)의 머신(1)이 관리머신에 해당한다.
(다) 경로정보 마스터
도 2는 경로정보 마스터를 도시한 도면이다.
경로정보 마스터는 관리머신만으로 정의되어 있는 정적인 초기 상태의 전체의 계층구조에 있어서의 배포시스템 전체의 경로정보를 의미하고, 도 1의 예는 관리머신(1)의 경로정보 마스터이다. 예를 들면, S/W의 배포처가 머신(10)인 경우, 배포경로는 머신(1)→머신(2)→머신(5)→머신(10)으로 되고, 머신(1)에서 머신(2), 머신(5)를 경유해서 머신(10)으로 S/W가 배포된다.
(라) 배포처 경로정보
배포처 경로정보는 임의의 머신에 주목했을 때, 상기 머신을 최상계층으로 한 계층배포의 경로정보를 의미한다. 단, 상기 머신 및 배포대상 외의 머신의 레코드(기록)는 포함하지 않는다. 이 배포처 경로정보는 관리머신으로 정의되고 S/W와 동시에 배포되어 배포후에 배포처의 머신에서 불필요한 레코드가 삭제된다. 또, 배포처 경로정보는 S/W를 정상으로 배포할 수 없는 장해가 발생한 경우, 후술하는 대체머신 리스트에 따라 수정된다.
예를 들면 도 1과 같은 시스템 계층구성일 때, S/W를 머신(4), 머신(5), 머신(9)에 배포하는 경우, 머신(1)을 최상계층으로 했을 때의 배포처 경로정보는 도 3의 (a)에 도시한 바와 같이 된다. 예를 들면 배포처를 머신(9)로 하고, 최상계층을 머신(1)로 했을 때의 배포처 경로정보는 머신(1) → 머신(2) → 머신(5) →머신(9)로 된다.
또, S/W를 머신(4), 머신(5), 머신(9)에 배포하는 경우, 머신(2)를 최상계층으로 했을 때의 배포처 경로정보는 도 3의 (b)에 도시한 바와 같이 되고, 예를 들면 배포처를 머신(9)로 하고 최상계층을 머신(2)로 했을 때의 배포처 경로정보는 머신(2)→머신(5)→머신(9)로 된다. 또, S/W를 머신(4), 머신(5), 머신(9)에 배포하는 경우, 머신(5)를 최상계층으로 했을 때의 배포처 경로정보는 도 3의 (c)에 도시한 바와 같이, 머신(5)→머신(9)로 된다. 또, 이 때, 최상계층으로 한 머신(1), 머신(2), 머신(5) 이외의 머신에서는 배포처 경로정보는 작성되지 않는다.
(마) 배포처 리스트
배포처 리스트는 S/W가 배포되는 배포처의 머신명이 기술된 리스트를 의미한다. 배포처 리스트는 관리머신에서 사용되고, 관리머신 상에서 경로정보 마스터에서 배포처 경로정보를 작성하는 경우에 사용된다. 일반적으로는 도 4의 (a)에 도시한 바와 같이, S/W가 배포되는 배포처의 머신명이 순차 기술된다. 예를 들면, S/W를 머신(4), 머신(5), 머신(9)로 배포하는 경우 배포처 리스트는 도 4의 (b) 에 도시하는 바와 같이, 머신(4), 머신(5), 머신(9)의 머신명이 기술된다.
또, 배포처 경로정보는 S/W를 배포해 가는 단계에서 배포처의 정보로서 사용되고, 각각의 머신에서의 배포처 리스트와 동일기능을 갖고 있다. 예를 들면 도 3의 (a)에서는 머신(1)에서 보아 S/W를 머신(4), 머신(5), 머신(9)에 배포하는 경우이고, 도 3의 (b)에서는 머신(2)에서 보아 S/W를 머신(4), 머신(5), 머신(9)에 배포하는 경우이고, 도 3의 (c)에서는 머신(5)에서 보아 S/W를 머신(9)에 배포하는 경우이다.
(바) 장해머신 리스트
장해머신 리스트는 어떠한 장해에 의해 S/W를 배포할 수 없었던 머신명이 기술된 리스트를 의미한다. 장해머신 리스트는 관리머신에서 사용되고, 그 장해가 있던 머신이 배포처인지 아닌지는 관계없다. 장해머신 리스트는 일반적으로는 도 5에 도시한 바와 같이, 장해에 의해 S/W를 배포할 수 없었던 머신명이 기술되어 있다. 장해로는 배포처의 머신에 전원이 들어가 있지 않아 통신할 수 없는 경우나 네트워크가 끊어져 통신할 수 없는 경우, 배포처의 머신의 디스크 용량이 꽉 차서 결과적으로 배포할 수 없는 경우 등을 들 수 있다. 이 장해머신 리스트를 사용해서 정기적으로 장해머신 리스트를 보아 배포처의 머신에 장해가 발생하고 있지 않은지를 감시할 수 있다.
(사) 중간배포처 리스트
중간배포처 리스트는 임의의 머신에 주목했을 때, 배포처의 머신에 S/W를 배포하기 위해 주목한 상기 머신에서 직접 S/W가 배포되는 머신명이 기술된 리스트를 의미한다. 이 중간배포처 리스트는 주목한 상기 머신에 있어서, 배포처 경로정보의 계층(1)의 머신을 추출해서 작성된다. 중간배포처 리스트는 일반적으로는 도 6의 (a)에 도시한 바와 같이, 주목한 머신에서 직접 S/W를 배포하는 머신명이 기술된다.
예를 들면, S/W를 머신(4), 머신(5), 머신(9)에 배포하는 경우 머신(1)을 주목했을 때의 중간배포처 리스트는 도 6의 (b)에 도시한 바와 같이, 머신(2)로 된다. 예를 들면, S/W를 머신(4), 머신(5), 머신(9)에 배포하는 경우, 머신(2)에 주목했을 때의 중간배포처 리스트는 도 6의 (c)에 도시한 바와 같이, 머신(4)와 머신(5)로 된다. 예를 들면, S/W를 머신(4), 머신(5), 머신(9)에 배포하는 경우, 머신(5)에 주목했을 때의 중간배포처 리스트는 도 6의 (d)에 도시한 바와 같이, 머신(9)로 된다. 관리머신은 경로정보 마스터에 따라 S/W를 배포하지만, S/W가 배포된 머신은 이 중간배포처 리스트에 따라 다음 계층의 머신으로 S/W를 배포한다.
(아) 대체머신 리스트
대체머신 리스트는 중간배포처의 머신 또는 네트워크에 어떠한 장해가 발생해서 S/W를 배포할 수 없는 경우, 그 계층 이하에 S/W를 배포하기위한 대체머신을 지정하기 위한 정보를 의미한다. 대체머신 리스트는 관리머신 이외의 모든 머신에 대체머신이 정의되어 있는 것을 전제로 한다. 예를 들면, 머신(2)의 대체머신이 머신(4)인 경우, 도 7에 도시한 바와 같이 머신(2)→머신(4)로 된다.
여기서, 이하에 도 1의 시스템 계층구성에서 S/W를 머신(4), 머신(5),머신(9)에 배포하고자 했지만 머신(2)로의 S/W 배포에 실패했기 때문에, 대체머신 리스트에서 대체머신으로서 머신(4)를 선택하여 처리를 속행한 경우의 실시예에 대해서 설명한다.
본 실시예에서는 경로정보 마스터로서는 상술한 도 2의 경로정보 마스터를 사용해서 관리머신(1) 내의 기억부에 저장되어 있고, 배포처 리스트로서는 S/W를 머신(4), (5), (9)에 배포한다고 정의했기 때문에 상술한 도 4의 (b)의 리스트를 사용하고, 대체머신 리스트로서는 도 8에 도시한 리스트를 사용한다. 도 8의 대체머신 리스트에는 중간배포처의 머신(2)에 장해가 발생했을 때, 그 대체머신으로서 머신(4)를 지정하기 위한 정보가 기술되어 있다. 이 대체머신 리스트에는 관리머신 이외의 모든 머신에 대체머신이 정의되어 있다.
도 9, 도 10은 본 발명에 관한 실시예 1의 소프트웨어 자동배포 시스템의 처리 흐름을 도시한 흐름도이다.
머신(1)은 관리머신이므로(스텝 S1), 사용자가 배포하고자 하는 S/W본체, 도 4의 (b)의 배포처 리스트, 도 8의 대체머신 리스트를 관리머신(1) 상에서 정의하면(스텝 S2) 관리머신(1)은 그 정의한 S/W본체, 배포처 리스트 및 대체머신 리스트를 관리머신(1) 내의 기억부에 저장한다. 계속해서, 관리머신(1)은 관리머신(1) 내의 기억부에서 리드한 도 2의 경로정보 마스터와 배포처 리스트에서 도 3의 (a)의 배포처 경로정보를 작성하여(스텝 S3) 기억부에 저장한다. 배포처 경로정보는 배포처 리스트의 배포처 머신(4), (5), (9) 이외의 경로정보 마스터의 배포처 머신의 레코드가 모두 삭제되어 작성된다.
관리머신(1)은 기억부에서 리드한 배포처 경로정보의 계층(1)의 레코드의 머신(2)에 따라 도 11에 도시한 중간배포처 리스트를 작성한다(스텝 S6). 관리머신(1)은 작성한 중간배포처 리스트의 레코드의 선두의 머신(2)의 위치에 포인터를 위치결정한다(스텝 S7). 관리머신(1)은 포인터의 위치의 머신명의 머신(2)를 배포처 머신명으로 하고(스텝 S8), 배포처 머신명이 NULL인지를 판단해서 NULL이 아니라고 판단하면(스텝 S9), 기억부에서 리드한 배포하고자 하는 S/W본체, 배포처 경로정보 및 대체머신 리스트를 배포처 머신명의 머신(2)에 배포한다(스텝 S10).
관리머신(1)은 머신(2)에 S/W본체, 배포처 경로정보, 대체머신 리스트가 정상으로 배포되었는지를 판단하고, 어떠한 통신장해에 의해 정상으로 배포할 수 없었다고 판단하면(스텝 S11), 배포에 실패한 배포처 머신명의 머신(2)를 기억부의 장해머신 리스트에 등록한다(스텝 S13). 관리머신(1)은 예를 들면, 머신(2)에서 통지되는 S/W 배포에 실패한 사실의 배포결과 정보를 수신하여 그 배포결과 정보에 따라 소프트웨어 배포불량을 검출한다. 관리머신(1)은 배포에 실패한 배포처 머신의 머신(2)로 변경되는 대체머신의 머신(4)를 기억부의 대체머신 리스트에서 리드하고(스텝 S14), 리드한 대체머신(4)가 관리머신(1)인지를 판단해서 관리머신(1)이 아니라고 판단하면(스텝 S15) 도 11에 도시한 중간배포처 리스트의 포인터 위치의 머신명의 머신(2)를 대체머신명의 머신(4)에 리라이트한다(스텝 S17). 또한, 이 변경시에 중간배포처 리스트의 머신명이 중복된 경우, 관리머신(1)은 변경한 머신명을 삭제한다(스텝 S17).
관리머신(1)은 도 3의 (a)의 배포처 경로 정보 중의 배포처 머신명의 머신(2)를 대체머신의 머신(4)로 리라이트하고(스텝 S18), 도 12에 도시한 바와 같이 배포처 경로정보를 변경한다. 이 변경 시, 관리머신(1)은 배포처가 머신(4)의 레코드의 계층(1)과 계층(2)의 머신명이 머신(4)와 연속하기 때문에 배포처가 머신(4)의 레코드의 계층(2)의 머신명의 머신(4)를 삭제하고(스텝 S18), 스텝 S8로 되돌아 간다. 관리머신(1)은 기억부의 중간배포처 리스트에서 포인터 위치의 머신명의 머신(4)를 리드해서 배포처 머신명으로 하고(스텝 S8), 그 배포처 머신명의 머신(4)가 NULL인지를 판단하고, NULL이 아니라고 판단하면(스텝 S9), 배포처 머신의 머신(4)에 S/W 본체, 도 12의 배포처 경로정보, 도 8의 대체머신 리스트를 배포한다(스텝 S10).
관리머신(1)은 머신(4)로 S/W본체, 배포처 경로정보, 대체머신 리스트가 정상으로 배포되었는지를 판단하고, 정상으로 배포되었다고 판단하면(스텝 S11) 포인터를 1개 진행시켜(스텝 S12) 스텝 S8로 되돌아 간다. 관리머신(1)은 1개 진행시킨 포인터 위치의 머신명을 중간배포처 리스트에서 리드하여 배포처 머신명으로 하고(스텝 S8), 그 배포처 머신명이 NULL인지를 판단하여 NULL이라고 판단하면(스텝 S9) 머신(1)에서 머신(2), 실제로는 대체머신(4)로의 배포를 종료시킨다.
여기서, 스텝 S14 내지 스텝 S16을 설명한다. 관리머신(1)은 배포에 실패한 배포처 머신의 머신(2)로 변경되는 대체머신의 머신(4)를 기억부의 대체머신 리스트에서 리드하고(스텝 S14), 리드한 대체머신(4)가 관리머신(1)인지를 판단하여 관리머신(1)이라고 판단하면(스텝 S15) 도 11의 중간배포처 리스트의 포인터 위치의 머신명을 배포처 머신(4), (5), (9)에서의 중간배포처 리스트의 머신명의 머신(4), 머신(5)에 리라이트 하여(스텝 S16) 스텝 S18로 진행한다. 이하에, 스텝 S15에 대해 구체적으로 설명한다.
관리머신(1)은 도 3의 (a)의 머신(1)에서의 배포처 경로정보에서 최상계층의 계층(0)에 머신(2)가 오도록 배포처 경로정보를 작성한다. 여기서는 계층(0)의 레코드의 머신(1)을 삭제하여 전체를 좌측으로 시프트한다. 관리머신(1)은 작성한 배포처 경로정보의 계층(1)의 레코드의 머신(4)와 머신(5)를 추출하여 중간배포처 리스트를 작성한다.
다음에, 머신(1)에서 S/W의 배포가 종료한 머신(4)에서의 처리를 도 9, 도 10의 흐름도를 사용해서 설명한다.
머신(4)는 관리머신이 아니므로(스텝 S1), 머신(1)에서 배포되는 S/W본체, 도 12의 배포처 경로정보, 도 8의 대체머신 리스트를 수취하면(스텝 S4) 기억부에 저장한다. 머신(4)는 기억부에서 리드한 도 12의 배포처 경로정보를 도 13에 도시한 바와 같이, 머신(4)가 최상계층의 계층(0)의 머신으로 되도록 수정하여(스텝 S5) 기억부에 저장한다. 여기서는 배포처가 머신(4), (5), (9)의 최상계층의 계층(0)에 머신(4)가 오도록 계층(0)의 레코드의 머신(1)을 모두 삭제하여 각각의 머신을 좌측으로 진행시켜 배포처가 머신(4)의 레코드를 삭제한다.
머신(4)은 기억부에서 리드한 도 13의 배포처 경로정보의 계층(1)의 레코드의 머신(5)에 따라 도 14에 도시한 중간배포처 리스트를 작성한다(스텝 S6). 머신(4)는 작성한 중간배포처 리스트의 레코드의 선두의 머신(5)의 위치에 포인터를 위치결정한다(스텝 S7). 머신(4)는 포인터의 위치의 머신명의 머신(5)를 배포처 머신명으로 하고(스텝 S8), 배포처 머신명이 NULL인지를 판단하여 NULL이 아니라고 판단하면(스텝 S9) 기억부에서 리드한 배포하고자 하는 S/W본체, 배포처 경로정보 및 대체머신 리스트를 배포처 머신명의 머신(5)에 배포한다(스텝 S10).
머신(4)는 머신(5)로 S/W본체, 배포처 경로정보, 대체머신 리스트가 정상으로 배포되었는지를 판단하고, 정상으로 배포되었다고 판단하면(스텝 S11), 포인터를 1개 진행시켜(스텝 S12) 스텝 S8로 되돌아간다. 머신(4)는 1개 진행시킨 포인터 위치의 머신명을 중간배포처 리스트에서 리드하여 배포처 머신명으로 하고(스텝 S8), 그 배포처 머신명이 NULL인지를 판단하여 NULL이라고 판단하면(스텝 S9) 머신(4)에서 머신(5)로의 S/W 배포가 종료한다.
다음에, 머신(4)에서 S/W의 배포가 종료된 머신(5)에서의 처리를 도 9, 도 10의 흐름도를 사용해서 설명한다.
머신(5)는 관리머신이 아니므로(스텝 S1) 머신(4)에서 배포되는 S/W본체, 도 15의 배포처 경로정보, 도 8의 대체머신 리스트를 수취하면(스텝 S4) 기억부에 저장한다. 머신(5)는 기억부에서 리드한 도 15의 배포처경로정보를 도 16에 도시한 바와 같이 머신(5)가 최상계층의 계층(0)의 머신이 되도록 수정하여(스텝 S5) 기억부에 저장한다. 여기서는 배포처가 머신(5), (9)의 최상계층의 계층(0)에 머신(5)가 오도록 계층(0)의 레코드의 머신(4)를 모두 삭제하여 각각의 머신을 좌측으로 진행시켜 배포처가 머신(5)의 레코드를 삭제한다.
머신(5)는 기억부에서 리드한 도 16의 배포처 경로정보의 계층(1)의 레코드의 머신(9)에 따라 도 17에 도시한 중간배포처 리스트를 작성한다(스텝 S6). 관리머신(1)은 작성한 중간배포처 리스트의 레코드의 선두의 머신(9)의 위치에 포인터를 위치결정한다(스텝 S7). 머신(5)는 포인터의 위치의 머신명의 머신(9)를 배포처 머신명으로 하고(스텝 S8), 배포처 머신명이 NULL인지를 판단하여 NULL이 아니라고 판단하면(스텝 S9), 기억부에서 리드한 배포하고자 하는 S/W본체, 배포처 경로정보 및 대체머신 리스트를 배포처 머신명의 머신(9)에 배포한다(스텝 S10).
머신(5)는 머신(9)에 S/W본체, 배포처 경로정보, 대체머신 리스트가 정상으로 배포되었는지를 판단하고, 정상으로 배포되었다고 판단하면(스텝 S 11) 포인터를 1개 진행시켜(스텝 S12) 스텝 S8로 되돌아간다. 머신(5)는 1개 진행시킨 포인터 위치의 머신명을 중간배포처 리스트에서 리드하여 배포처 머신명으로 하고(스텝 S8), 그 배포처 머신명이 NULL인지를 판단하여 NULL이라고 판단하면(스텝 S9) 머신(4)에서 머신(5)로의 S/W 배포가 종료한다.
다음에, 머신(5)에서 S/W의 배포가 종료한 머신(9)에서의 처리를 도 9, 도 10의 흐름도를 사용해서 설명한다.
머신(9)는 관리머신이 아니므로(스텝 S1) 머신(5)에서 배포되는 S/W본체, 도 18의 배포처 경로정보, 도 8의 대체머신 리스트를 수취하면(스텝 S4) 기억부에 저장한다. 머신(9)는 기억부에서 리드한 도 18의 배포처 경로정보를 머신(9)가 최상계층의 계층(0)의 머신으로 되도록 수정한다(스텝 S5). 여기서는 배포처가 머신(9)의 최상계층의 계층(0)에 머신(9)가 오도록 계층(0)의 레코드의 머신(5)를 삭제하고 머신을 좌측으로 진행시켜 배포처가 머신(9)의 레코드를 삭제한다. 이 결과, 배포처 경로정보는 NULL으로 된다.
머신(9)는 기억부에서 리드한 NULL의 배포처 경로정보에 따라 도 17에 도시한 중간배포처 리스트를 작성한다(스텝 S6). 배포처 경로정보가 NULL로 되므로 중간배포처 리스트도 NULL로 된다. 머신(9)는 작성한 중간배포처 리스트의 레코드의 선두의 NULL의 위치에 포인터를 위치결정한다(스텝 S7). 머신(9)는 포인터의 위치의 NULL을 배포처 머신명으로 하고(스텝 S8), 배포처 머신명이 NULL인지를 판단하여 NULL이라고 판단하면(스텝 S9) S/W 배포를 종료한다.
이와 같이, 본 실시예에서는 계층별로 배분된 여러개의 머신마다 대체머신 정보를 기억부의 대체머신 리스트에 등록해두고, 관리머신(1)에서 머신(2)로 S/W를 배포했을 때 어떠한 원인에 의해 S/W 배포에 실패한 경우, S/W 배포에 실패한 머신(2)에 대응하는 대체머신(4)를 기억부의 대체머신 리스트에서 리드하고, 이 리드한 대체머신(4)로 S/W를 배포하도록 구성하였으므로 S/W 배포경로를 동적으로 변경하여 S/W 배포처리를 자동적으로 계속할 수 있다. 이때문에, 종래 실행하고 있던 장해회복이나 배포경로 변경을 위한 수동작업이나 불필요한 수동감시를 실행하지 않고 종래보다 S/W 배포를 단시간에 실행할 수 있어 S/W 배포를 효율좋게 실현할 수 있다.
또, 본 실시예는 S/W를 배포했을 때 S/W 배포에 실패한 사실의 배포결과 정보를 관리머신(1)로 통지하고, 통지된 배포결과 정보에 따라 S/W 배포불량을 검출하도록 구성하는 것에 의해, 관리머신(1)에서 머신(2)에 S/W 배포결과를 요구하는 경우보다 S/W 송신원의 관리머신(1) 측에서 S/W 배포불량을 효율좋게 단시간에 알 수 있는 경우에 대해 설명하였지만, S/W를 배포했을 때 배포결과 정보가 소정시간 내에 송신원의 관리머신(1)에 통지되지 않은 경우, S/W 배포불량으로 판단하도록 구성해도 좋다. 이 경우, 배포결과 정보가 S/W 송신원의 관리머신(1)에 통지되지 않은 경우에도 확실하게 S/W 배포불량을 판단할 수 있다.
이하, 상기와 같은 구성에 의해 얻을 수 있는 효과에 대해 간단히 설명하면 다음과 같다.
상기 [1]의 소프트웨어 자동배포 시스템에 의하면, 계층별로 배분된 머신에 대응한 대체머신 정보를 미리 대체머신 정보 기억수단에 기억해 두고, 제1 머신에서 제2 머신으로 소프트웨어를 배포했을 때 소프트웨어 배포에 실패한 경우, 소프트웨어 배포에 실패한 제2 머신에 대응하는 대체머신 정보를 대체머신 정보 기억수단에서 리드하고, 이 리드한 대체머신 정보에 따라 소프트웨어를 소프트웨어 배포수단에 의해 배포하도록 구성하는 것에 의해, S/W 배포경로를 동적으로 변경하여 S/W 배포처리를 자동적으로 계속할 수 있으므로, 종래 실행하고 있던 장해회복이나 배포경로 변경을 위한 수동작업이나 불필요한 수동감시를 실행하지 않고 종래보다 S/W 배포를 단시간에 실행할 수 있어 S/W 배포를 효율좋게 실현할 수 있다는 효과가 있다.
상기 [2]의 소프트웨어 자동배포 시스템에 의하면, 제1 머신에서 제2 머신으로 소프트웨어를 배포했을 때 소프트웨어 배포에 실패한 사실의 배포결과 정보를 제2 머신에서 제1 머신으로 통지하고 통지된 배포결과 정보에 따라 소프트웨어 배포불량을 검출하도록 구성하는 것에 의해, 제1 머신에서 제2 머신으로 소프트웨어 배포결과를 요구하는 경우보다 소프트웨어 송신 원의 제1 머신측에서 소프트웨어 배포불량을 효율좋게 단시간에 알 수 있다는 효과가 있다.
상기 [3]의 소프트웨어 자동배포 시스템에 의하면, 제1 머신에서 제2 머신으로 소프트웨어를 배포했을 때 배포결과 정보가 소정시간 내에 제1 머신에 통지되지 않은 경우, 소프트웨어 배포불량으로 판단하도록 구성하는 것에 의해, 배포결과 정보가 소프트웨어 송신원의 제1 머신에 통지되지 않은 경우에도 확실하게 소프트웨어 배포불량을 판단할 수 있다는 효과가 있다.

Claims (3)

  1. 몇단계의 계층별로 배분된 머신에 대해 소프트웨어를 배포하는 소프트웨어 자동배포 시스템에 있어서,
    제1 머신에서 제2 머신으로 소프트웨어를 배포했을 때 소프트웨어 배포에 실패한 경우, 제2 머신에 대응하는 대체머신으로 소프트웨어를 배포하기 위한 대체머신정보가 기억된 대체머신 정보기억수단 및
    제1 머신에서 제2 머신으로 소프트웨어를 배포했을 때 소프트웨어 배포에 실패한 경우, 대체머신 정보기억수단에서 리드한 제2 머신에 대응하는 대체머신 정보에 따라 소프트웨어를 배포하는 소프트웨어 배포수단을 갖는 것을 특징으로 하는 소프트웨어 자동배포 시스템.
  2. 제 1항에 있어서,
    제1 머신에서 제2 머신으로 소프트웨어를 배포했을 때 소프트웨어 배포에 실패한 사실의 배포결과 정보를 제2 머신에서 제1 머신에 통지하는 배포결과 정보통지 수단 및 통지된 배포결과 정보에 따라 소프트웨어 배포불량을 검출하는 소프트웨어 배포불량 검출수단을 갖는 것을 특징으로 하는 소프트웨어 자동배포 시스템.
  3. 제 1항에 있어서,
    제1 머신에서 제2 머신으로 소프트웨어를 배포했을 때 배포결과 정보가 소정시간 내에 제1 머신에 통지되지 않은 경우, 소프트웨어 배포불량으로 판단하는 소프트웨어 배포불량 판단수단을 갖는 것을 특징으로 하는 소프트웨어 자동배포 시스템.
KR1019990014981A 1998-05-12 1999-04-27 소프트웨어 자동배포 시스템 KR100308171B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP10128643A JPH11327912A (ja) 1998-05-12 1998-05-12 ソフトウェア自動配布システム
JP1998-128643 1998-05-12

Publications (2)

Publication Number Publication Date
KR19990087967A true KR19990087967A (ko) 1999-12-27
KR100308171B1 KR100308171B1 (ko) 2001-10-29

Family

ID=14989901

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990014981A KR100308171B1 (ko) 1998-05-12 1999-04-27 소프트웨어 자동배포 시스템

Country Status (4)

Country Link
US (1) US6513132B1 (ko)
JP (1) JPH11327912A (ko)
KR (1) KR100308171B1 (ko)
GB (1) GB2340631B (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000049415A (ko) * 2000-02-26 2000-08-05 최충엽 소프트웨어 배포 방법 및 이에 적합한 시스템
KR100667862B1 (ko) * 2004-09-17 2007-01-12 심영보 관리대상 컴퓨터에 대한 소프트웨어 다중배포 방법

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6983362B1 (en) * 2000-05-20 2006-01-03 Ciena Corporation Configurable fault recovery policy for a computer system
US20050160420A1 (en) * 2004-01-20 2005-07-21 Kruta Andrew W. Method and apparatus for distribution and installation of computer programs across an enterprise
US8028084B2 (en) * 2004-01-20 2011-09-27 Aspect Software, Inc. IP ACD using buffer server
US20050234827A1 (en) * 2004-04-14 2005-10-20 Rudowsky Michael J System for processing executable applications to be suitable for distribution
JP4595469B2 (ja) * 2004-09-29 2010-12-08 ブラザー工業株式会社 接続態様制御装置及び接続態様制御方法並びに接続態様制御用プログラム
ATE363096T1 (de) * 2004-10-27 2007-06-15 Sap Ag Verfahren zur durchführung eines softwaredienstes in einer systemlandschaft
EP1653348A1 (en) * 2004-10-27 2006-05-03 Sap Ag Method for tracking transport requests and computer system with trackable transport requests
ATE402438T1 (de) * 2004-10-27 2008-08-15 Sap Ag Rechnersystem und verfahren zum bewirken von softwarewartung in einer softwaresystemlandschaft
ATE399340T1 (de) * 2004-10-27 2008-07-15 Sap Ag Rechnersystem und verfahren zum bewirken von veränderungen in einer softwaresystemlandschaft
ATE410729T1 (de) * 2004-10-27 2008-10-15 Sap Ag Rechnersystem und verfahren zum bewirken eines einleitenden softwaredienstes in einem produktiven system einer softwaresystemlandschaft
ATE400844T1 (de) * 2004-10-27 2008-07-15 Sap Ag Verfahren und system zur generierung eines transportweges durch eine softwaresystemlandschaft
EP1653317A1 (en) 2004-10-27 2006-05-03 Sap Ag Method and system for setting change options of software systems
US8161362B2 (en) * 2005-06-10 2012-04-17 Hitachi, Ltd. Task management control apparatus and method, having redundant processing comparison
US20080005787A1 (en) * 2006-06-28 2008-01-03 Siemens Medical Solutions Usa, Inc. Software Distribution and License Management System
US8201099B1 (en) * 2006-09-26 2012-06-12 Sandia Corporation Method and system for rendering and interacting with an adaptable computing environment
JP2008305139A (ja) * 2007-06-07 2008-12-18 Panasonic Corp システムの整合性を確認する方法および装置
US20100260476A1 (en) * 2009-04-13 2010-10-14 Cloutman John F Method and apparatus for secure configuration of electronic devices
US9411574B2 (en) * 2013-08-19 2016-08-09 Dresser, Inc. System and method for updating firmware across devices in a process facility

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4718002A (en) * 1985-06-05 1988-01-05 Tandem Computers Incorporated Method for multiprocessor communications
EP0463251A1 (en) * 1990-06-28 1992-01-02 International Business Machines Corporation Software installation
US5390256A (en) * 1991-01-08 1995-02-14 Dolby Laboratories Licensing Corporation Dynamic loader
US5835911A (en) * 1994-02-08 1998-11-10 Fujitsu Limited Software distribution and maintenance system and method
US5530802A (en) * 1994-06-22 1996-06-25 At&T Corp. Input sequence reordering method for software failure recovery
JP3542202B2 (ja) 1995-08-01 2004-07-14 株式会社日立製作所 プログラム資源の配布方法
JPH09305408A (ja) * 1996-05-09 1997-11-28 Hitachi Ltd アプリケーション実行方法
US6317742B1 (en) * 1997-01-09 2001-11-13 Sun Microsystems, Inc. Method and apparatus for controlling software access to system resources
US6014740A (en) * 1997-04-11 2000-01-11 Bmc Software, Inc. Single instruction method of seizing control of program execution flow in a multiprocessor computer system
US6052724A (en) * 1997-09-02 2000-04-18 Novell Inc Method and system for managing a directory service

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000049415A (ko) * 2000-02-26 2000-08-05 최충엽 소프트웨어 배포 방법 및 이에 적합한 시스템
KR100667862B1 (ko) * 2004-09-17 2007-01-12 심영보 관리대상 컴퓨터에 대한 소프트웨어 다중배포 방법

Also Published As

Publication number Publication date
KR100308171B1 (ko) 2001-10-29
JPH11327912A (ja) 1999-11-30
GB2340631A (en) 2000-02-23
GB2340631B (en) 2000-10-18
US6513132B1 (en) 2003-01-28
GB9910669D0 (en) 1999-07-07

Similar Documents

Publication Publication Date Title
KR100308171B1 (ko) 소프트웨어 자동배포 시스템
CA2403294C (en) Bidirectional database replication scheme for controlling ping-ponging
CN100456738C (zh) 用于同步的路由系统与方法
CN102007736B (zh) Wdm网状网络中的保护共享的方法
CN101999223B (zh) 减少eaps系统中的流量损失
US20090016214A1 (en) Method and system for network recovery from multiple link failures
CN105912628A (zh) 主从数据库的同步方法及装置
JPH11266244A (ja) ネットワーク構成データ生成装置及び生成方法
CA2497620A1 (en) Communications system
CN101656651A (zh) 流量工程隧道的关联保护方法及装置
CN109308227A (zh) 故障检测控制方法及相关设备
WO2019100706A1 (zh) 保护组叠加倒换方法、控制装置及光通信设备
US20100205151A1 (en) Data processing device and data processing method
US6286113B1 (en) Method of making protected changes to data stored in a database, as well as database system and network element equipped therewith
CN105959145A (zh) 一种适用高可用性集群的并行管理服务器的方法及系统
WO2005086396A1 (en) Systems and methods for multi-layer protection switching within a sub-networking connection
CN115842765A (zh) 路径调整方法、路由设备、存储介质
CN101222358B (zh) 一种配置迁移方法及装置
CN111124757A (zh) 一种分布式事务数据库的数据节点心跳检测算法
KR20010065409A (ko) 분산형 지능망 시스템에서 마스터 머신 결정 방법
CN115934001B (zh) 一种纠删池选择方法、装置、电子设备及存储介质
CN113254277B (zh) 存储集群osd故障修复方法、存储介质、监视器及存储集群
JP4280919B2 (ja) 複製管理システム、複製管理方法および複製管理プログラム
JPH07321779A (ja) 迂回路の設計方法
JP3025126B2 (ja) ネットワークの回線設定情報管理方式

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20070823

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee