KR102068830B1 - 서버 검증 자동화 및 관리시스템 - Google Patents
서버 검증 자동화 및 관리시스템 Download PDFInfo
- Publication number
- KR102068830B1 KR102068830B1 KR1020180041209A KR20180041209A KR102068830B1 KR 102068830 B1 KR102068830 B1 KR 102068830B1 KR 1020180041209 A KR1020180041209 A KR 1020180041209A KR 20180041209 A KR20180041209 A KR 20180041209A KR 102068830 B1 KR102068830 B1 KR 102068830B1
- Authority
- KR
- South Korea
- Prior art keywords
- test
- server
- target
- target server
- package
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2257—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using expert systems
-
- H04L61/2015—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5007—Internet protocol [IP] addresses
- H04L61/5014—Internet protocol [IP] addresses using dynamic host configuration protocol [DHCP] or bootstrap protocol [BOOTP]
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
본 발명은 대상서버별 구성장치정보에 따른 테스트 패키지를 이용하여 테스트하고 그 결과로 결함 여부를 판정할 수 있는 서버 검증 자동화 및 관리시스템에 관한 것이다.
보다 구체적으로, 테스트 목적에 따라 분류된 테스트 프로그램을 구성장치별로 그룹화하여 테스트패키지로 저장하되, 구성장치정보별로 분류하여 저장하는 데이터 저장소, 부팅시 구성장치정보를 전송하며, 테스트 패키지 수신시 테스트를 수행하여 테스트결과를 전송하는 복수의 대상서버 및 구성장치정보가 수신되면, 테스트 일정을 포함하는 스케줄 정보로부터 해당 대상서버가 수행할 테스트 패키지를 추출하되, 상기 수신된 구성장치정보에 매칭되는 테스트 패키지를 추출하여 워크플로우를 생성하고, 생성된 워크플로우에 따라 상기 복수의 대상서버가 테스트를 수행하도록 제어하는 관리서버를 포함하는 것을 특징으로 하는 서버 검증 자동화 및 관리시스템에 관한 것이다.
보다 구체적으로, 테스트 목적에 따라 분류된 테스트 프로그램을 구성장치별로 그룹화하여 테스트패키지로 저장하되, 구성장치정보별로 분류하여 저장하는 데이터 저장소, 부팅시 구성장치정보를 전송하며, 테스트 패키지 수신시 테스트를 수행하여 테스트결과를 전송하는 복수의 대상서버 및 구성장치정보가 수신되면, 테스트 일정을 포함하는 스케줄 정보로부터 해당 대상서버가 수행할 테스트 패키지를 추출하되, 상기 수신된 구성장치정보에 매칭되는 테스트 패키지를 추출하여 워크플로우를 생성하고, 생성된 워크플로우에 따라 상기 복수의 대상서버가 테스트를 수행하도록 제어하는 관리서버를 포함하는 것을 특징으로 하는 서버 검증 자동화 및 관리시스템에 관한 것이다.
Description
본 발명은 대상서버별 구성장치정보에 따른 테스트 패키지를 이용하여 테스트하고 그 결과로 결함 여부를 판정할 수 있는 서버 검증 자동화 및 관리시스템에 관한 것이다.
보다 구체적으로, 테스트 목적에 따라 분류된 테스트 프로그램을 구성장치별로 그룹화하여 테스트패키지로 저장하되, 구성장치정보별로 분류하여 저장하는 데이터 저장소, 부팅시 구성장치정보를 전송하며, 테스트 패키지 수신시 테스트를 수행하여 테스트결과를 전송하는 복수의 대상서버 및 구성장치정보가 수신되면, 테스트 일정을 포함하는 스케줄 정보로부터 해당 대상서버가 수행할 테스트 패키지를 추출하되, 상기 수신된 구성장치정보에 매칭되는 테스트 패키지를 추출하여 워크플로우를 생성하고, 생성된 워크플로우에 따라 상기 복수의 대상서버가 테스트를 수행하도록 제어하는 관리서버를 포함하는 것을 특징으로 하는 서버 검증 자동화 및 관리시스템에 관한 것이다.
클라우드 서비스의 도입으로 대규모 클라우드 데이터센터의 수요가 증가하고 있으며, 이에 따라 쉽게 증설 가능한 x86 보드 기반 고밀도 서버 플랫폼과 고에너지 효율 서버에 대한 요구가 증가하는 추세이다.
하지만, 컴퓨터산업의 국산화율은 년 기준 28.3%로 2000년의 57.4%에 비하여 절반 이하로 낮아진 상태이며, 서버 부분의 기술수준도 미국 대비 72.6%로 매우 미흡하고, 중간재 투입율에 있어서도 국산보다 수입산의 투입이 월등히 높다.
최근, 분산ㆍ스케일아웃 기반 클라우드 인프라와 소프트웨어 정의 플랫폼에 최적이면서 표준 아키텍처 채택에 따라 x86 서버시장이 폭발적 성장으로, 국내 전체 컴퓨팅 서버 시장에서 글로벌 Top5 기업(HPE, Dell, IBM, Lenovo, Cisco)이 92.2% 점유하고 있다. 이에, 국내 시장 경쟁력 확보가 필요하다.
이를 위해, 국내에서도 클라우드, 빅데이터, 인공지능 IoT 분야 등에서 이용되는 데이터 센터용 서버에 대한 연구개발이 활발해지고 있다. 한편, 서버의 양산시, 생산된 서버의 성능 테스트를 통해 제품화 합격여부가 결정된다.
이때, 복수의 서버(이하, 대상서버)에 포함된 각 구성별 성능 테스트가 요구되며, 테스트를 얼마나 효율적으로 수행하고 관리할지가 중요한 이슈가 된다. 이에, 본 출원인은 대상서버의 부팅시 해당 대상서버에 대한 테스트 스케줄에 매칭된 워크플로우를 생성함으로써 대상서버의 구성장치에 매칭된 테스트패키지를 이용하여 테스트를 수행하고 그 결과로 결함여부를 판정할 수 있는 서버 검증 자동화 및 관리시스템을 개발하였다.
본 발명의 목적은, 대상서버의 부팅시 해당 대상서버에 대한 테스트 스케줄에 매칭된 워크플로우를 생성함으로써 대상서버의 구성장치에 매칭된 테스트패키지를 이용하여 테스트를 수행하고 그 결과로 결함여부를 판정할 수 있는 서버 검증 자동화 및 관리시스템을 제공하는 데 있다.
상기한 바와 같은 목적을 달성하기 위한 본 발명의 일 실시 예에 따른 서버 검증 자동화 및 관리시스템은테스트 목적에 따라 분류된 테스트 프로그램을 구성장치별로 그룹화하여 테스트패키지로 저장하되, 구성장치정보별로 분류하여 저장하는 데이터 저장소, 부팅시 구성장치정보를 전송하며, 테스트 패키지 수신시 테스트를 수행하여 테스트결과를 전송하는 복수의 대상서버 및 구성장치정보가 수신되면, 테스트 일정을 포함하는 스케줄 정보로부터 해당 대상서버가 수행할 테스트 패키지를 추출하되, 상기 수신된 구성장치정보에 매칭되는 테스트 패키지를 추출하여 워크플로우를 생성하고, 생성된 워크플로우에 따라 상기 복수의 대상서버가 테스트를 수행하도록 제어하는 관리서버를 포함할 수 있다.
또한, 대상 서버의 PXE(PreBoot Execution Environment)를 통해 부팅 요청이 수신되면, 상기 대상 서버로 IP를 할당하고, 부팅을 위한 OS 이미지의 주소값을 전송하는 DHCP(Dynamic Host Configuration Protocol)확장서버 및 상기 PXE가 지원하는 프로토콜을 통해 상기 대상 서버로 상기 OS 이미지를 전송하고, 상기 OS 이미지를 이용하여 부팅된 대상서버로 해당 테스트 패키지를 전송하는 TFTP(Trivial File Transfer Protocol)확장서버를 더 포함할 수 있다.
상기 관리서버는 상기 워크플로우에 따라 수행될 테스트 패키지의 위치값 및 테스트 설정값을 상기 DHCP 확장서버로 전송하고, 해당 대상서버는 상기 TFTP 확장서버를 통해 상기 워크 플로우에 따른 테스트 패키지 및 테스트 설정값을 수신할 수 있다.
또한, 상기 구성장치정보는 대상서버가 구성하는 구성장치의 제조사 및 모델명이 되고, 상기 테스트 스케줄은 대상서버별 수행될 테스트 전송시간, 테스트 오류발생시 재수행여부 및 테스트 수행횟수를 포함할 수 있다.
또한, 상기 관리서버는, 수신된 테스트 결과가 오류인 것으로 판단시, 상기 재수행여부에 따라 해당 대상서버에서 오류발생된 테스트 패키지를 재설치하도록 상기 DHCP확장서버 및 TFTP확장서버를 제어할 수 있다.
또한, 상기 관리서버는, 상기 대상서버로부터 부팅알림이 수신되면, 상기 대상서버에서 IPMI(Intelligent Platform Management Interface)연동을 위한 툴을 설치하도록 제어하고, IPMI용 IP를 할당하여 IPMI계정을 생성할 수 있다.
또한, 상기 대상서버는, 구성장치의 상태를 측정하는 복수의 센서를 구비하고, 상기 관리서버는, 검증관리자의 요청시 또는 기설정주기로 IPMI연동 환경을 통해 상기 복수의 센서에서 측정된 상태정보를 수신하고, 수신된 상태정보가 기설정범위를 벗어나면 알림할 수 있다.
이상에서 설명한 바와 같이, 본 발명에 의하면, 본 발명의 서버 검증 자동화 및 관리시스템은, 대상서버의 부팅시 해당 대상서버에 대한 테스트 스케줄에 매칭된 워크플로우를 생성함으로써, 대상서버의 구성장치정보(제조사, 모델명 등)에 매칭된 테스트패키지를 이용하여 대상서버(x86 서버 메인보드)가 테스트를 수행하고 그 결과를 관리서버에서 수신함으로써 정상 또는 결함을 판정할 수 있다.
또한, IPMI연동을 통해 대상서버의 상태정보를 모니터링하여 알림제공함으로써 대상서버의 이상을 감지할 수 있다.
또한, 워크플로우에 따라 대상서버별 구성장치에 따른 맞춤형 테스트를 수행할 수 있고, 스케줄정보에 포함된 재수행여부를 통해 테스트 재수행여부를 결정함으로써, 테스트 자동화를 구현할 수 있다.
또한, 복수의 대상서버에 대한 테스트를 동시에 수행할 수 있고, 정상 판정시 대상서버에 필요한 OS이미지를 제공하여 OS를 설치할 수 있다.
또한, 복수의 테스트 대상 서버에 대한 설정 및 테스트 이력/결과를 관리서버에서 모니터링 및 관리할 수 있고, 테스트 패키지별 결함여부에 따른 통계를 제공함으로써, 검증관리자가 합격여부 결정 및 테스트 스케줄 조정을 할 수 있다.
도 1은 본 발명의 일 실시 예에 따른 서버 검증 자동화 및 관리시스템의 개략적인 구성을 나타내는 도면이다.
도 2는 도 1의 관리서버의 구성을 나타내는 블럭도이다.
도 3은 도 2의 상태정보 모니터링부의 동작을 설명하기 위한 도면이다.
도 4는 본 발명의 일 실시 예에 따른 서버 검증 및 관리 방법을 설명하기 위한 흐름도이다.
도 2는 도 1의 관리서버의 구성을 나타내는 블럭도이다.
도 3은 도 2의 상태정보 모니터링부의 동작을 설명하기 위한 도면이다.
도 4는 본 발명의 일 실시 예에 따른 서버 검증 및 관리 방법을 설명하기 위한 흐름도이다.
본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 안 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념을 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다.
따라서 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일실시예에 불과할 뿐이고 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형예들이 있을 수 있음을 이해하여야 한다.
이하, 도면을 참조하여 설명하기에 앞서, 본 발명의 요지를 드러내기 위해서 필요하지 않은 사항 즉 통상의 지식을 가진 당업자가 자명하게 부가할 수 있는 공지 구성에 대해서는 도시하지 않거나, 구체적으로 기술하지 않았음을 밝혀둔다.
도 1은 본 발명의 일 실시 예에 따른 서버 검증 자동화 및 관리시스템의 개략적인 구성을 나타내는 도면이다. 도 1을 참고하면, 본 발명의 일 실시 예에 따른 서버 검증 자동화 및 관리시스템(1000)은 복수의 대상 서버(100a 내지 100n), 관리서버(200), DHCP 확장서버(300), TFTP 확장서버(400), 네트워크 측정서버(500) 및 데이터 저장소(10)를 포함할 수 있다.
본 발명의 일 실시 예에 따른 서버 검증 자동화 및 관리시스템(1000)은 대상서버의 생산현장에서 복수 대상 서버(100a 내지 100n)에 대한 원격 테스트, 테스트 결과 모니터링 및 관리 등을 수행할 수 있는 시스템이 될 수 있다.
복수의 대상 서버(100a 내지 100n)는 메인장치, 보조장치, 네트워크장치, 그외의 기타장치 등의 장치들로 구성될 수 있고, 클라우드, 빅데이터, 인공지능 IoT 분야 등에서 이용되는 데이터 센터용 서버가 될 수 있다.
여기서, 각 구성장치들의 일 예로, 메인장치는 CPU 등이 될 수 있고, 보조장치는 메모리 등이 될 수 있다. 또한, 네트워크장치는 데이터통신을 위한 통신장치가 될 수 있고, 그외의 기타장치는 파워, 팬 등의 장치가 될 수 있다.
본 발명의 대상서버(100)는 자신의 고유식별자를 가지며, 전원 온(on)시 특정 DHCP확장서버(300)로 부팅을 위해 IP할당을 요청하도록 초기설정될 수 있다. 한편, 대상 서버(100)의 기능 및 동작에 대한 설명은 도 4를 통해 설명하도록 한다.
관리서버(200)는 검증 대상인 복수의 대상 서버(100a 내지 100n:100), DHCP 확장서버(300) 및 TFTP 확장서버(400)를 관리하며, 대상서버(100)의 테스트 수행을 위한 다양한 정보들(테스트패키지, 테스트 설정값, OS 이미지 등)을 관리할 수 있고, 테스트 결과에 따른 결함여부 분석 및 통계정보 등을 제공할 수 있다.
이때, 관리서버(200)에 의해 설정 및 관리되는 정보들은 데이터 저장소(10)에 저장될 수 있다.
데이터 저장소(10)는 대상서버(100)의 구성장치별 테스트패키지, 테스트패키지별 테스트 설정값 및 결함여부 판단을 위한 임계치 설정, 테스트 스케줄, 테스트 워크플로우, 대상서버별 상태정보, 부팅을 위한 OS이미지 및 테스트 결과에 따른 다양한 정보들을 저장할 수 있다.
이때, 테스트 패키지는 구성장치정보별로 생성될 수 있고, 동일 구성장치에 대한 테스트 패키지는 패키지 그룹으로 분류되어 저장될 수 있다. 이때, 구성장치정보는 구성장치의 제조사, 모델명 등의 정보가 될 수 있다.
일 예로, 도 1을 참고하여 설명하면 제1테스트 패키지 그룹(패키지#1)은 복수의 테스트 패키키(package#1 내지 package#N)를 그룹화하여 분류 저장하는 것으로, 제1테스트 패키지 그룹은 CPU와 관련된 테스트 패키지 그룹이 될 수 있고, 복수의 테스트 패키지(package#1 내지 package#N)는 CPU의 제조사별 모델명별 등에 따른 테스트 패키지가 될 수 있다. 일 예로, package#1은 A사의 B모델 CPU가 될 수 있다.
이때, 테스트 패키지는 메인장치 품질측정 패키지, 보조장치 품질측정 패키지, 네트워크 품질측정 패키지 및 기타장치 품질측정 패키지 등으로 구분될 수 있다. 각 테스트 패키지는 테스트 목적에 따라 복수의 테스트(테스트 케이스)를 분류한 적어도 하나의 테스트 슈트를 포함할 수 있다. 일 예로, 메인장치 품질측정 패키지를 다음의 표1을 참조하여 설명할 수 있으며, 도 1의 테스트 패키지(package#1 내지 package#N) 중 하나가 될 수 있다.
테스트 패키지 | 테스트 슈트 | 테스트 케이스 |
메인장치 품질측정 패키지 |
CPU 테스트 슈트 |
stress test |
pi calculator | ||
prime number calculating | ||
Floating Point operation test | ||
CPU 확장 명령어 테스트 슈트 |
SSE instruction test | |
SSE2 instruction test |
여기서, 테스트 케이스는 테스트 프로그램이 될 수 있다. 또한, 테스트 슈트는 테스트 프로그램을 테스트 목적에 따라 분류한 것으로, CPU 확장 명령어에 대한 테스트를 수행하기 위한 테스트 프로그램은 하나의 슈트로 분류로 될 수 있고, 테스트 슈트는 대상서버(100)의 구성장치별로 분류되어 패키지로 그룹화될 수 있다.
테스트 패키지 제작자에 의해 제작된 테스트 케이스를 검증관리자가 테스트 패키지/테스트슈트/테스트케이스로 분류하여 관리할 수 있다.
한편, 테스트 패키지는, 대상서버(100)에 다운로드시 자동설치되어 테스트 케이스별 테스트를 수행하고, 각 테스트 케이스의 테스트결과를 관리서버(200)로 전송할 수 있다.
또한, 테스트패키지별 테스트 설정값은 테스트 수행을 위해 부여되는 값(테스트 케이스마다 부여)들로 테스트 수행시마다 검증관리자에 의해 설정 또는 변경될 수 있다. 또한, 결함여부 판단을 위한 임계치는 각 테스트 케이스마다 설정될 수 있으며, 테스트 결과에 따른 결함여부 판단시 이용될 수 있다. 또한, OS이미지는 테스트 이미지 제작자에 의해 제작되고, 부팅시 이용될 수 있다.
또한, 테스트 스케줄은 검증관리자에 의해 입력된 테스트 수행 순서로, 그룹화된 복수의 대상서버(100)에서 어떤 구성장치에 대한 어떤 테스트를 수행할지를 설정한 정보가 될 수 있다.
또한, 테스트 워크플로우는 테스트 스케줄에서 설정한 특정 테스트를 수행하기 위한 테스트 패키지를 테스트 스케줄의 수행순서에 매칭시켜 생성된 정보가 될 수 있다. 테스트 워크플로우 생성에 대한 설명은 도 2에서 설명하도록 한다.
도 2는 도 1의 관리서버의 구성을 나타내는 블럭도이다. 도 2를 참고하면, 본 발명의 일 실시 예에 따른 관리서버(200)는 설정부(210), 관리부(220), 제어부(230), 결함 판단부(240) 및 상태정보 모니터링부(250)를 포함할 수 있다.
설정부(210)는 대상서버(100) 초기설정, DHCP 확장서버(300)와 TFTP 확장서버(400)의 REST API 및 구성 설정, 테스트 설정값, 테스트 패키지별 임계치, 테스트 스케줄 등을 검증관리자로부터 입력받아 설정할 수 있다.
여기서, 대상서버(100)의 초기설정은, 전원 온시 기설정된 DHCP 확장서버(300)로 IP할당을 요청하는 설정 및 구성장치정보를 전송하는 설정이 될 수 있다.
여기서, 구성장치정보를 전송하는 설정에 의해, 대상서버(100)는 관리서버(200)로 부팅알림 후, 자신이 구성하고 있는 구성장치정보(구성장치별 제조사 및 모델명 등)를 관리서버(200)로 전송할 수 있다.
또한, DHCP 확장서버(300)는 IP할당을 요청한 대상서버(100)에 기설정된 OS이미지 주소값을 전송하도록 설정되고, 관리서버(200)로부터 테스트 패키지 위치값 및 테스트 설정값을 수신시 TFTP 확장서버(400)를 통해 대상서버(100)로 해당 테스트 패키지 및 테스트 설정값이 전송되도록 설정될 수 있다.
또한, 테스트 스케줄은 대상서버(100)별 수행될 테스트 전송시간, 테스트 수행 중 오류발생시 해당 테스트를 재수행할지를 결정하기 위한 재수행여부, 테스트별 수행횟수 등을 포함할 수 있다. 이때, 테스트 스케줄은 각 대상서버의 테스트 패키지의 결함여부 통계 및 검증이력을 기반으로 검증관리자에 의해 설정되거나, 자동 설정될 수 있다.
관리부(220)는 설정부(210)에 의해 설정되는 정보들을 데이터 저장소(10)에 분류하여 저장 및 관리하며, 테스트 스케줄을 제어부(230)로 제공할 수 있다. 또한, 관리부(220)는 관리UI를 통해 검증관리자의 요청에 따른 테스트 이력 및 테스트 결함여부 통계 등을 일자 및 시간별로 제공할 수 있고, 실시간 테스트 수행 중인 대상 서버 별 테스트 패키지 및 실시간 결함여부 결과를 제공할 수도 있다.
제어부(230)는 설정부(210)의 설정에 따라, 대상서버(100), DHCP 확장서버(300) 및 TFTP 확장서버(400)를 제어할 수 있다. 제어부(230)는 테스트 스케줄에 따라, 대상서버(100)를 전원 온 시켜 테스트가 수행될 수 있도록 각 서버(100, 300, 400, 500)를 제어할 수 있다.
또한, 제어부(230)는 부팅된 대상서버(100)로부터 구성장치정보를 수신시, 테스트 스케줄에서 설정한 특정 테스트를 실행시킬 테스트 패키지를 테스트 스케줄의 수행순서에 매칭시켜 테스트 워크플로우를 생성할 수 있다.
즉, 테스트 워크플로우는 테스트 스케줄에 포함된 수행 테스트 및 대상서버(100)로부터 수신된 구성장치정보에 매칭되는 테스트 패키지를 테스트스케줄의 수행순으로 스케줄링된 작업목록이 될 수 있다. 일 예로, 수행 테스트가 cpu 확장명령어 테스트이고, cpu가 A사의 B모델이면, 데이터 저장소(10)에 저장된 테스트 패키지 중에서 A사의 B모델에 대응되는 메인장치 품질측정 패키지를 추출하여 워크플로우를 생성할 수 있다.
제어부(230)는 생성된 테스트 워크 플로우에 따라, 실행되어야할 테스트 패키지의 위치값 및 테스트 설정값을 DHCP 확장서버(300)로 전송하여 TFTP 확장서버(400)를 통해 해당 테스트 패키지가 추출되도록 제어함으로써, 해당 대상서버(100)에서 실행할 테스트 패키지 및 테스트 설정값을 다운로드하여 테스트를 수행할 수 있게 한다.
결함 판단부(240)는 대상서버(100)로부터 테스트 결과를 수신시, 기설정된 임계치와 비교하여 결함여부를 결정할 수 있다. 설명의 이해를 위해, 네트워크 품질측정 테스트를 일 예로 설명할 수 있다.
이 경우, 대상서버(100)는 네트워크 품질측정 테스트 패키지 및 테스트 설정값을 TFTP 서버(400)를 통해 다운로드하며, 네트워크 품질측정 테스트를 위한 네트워크 품질측정서버(500)를 통해 네트워크 품질측정 테스트를 수행할 수 있다.
이때, 대상서버(100)에는 복수의 네트워크어댑터가 구비될 수 있으며, 네트워크 품질측정서버(500)는 대상서버(100)의 복수의 네트워크어댑터 각각에 대한 네트워크 품질측정 테스트를 병렬 수행할 수 있도록 매칭된 복수의 네트워크어댑터를 구비할 수 있다.
이때, 테스트 설정값은 네트워크 품질측정을 위한 테스트 트래픽이 될 수 있다. 테스트 트래픽은 검증관리자에 의해 설정될 수 있고, 패킷 사이즈, 패킷 종류, 패킷량 등이 될 수 있다. 이때, 테스트는, 테스트 트래픽에 따른 데이터를 대상서버(100)에서 네트워크 품질측정 서버(500)로 업로드/다운로드시 걸리는 시간측정 및 네트워크어댑터별 사용 대역폭 등이 될 수 있다. 또한, 임계치는 업로드 및 다운로드시 걸리는 기준시간범위가 될 수 있다.
한편, 이는 네트워크 품질측정 테스트 패키지를 일 예로 설명한 것이며, 각 구성장치의 테스트 패키지별로 테스트 목적에 따라 테스트 설정값 및 임계치가 각각 설정될 수 있다.
또한, 결함 판단부(240)는 대상서버(100)로부터 테스트 결과를 수신시, 오류가 발생된 것으로 판단되면, 테스트 스케줄에 포함된 해당 테스트에 대한 재수행여부정보에 따라 해당 테스트를 재수행할 수 있도록 제어부(230)로 재수행 요청을 할 수 있다.
이를 수신한 제어부(230)는 해당 대상서버에서 테스트 패키지를 재설치하여 테스트를 재수행할 수 있도록 해당 테스트 패키지 위치값 및 테스트 설정값을 DHCP 확장서버(300)로 전송할 수 있다.
이때, 제어부(230)는 해당 테스트 패키지의 테스트 재수행이 완료되어 테스트 결과를 수신하면, 워크플로우에 따른 다음순서의 테스트패키지가 수행되도록 대상서버를 제어할 수 있다.
상태정보 모니터링부(250)는 IPMI(Intelligent Platform Management Interface)연동을 통해 대상서버(100)로부터 상태정보를 수집하여 이상여부를 모니터링하고, 이상발생시 알림을 제공할 수 있다.
여기서, 상태정보는 대상서버(100)에 구비된 센서로부터 측정된 정보로 온도(보드 내부온도, 메모리 온도, 네트워크어댑터 온도 등), 팬속도(CPU Fan, System Fan 등) 등과 같은 대상서버(100)의 구성장치 상태를 측정한 정보가 될 수 있다.
이를 위하여, 상태정보 모니터링부(250)는 대상서버(100)의 부팅알림 수신시, IPMI연동을 위한 환경설정을 할 수 있다. 상태정보모니터링부(250)는 IPMI연동을 위한 라이브러리 및 툴을 부팅을 알린 대상서버(100)로 전송하여 설치할 수 있게 한다.
이때, 대상서버(100)는 라이브러리 및 툴 설치시, IPMI용 IP 할당을 통해 상태정보 모니터링을 위한 IPMI 계정을 생성할 수 있다. IPMI 계정이 생성되면, 도 3의 과정과 같이, 상태정보를 수집하여 모니터링할 수 있다.
도 3은 도 2의 상태정보 모니터링부의 동작을 설명하기 위한 도면이다. 도 3은 검증관리자가 상태정보 요청시 상태정보를 수집하여 제공하는 것으로 도시하였으나, 검증관리자의 설정에 따라 관리서버(200)가 기설정주기로 상태정보를 수집하여 검증관리자의 단말로 제공할 수도 있다.
도 3을 참고하면, 부팅알림 수신이 확인되면, IPMI 접속정보(IPMI 계정)를 요청하여 대상서버(100)로부터 해당 접속을 확인할 수 있다. 해당 접속이 확인되면, IPMI 상태정보를 요청하여 해당 대상서버의 상태정보를 수신할 수 있다.
이때, 관리서버의 상태정보 모니터링부(250)는 7단계에서 전송된 IPMI 상태정보가 기설정범위를 벗어나는 경우, 위험을 알리는 알림제공과 함께 IPMI 상태정보를 제공할 수 있다(8단계).
도 4는 본 발명의 일 실시 예에 따른 서버 검증 및 관리 방법을 설명하기 위한 흐름도이다. 도 1 내지 3을 참고하여 설명할 수 있다.
관리서버(200)에서 대상서버(100)의 검증을 위해, 복수의 대상서버(100), DHCP 확장서버(300) 및 TFTP 확장서버(400)의 동작을 위한 정보를 설정할 수 있다(S300). 이때, 설정들은 해당 서버(100,300,400) 및 데이터 저장소(10)에 저장될 수 있다.
다음으로, 관리서버(200)는 기설정된 테스트 스케줄에 따라, 검증 대상인 대상서버(100)로 웨이크 온랜(wake-on-lan)신호 등을 통해 원격기동시키거나, 수동으로 전원을 온시킬 수 있다(S305).
다음으로, 대상서버(100)는 전원 온시, 기설정된 DHCP 확장서버(300)로 부팅을 위해 IP할당을 요청할 수 있다(S310). 대상서버(100)로부터 IP할당을 요청받은 DHCP 확장서버(300)는 대상서버의 고유식별자를 통해, 해당 대상서버(100)에 설정된 OS 이미지의 주소값을 데이터 저장소(10)로부터 추출하고, IP할당과 함께 추출된 OS 이미지 주소값을 전송할 수 있다(S315).
다음으로, 대상서버(100)는 할당된 IP를 통해, OS이미지 주소값으로 접근하고(S320). TFTP(400)를 통해 데이터 저장소(10)에 OS이미지 주소값으로 저장된 OS이미지를 추출하여(S325) 다운로드할 수 있다(S330). 다음으로, 대상서버(100)는 다운로드된 OS이미지를 이용하여 부팅되고(S335), 부팅시 부팅알림을 관리서버(200)로 전송할 수 있다(S340).
또한, 부팅된 대상서버(200)는 초기설정에 따라 구성장치정보를 관리서버(200)로 전송할 수 있다(S341).
또한, 부팅된 대상서버(100)는 초기설정에 따라 IPMI연동을 위한 환경설정을 수행하고(S3431), 설정된 IPMI계정을 통해 상태정보를 제공하여 모니터링할 수 있다(S3432). 이때, 상태정보 모니터링은 검증관리자의 요청이 있을 때 또는 기설정주기로 수행될 수 있다. 이에, 부팅알림 수신 이후 어느 단계에서나 수행될 수 있다.
관리서버(200)는 부팅알림이 수신된 대상서버(100)의 구성장치정보를 수신하고(S342) 이를 통해 워크 플로우를 생성할 수 있다(S344). 테스트 워크플로우는 테스트 스케줄에 포함된 수행 테스트 및 대상서버(100)로부터 수신된 구성장치정보에 매칭되는 테스트 패키지를 테스트스케줄의 수행순으로 스케줄링된 작업목록이 될 수 있다.
다음으로, 관리서버(200)는 생성된 워크 플로우에 따라, 수행될 테스트 패키지의 위치값(데이터 저장소(10)에 저장된 위치를 나타내는 주소값) 및 테스트 설정값을 DHCP 확장서버(300)로 전송할 수 있다(S345). 이때, 테스트 설정값은 검증관리자에 의해 입력되어 데이터 저장소(10)에 저장되고, 관리서버(200)는 테스트 설정값의 저장 위치값만을 전송할 수도 있다.
다음으로, DHCP 확장서버(300)는 관리서버(200)로부터 수신된 위치값을 이용하여 TFTP 확장서버(400)를 통해 데이터 저장소(10)에 저장된 테스트 패키지로 접근하여(S350), 해당 테스트 패키지를 추출하고(S355) 테스트 설정값과 함께 대상서버(100)에 다운로드되도록 푸쉬할 수 있다(S360).
다음으로, 대상서버(100)는 다운로드된 테스트 패키지를 설치하고(S365), 테스트 설정값에 따라 테스트 케이스별로 테스트를 수행할 수 있다(S370). 또한, 테스트 수행에 따른 테스트 결과를 관리서버(200)로 전송할 수 있다(S375).
다음으로, 관리서버(200)는 대상서버(100)별 테스트 케이스별 테스트 결과를 실시간으로 수신하고, 수신된 테스트 결과와 기설정된 임계치를 비교하여 결함여부를 판단할 수 있다(S380).
여기서, 임계치는 특정 목표치 또는 임계범위가 될 수 있다. 임계치가 특정 목표치로 설정된 경우, 수신된 테스트 결과값이 목표치와 동일할 때 결함무로 판단할 수 있다. 또는, 임계치가 임계범위로 설정된 경우, 수신된 테스트 결과값이 기설정된 특정범위인 임계범위에 포함될 때 결함 없음으로 판단할 수 있다.
한편, 관리서버(200)는 테스트 결과를 수신시, 오류가 발생된 것으로 판단되면, 테스트 스케줄에 포함된 해당 테스트에 대한 재수행여부정보에 따라 해당 테스트를 재수행할 수 있다. 해당 테스트에 대한 재수행정보가 있는 경우, S345 내지 S380 단계가 재수행되거나, S370 내지 S380 단계가 재수행될 수 있다.
한편, 테스트 스케줄의 테스트 실행횟수 또는 테스트 수행기간 동안, S305 단계 내지 S380 단계가 반복수행될 수 있다. 일 예로, 메인장치 테스트 패키지가 2일동안 스케줄된 경우, 2일동안 S305 단계 내지 S380 단계를 반복수행되며, 관리서버(200)는 반복수행에 따른 테스트 결과, 테스트 결과에 따른 결함여부에 대한 통계치를 산출하여 그래프 형태로 제공할 수 있다(S385).
이를 통해, 2일 동안의 테스트 결함 정도(횟수 등)를 수치확인을 통해 대상서버(100)의 테스트 패키지별 합격 여부를 결정할 수 있다. 이는, 검증관리자에 의해 결정되거나, 합격기준 설정을 통해 결정될 수도 있다.
또한, 관리서버(200)는 대상서버(100)별 테스트 패키지의 테스트 수행 이력 및 결함여부에 따라, 대상서버(100)의 테스트 스케줄을 조정할 수 있으며(S390), 불합격된 대상서버(100)를 추출하여 불합격 사유를 제공할 수 있다.
이를 통해, 검증관리자는 대상서버(100)의 불합격여부를 검증을 통해 확인할 수 있다. 또한, 검증관리자는 불합격 대상서버(100)에 대한 점검을 통해 결함해소 후, 조정된 테스트 스케줄에 따라 재검증을 수행할 수 있다.
한편, 상기에서 도 1 내지 도 4를 이용하여 서술한 것은, 본 발명의 주요 사항만을 서술한 것으로, 그 기술적 범위 내에서 다양한 설계가 가능한 만큼, 본 발명이 도 1 내지 도 4의 구성에 한정되는 것이 아님은 자명하다.
1000 : 서버 검증 자동화 및 관리시스템
100 : 대상 서버(100a 내지 100n) 200 : 관리서버
210 : 설정부 220 : 관리부
230 : 제어부 240 : 결함 판단부
300 : DHCP 확장서버 400 : TFTP 확장서버
500 : 네트워크 품질측정서버 10 : 데이터 저장소
100 : 대상 서버(100a 내지 100n) 200 : 관리서버
210 : 설정부 220 : 관리부
230 : 제어부 240 : 결함 판단부
300 : DHCP 확장서버 400 : TFTP 확장서버
500 : 네트워크 품질측정서버 10 : 데이터 저장소
Claims (5)
- 테스트 목적에 따라 분류된 테스트 프로그램을 구성장치별로 그룹화하여 테스트패키지로 저장하되, 구성장치정보별로 분류하여 저장하는 데이터 저장소;
부팅시 구성장치정보를 전송하며, 테스트 패키지 수신시 테스트를 수행하여 테스트결과를 전송하는 복수의 대상서버; 및
상기 구성장치정보가 수신되면, 테스트 일정을 포함하는 스케줄 정보로부터 해당 대상서버가 수행할 테스트 패키지를 추출하되, 상기 수신된 구성장치정보에 매칭되는 테스트 패키지를 추출하여 워크플로우를 생성하고, 생성된 워크플로우에 따라 상기 복수의 대상서버가 테스트를 수행하도록 제어하는 관리서버를 포함하고,
상기 대상 서버의 PXE(PreBoot Execution Environment)를 통해 부팅 요청이 수신되면, 상기 대상 서버로 IP를 할당하고, 부팅을 위한 OS 이미지의 주소값을 전송하는 DHCP(Dynamic Host Configuration Protocol)확장서버; 및
상기 PXE가 지원하는 프로토콜을 통해 상기 대상 서버로 상기 OS 이미지를 전송하고, 상기 OS 이미지를 이용하여 부팅된 대상서버로 해당 테스트 패키지를 전송하는 TFTP(Trivial File Transfer Protocol)확장서버를 더 포함하고,
상기 관리서버는 상기 워크플로우에 따라 수행될 테스트 패키지의 위치값 및 테스트 설정값을 상기 DHCP 확장서버로 전송하고, 해당 대상서버는 상기 TFTP 확장 서버를 통해 상기 워크 플로우에 따른 테스트 패키지 및 테스트 설정값을 수신하는 것을 특징으로 하는 서버 검증 자동화 및 관리시스템.
- 삭제
- 제1항에 있어서,
상기 구성장치정보는 대상서버가 구성하는 구성장치의 제조사 및 모델명이 되고, 상기 테스트 스케줄은 대상서버별 수행될 테스트 전송시간, 테스트 오류발생시 재수행여부 및 테스트 수행횟수를 포함하며,
상기 관리서버는, 수신된 테스트 결과가 오류인 것으로 판단시, 상기 재수행여부에 따라 해당 대상서버에서 오류발생된 테스트 패키지를 재설치하도록 상기 DHCP확장서버 및 TFTP확장서버를 제어하는 것을 특징으로 하는 서버 검증 자동화 및 관리시스템.
- 제1항에 있어서,
상기 관리서버는, 상기 대상서버로부터 부팅알림이 수신되면, 상기 대상서버에서 IPMI(Intelligent Platform Management Interface)연동을 위한 툴을 설치하도록 제어하고, IPMI용 IP를 할당하여 IPMI계정을 생성하는 것을 특징으로 하는 서버 검증 자동화 및 관리시스템.
- 제1항에 있어서,
상기 대상서버는, 구성장치의 상태를 측정하는 복수의 센서를 구비하고,
상기 관리서버는, 검증관리자의 요청시 또는 기설정주기로 IPMI연동 환경을 통해 상기 복수의 센서에서 측정된 상태정보를 수신하고, 수신된 상태정보가 기설정범위를 벗어나면 알림하는 것을 특징으로 하는 서버 검증 자동화 및 관리시스템.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180041209A KR102068830B1 (ko) | 2018-04-09 | 2018-04-09 | 서버 검증 자동화 및 관리시스템 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180041209A KR102068830B1 (ko) | 2018-04-09 | 2018-04-09 | 서버 검증 자동화 및 관리시스템 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20190118064A KR20190118064A (ko) | 2019-10-17 |
KR102068830B1 true KR102068830B1 (ko) | 2020-01-21 |
Family
ID=68424155
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180041209A KR102068830B1 (ko) | 2018-04-09 | 2018-04-09 | 서버 검증 자동화 및 관리시스템 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102068830B1 (ko) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102437098B1 (ko) | 2022-04-15 | 2022-08-25 | 이찬영 | 인공 지능 기반의 오류 데이터 판정 방법 및 그 장치 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002358214A (ja) | 2001-06-01 | 2002-12-13 | Toshiba Corp | ソフトウェアテスト装置、ソフトウェアテストプログラム、ソフトウェアテスト方法及びソフトウェアテストシステム |
JP2012146089A (ja) | 2011-01-11 | 2012-08-02 | Fujitsu Ltd | 設定プログラム、ワークフロー作成方法およびワークフロー作成装置 |
JP2015011413A (ja) * | 2013-06-27 | 2015-01-19 | 株式会社日立製作所 | 検証自動化方式 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20040054904A (ko) | 2002-12-18 | 2004-06-26 | (주)티에스이 | 소켓 및 이를 이용한 반도체 집적소자 테스트 정보 관리시스템 |
KR20150030297A (ko) * | 2013-09-11 | 2015-03-20 | 에스케이플래닛 주식회사 | 애플리케이션 자동 검증을 위한 검증장치, 단말장치, 시스템, 방법 및 컴퓨터로 판독 가능한 기록 매체 |
-
2018
- 2018-04-09 KR KR1020180041209A patent/KR102068830B1/ko active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002358214A (ja) | 2001-06-01 | 2002-12-13 | Toshiba Corp | ソフトウェアテスト装置、ソフトウェアテストプログラム、ソフトウェアテスト方法及びソフトウェアテストシステム |
JP2012146089A (ja) | 2011-01-11 | 2012-08-02 | Fujitsu Ltd | 設定プログラム、ワークフロー作成方法およびワークフロー作成装置 |
JP2015011413A (ja) * | 2013-06-27 | 2015-01-19 | 株式会社日立製作所 | 検証自動化方式 |
Also Published As
Publication number | Publication date |
---|---|
KR20190118064A (ko) | 2019-10-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109302522B (zh) | 测试方法、装置以及计算机系统和介质 | |
CN107463362B (zh) | 基于多个Jenkins的持续部署的方法和系统 | |
CN111124850A (zh) | Mqtt服务器性能测试方法、系统、计算机设备及存储介质 | |
WO2018000607A1 (zh) | 一种识别测试用例失败原因的方法及电子设备 | |
JP2023525393A (ja) | ゲートウェイリソースを更新する方法および装置、ならびにiot制御プラットフォーム | |
US11636016B2 (en) | Cloud simulation and validation system | |
CN106897223A (zh) | 一种基于持续集成的软件包交付方法及装置 | |
CN108959097A (zh) | 一种快速测试服务器os的方法 | |
CN111897697B (zh) | 服务器硬件故障修复方法和装置 | |
CN111506358B (zh) | 更新容器配置的方法及装置 | |
KR102068830B1 (ko) | 서버 검증 자동화 및 관리시스템 | |
US9158641B2 (en) | Cloud auto-test system, method and non-transitory computer readable storage medium of the same | |
WO2019222941A1 (zh) | 用于评估应用部署的方法、设备、计算机程序产品和可读介质 | |
CN111338926A (zh) | 补丁的测试方法、装置及电子设备 | |
US9870234B2 (en) | Automatic identification of returned merchandise in a data center | |
CN108289114B (zh) | 云端服务系统及处理云端服务异常的方法 | |
KR101961861B1 (ko) | 서버 검증 및 관리 시스템 | |
CN110971478A (zh) | 云平台服务性能的压测方法、装置及计算设备 | |
CN112698998A (zh) | 一种可持续集成的arm服务器出厂测试方法 | |
CN113515403B (zh) | 微服务状态检查方法、计算机设备及存储介质 | |
US11374811B2 (en) | Automatically determining supported capabilities in server hardware devices | |
CN114640578B (zh) | 设备的自动配置方法、装置及系统 | |
CN110858848B (zh) | 一种集群系统的任务资源的纠正方法及装置 | |
US20210132977A1 (en) | Information processing apparatus, program, and information processing system | |
CN117370152A (zh) | 一种自动测试方法、装置、设备及机器可读存储介质 |
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 |