KR102214139B1 - Management system for cloud infrastructure template - Google Patents
Management system for cloud infrastructure template Download PDFInfo
- Publication number
- KR102214139B1 KR102214139B1 KR1020200067548A KR20200067548A KR102214139B1 KR 102214139 B1 KR102214139 B1 KR 102214139B1 KR 1020200067548 A KR1020200067548 A KR 1020200067548A KR 20200067548 A KR20200067548 A KR 20200067548A KR 102214139 B1 KR102214139 B1 KR 102214139B1
- Authority
- KR
- South Korea
- Prior art keywords
- software
- template
- server
- configuration
- development environment
- Prior art date
- Legal status (The legal status 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 status listed.)
- Expired - Fee Related
Links
- 238000011161 development Methods 0.000 claims abstract description 77
- 230000009193 crawling Effects 0.000 claims abstract description 12
- 239000000284 extract Substances 0.000 claims abstract description 5
- 238000010276 construction Methods 0.000 claims description 7
- 238000000034 method Methods 0.000 claims description 7
- 238000007726 management method Methods 0.000 description 40
- 238000010586 diagram Methods 0.000 description 12
- 230000000694 effects Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/36—Software reuse
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45562—Creating, deleting, cloning virtual machine instances
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Human Computer Interaction (AREA)
- Stored Programmes (AREA)
Abstract
클라우드 인프라 템플릿 관리 시스템이 개시된다. 본 발명의 일 실시예에 따른 클라우드 인프라 템플릿 관리 시스템은, 클라우드 상에서 서버를 생성하기 위한 인프라 구성 및 개발환경 구성을 정형화한 템플릿이 저장되는 템플릿 저장 데이터베이스; 상기 템플릿 저장 데이터베이스로부터 상기 템플릿을 수신하며, 사용자의 한 번의 입력을 수신하여 상기 클라우드 상에서 상기 서버를 생성하는 서버 구축부; 상기 개발환경 구성에서 사용된 다수 개의 소프트웨어의 새로운 버전 유무를 검색하는 소프트웨어 버전 검색부; 상기 소프트웨어 버전 검색부가 상기 소프트웨어의 새로운 버전을 검색하면, 상기 템플릿으로부터 상기 개발환경 구성을 추출하고, 웹 크롤링을 통해 상기 소프트웨어의 새로운 버전과 상기 개발환경 구성과의 호환성 정보를 수집하는 소프트웨어 호환 판단부; 및 상기 다수 개의 소프트웨어가 서로 호환되지 않는 경우, 권장 템플릿을 생성하는 권장 템플릿 생성부;를 포함한다. 본 발명에 의하면, 클라우드 상에서 서버를 생성하기 위해 필요한 인프라 구성과 개발환경 구성을 템플릿으로 제공하여 손쉽게 서버가 생성되도록 하되, 개발환경 구성의 소프트웨어의 버전정보를 검색하고 호환성 여부를 웹 크롤링하여 권장 템플릿을 자동으로 생성 및 저장하고, 나아가 사용자에 의해 설정/수정된 환경설정정보를 포함한 서버 구성을 이미지 형태로 백업하여 템플릿으로 저장함으로써 이를 통해 서버의 구성 뿐만 아니라 환경설정 정보까지 동일한 서버를 언제든 재생성할 수 있는 클라우드 인프라 템플릿 관리 시스템이 제공된다. A cloud infrastructure template management system is disclosed. A cloud infrastructure template management system according to an embodiment of the present invention includes a template storage database storing a template in which an infrastructure configuration and a development environment configuration for creating a server in a cloud are stored; A server building unit that receives the template from the template storage database, receives a single input from a user, and generates the server on the cloud; A software version search unit that searches for new versions of a plurality of software used in the development environment configuration; When the software version search unit searches for a new version of the software, a software compatibility determination unit extracts the development environment configuration from the template and collects compatibility information between the new version of the software and the development environment configuration through web crawling. ; And a recommended template generation unit for generating a recommended template when the plurality of software are not compatible with each other. According to the present invention, the infrastructure configuration and the development environment configuration required to create the server on the cloud are provided as templates so that the server can be easily created. Is automatically created and saved, and the server configuration including the configuration information set/modified by the user is backed up in the form of an image and saved as a template. A cloud infrastructure template management system is provided.
Description
본 발명은 클라우드 인프라 템플릿 관리 시스템에 관한 것으로서, 보다 상세하게는, 클라우드 상에서 서버를 생성하기 위해 필요한 인프라 구성과 개발환경 구성을 템플릿으로 제공하여 손쉽게 서버가 생성되도록 하되, 개발환경 구성의 소프트웨어의 버전정보를 검색하고 호환성 여부를 웹 크롤링하여 권장 템플릿을 자동으로 생성 및 저장하고, 나아가 사용자에 의해 설정/수정된 환경설정정보를 포함한 서버 구성을 이미지 형태로 백업하여 템플릿으로 저장함으로써 이를 통해 서버의 구성 뿐만 아니라 환경설정 정보까지 동일한 서버를 언제든 재생성할 수 있는 클라우드 인프라 템플릿 관리 시스템에 관한 것이다. The present invention relates to a cloud infrastructure template management system, and more particularly, provides an infrastructure configuration and a development environment configuration required to create a server on the cloud as a template so that a server can be easily created, but the version of the software in the development environment configuration The recommended template is automatically created and saved by searching information and web crawling for compatibility, and further, the server configuration including the environment setting information set/modified by the user is backed up in an image format and saved as a template. In addition, it relates to a cloud infrastructure template management system that can regenerate the same server at any time with configuration information.
클라우드 시스템이란 인터넷상의 서버를 통하여 데이터 저장, 네트워크, 콘텐츠 사용 등 IT 관련 서비스를 한번에 사용할 수 있는 컴퓨팅 시스템을 의미한다. 인터넷상의 서버에는 정보가 영구적으로 저장되고, 데스크 탑 PC, 태블릿 PC, 노트북, 넷북, 스마트폰 등의 IT 기기와 같은 클라이언트에는 일시적으로 보관되는 컴퓨팅 환경이다. 즉, 이용자의 모든 정보를 인터넷상의 서버에 저장하고, 이러한 정보를 각종 IT 기기를 통하여 언제 어디서든 이용할 수 있는 개념이다.The cloud system refers to a computing system that can use IT-related services such as data storage, network, and content use at once through a server on the Internet. Information is permanently stored in servers on the Internet, and is a computing environment temporarily stored in clients such as IT devices such as desktop PCs, tablet PCs, notebooks, netbooks, and smart phones. In other words, it is a concept that all user information can be stored in a server on the Internet, and such information can be used anytime, anywhere through various IT devices.
다시 말해, 클라우드는 시스템은 구름(cloud)와 같이 무형의 형태로 존재하는 소프트웨어 등의 컴퓨팅 자원을 자신이 원하는 만큼 빌려 쓰고 이에 대한 일정한 대가를 지급하는 방식의 컴퓨팅 서비스로, 서로 다른 물리적인 위치에 존재하는 컴퓨팅 자원을 가상화 기술로 통합해 제공하는 기술을 말한다.In other words, the cloud is a computing service in which the system borrows computing resources such as software that exist in an intangible form like a cloud as much as it wants and pays a certain price for it. It refers to a technology that integrates and provides existing computing resources with virtualization technology.
클라우드 상에 서버를 구축할 때 등의 소프트웨어를 개발하거나 테스트할 때 매번 소프트웨어를 설치하여야 한다. 이 때, 필요한 소프트웨어 등의 정보를 표준화하여 템플릿으로 저장한 뒤 한 번에 쉽게 설치할 수 있도록 한다. 그러나 이러한 경우 사용된 소프트웨어들의 업그레이드, 패치 등으로 인해 새로운 버전의 소프트웨어가 나올 수 있는데, 개발자나 운영자 등이 이러한 정보를 항상 알 수 없는 문제점이 있다.Whenever you develop or test software, such as when building a server on the cloud, you need to install the software. At this time, information such as necessary software is standardized and saved as a template so that it can be easily installed at a time. However, in this case, a new version of the software may come out due to upgrades or patches of the used software, but there is a problem that the developer or operator cannot always know this information.
또한, 소프트웨어를 설치 후 환경설정 등이 필요한데, 새로운 버전 등으로 인해 소프트웨어를 새로 설치하면 환경설정도 다시 해야하는 문제점이 있다.In addition, after installing the software, environment settings, etc. are required, but if the software is newly installed due to a new version, there is a problem in that the environment settings must be reconfigured.
본 발명의 일 실시예에 따른 클라우드 인프라 템플릿 관리 시스템은, 클라우드 상에서 서버를 생성하기 위해 필요한 인프라 구성과 개발환경 구성을 템플릿으로 제공하여 손쉽게 서버가 생성되도록 하되, 개발환경 구성의 소프트웨어의 버전정보를 검색하고 호환성 여부를 웹 크롤링하여 권장 템플릿을 자동으로 생성 및 저장하고, 나아가 사용자에 의해 설정/수정된 환경설정 정보를 포함한 서버 구성을 이미지 형태로 백업하여 템플릿으로 저장함으로써, 이를 통해 서버의 구성 뿐만 아니라 환경설정 정보까지 동일한 서버를 언제든 재생성할 수 있는 클라우드 인프라 템플릿 관리 시스템을 제공하는 것을 목적으로 한다.The cloud infrastructure template management system according to an embodiment of the present invention provides an infrastructure configuration and a development environment configuration required to create a server on the cloud as a template so that a server is easily created, but the version information of the software of the development environment configuration is provided. The recommended template is automatically created and saved by searching and web crawling for compatibility, and further, the server configuration including the environment setting information set/modified by the user is backed up in the form of an image and saved as a template. In addition, it aims to provide a cloud infrastructure template management system that can regenerate the same server at any time even with configuration information.
본 발명의 과제들은 이상에서 언급한 기술적 과제로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The problems of the present invention are not limited to the technical problems mentioned above, and other technical problems that are not mentioned will be clearly understood by those skilled in the art from the following description.
본 발명의 일 실시예에 따른 클라우드 인프라 템플릿 관리 시스템은, 클라우드 상에서 서버를 생성하기 위한 인프라 구성 및 개발환경 구성을 정형화한 템플릿이 저장되는 템플릿 저장 데이터베이스; 상기 템플릿 저장 데이터베이스로부터 상기 템플릿을 수신하며, 사용자의 한 번의 입력을 수신하여 상기 클라우드 상에서 상기 서버를 생성하는 서버 구축부; 상기 개발환경 구성에서 사용된 다수 개의 소프트웨어의 새로운 버전 유무를 검색하는 소프트웨어 버전 검색부; 상기 소프트웨어 버전 검색부가 상기 소프트웨어의 새로운 버전을 검색하면, 상기 템플릿으로부터 상기 개발환경 구성을 추출하고, 웹 크롤링을 통해 상기 소프트웨어의 새로운 버전과 상기 개발환경 구성과의 호환성 정보를 수집하는 소프트웨어 호환 판단부; 및 상기 다수 개의 소프트웨어가 서로 호환되지 않는 경우, 권장 템플릿을 생성하는 권장 템플릿 생성부;를 포함한다.A cloud infrastructure template management system according to an embodiment of the present invention includes a template storage database storing a template in which an infrastructure configuration and a development environment configuration for creating a server in a cloud are stored; A server building unit that receives the template from the template storage database, receives a single input from a user, and generates the server on the cloud; A software version search unit that searches for new versions of a plurality of software used in the development environment configuration; When the software version search unit searches for a new version of the software, a software compatibility determination unit extracts the development environment configuration from the template and collects compatibility information between the new version of the software and the development environment configuration through web crawling. ; And a recommended template generation unit for generating a recommended template when the plurality of software are not compatible with each other.
또한, 상기 서버는 웹 서버(Web Server), 웹 애플리케이션 서버(WAS : Web Application Server), 데이터베이스 서버(DB Server)이며, 상기 인프라 구성은, 상기 서버의 대수 및 성능을 포함하며, 상기 개발환경 구성은, 상기 웹 서버, 상기 웹 애플리케이션 서버, 상기 데이터베이스 서버 및 전자정부 프레임워크 소프트웨어일 수 있다.In addition, the server is a web server (Web Server), a web application server (WAS: Web Application Server), a database server (DB Server), the infrastructure configuration, including the number and performance of the server, the development environment configuration May be the web server, the web application server, the database server, and the e-government framework software.
또한, 상기 소프트웨어 버전 검색부는, 상기 웹 서버, 상기 웹 애플리케이션 서버, 상기 데이터베이스 서버 및 전자정부 프레임워크 소프트웨어의 배포 홈페이지를 통해 새로운 버전의 유무, 서비스 기간, 서비스 종료 정보를 검색할 수 있다.In addition, the software version search unit may search for presence or absence of a new version, service period, and service termination information through the web server, the web application server, the database server, and the distribution homepage of the e-government framework software.
삭제delete
또한, 상기 권장 템플릿 생성부는, 상기 소프트웨어의 새로운 버전이 상기 개발환경 구성과 상호 호환되는 경우 새로운 버전의 소프트웨어를 포함한 상기 개발환경 구성을 재정의하고 권장 템플릿을 생성하며, 상기 소프트웨어 호환 판단부는, 상기 소프트웨어의 새로운 버전이 상기 개발환경 구성과 상호 호환되지 않는 경우 사용자에게 알림서비스를 제공할 수 있다.In addition, the recommended template generation unit redefines the configuration of the development environment including the new version of software and generates a recommended template when the new version of the software is mutually compatible with the configuration of the development environment, and the software compatibility determination unit When the new version of is not compatible with the development environment configuration, a notification service can be provided to the user.
또한, 상기 서버 구축부에서 상기 서버 생성시 자동 설치된 상기 개발환경 구성이 사용자에 의해 수동으로 수정된 경우, 수정된 환경설정 정보가 포함된 상기 개발환경 구성 및 상기 인프라 구성이 이미지 형태로 백업되며, 상기 이미지는 템플릿으로 저장되는 구성관리 DB부;를 더 포함할 수 있다.In addition, when the development environment configuration automatically installed when the server is created by the server construction unit is manually modified by a user, the development environment configuration including the modified environment setting information and the infrastructure configuration are backed up in the form of images, The image may further include a configuration management DB unit stored as a template.
본 발명의 실시예들에 의하면 적어도 다음과 같은 효과가 있다.According to the embodiments of the present invention, there are at least the following effects.
본 발명에 따른 클라우드 인프라 템플릿 관리 시스템은, 클라우드 상에서 서버를 생성하기 위해 필요한 인프라 구성과 개발환경 구성을 템플릿으로 제공하여 손쉽게 서버가 생성되도록 하되, 개발환경 구성의 소프트웨어의 버전정보를 검색하고 호환성 여부를 웹 크롤링하여 권장 템플릿을 자동으로 생성 및 저장하고, 나아가 사용자에 의해 설정/수정된 환경설정 정보를 포함한 서버 구성을 이미지 형태로 백업하여 템플릿으로 저장함으로써, 이를 통해 서버의 구성 뿐만 아니라 환경설정 정보까지 동일한 서버를 언제든 재생성할 수 있는 클라우드 인프라 템플릿 관리 시스템이 제공된다.The cloud infrastructure template management system according to the present invention provides an infrastructure configuration and a development environment configuration required to create a server on the cloud as a template so that a server can be easily created, but retrieves version information of the software in the development environment configuration and whether it is compatible. The recommended template is automatically created and saved by web crawling, and the server configuration including the environment setting information set/modified by the user is backed up in the form of an image and saved as a template. A cloud infrastructure template management system that can re-create the same server at any time is provided.
또한, 클라우드 상에 서버를 생성 시 사용된 소프트웨어들의 새로운 버전이 출시된 경우 이에 대한 정보를 수집 및 즉각적인 확인을 할 수 있다.In addition, when a new version of the software used to create a server on the cloud is released, information about it can be collected and immediately checked.
또한, 새로운 버전의 소프트웨어와, 서버 생성 시 사용된 다른 소프트웨어들과의 호환성 정보를 확인할 수 있다.In addition, you can check the compatibility information between the new version of the software and other software used when creating the server.
또한, 새로운 버전의 소프트웨어의 호환성에 문제가 없는 경우, 기존 소프트웨어가 새로운 버전의 소프트웨어로 대체된 권장 템플릿이 생성되어 자동으로 저장된다.In addition, if there is no problem with the compatibility of the new version of the software, a recommended template in which the existing software is replaced with the new version of the software is generated and automatically saved.
또한, 권장 템플릿을 통해 새로운 버전의 소프트웨어가 적용된 서버 생성이 언제든 손쉽게 가능하다.In addition, it is always possible to easily create a server with a new version of the software applied through the recommended template.
또한, 환경설정 정보도 템플릿으로 저장되어 인프라 구성 및 개발환경 구성 뿐만 아니라 추후 환경설정 정보도 동일한 서버의 재생성이 언제든 손쉽게 가능하다.In addition, environment setting information is also stored as a template, so that not only infrastructure configuration and development environment configuration, but also environment setting information in the future can be easily recreated at any time.
본 발명에 따른 효과는 이상에서 예시된 내용에 의해 제한되지 않으며, 더욱 다양한 효과들이 본 명세서 내에 포함되어 있다.The effects according to the present invention are not limited by the contents exemplified above, and more various effects are included in the present specification.
도 1은 본 발명의 일 실시예에 따른 클라우드 인프라 템플릿 관리 시스템의 개략적인 관계도
도 2 및 도 3은 본 발명의 일 실시예에 따른 클라우드 인프라 템플릿 관리 시스템의 템플릿의 설명도
도 4는 본 발명의 일 실시예에 따른 클라우드 인프라 템플릿 관리 시스템의 소프트웨어 버전 검색부의 설명도
도 5는 본 발명의 일 실시예에 따른 클라우드 인프라 템플릿 관리 시스템의 소프트웨어 호환 판단부의 설명도
도 6은 본 발명의 일 실시예에 따른 클라우드 인프라 템플릿 관리 시스템의 권장 템플릿 생성부의 설명도
도 7은 본 발명의 일 실시예에 따른 클라우드 인프라 템플릿 관리 시스템의 구성관리 DB부의 설명도
도 8은 본 발명의 일 실시예에 따른 클라우드 인프라 템플릿 관리 시스템의 개략적인 작동 순서도이다.1 is a schematic relationship diagram of a cloud infrastructure template management system according to an embodiment of the present invention
2 and 3 are explanatory diagrams of a template of a cloud infrastructure template management system according to an embodiment of the present invention
4 is an explanatory diagram of a software version search unit of a cloud infrastructure template management system according to an embodiment of the present invention
5 is an explanatory diagram of a software compatibility determination unit of a cloud infrastructure template management system according to an embodiment of the present invention
6 is an explanatory diagram of a recommended template generation unit of a cloud infrastructure template management system according to an embodiment of the present invention
7 is an explanatory diagram of a configuration management DB unit of a cloud infrastructure template management system according to an embodiment of the present invention
8 is a schematic operational flowchart of a cloud infrastructure template management system according to an embodiment of the present invention.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예를 도면에 예시하고 이에 대해 상세한 설명에 상세하게 설명한다. 본 발명의 효과 및 특징, 그리고 그것들을 달성하는 방법은 도면과 함께 상세하게 후술되어 있는 실시예를 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예에 한정되는 것이 아니라 다양한 형태로 구현될 수 있으며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. Since the present invention can apply various transformations and have various embodiments, specific embodiments are illustrated in the drawings and will be described in detail in the detailed description. Effects and features of the present invention, and a method of achieving them will become apparent with reference to the embodiments described later in detail together with the drawings. However, the present invention is not limited to the embodiments disclosed below, but may be implemented in various forms, and it should be understood to include all changes, equivalents, and substitutes included in the spirit and scope of the present invention.
설명에 앞서 상세한 설명에 기재된 용어에 대해 설명한다. 이하의 실시예에서, 제1, 제2 등의 용어는 한정적인 의미가 아니라 하나의 구성 요소를 다른 구성 요소와 구별하는 목적으로 사용되었다. 따라서, 이하에서 언급되는 제1 구성요소는 본 발명의 기술적 사상 내에서 제2 구성요소일 수도 있음은 물론이다. 또한, 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 또한, '포함하다' 또는 '가지다' 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 의미하는 것이고, 하나 이상의 다른 특징들 또는 구성요소가 부가될 가능성을 미리 배제하는 것은 아니다. Prior to the description, terms described in the detailed description will be described. In the following embodiments, terms such as first and second are not used in a limiting meaning, but for the purpose of distinguishing one component from another component. Therefore, it goes without saying that the first component mentioned below may be the second component within the technical idea of the present invention. In addition, expressions in the singular include plural expressions unless the context clearly indicates otherwise. In addition, terms such as'include' or'have' mean the existence of features, numbers, steps, actions, components, parts, or a combination thereof described in the specification, and one or more other features or components It does not preclude the possibility of being added.
또한, 도면에서는 설명의 편의를 위하여 구성 요소들이 그 크기가 과장 또는 축소될 수 있다. 예컨대, 도면에서 나타난 각 구성의 크기 및 두께는 설명의 편의를 위해 임의로 나타내었으므로, 본 발명이 반드시 도시된 바에 한정되지 않는다.In addition, in the drawings, the size of components may be exaggerated or reduced for convenience of description. For example, the size and thickness of each component shown in the drawings are arbitrarily shown for convenience of description, and the present invention is not necessarily limited to what is shown.
이하, 본 발명에 따른 실시예를 첨부된 도면을 참조하여 상세히 설명한다. 첨부 도면을 참조하여 설명함에 있어, 동일하거나 대응하는 구성요소는 동일한 도면 부호를 부여하고 이에 대해 중복되는 설명은 생략한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the description with reference to the accompanying drawings, the same or corresponding components are denoted by the same reference numerals, and duplicate descriptions thereof are omitted.
본 발명의 일 실시예에 따른 클라우드 인프라 템플릿 관리 시스템은, 클라우드 상에서 서버를 생성하기 위해 필요한 인프라 구성과 개발환경 구성을 템플릿으로 제공하여 손쉽게 서버가 생성되도록 하되, 개발환경 구성의 소프트웨어의 버전정보를 검색하고 호환성 여부를 웹 크롤링하여 권장 템플릿을 자동으로 생성 및 저장하고, 나아가 사용자에 의해 설정/수정된 환경설정 정보를 포함한 서버 구성을 이미지 형태로 백업하여 템플릿으로 저장함으로써 이를 통해 서버의 구성 뿐만 아니라 환경설정 정보까지 동일한 서버를 언제든 재생성할 수 있는 것이다.The cloud infrastructure template management system according to an embodiment of the present invention provides an infrastructure configuration and a development environment configuration required to create a server on the cloud as a template so that a server is easily created, but the version information of the software of the development environment configuration is provided. The recommended template is automatically created and saved by searching and web crawling for compatibility, and further, the server configuration including the environment setting information set/modified by the user is backed up as a template and saved as a template. The same server can be recreated at any time, even configuration information.
도 1은 본 발명의 일 실시예에 따른 클라우드 인프라 템플릿 관리 시스템의 개략적인 관계도이다.1 is a schematic relationship diagram of a cloud infrastructure template management system according to an embodiment of the present invention.
도 1을 참조하면, 본 발명의 일 실시예에 따른 클라우드 인프라 템플릿 관리 시스템(1000)은, 템플릿 저장 데이터베이스(100)와, 서버 구축부(200)와, 소프트웨어 버전 검색부(300)와, 소프트웨어 호환 판단부(400)와, 권장 템플릿 생성부(500) 및 구성관리 DB부(600)를 포함한다.1, a cloud infrastructure
템플릿 저장 데이터베이스(100)는 클라우드 상에서 서버를 생성하기 위해 필요한 클라우드 인프라 구성 및 개발환경 구성을 정형화한 템플릿이 저장되는 구성이다.The
여기서, 클라우드는 퍼블릭 클라우드(Public Cloud)와 프라이빗 클라우드(Private Cloud)를 포함한다. 즉, 본 실시예에서 클라우드는 이용대상을 제한하지 않고 공개적 이용을 위해 열린 네트워크를 통해 렌더링되는 퍼블릭 클라우드와, 하나의 단체를 위해서만 운영되는 프라이빗 클라우드를 포함하며, 나아가 퍼블릭과 프라이빗 클라우드를 동시에 사용하는 하이브리드 클라우드(hybrid Cloud)도 포함할 수 있다. 지원 클라우드의 예시는 Public의 경우 AWS·Azure·Aliyun·Google Computing Engine 등일 수 있으며, Private의 경우 Openstack· VMWear 등이며, 이외에 On-premise·Datacenter BareMetal Infra가 있을 수 있다.Here, the cloud includes a public cloud and a private cloud. That is, in this embodiment, the cloud includes a public cloud that is rendered through an open network for public use without limiting the target of use, and a private cloud that is operated only for one organization, and furthermore, the public and private clouds are used simultaneously. It may also include a hybrid cloud. Examples of supported clouds are AWS·Azure·Aliyun·Google Computing Engine for Public, Openstack·VMWear, etc. for Private, and there may be On-premise·Datacenter BareMetal Infra.
서버는 클라우드 서비스를 제공하는 서버이다. 여기서 클라우드 서비스는 IT 관련 기능들이 서비스와 같은 형태로 제공되는 것을 의미하며, 알려진 바와 같이 IaaS, PaaS, SaaS 등의 서비스를 의미한다. 구체적으로 클라우드 서비스는 제공되는 서비스 범위에 따라, Salesforce.com·Google e-mail 등과 같이 다수의 사용자에게 온디맨드(On-demand)로 제공되는 애플리케이션 서비스인 Software as a Service(SaaS), AWS RDS·Google AppEngine 등과 같이 개발용 플랫폼 또는 어플리케이션 실행에 필요한 소프트웨어 스택인 Platform as a Service(PaaS), AWS EC2 등과 같이 서버 또는 스토리지 등을 사용자에게 서비스 형태로 제공하는 Infrastructure as a Service(IaaS) 등으로 나눌 수 있는데, 본 실시예의 클라우드 서비스는 IaaS, PaaS, SaaS를 모두 포함할 수 있다.The server is a server that provides cloud services. Here, cloud service means that IT-related functions are provided in the same form as a service, and as known, it means services such as IaaS, PaaS, and SaaS. Specifically, the cloud service is Software as a Service (SaaS), AWS RDS, which are application services provided on-demand to a large number of users, such as Salesforce.com, Google e-mail, etc., depending on the range of services provided. It can be divided into Platform as a Service (PaaS), which is a platform for development such as Google AppEngine, or a software stack required for application execution, and Infrastructure as a Service (IaaS), which provides servers or storage as a service to users such as AWS EC2. However, the cloud service of this embodiment may include all of IaaS, PaaS, and SaaS.
즉, 본 실시예에서 템플릿 저장 데이터베이스(100)는, 상술한 클라우드 서비스를 제공하기 위해 클라우드 상에서 생성되는 서버에 필요한 인프라 구성과 개발환경 구성을 정형화한 템플릿이 저장되는 구성이다.That is, in the present embodiment, the
여기서 서버는 웹 서버(Web Server), 웹 애플리케이션 서버(WAS : Web Application Server), 데이터베이스 서버(DB Server)일 수 있다.Here, the server may be a web server, a web application server (WAS), or a database server (DB Server).
템플릿은 인프라 구성과 개발환경 구성을 포함한다. 인프라 구성은 서버의 대수, 서버의 성능(CPU, Memory, Storage) 등을 정의한 것이며, 개발환경 구성은, 서버 생성에 필요한 웹 서버 소프트웨어, 웹 애플리케이션 서버 소프트웨어, DBMS(데이터베이스 관리 시스템), 전자정부 프레임워크 소프트웨어를 정의한 것이다.The template includes infrastructure configuration and development environment configuration. The infrastructure configuration defines the number of servers and server performance (CPU, Memory, Storage), and the development environment configuration includes web server software, web application server software, DBMS (database management system), and e-government frame required for server creation. It defines work software.
템플릿 저장 데이터베이스(100)에 저장되는 템플릿은 다수 개 일 수 있다. 즉, 서로 다양한 서버 정보를 구성하여 각각의 서버 정보에 대응되는 템플릿이 저장될 수 있다. 즉, 서버 정보 개수에 대응하여 템플릿이 다수 개일 수 있으며, 각 템플릿은 모두 템플릿 저장 데이터베이스(100)에 저장된다.There may be a plurality of templates stored in the
도 2 및 도 3은 본 발명의 일 실시예에 따른 클라우드 인프라 템플릿 관리 시스템의 템플릿의 설명도이다.2 and 3 are diagrams illustrating a template of a cloud infrastructure template management system according to an embodiment of the present invention.
서버 구축부(200)는 템플릿 저장 데이터 베이스에 저장된 템플릿을 통해 서버를 구축하기 위한 구성이다. 서버 구축부(200)는 템플릿 저장 데이터 베이스에 저장된 템플릿을 수신하며, 사용자는 다수 개의 템플릿 중 생성하고자 하는 서버 정보를 갖는 템플릿을 선택하여 클릭함으로써 클라우드 상에 서버가 생성된다. 즉, 사용자는 한 번의 클릭으로 서버 구축부(200)의 템플릿을 통해 서버를 생성한다. 사용자가 템플릿을 선택하여 클릭하면, 템플릿에 정의된 인프라 구성과 개발환경 구성이 자동으로 프로비저닝(provisioning)된다. 프로비저닝이란, 사용자의 요구에 따라 자원을 할당, 배치 및 배포하는 절차를 의미한다. 즉, 프로비저닝(provisioning)은 사용자의 요구에 맞게 시스템 자원을 할당, 배치, 배포해 두었다가 필요 시 시스템을 즉시 사용할 수 있는 상태로 미리 준비해 두는 것을 말하며, 본 실시예에서는 Ansible을 통해 자동으로 서버가 생성된다.The
일 예시로, 도 2에 도시된 바와 같이, 다수 개의 템플릿은 각각 ID가 할당되며, 각 템플릿마다 코드가 저장될 수 있다. 이 코드에는 인프라 구성 및 개발환경 구성이 정의된다. As an example, as shown in FIG. 2, IDs are assigned to each of a plurality of templates, and codes may be stored for each template. In this code, the infrastructure configuration and development environment configuration are defined.
도 3에 도시된 예시와 같이, ID가 T001인 템플릿의 코드가 "RHE7-AP2.4-TO8-MY8-2-M-50"인 경우 해당 코드에서 개발환경 구성은 OS는 RedHat Enterprise Linux 7 이며, Web 소프트웨어는 Apache 2.7이며, WAS 소프트웨어는 Tomcat 8이며, DBMS 소프트웨어는 MySQL 8이고, 인프라 구성은 서버 대수 2대, 서버 성능 중형, 스토리지 50GB라고 정의하면, 사용자가 해당 템플릿을 클릭하면 위 인프라 구성 및 개발환경 구성이 자동으로 프로비저닝되어 해당 구성을 갖는 서버가 클라우드 상에 설치된다.As shown in the example shown in Fig. 3, when the code of the template with the ID T001 is "RHE7-AP2.4-TO8-MY8-2-M-50", the development environment configuration in the code is
이 때, 상술한 인프라 구성과 개발환경 구성은 템플릿에 정의되어 있으므로, 템플릿을 재사용함으로써 필요 시 동일한 구성의 서버를 재생성할 수 있다.At this time, since the above-described infrastructure configuration and development environment configuration are defined in the template, a server having the same configuration can be recreated when necessary by reusing the template.
도 4는 본 발명의 일 실시예에 따른 클라우드 인프라 템플릿 관리 시스템의 소프트웨어 버전 검색부의 설명도이다.4 is an explanatory diagram of a software version search unit of a cloud infrastructure template management system according to an embodiment of the present invention.
소프트웨어 버전 검색부(300)는 개발환경 구성에서 사용된 다수 개의 소프트웨어의 새로운 버전 유무를 검색하는 구성이다.The software
템플릿의 개발환경 구성으로 정의된 웹 서버 소프트웨어, 웹 애플리케이션 서버 소프트웨어, DBMS(데이터베이스 관리 시스템), 전자정부 프레임워크 소프트웨어는 업데이트, 패치 등을 통해 새로운 버전이 있을 수 있다. 소프트웨어 버전 검색부(300)는 상술한 소프트웨어들의 새로운 버전 유무 정보를 수집하며, 이에 더하여 각 소프트웨어들의 서비스 기간, 서비스 종료 정도 등의 정보도 수집한다.Web server software, web application server software, DBMS (database management system), and e-government framework software defined by the development environment configuration of the template may have new versions through updates or patches. The software
소프트웨어 버전 검색부(300)는 각 소프트웨어를 제공하는 공식 홈페이지 등을 통해서 소프트웨어의 새로운 버전 유무를 검색할 수 있다. 소프트웨어의 새로운 버전이 검색되면 소프트웨어 테이블 상에 새로운 버전의 소프트웨어를 추가한다. 그리고, 상술한 프로비저닝 도구인 Ansible을 통해 서버를 자동으로 설치할 수 있도록 playbook을 생성한다.The software
도 5는 본 발명의 일 실시예에 따른 클라우드 인프라 템플릿 관리 시스템의 소프트웨어 호환 판단부의 설명도이다.5 is an explanatory diagram of a software compatibility determination unit of a cloud infrastructure template management system according to an embodiment of the present invention.
소프트웨어 호환 판단부(400)는 개발환경 구성으로 정의된 다수 개의 소프트웨어 간의 상호 호환성을 판단하는 구성이다. 일 소프트웨어가 업그레이드 된 경우 즉, 소프트웨어 버전 검색부(300)가 어느 한 소프트웨어의 새로운 버전을 검색한 경우, 소프트웨어 호환 판단부(400)는 해당 검색정보를 수신하고, 해당 소프트웨어가 기존 템플릿의 개발환경 구성의 소프트웨어들과 상호 호환이 되는지 여부를 판단한다.The software
이 때, 소프트웨어 호환 판단부(400)는 개발환경 구성을 템플릿으로부터 추출하며, 소프트웨어 테이블로부터 새로운 버전의 소프트웨어를 확인한다. 그리고, 웹 크롤링을 통해 새로운 버전의 소프트웨어가 기존 템플릿의 개발환경 구성의 소프트웨어와 상호 호환되는지 여부의 정보를 수집한다. 소프트웨어 호환 판단부(400)는 개발자 사이트 또는 소프트웨어의 공식 홈페이지를 통해 소프트웨어 호환 정보를 수집할 수 있다. 개발자 사이트는 클라우드 서버 개발자들의 사이트일 수 있으며, 예시로 'stackoverflow' 웹사이트 등이 있다. 즉, 소프트웨어 호환 판단부(400)는 템플릿으로부터 추출한 개발환경 구성 및 새로운 버전의 소프트웨어 정보로부터 웹 크롤링을 통해 상호 호환성 정보를 수집한다.At this time, the software
만일 소프트웨어의 새로운 버전이 개발환경 구성의 다른 소프트웨어들과 상호 호환되지 않는 경우 소프트웨어 호환 판단부(400)는 사용자에게 해당 정보를 알림서비스로 제공할 수 있다.If the new version of the software is not compatible with other software in the development environment configuration, the software
도 6은 본 발명의 일 실시예에 따른 클라우드 인프라 템플릿 관리 시스템의 권장 템플릿 생성부의 설명도이다.6 is an explanatory diagram of a recommended template generation unit of a cloud infrastructure template management system according to an embodiment of the present invention.
권장 템플릿 생성부(500)는 소프트웨어 버전 검색부(300)로부터 개발환경 구성에 정의된 소프트웨어 중 새로운 버전의 소프트웨어가 있는지 여부에 관한 정보를 확인한다. 또한, 권장 템플릿 생성부(500)는 소프트웨어 호환 판단부(400)로부터, 새로운 버전의 소프트웨어가 현 개발환경 구성의 소프트웨어와 대체되었을 경우 상호 호환성 여부를 확인한다.The recommended
개발환경 구성의 소프트웨어가 새로운 버전의 소프트웨어로 대체되었을 때 호환성에 문제가 없는 경우 권장 템플릿 생성부(500)는 개발환경 구성을 새로운 버전의 소프트웨어로 대체하여 재정의하며, 재정의된 개발환경 구성과 인프라 구성을 권장 템플릿으로 생성한다.When there is no compatibility problem when the software in the development environment configuration is replaced with a new version of the software, the recommended
생성된 권장 템플릿은 템플릿 테이블 상에 추가 ID를 부여받아 저장된다.The created recommended template is stored by being given an additional ID on the template table.
예를 들어 ID가 T001인 템플릿의 코드가 "RHE7-AP2.4-TO8-MY8-2-M-50"인 경우, 개발환경 구성은 OS는 RedHat Enterprise Linux 7 이며, Web 소프트웨어는 Apache 2.7이며, WAS 소프트웨어는 Tomcat 8이며, DBMS 소프트웨어는 MySQL 8 인데, 소프트웨어 버전 검색부(300)가 검색 중 Web 소프트웨어의 새로운 버전인 Apache 3.0 을 검색한 경우, 소프트웨어 호환 판단부(400)는 Web 소프트웨어 Apache 3.0 이 WAS 소프트웨어 Tomcat 8, DBMS 소프트웨어 MySQL 8 등과 상호 호환되는지를 웹 크롤링을 통해 판단한다. 소프트웨어의 호환성에 문제가 없음을 권장 템플릿 생성부(500)가 확인하면, 권장 템플릿 생성부(500)는 개발환경 구성의 OS는 RedHat Enterprise Linux 7 이며, Web 소프트웨어는 Apache 3.0이며, WAS 소프트웨어는 Tomcat 8이며, DBMS 소프트웨어는 MySQL 8 인 권장 템플릿을 생성한다. 권장 템플릿은 Apache 3.0의 playbook, Tomcat 8의 playbook, MySQL 8의 playbook을 포함한다. 그리고, 권장 템플릿은 새로운 ID인 T002를 부여받을 수 있으며, 코드는 "RHE7-AP3.0-TO8-MY8-2-M-50"일 수 있다.For example, if the code of the template with ID T001 is "RHE7-AP2.4-TO8-MY8-2-M-50", the development environment configuration is
도 7은 본 발명의 일 실시예에 따른 클라우드 인프라 템플릿 관리 시스템의 구성관리 DB부의 설명도이다.7 is an explanatory diagram of a configuration management DB unit of a cloud infrastructure template management system according to an embodiment of the present invention.
구성관리 DB부(600)는 서버 구축부(200)에서 서버 생성시 자동 설치된 개발환경 구성의 소프트웨어들의 환경설정 정보가 수정된 경우 수정된 환경설정 정보를 저장하여 템플릿으로 저장하는 구성이다. 상술한 바와 같이, 클라우드 상에서 서버를 생성할 때 Ansible을 통해 자동으로 소프트웨어들이 설치되는데, 이 때 소프트웨어들이 설치만 되어 있는 상태이기 때문에 개발자(사용자)가 직접 원하는 환경을 구성하여야 될 수 있다. 추후 소프트웨어가 재설치될 때 동일한 환경설정 작업을 다시 수행하여야 하며, 또는 소프트웨어를 재설치하지 않더라도 다른 개발자 등에 의해 환경설정 정보가 수정될 수 있다. 구성관리 DB부(600)는 환경설정 정보가 설정/수정된 경우, 설정/수정된 환경설정 정보를 저장하여, 이와 동일한 환경설정 정보를 갖는 서버가 재생성될 수 있도록 한다.The configuration
구체적으로, 개발자가 소프트웨어의 환경설정 정보를 설정/수정하고 이 정보의 저장을 요청하면, 인프라 구성 및 설정/수정된 환경설정 정보를 포함한 개발환경 구성이 이미지 형태로 백업된다.Specifically, when the developer sets/modifies the environment setting information of the software and requests storage of this information, the development environment configuration including the infrastructure configuration and the set/modified environment setting information is backed up in the form of an image.
이 이미지는 템플릿으로 저장되어 템플릿 저장 데이터베이스(100)에 저장된다. 즉, 템플릿에는 인프라 구성과, 개발환경 구성이 포함되며, 개발환경 구성에는 소프트웨어의 환경설정 정보도 저장된다. 이 템플릿 또한 템플릿 테이블 상에 추가 ID를 부여받아 저장될 수 있다.This image is stored as a template and stored in the
따라서, 서버 구축부(200)에서 위 저장된 템플릿을 통해 서버를 생성하면, 백업 전의 서버의 동일한 인프라 구성 및 소프트웨어의 환경설정 정보도 동일한 개발환경 구성을 갖는 서버가 재생성된다. 즉, 소프트웨어 설치만 자동으로 되는 것이 아니라, 소프트웨어의 환경설정도 자동으로 구현된다.Therefore, when the
다음으로 본 발명의 일 실시예에 따른 클라우드 인프라 템플릿 관리 시스템의 프로세스에 대해 설명한다.Next, a process of the cloud infrastructure template management system according to an embodiment of the present invention will be described.
도 8은 본 발명의 일 실시예에 따른 클라우드 인프라 템플릿 관리 시스템의 개략적인 작동 순서도이다.8 is a schematic operational flowchart of a cloud infrastructure template management system according to an embodiment of the present invention.
본 발명의 일 실시예에 따른 클라우드 인프라 템플릿 관리 시스템은, 템플릿 생성 및 저장단계(S100), 서버 구축단계(S200), 소프트웨어 버전 검색단계(S300), 소프트웨어 호환 판단단계(S400) 및 권장 템플릿 생성단계(S500)를 포함한다.The cloud infrastructure template management system according to an embodiment of the present invention includes a template generation and storage step (S100), a server construction step (S200), a software version search step (S300), a software compatibility determination step (S400), and a recommended template generation. It includes a step (S500).
템플릿 생성 및 저장단계(S100)는 클라우드 상에서 서버를 생성하기 위해 필요한 클라우드 인프라 구성 및 개발환경 구성을 정형화한 템플릿을 생성하고, 이를 템플릿 저장 데이터베이스(100)에 저장하는 단계이다.The template creation and storage step (S100) is a step of creating a template in which a cloud infrastructure configuration and a development environment configuration required to create a server in the cloud are standardized, and storing it in the
클라우드는 퍼블릭 클라우드와 프라이빗 클라우드를 포함할 수 있으며, 서버는 웹 서버(Web Server), 웹 애플리케이션 서버(WAS : Web Application Server), 데이터베이스 서버(DB Server)일 수 있다.The cloud may include a public cloud and a private cloud, and the server may be a web server, a web application server (WAS), and a database server.
템플릿은 인프라 구성과 개발환경 구성을 포함한다. 인프라 구성은 서버의 대수, 서버의 성능(CPU, Memory, Storage) 등을 정의한 것이며, 개발환경 구성은, 웹 서버 소프트웨어, 웹 애플리케이션 서버 소프트웨어, 데이터베이스 관리 시스템, 전자정부 프레임워크 소프트웨어를 정의한 것이다. 이 때 템플릿은 다양한 서버 정보에 따라 다수 개로 마련될 수 있다.The template includes infrastructure configuration and development environment configuration. The infrastructure configuration defines the number of servers and server performance (CPU, Memory, Storage), and the development environment configuration defines web server software, web application server software, database management system, and e-government framework software. In this case, a plurality of templates may be provided according to various server information.
서버 구축단계(S200)는 템플릿 생성 및 저장단계(S100)에서 저장된 템플릿을 통해 서버를 구축하는 단계이다. 서버 구축부(200)는 템플릿 저장 데이터 베이스에 저장된 템플릿을 수신하며, 사용자가 다수 개의 템플릿 중 생성하고자 하는 서버 정보를 갖는 템플릿을 선택하여 클릭하면, 서버 구축부(200)는 사용자의 입력을 수신하여 템플릿의 인프라 구성과 개발환경 구성이 자동으로 프로비저닝 됨으로써 서버가 생성된다.The server building step (S200) is a step of building a server using the template stored in the template creation and storage step (S100). The
소프트웨어 버전 검색단계(S300)는 소프트웨어 버전 검색부(300)가 개발환경 구성에서 사용된 다수 개의 소프트웨어의 새로운 버전의 유무를 검색하는 단계이다.The software version search step S300 is a step in which the software
템플릿의 개발환경 구성으로 정의된 웹 서버 소프트웨어, 웹 애플리케이션 서버 소프트웨어, 데이터베이스 관리 시스템, 전자정부 프레임워크 소프트웨어는 업데이트, 패치 등을 통해 새로운 버전이 있을 수 있는데, 본 단계에서 소프트웨어 버전 검색부(300)는 상술한 소프트웨어들의 새로운 버전 유무 정보를 수집하며, 이에 더하여 각 소프트웨어들의 서비스 기간, 서비스 종료 정도 등의 정보도 수집한다. 이 때 상술한 정보는 각 소프트웨어를 제공하는 공식 홈페이지 등을 통해서 검색될 수 있다. 소프트웨어의 새로운 버전이 검색되면 소프트웨어 테이블 상에 새로운 버전의 소프트웨어를 추가한다. 그리고, 상술한 프로비저닝 도구인 Ansible을 통해 서버를 자동으로 설치할 수 있도록 playbook을 생성한다.Web server software, web application server software, database management system, and e-government framework software defined by the development environment configuration of the template may have new versions through updates, patches, etc. In this step, the software
소프트웨어 호환 판단단계(S400)는 소프트웨어 버전 검색단계(S300)에서 새로운 버전의 소프트웨어가 검색된 경우, 새로운 버전의 소프트웨어가 기존 템플릿의 개발환경 구성의 소프트웨어와 상호 호환되는지 여부를 판단하는 단계이다. 소프트웨어 호환 판단부(400)는 새로운 버전의 소프트웨어를 포함한 개발환경 구성을 템플릿으로부터 추출하고, 웹 크롤링을 통해 새로운 버전의 소프트웨어가 기존 템플릿의 개발환경 구성의 소프트웨어와 상호 호환되는지 여부의 정보를 수집한다. 이는 개발자 사이트 또는 소프트웨어의 공식 홈페이지를 통해 소프트웨어 호환 정보를 수집할 수 있다.In the software compatibility determination step (S400), when a new version of software is found in the software version search step (S300), it is a step of determining whether the new version of the software is mutually compatible with the software of the development environment configuration of the existing template. The software
만일 소프트웨어의 새로운 버전이 개발환경 구성의 다른 소프트웨어들과 상호 호환되지 않는 경우 소프트웨어 호환 판단부(400)는 사용자에게 해당 정보를 알림서비스로 제공할 수 있다.If the new version of the software is not compatible with other software in the development environment configuration, the software
권장 템플릿 생성단계(S500)는 소프트웨어의 새로운 버전 및 호환 여부에 따라 권장 템플릿 생성부(500)가 권장 템플릿을 형성하는 단계이다. 권장 템플릿 생성부(500)가 소프트웨어 버전 검색부(300) 및 소프트웨어 호환 판단부(400)로부터 각각 새로운 버전의 소프트웨어 검색 여부 및 다른 소프트웨어들과의 호환성 여부를 확인하고, 호환성에 문제가 없는 경우 권장 템플릿을 생성한다. 생성된 권장 템플릿은 템플릿 테이블 상에 추가 ID를 부여받아 저장된다.The recommended template generation step (S500) is a step in which the recommended
한편, 본 실시예에 따른 클라우드 인프라 템플릿 관리 시스템(1000)의 작동은 수정 템플릿 생성 및 저장단계(S600)를 선택적으로 더 포함할 수 있다.On the other hand, the operation of the cloud infrastructure
수정 템플릿 생성 및 저장단계(S600)는 서버 구축단계(S200)에서 서버 생성시 자동 설치된 개발환경 구성의 소프트웨어들의 환경설정 정보가 수정된 경우 수정된 환경설정 정보를 저장하여 수정 템플릿을 생성 및 저장하는 단계이다. In the step of creating and storing the modified template (S600), when the environment setting information of the software of the development environment configuration automatically installed when the server is created in the server building step (S200) is modified, the modified environment setting information is saved to create and store the modified template. Step.
서버 구축단계(S200)에서 클라우드 상에 서버를 생성할 때 자동으로 소프트웨어들이 설치되는데, 소프트웨어들이 설치만 되어 있는 상태이기 때문에 개발자(사용자)가 직접 원하는 환경을 구성하여야 될 수 있다. 추후 소프트웨어가 재설치될 때 동일한 환경설정 작업을 다시 수행하여야 하며, 또는 소프트웨어를 재설치하지 않더라도 다른 개발자 등에 의해 환경설정 정보가 수정될 수 있는데, 이 수정된 환경설정 정보를 저장하여, 이와 동일한 환경설정 정보를 갖는 서버가 재생성될 수 있도록 한다.When a server is created on the cloud in the server building step (S200), software is automatically installed. Since only the software is installed, the developer (user) may have to configure a desired environment. When the software is later reinstalled, the same environment setting must be performed again, or even if the software is not reinstalled, the environment setting information may be modified by another developer, and this modified environment setting information is saved and the same environment setting information Allows the server to be recreated.
수정 템플릿 생성 및 저장단계(S600)는 소프트웨어의 환경설정 정보를 수정한 개발자의 요청을 수신하면, 인프라 구성 및 수정된 환경설정 정보를 포함한 개발환경 구성이 이미지 형태로 백업되고, 이 이미지가 템플릿으로 저장된다. 생성된 템플릿은 템플릿 저장 데이터베이스(100)에 저장된다. In the modification template creation and storage step (S600), upon receiving a request from the developer who has modified the environment setting information of the software, the development environment configuration including the infrastructure configuration and the modified environment setting information is backed up in the form of an image, and this image is used as a template. Is saved. The generated template is stored in the
사용자는 템플릿 저장 데이터베이스(100)에서 수정 템플릿을 선택할 수 있으며, 위 저장된 템플릿을 통해 서버를 생성하면, 백업 전의 서버의 동일한 인프라 구성 및 소프트웨어의 환경설정 정보도 동일한 개발환경 구성을 갖는 서버가 재생성될 수 있다.The user can select a modified template from the
따라서, 본 발명에 의하면, 클라우드 상에서 서버를 생성하기 위해 필요한 인프라 구성과 개발환경 구성을 템플릿으로 제공하여 손쉽게 서버가 생성되도록 하되, 개발환경 구성의 소프트웨어의 버전정보를 검색하고 호환성 여부를 웹 크롤링하여 권장 템플릿을 자동으로 생성 및 저장하고, 나아가 사용자에 의해 설정/수정된 환경설정 정보를 포함한 서버 구성을 이미지 형태로 백업하여 템플릿으로 저장함으로써 이를 통해 서버의 구성 뿐만 아니라 환경설정 정보까지 동일한 서버를 언제든 재생성할 수 있는 클라우드 인프라 템플릿 관리 시스템이 제공된다.Therefore, according to the present invention, the infrastructure configuration and development environment configuration required to create the server on the cloud are provided as a template so that the server is easily created, but by searching the version information of the software in the development environment configuration and web crawling for compatibility The recommended template is automatically created and saved, and the server configuration including the configuration information set/modified by the user is backed up in the form of an image and saved as a template. A cloud infrastructure template management system that can be regenerated is provided.
본 발명에서 모든 예들 또는 예시적인 용어(예를 들어, 등등)의 사용은 단순히 본 발명을 상세히 설명하기 위한 것으로서 특허청구범위에 의해 한정되지 않는 이상 상기 예들 또는 예시적인 용어로 인해 본 발명의 범위가 한정되는 것은 아니다. 또한 해당 기술 분야의 통상의 기술자는 다양한 수정, 조합 및 변경이 부가된 특허청구범위 또는 그 균등물의 범주 내에서 설계 조건 및 팩터(factor)에 따라 구성될 수 있음을 알 수 있다.The use of all examples or illustrative terms (for example, etc.) in the present invention is merely for describing the present invention in detail, and the scope of the present invention is limited by the above examples or illustrative terms unless limited by the claims. It is not limited. In addition, a person skilled in the art may recognize that various modifications, combinations, and changes may be configured according to design conditions and factors within the scope of the appended claims or their equivalents.
따라서, 본 발명의 사상은 상기 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위 뿐만 아니라, 이 특허청구범위와 균등한 또는 이로부터 등가적으로 변경된 모든 범위는 본 발명의 사상의 범주에 속한다고 할 것이다.Therefore, the spirit of the present invention is limited to the above-described embodiments and should not be defined, and not only the claims to be described later, but also all ranges equivalent to or equivalently changed from the claims are the spirit of the present invention. It will be said to belong to the category.
1000 : 클라우드 인프라 템플릿 관리 시스템
100 : 템플릿 저장 데이터베이스 200 : 서버 구축부
300 : 소프트웨어 버전 검색부 400 : 소프트웨어 호환 판단부
500 : 권장 템플릿 생성부 600 : 구성관리 DB부
S1000 : 클라우드 인프라 템플릿 관리 방법
S100 : 템플릿 생성 및 저장단계 S200 : 서버 구축단계
S300 : 소프트웨어 버전 검색단계 S400 : 소프트웨어 호환 판단단계
S500 : 권장 템플릿 생성단계 S600 : 수정 템플릿 생성 및 저장단계1000: Cloud infrastructure template management system
100: template storage database 200: server building unit
300: software version search unit 400: software compatibility determination unit
500: Recommended template generation unit 600: Configuration management DB unit
S1000: Cloud infrastructure template management method
S100: Template creation and storage step S200: Server construction step
S300: software version search step S400: software compatibility determination step
S500: Recommended template creation step S600: Modified template creation and storage step
Claims (6)
상기 템플릿 저장 데이터베이스로부터 상기 템플릿을 수신하며, 사용자의 한 번의 입력을 수신하여 상기 클라우드 상에서 상기 서버를 생성하는 서버 구축부;
상기 개발환경 구성에서 사용된 다수 개의 소프트웨어의 새로운 버전 유무를 검색하는 소프트웨어 버전 검색부;
상기 소프트웨어 버전 검색부가 상기 소프트웨어의 새로운 버전을 검색하면, 상기 템플릿으로부터 상기 개발환경 구성을 추출하고, 웹 크롤링을 통해 상기 소프트웨어의 새로운 버전과 상기 개발환경 구성과의 호환성 정보를 수집하는 소프트웨어 호환 판단부; 및
상기 다수 개의 소프트웨어가 서로 호환되지 않는 경우, 권장 템플릿을 생성하는 권장 템플릿 생성부;
를 포함하는 클라우드 인프라 템플릿 관리 시스템.
A template storage database storing a template that standardizes an infrastructure configuration and a development environment configuration for creating a server on the cloud;
A server building unit that receives the template from the template storage database, receives a single input from a user, and generates the server on the cloud;
A software version search unit that searches for new versions of a plurality of software used in the development environment configuration;
When the software version search unit searches for a new version of the software, a software compatibility determination unit extracts the development environment configuration from the template and collects compatibility information between the new version of the software and the development environment configuration through web crawling. ; And
A recommended template generation unit that generates a recommended template when the plurality of software are not compatible with each other;
Cloud infrastructure template management system comprising a.
상기 서버는 웹 서버(Web Server), 웹 애플리케이션 서버(WAS : Web Application Server), 데이터베이스 서버(DB Server)이며,
상기 인프라 구성은, 상기 서버의 대수 및 성능을 포함하며,
상기 개발환경 구성은, 상기 웹 서버, 상기 웹 애플리케이션 서버, 상기 데이터베이스 서버 및 전자정부 프레임워크 소프트웨어인 클라우드 인프라 템플릿 관리 시스템.
The method of claim 1,
The server is a web server (Web Server), a web application server (WAS: Web Application Server), a database server (DB Server),
The infrastructure configuration includes the number and performance of the servers,
The development environment configuration, the web server, the web application server, the database server and e-government framework software cloud infrastructure template management system.
상기 소프트웨어 버전 검색부는, 상기 웹 서버, 상기 웹 애플리케이션 서버, 상기 데이터베이스 서버 및 전자정부 프레임워크 소프트웨어의 배포 홈페이지를 통해 새로운 버전의 유무, 서비스 기간, 서비스 종료 정보를 검색하는 클라우드 인프라 템플릿 관리 시스템.
The method of claim 2,
The software version search unit, the web server, the web application server, the database server, and the cloud infrastructure template management system for searching the presence or absence of a new version, service period, and service termination information through the distribution homepage of the e-government framework software.
상기 권장 템플릿 생성부는, 상기 소프트웨어의 새로운 버전이 상기 개발환경 구성과 상호 호환되는 경우 새로운 버전의 소프트웨어를 포함한 상기 개발환경 구성을 재정의하고 권장 템플릿을 생성하며,
상기 소프트웨어 호환 판단부는, 상기 소프트웨어의 새로운 버전이 상기 개발환경 구성과 상호 호환되지 않는 경우 사용자에게 알림서비스를 제공하는 클라우드 인프라 템플릿 관리 시스템.
The method of claim 3,
The recommended template generation unit redefines the configuration of the development environment including the new version of the software and generates a recommended template when the new version of the software is mutually compatible with the configuration of the development environment,
The software compatibility determination unit provides a notification service to a user when the new version of the software is not compatible with the development environment configuration.
상기 서버 구축부에서 상기 서버 생성시 자동 설치된 상기 개발환경 구성이 사용자에 의해 수동으로 수정된 경우, 수정된 환경설정 정보가 포함된 상기 개발환경 구성 및 상기 인프라 구성이 이미지 형태로 백업되며, 상기 이미지는 템플릿으로 저장되는 구성관리 DB부;를 더 포함하는 클라우드 인프라 템플릿 관리 시스템.
The method of claim 1,
When the development environment configuration automatically installed when the server is created by the server construction unit is manually modified by the user, the development environment configuration and the infrastructure configuration including the modified environment setting information are backed up in an image form, and the image The configuration management DB unit stored as a template; Cloud infrastructure template management system further comprising.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200067548A KR102214139B1 (en) | 2020-06-04 | 2020-06-04 | Management system for cloud infrastructure template |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200067548A KR102214139B1 (en) | 2020-06-04 | 2020-06-04 | Management system for cloud infrastructure template |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102214139B1 true KR102214139B1 (en) | 2021-02-09 |
Family
ID=74559467
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200067548A Expired - Fee Related KR102214139B1 (en) | 2020-06-04 | 2020-06-04 | Management system for cloud infrastructure template |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102214139B1 (en) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113569551A (en) * | 2021-07-16 | 2021-10-29 | 青岛海尔科技有限公司 | APP page configuration method, device, system and storage medium |
KR102337810B1 (en) * | 2021-08-03 | 2021-12-09 | (주)위버시스템즈 | Management system for template of cloud infra provider and service |
KR20220118875A (en) * | 2021-02-19 | 2022-08-26 | 박헌영 | Server performing cloud architecture proposal for application development and service/solution implementation method thereof |
KR102438067B1 (en) * | 2021-10-27 | 2022-08-31 | 주식회사 클라우드로 | A system that supports cloud infrastructure construction automation and visualization service methods |
KR20230056105A (en) * | 2021-10-19 | 2023-04-27 | 아콘소프트 주식회사 | Edge cloud based computing system having management automation |
KR102553084B1 (en) * | 2021-12-30 | 2023-07-07 | 아콘소프트 주식회사 | Edge cloud building system and method for high-speed installation of components |
KR102643776B1 (en) * | 2023-07-03 | 2024-03-07 | (주)유비디시전 | System for providing software as a service standard linkage platform service for life-cycle electronic document total management |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017084322A (en) * | 2015-10-26 | 2017-05-18 | 株式会社リコー | Information system, program, and recording medium |
KR20170066579A (en) * | 2015-03-24 | 2017-06-14 | 후아웨이 테크놀러지 컴퍼니 리미티드 | Method for updating terminal system, terminal and system |
KR20190001890A (en) * | 2017-06-28 | 2019-01-07 | 주식회사 케이티 | Apparatus for providing design and deployment of distributed cloud system for establishing 5G infra and method thereof |
-
2020
- 2020-06-04 KR KR1020200067548A patent/KR102214139B1/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20170066579A (en) * | 2015-03-24 | 2017-06-14 | 후아웨이 테크놀러지 컴퍼니 리미티드 | Method for updating terminal system, terminal and system |
JP2017084322A (en) * | 2015-10-26 | 2017-05-18 | 株式会社リコー | Information system, program, and recording medium |
KR20190001890A (en) * | 2017-06-28 | 2019-01-07 | 주식회사 케이티 | Apparatus for providing design and deployment of distributed cloud system for establishing 5G infra and method thereof |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20220118875A (en) * | 2021-02-19 | 2022-08-26 | 박헌영 | Server performing cloud architecture proposal for application development and service/solution implementation method thereof |
KR102498301B1 (en) | 2021-02-19 | 2023-02-10 | 박헌영 | Server performing cloud architecture proposal for application development and service/solution implementation method thereof |
CN113569551A (en) * | 2021-07-16 | 2021-10-29 | 青岛海尔科技有限公司 | APP page configuration method, device, system and storage medium |
CN113569551B (en) * | 2021-07-16 | 2023-12-19 | 青岛海尔科技有限公司 | APP page configuration methods, equipment, systems and storage media |
KR102337810B1 (en) * | 2021-08-03 | 2021-12-09 | (주)위버시스템즈 | Management system for template of cloud infra provider and service |
KR20230056105A (en) * | 2021-10-19 | 2023-04-27 | 아콘소프트 주식회사 | Edge cloud based computing system having management automation |
KR102553079B1 (en) * | 2021-10-19 | 2023-07-10 | 아콘소프트 주식회사 | Edge cloud based computing system having management automation |
KR102438067B1 (en) * | 2021-10-27 | 2022-08-31 | 주식회사 클라우드로 | A system that supports cloud infrastructure construction automation and visualization service methods |
KR102553084B1 (en) * | 2021-12-30 | 2023-07-07 | 아콘소프트 주식회사 | Edge cloud building system and method for high-speed installation of components |
KR102643776B1 (en) * | 2023-07-03 | 2024-03-07 | (주)유비디시전 | System for providing software as a service standard linkage platform service for life-cycle electronic document total management |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102214139B1 (en) | Management system for cloud infrastructure template | |
US10303452B2 (en) | Application management in enterprise environments using cloud-based application recipes | |
RU2429529C2 (en) | Dynamic configuration, allocation and deployment of computer systems | |
US9304752B2 (en) | Software deployment in a distributed virtual machine environment | |
CN112424750A (en) | Multi-cluster supply and management method on cloud platform | |
US8990809B1 (en) | Creating a virtual appliance using existing installation manifest | |
JP7143417B2 (en) | computing device | |
US10715594B2 (en) | Systems and methods for update propagation between nodes in a distributed system | |
US20150186129A1 (en) | Method and system for deploying a program module | |
US20100325624A1 (en) | Method and System for Application Portability | |
US9417870B2 (en) | Managing user access to alternative versions of a particular function of a software product from within a current version of the software product | |
US10540162B2 (en) | Generating service images having scripts for the deployment of services | |
US11586430B2 (en) | Distribution and execution of instructions in a distributed computing environment | |
JP2018530070A (en) | System and method for building, optimizing and implementing a platform on a cloud-based computing environment | |
US11403147B2 (en) | Methods and apparatus to improve cloud management | |
CN113474751A (en) | Managing software programs | |
US11829777B2 (en) | Microservice deployment | |
US20230131898A1 (en) | Techniques for building and validating database software in a shared management environment | |
US9904574B2 (en) | Parallel computing without requiring antecedent code deployment | |
CN117112122A (en) | Cluster deployment method and device | |
Caballer et al. | A platform to deploy customized scientific virtual infrastructures on the cloud | |
US10768961B2 (en) | Virtual machine seed image replication through parallel deployment | |
CN113064698A (en) | Method for providing product environment and corresponding device, system, equipment and medium | |
JP2014164545A (en) | Deployment method and program | |
Shaik | Best Ways to Install PostgreSQL |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20200604 |
|
PA0201 | Request for examination | ||
PA0302 | Request for accelerated examination |
Patent event date: 20200605 Patent event code: PA03022R01D Comment text: Request for Accelerated Examination Patent event date: 20200604 Patent event code: PA03021R01I Comment text: Patent Application |
|
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20200725 Patent event code: PE09021S01D |
|
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20201130 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20210203 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20210203 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration | ||
PC1903 | Unpaid annual fee |
Termination category: Default of registration fee Termination date: 20241114 |