KR102337810B1 - Management system for template of cloud infra provider and service - Google Patents

Management system for template of cloud infra provider and service Download PDF

Info

Publication number
KR102337810B1
KR102337810B1 KR1020210101687A KR20210101687A KR102337810B1 KR 102337810 B1 KR102337810 B1 KR 102337810B1 KR 1020210101687 A KR1020210101687 A KR 1020210101687A KR 20210101687 A KR20210101687 A KR 20210101687A KR 102337810 B1 KR102337810 B1 KR 102337810B1
Authority
KR
South Korea
Prior art keywords
cloud infrastructure
provider
cloud
service
template
Prior art date
Application number
KR1020210101687A
Other languages
Korean (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 (주)위버시스템즈
Priority to KR1020210101687A priority Critical patent/KR102337810B1/en
Application granted granted Critical
Publication of KR102337810B1 publication Critical patent/KR102337810B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • G06F9/45516Runtime code conversion or optimisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45591Monitoring or debugging support

Abstract

According to various embodiments of the present disclosure, a system includes: a provider storage part storing information of a cloud infrastructure provider providing a cloud infrastructure service; a service storage part storing information of the cloud infrastructure service provided by the cloud infrastructure provider from a provider database; an evaluation information generation part analyzing cloud infrastructure providers and services selected in the past to generate evaluation information of the cloud infrastructure provider and the cloud infrastructure service; a demand data storage part receiving and storing input data including at least one between user information and necessary service information; a provider search part comparing the input data stored in the demand data storage part, the cloud infrastructure provider stored in the provider storage part and the cloud infrastructure service stored in the service storage part to arrange the same using the evaluation information of the evaluation information generation part; a template generation part generating the cloud infrastructure provider and the cloud infrastructure service, which are searched for by the provider search part, into a template form for the configuration of a cloud server; a code compatibility check part checking the compatibility of codes constituting the template generated by the template generation part; and a cloud server generation part, when the compatibility of the codes is checked by the code compatibility check part, generating the cloud server using the generated template. Besides, various embodiments can be possible. Therefore, users can easily check a cloud infrastructure service that suits an environment of the users or a cloud infrastructure service the users want.

Description

클라우드 인프라 프로바이더 및 서비스 템플릿 관리 시스템{MANAGEMENT SYSTEM FOR TEMPLATE OF CLOUD INFRA PROVIDER AND SERVICE}CLOUD INFRASTRUCTURE PROVIDER AND SERVICE TEMPLATE MANAGEMENT SYSTEM

본 문서에 개시된 다양한 실시예들은, 클라우드 인프라를 제공하는 프로바이더와 그 프로바이더에서 제공되는 다양한 서비스를 템플릿 형태로 제공하여 관리하는 시스템에 관한 것이다. Various embodiments disclosed in this document relate to a provider that provides a cloud infrastructure and a system for providing and managing various services provided by the provider in the form of a template.

클라우드 시스템이란 인터넷상의 서버를 통하여 데이터 저장, 네트워크, 콘텐츠 사용 등 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. It is a computing environment in which information is permanently stored in a server on the Internet and temporarily stored in clients such as desktop PCs, tablet PCs, laptops, netbooks, and IT devices such as smartphones. That is, it is a concept in which all user information is 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 a system borrows computing resources such as software that exist in an intangible form such as a cloud as much as one wants and pays a certain price for it. It refers to a technology that integrates existing computing resources with virtualization technology and provides them.

다양한 주체가 클라우드 서비스를 제공하면서, 다양한 클라우드 서비스 플랜(plan)이 출시되고 있다. 클라우드 서비스가 필요하지만 자신에게 맞는 클라우드 서비스가 무엇인지 파악하기 어려워지는 문제점이 있다. As various entities provide cloud services, various cloud service plans are being launched. Although cloud services are required, there is a problem in that it becomes difficult to determine which cloud service is right for you.

또한, 다양한 클라우드 서비스를 비교하여 자신의 운영 조건에 맞는 클라우드 서비스를 선택하는데 어려움이 있다. 더불어, 클라우드 서비스를 제공하는 주체 마다 서로 다른 형태의 플랫폼을 사용하므로 이 플랫폼들을 이용하여 클라우드 서버를 구성하는데 어려움이 있다. In addition, it is difficult to compare various cloud services and select a cloud service suitable for one's operating conditions. In addition, since different types of platforms are used for each entity that provides cloud services, it is difficult to configure a cloud server using these platforms.

본 문서에 개시된 다양한 실시예들은 위와 같은 문제점을 해소 또는 해결하기 위한 발명들이다. Various embodiments disclosed in this document are inventions for solving or solving the above problems.

본 문서에 개시된 다양한 실시예에 따른 시스템은, 클라우드 인프라 서비스를 제공하는 클라우드 인프라 프로바이더의 정보를 저장하는 프로바이더 저장부, 상기 프로바이더 데이터베이스로부터 상기 클라우드 인프라 프로바이더가 제공하는 클라우드 인프라 서비스의 정보를 저장하는 서비스 저장부, 과거 채택된 클라우드 인프라 프로바이더 및 서비스를 분석하여 클라우드 인프라 프로바이더와 클라우드 인프라 서비스의 평가 정보를 생성하는 평가 정보 생성부, 사용자 정보 및 필요 서비스 정보 중 적어도 하나를 포함하는 입력 데이터를 입력받아 저장하는 요구 데이터 저장부, 상기 요구 데이터 저장부에 저장된 입력 데이터와 상기 프로바이더 저장부에 저장된 클라우드 인프라 프로바이더 및 상기 서비스 저장부에 저장된 클라우드 인프라 서비스를 비교하고 상기 평가 정보 생성부의 상기 평가 정보를 이용하여 정렬하는 프로바이더 검색부, 상기 프로바이더 검색부에서 검색된 클라우드 인프라 프로바이더 및 클라우드 인프라 서비스를 클라우드 서버 구성을 위한 템플릿 형태로 생성하는 템플릿 생성부, 상기 템플릿 생성부에서 생성된 템플릿을 구성하는 코드의 호환성을 확인하는 코드 호환 확인부 및 상기 코드 호환 확인부에서 코드의 호환성이 확인되면, 상기 생성된 템플릿을 이용하여 클라우드 서버를 생성하는 클라우드 서버 생성부를 포함할 수 있다. In the system according to various embodiments disclosed in this document, a provider storage unit for storing information of a cloud infrastructure provider that provides a cloud infrastructure service, and information of a cloud infrastructure service provided by the cloud infrastructure provider from the provider database At least one of a service storage unit that stores the information, an evaluation information generation unit that analyzes previously adopted cloud infrastructure providers and services to generate evaluation information of the cloud infrastructure providers and cloud infrastructure services, and user information and required service information A request data storage unit that receives and stores input data, compares the input data stored in the request data storage unit with the cloud infrastructure provider stored in the provider storage unit, and the cloud infrastructure service stored in the service storage unit, and generates the evaluation information A provider search unit that sorts by using the evaluation information of the unit; It may include a code compatibility checking unit for checking compatibility of codes constituting the template, and a cloud server generating unit generating a cloud server using the generated template when the code compatibility is confirmed by the code compatibility checking unit.

본 문서에 개시된 다양한 실시예에 따른 전자 장치는, 사용자의 정보를 통해 사용자의 환경에 맞는 클라우드 인프라 서비스를 제안할 수 있다. 따라서, 사용자들은 자신의 환경에 잘 맞는 또는 자신이 원하는 클라우드 인프라 서비스를 손쉽게 확인할 수 있다. The electronic device according to various embodiments disclosed in this document may propose a cloud infrastructure service suitable for a user's environment through user information. Accordingly, users can easily check the cloud infrastructure service that suits their environment or that they want.

또한, 제안된 클라우드 인프라 서비스를 템플릿 형태로 제공함으로써 간편하게 클라우드 서버를 구성할 수 있다. 더불어, 클라우드 서버의 변동 사항을 통합적으로 관리할 수 있는 시스템을 제공할 수 있다. In addition, by providing the proposed cloud infrastructure service in the form of a template, a cloud server can be easily configured. In addition, it is possible to provide a system capable of managing changes in the cloud server in an integrated manner.

도면의 설명과 관련하여, 동일 또는 유사한 구성 요소에 대해서는 동일 또는 유사한 참조 부호가 사용될 수 있다.
도 1은, 본 문서에 개시된 다양한 실시예에 따른 시스템의 개념도이다.
도 2는, 본 문서에 개시된 다양한 실시예에 따른 시스템의 블록도이다.
도 3은, 본 문서에 개시된 다양한 실시예에 따른 시스템의 흐름도이다.
In connection with the description of the drawings, the same or similar reference numerals may be used for the same or similar components.
1 is a conceptual diagram of a system according to various embodiments disclosed herein.
2 is a block diagram of a system in accordance with various embodiments disclosed herein.
3 is a flow diagram of a system in accordance with various embodiments disclosed herein.

본 문서의 다양한 실시예들 및 이에 사용된 용어들은 본 문서에 기재된 기술적 특징들을 특정한 실시예들로 한정하려는 것이 아니며, 해당 실시예의 다양한 변경, 균등물, 또는 대체물을 포함하는 것으로 이해되어야 한다. The various embodiments of this document and terms used therein are not intended to limit the technical features described in this document to specific embodiments, but it should be understood to include various modifications, equivalents, or substitutions of the embodiments.

도면의 설명과 관련하여, 유사한 또는 관련된 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 아이템에 대응하는 명사의 단수 형은 관련된 문맥상 명백하게 다르게 지시하지 않는 한, 상기 아이템 한 개 또는 복수 개를 포함할 수 있다. In connection with the description of the drawings, like reference numerals may be used for similar or related components. The singular form of the noun corresponding to the item may include one or more of the item, unless the relevant context clearly dictates otherwise.

본 문서에서, "A 또는 B", "A 및 B 중 적어도 하나",“또는 B 중 적어도 하나,”"A, B 또는 C," "A, B 및 C 중 적어도 하나,”및 “B, 또는 C 중 적어도 하나"와 같은 문구들 각각은 그 문구들 중 해당하는 문구에 함께 나열된 항목들 중 어느 하나, 또는 그들의 모든 가능한 조합을 포함할 수 있다. "제 1", "제 2", 또는 "첫째" 또는 "둘째"와 같은 용어들은 단순히 해당 구성요소를 다른 해당 구성요소와 구분하기 위해 사용될 수 있으며, 해당 구성요소들을 다른 측면(예: 중요성 또는 순서)에서 한정하지 않는다. 어떤(예: 제 1) 구성요소가 다른(예: 제 2) 구성요소에, “기능적으로” 또는 “통신적으로”라는 용어와 함께 또는 이런 용어 없이, “커플드” 또는 “커넥티드”라고 언급된 경우, 그것은 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로(예: 유선으로), 무선으로, 또는 제 3 구성요소를 통하여 연결될 수 있다는 것을 의미한다.As used herein, "A or B", "at least one of A and B", "or at least one of B," "A, B or C," "at least one of A, B and C," and "B; or "at least one of C" may include any one of, or all possible combinations of, items listed together in the corresponding one of the phrases. Terms such as "first", "second", or "first" or "second" may be used simply to distinguish the element from other elements in question, and may refer to elements in other aspects (e.g., importance or order) is not limited. that one (eg first) component is “coupled” or “connected” to another (eg, second) component, with or without the terms “functionally” or “communicatively” When referenced, it means that one component can be connected to the other component directly (eg by wire), wirelessly, or through a third component.

도 1은, 본 문서에 개시된 다양한 실시예에 따른 시스템의 개념도이다. 도 2는, 본 문서에 개시된 다양한 실시예에 따른 시스템의 블록도이다. 도 3은, 본 문서에 개시된 다양한 실시예에 따른 시스템의 흐름도이다.1 is a conceptual diagram of a system according to various embodiments disclosed herein. 2 is a block diagram of a system in accordance with various embodiments disclosed herein. 3 is a flow diagram of a system in accordance with various embodiments disclosed herein.

이하, 도면의 설명과 관련하여, 동일 또는 유사한 구성 요소에 대해서는 동일 또는 유사한 참조 부호가 사용될 수 있다.Hereinafter, in connection with the description of the drawings, the same or similar reference numerals may be used for the same or similar components.

본 문서에 개시된 시스템(100)은 사용자에게 맞는 클라우드 인프라 서비스를 제공하기 위한 시스템(100)일 수 있다. 여기서 시스템(100)은 사용자에게 제공되는 UI(user interface)를 포함하는 시스템(100)일 수 있다. 시스템(100)은 예를 들어, 서버에 구축되어 네트워크 환경을 통해 제공될 수 있다. 시스템(100)은 클라우드 인프라 서비스 제안 및 제공을 위한 하드웨어적 구성 요소 및 소프트웨어적 구성 요소를 모두 포함할 수 있다. 이하에서 설명되는 시스템(100)의 동작 주체는 시스템(100)에 포함된 다양한 코드를 처리하는 프로세서로 이해될 수 있다. The system 100 disclosed in this document may be the system 100 for providing a cloud infrastructure service suitable for a user. Here, the system 100 may be the system 100 including a user interface (UI) provided to a user. The system 100 may be, for example, built on a server and provided through a network environment. The system 100 may include both hardware and software components for proposing and providing cloud infrastructure services. The operating subject of the system 100 described below may be understood as a processor that processes various codes included in the system 100 .

본 문서에 개시된 다양한 실시예는 사용자의 다양한 요구 조건을 만족하는 클라우드 인프라 프로바이더(10)와 그 클라우드 인프라 프로바이더(10)가 제공하는 클라우드 인프라 서비스를 템플릿 형태로 제공하는 시스템(100)에 대한 것일 수 있다. 클라우드 인프라 프로바이더(10)와 클라우드 인프라 서비스를 템플릿 형태로 제공함으로써, 사용자는 자신에게 필요한 클라우드 서버를 손쉽게 생성할 수 있다. 또한, 사용자는 제공된 템플릿을 이용하여 필요에 따라 동일한 클라우드 서버를 생성할 수 있다. Various embodiments disclosed in this document provide a cloud infrastructure provider 10 that satisfies various user requirements and a system 100 that provides cloud infrastructure services provided by the cloud infrastructure provider 10 in the form of a template. it could be By providing the cloud infrastructure provider 10 and the cloud infrastructure service in the form of a template, the user can easily create a cloud server that he or she needs. In addition, the user can create the same cloud server as needed by using the provided template.

본 문서에 개시된 다양한 실시예에 따른 클라우드 인프라 프로바이더(10) 및 서비스 템플릿 관리 시스템(100)은 프로바이더 저장부(110), 서비스 저장부(120), 평가 정보 생성부(190), 요구 데이터 저장부(130), 프로바이더 검색부(140), 템플릿 제공부, 코드 호환 확인부(160), 서버 생성부(170) 및 결과 저장부(180)를 포함할 수 있다. 이상 설명한 시스템(100)의 구성 요소는 예시에 불과하며 이 구성 요소 중 일부는 생략될 수 있고, 다른 구성 요소가 시스템(100)에 추가될 수 있다. 본 문서에 개시된 다양한 실시예에 따른 시스템(100)은 서버 상에서 구동되는 시스템(100)일 수 있다. 예를 들어, 시스템(100)은 사용자의 요청에 따라 서버에 포함된 프로세서가 특정 기능을 수행하기 위한 코드를 읽어 수행함으로써 요청에 따른 응답을 출력할 수 있도록 구성될 수 있다. The cloud infrastructure provider 10 and the service template management system 100 according to various embodiments disclosed in this document include a provider storage unit 110 , a service storage unit 120 , an evaluation information generation unit 190 , and request data. It may include a storage unit 130 , a provider search unit 140 , a template provision unit, a code compatibility check unit 160 , a server generation unit 170 , and a result storage unit 180 . The components of the system 100 described above are merely examples, and some of these components may be omitted, and other components may be added to the system 100 . The system 100 according to various embodiments disclosed in this document may be a system 100 running on a server. For example, the system 100 may be configured to output a response according to the request by a processor included in the server reading and executing a code for performing a specific function according to a user's request.

일 실시예에서, 프로바이더 저장부(110)는 다양한 클라우드 인프라 프로바이더(10)의 기본 정보를 저장한 데이터베이스(database)일 수 있다. 클라우드 서비스는 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를 모두 포함할 수 있다. 여기서 클라우드는 퍼블릭 클라우드(Public Cloud)와 프라이빗 클라우드(Private Cloud)를 포함할 수 있다. 클라우드는 이용대상을 제한하지 않고 공개적 이용을 위해 열린 네트워크를 통해 렌더링되는 퍼블릭 클라우드와, 하나의 단체를 위해서만 운영되는 프라이빗 클라우드를 포함하며, 나아가 퍼블릭과 프라이빗 클라우드를 동시에 사용하는 하이브리드 클라우드(hybrid Cloud)도 포함할 수 있다. 클라우드 인프라 프로바이더(10)는 예를 들어, Naver Cloud, AWS, Azure, Aliyun, Google Computing Engine, Openstack, VMWear 및 On-premise·Datacenter BareMetal Infra를 포함할 수 있다. 클라우드 인프라 프로바이더(10)는 상술한 것과 같은 클라우드 서비스를 제공하는 주체를 의미할 수 있다. In an embodiment, the provider storage unit 110 may be a database storing basic information of various cloud infrastructure providers 10 . The cloud service may mean that IT-related functions are provided in the same form as a service. It may refer to services such as IaaS, PaaS, and SaaS. Specifically, cloud services are application services provided on-demand to multiple users, such as Salesforce.com·Google e-mail, Software as a Service (SaaS), AWS RDS· 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. have. Cloud services referred to in this document may include all of IaaS, PaaS, and SaaS. Here, the cloud may include a public cloud and a private cloud. The cloud includes a public cloud rendered through a network open for public use without limiting the target audience, and a private cloud operated only for one organization, and furthermore, a hybrid cloud that uses public and private clouds at the same time may also include. The cloud infrastructure provider 10 may include, for example, Naver Cloud, AWS, Azure, Aliyun, Google Computing Engine, Openstack, VMWear, and On-premise/Datacenter BareMetal Infra. The cloud infrastructure provider 10 may mean an entity that provides the above-described cloud service.

서비스 저장부(120)는, 클라우드 인프라 프로바이더(10)에서 제공하는 클라우드 인프라 서비스에 대한 정보가 저장된 데이터베이스일 수 있다. 여기서 클라우드 인프라 서비스는 클라우드 인프라 프로바이더(10)에서 제공하는 다양한 자원(resorce)을 의미할 수 있다. IaaS의 경우, 클라우드 서버 구성을 위한 컴퓨팅 자원(예: CPU, 메모리, 저장소, 네트워크 환경 등)이 클라우드 인프라 서비스일 수 있다. SaaS의 경우, 클라우드 서버 구성을 위한 컴퓨팅 자원과 더불어, 운영체제(operating system; OS)를 포함하는 다양한 소프트웨어가 클라우드 인프라 서비스일 수 있다. PaaS의 경우, 클라우드 서버 구성을 위한 컴퓨팅 자원, 소프트웨어 자원 및 클라우드 서버 운영을 위한 플랫폼 자원이 클라우드 인프라 서비스일 수 있다. 서비스 저장부(120)는 클라우드 인프라 서비스의 비용 정보와 클라우드 인프라 서비스를 사용하는 사용자의 수를 클라우드 인프라 서비스외 매칭하여 저장할 수 있다. The service storage unit 120 may be a database in which information on cloud infrastructure services provided by the cloud infrastructure provider 10 is stored. Here, the cloud infrastructure service may refer to various resources provided by the cloud infrastructure provider 10 . In the case of IaaS, computing resources (eg, CPU, memory, storage, network environment, etc.) for configuring the cloud server may be cloud infrastructure services. In the case of SaaS, in addition to computing resources for configuring a cloud server, various software including an operating system (OS) may be a cloud infrastructure service. In the case of PaaS, a computing resource for configuring a cloud server, a software resource, and a platform resource for operating the cloud server may be a cloud infrastructure service. The service storage unit 120 may match and store the cost information of the cloud infrastructure service and the number of users using the cloud infrastructure service other than the cloud infrastructure service.

클라우드 인프라 프로바이더(10)마다 제공하는 클라우드 인프라 서비스의 내용이 상이할 수 있다. 사용자에게 맞는 클라우드 인프라를 제안하기 위해서는 클라우드 인프라 프로바이더(10)가 제공하는 서비스를 체계적으로 정리하는 것이 효과적일 수 있다. 본 문서에 개시된 시스템(100)은 효과적인 클라우드 인프라 제안을 위하여 클라우드 인프라 프로바이더(10)와 클라우드 인프라 프로바이더(10)가 제공하는 서비스를 카테고리화하여 저장할 수 있다. 예를 들어, 서로 다른 클라우드 인프라 프로바이더(10)가 제공하는 명칭이 상이한 클라우드 인프라 서비스라 하더라도, 그 본질이 동일하거나 유사한 경우 하나의 카테고리로 묶어 관리할 수 있다. Contents of cloud infrastructure services provided by each cloud infrastructure provider 10 may be different. It may be effective to systematically organize the services provided by the cloud infrastructure provider 10 in order to propose a cloud infrastructure suitable for users. The system 100 disclosed in this document may categorize and store the cloud infrastructure provider 10 and the services provided by the cloud infrastructure provider 10 for effective cloud infrastructure proposal. For example, even cloud infrastructure services with different names provided by different cloud infrastructure providers 10 may be managed by grouping them into one category if their essence is the same or similar.

일 실시예에서, 프로바이더 저장부(110)와 서비스 저장부(120)는 하나의 구성 요소로 이해될 수 있다. 즉, 클라우드 인프라 프로바이더(10)의 기본 정보를 저장한 데이터베이스와 클라우드 인프라 프로바이더(10)가 제공하는 클라우드 인프라 서비스의 정보가 저장된 데이터베이스는 통합되어 관리될 수 있다. In one embodiment, the provider storage 110 and the service storage 120 may be understood as one component. That is, the database storing basic information of the cloud infrastructure provider 10 and the database storing information of the cloud infrastructure service provided by the cloud infrastructure provider 10 may be integrated and managed.

평가 정보 생성부(190)는 본 문서에 개시된 시스템(100)에서 채택된 클라우드 인프라 프로바이더(10)와 클라우드 인프라 서비스에 대한 평가 정보를 생성할 수 있다. 예를 들어, 본 문서에 개시된 시스템(100)에 의해 제안된 클라우드 인프라 프로바이더(10) 및 클라우드 인프라 서비스에 의해 클라우드 인프라 서비스가 제공될 수 있다. 본 문서에 개시된 시스템(100)은 클라우드 인프라 서비스를 사용하는 사용자로부터 피드백을 수신하여 저장함으로써, 클라우드 인프라 서비스에 대한 평가 정보를 생성할 수 있다. 평가 정보 생성부(190)는 채택된 클라우드 인프라 서비스에 포함된 다양한 자원에 대한 개별적인 평가 정보를 생성할 수 있다. 예를 들어, 사용자는 제공된 클라우드 인프라 서비스의 연산 능력에 대해서는 좋은 평가를 할 수 있고, 네트워크 환경이나 저장 용량에 대해서는 나쁜 평가를 할 수 있다. 평가 정보 생성부(190)는 본 문서에 개시된 시스템(100)에서 채택된 클라우드 인프라 서비스에 포함된 각 자원에 대한 개별적인 평가 정보를 생성하여 추후 클라우드 인프라 서비스 제안에서 활용할 수 있는 형태로 이를 저장할 수 있다. The evaluation information generating unit 190 may generate evaluation information on the cloud infrastructure provider 10 and the cloud infrastructure service adopted in the system 100 disclosed in this document. For example, the cloud infrastructure service may be provided by the cloud infrastructure provider 10 and the cloud infrastructure service proposed by the system 100 disclosed in this document. The system 100 disclosed in this document may generate evaluation information for the cloud infrastructure service by receiving and storing feedback from a user using the cloud infrastructure service. The evaluation information generating unit 190 may generate individual evaluation information for various resources included in the adopted cloud infrastructure service. For example, the user may give a good evaluation to the computing power of the provided cloud infrastructure service, and may give a bad evaluation to the network environment or storage capacity. The evaluation information generation unit 190 may generate individual evaluation information for each resource included in the cloud infrastructure service adopted in the system 100 disclosed in this document and store it in a form that can be utilized in future cloud infrastructure service proposals. .

요구 데이터 저장부(130)는, 사용자 정보와 필요 서비스 정보 중 적어도 하나를 포함하는 입력 데이터를 입력받아 저장할 수 있다. 요구 데이터 저장부(130)는 사용자에게 맞는 클라우드 인프라 서비스를 제공하기 위한 기본 정보를 입력받아 저장하는 구성 요소로 이해될 수 있다. 사용자 정보는 클라우드 인프라가 필요한 사용자의 다양한 정보를 포함할 수 있다. 사용자 정보는 예를 들어, 사용자의 명칭, 사용자의 업종, 사용자의 규모(예: 사원 수, 매출액 등)와 같은 정보를 포함할 수 있다. 필요 서비스 정보는 구축될 클라우드 인프라 서비스의 요구 정보로 이해될 수 있다. 필요 서비스 정보는 예를 들어, 클라우드 인프라 서비스에 포함된 컴퓨팅 자원, 소프트웨어 자원, 플랫폼 자원을 의미할 수 있다. 요구 데이터 저장부(130)에 저장되는 입력 데이터는 상술한 사용자 정보와 필요 서비스 정보 중 하나일 수 있다. 어떤 사용자의 경우, 필요한 클라우드 인프라 서비스에 대하여 잘 알지 못할 수 있다. 즉, 사용자는 자신이 필요한 컴퓨팅 자원, 소프트웨어 자원 및 플랫폼 자원을 알지 못할 수 있다. 이 경우, 사용자는 사용자 정보만을 입력할 수 있다. 어떤 사용자의 경우, 자신이 원하는 클라우드 인프라 서비스에 대해 잘 알고 있을 수 있다. 이 경우, 사용자는 사용자 정보의 입력 없이, 필요 서비스 정보 만을 입력할 수 있다. 어떤 실시예에서, 요구 데이터 저장부(130)에 저장되는 입력 데이터는 클라우드 인프라 프로바이더(10)를 포함할 수 있다. 어떤 사용자의 경우, 선호하는 클라우드 인프라 프로바이더(10)가 있을 수 있다. 이 경우, 사용자는 원하는 클라우드 인프라 프로바이더(10)를 선택할 수 있고, 선택된 클라우드 인프라 프로바이더(10)가 입력 데이터로써 요구 데이터 저장부(130)에 저장될 수 있다. The request data storage unit 130 may receive and store input data including at least one of user information and required service information. The request data storage unit 130 may be understood as a component that receives and stores basic information for providing a cloud infrastructure service suitable for a user. The user information may include various information of users who need cloud infrastructure. The user information may include, for example, information such as the name of the user, the user's industry type, and the size of the user (eg, the number of employees, sales, etc.). The required service information may be understood as required information of a cloud infrastructure service to be built. The necessary service information may mean, for example, a computing resource, a software resource, and a platform resource included in a cloud infrastructure service. The input data stored in the request data storage unit 130 may be one of the above-described user information and required service information. For some users, they may not be familiar with the required cloud infrastructure services. That is, the user may not be aware of the computing resources, software resources, and platform resources that he/she needs. In this case, the user may input only user information. For some users, they may be familiar with the cloud infrastructure services they want. In this case, the user may input only necessary service information without inputting user information. In some embodiments, the input data stored in the request data storage unit 130 may include the cloud infrastructure provider 10 . For some users, there may be a preferred cloud infrastructure provider 10 . In this case, the user may select a desired cloud infrastructure provider 10 , and the selected cloud infrastructure provider 10 may be stored in the request data storage unit 130 as input data.

프로바이더 검색부(140)는, 요구 데이터 저장부(130)에 저장된 입력 데이터와 프로바이더 저장부(110)에 저장된 클라우드 인프라 프로바이더(10) 및 서비스 저장부(120)에 저장된 클라우드 인프라 서비스를 비교하여 그 결과를 출력할 수 있다. The provider search unit 140 searches the input data stored in the request data storage unit 130 and the cloud infrastructure provider 10 stored in the provider storage unit 110 and the cloud infrastructure service stored in the service storage unit 120 . You can compare and print the results.

즉, 프로바이더 검색부(140)는 요구 데이터 저장부(130)에 저장된 입력 데이터를 만족하는 클라우드 인프라 프로바이더(10) 및 클라우드 인프라 서비스를 검색할 수 있다. 또한, 프로바이더 검색부(140)는 평가 정보 생성부(190)에 저장된 평가 정보를 이용하여 검색 결과를 정렬할 수 있다. 결과의 정렬은 사용자가 우선하는 요소에 따라 수행될 수 있다. 예를 들어, 사용자가 우선하는 요소가 비용인 경우에는 비용이 적은 순으로 검색 결과를 정렬할 수 있다. 사용자가 우선하는 요소가 안정성인 경우에는 이용자가 많은 클라우드 인프라 서비스를 우선하여 정렬할 수 있다. 사용자가 우선하는 요소가 비용 대비 성능인 경우에는 클랑우드 인프라 서비스에 포함된 자원의 성능(예: CPU 클럭, CPU 개수, 메모리 용량, 저장소 용량 등)을 비용으로 나눈 값을 기준으로 클라우드 인프라 서비스를 정렬할 수 있다. 사용자가 우선하는 요소가 다른 사용자의 평가 정보인 경우에는 사용자에게 좋은 평가를 받은 클라우드 인프라 서비스를 우선하여 정렬할 수 있다. 이 밖에도 프로바이더 검색부(140)는 입력받은 다양한 조건에 기반하여 검색 결과를 정렬할 수 있다. That is, the provider search unit 140 may search the cloud infrastructure provider 10 and the cloud infrastructure service that satisfy the input data stored in the request data storage unit 130 . Also, the provider search unit 140 may sort the search results by using the evaluation information stored in the evaluation information generation unit 190 . The sorting of results may be performed according to a user preference factor. For example, if cost is a factor that the user prioritizes, the search results may be sorted in order of least cost. If the user's priority is stability, cloud infrastructure services with many users can be prioritized. If the user's priority is cost performance, the cloud infrastructure service is determined by dividing the performance of resources included in the Cloudwood infrastructure service (eg CPU clock, number of CPUs, memory capacity, storage capacity, etc.) by the cost. can be sorted. When the user's priority factor is evaluation information of other users, cloud infrastructure services that have received good evaluations from users may be prioritized and sorted. In addition, the provider search unit 140 may sort the search results based on various input conditions.

프로바이더 검색부(140)가 검색 결과를 정렬하여 제공하므로 사용자는 자신에게 필요한 클라우드 인프라 서비스를 자신이 우선하는 조건에 따라 용이하게 선택할 수 있다. Since the provider search unit 140 sorts and provides the search results, the user can easily select the cloud infrastructure service required for him or her according to his preferred condition.

템플릿 생성부(150)는, 프로바이더 검색부(140)에서 검색된 클라우드 인프라 프로바이더(10) 및 클라우드 인프라 서비스를 클라우드 서버 구성을 위한 템플릿 형태로 생성할 수 있다. 따라서, 템플릿은 클라우드 인프라 서비스에 대한 정보(예: 컴퓨팅 자원, 소프트웨어 자원, 플랫폼 자원 등)를 포함할 수 있다. 템플릿 생성부(150)는, 프로바이더 검색부(140)의 검색 결과를 바탕으로 사용자가 선택한 클라우드 인프라 서비스에 대한 템플릿을 생성할 수 있다. 본 문서에 개시된 시스템(100)은 클라우드 인프라 프로바이더(10)에서 제공하는 관리 체계(예: 인터페이스)를 이용하여 클라우드 서버를 구성할 수 있다. 여기서 템플릿은 클라우드 인프라 프로바이더(10)의 관리 체계에 접근하여 선택된 클라우드 인프라 서비스에 대한 클라우드 서버를 구성할 수 있는 코드를 의미할 수 있다. The template generating unit 150 may generate the cloud infrastructure provider 10 and the cloud infrastructure service found in the provider search unit 140 in the form of a template for configuring the cloud server. Accordingly, the template may include information about the cloud infrastructure service (eg, computing resources, software resources, platform resources, etc.). The template generating unit 150 may generate a template for the cloud infrastructure service selected by the user based on the search result of the provider search unit 140 . The system 100 disclosed in this document may configure a cloud server using a management system (eg, an interface) provided by the cloud infrastructure provider 10 . Here, the template may refer to a code for configuring a cloud server for the selected cloud infrastructure service by accessing the management system of the cloud infrastructure provider 10 .

코드 호환 확인부(160)는, 생성된 템플릿을 구성하는 코드의 호환성을 확인할 수 있다. 코드 호환 적용부는 생성된 템플릿의 코드가 클라우드 인프라 프로바이더(10)에서 관리 체계에서 동작하여 실제로 클라우드 서버를 구성할 수 있는 검증할 수 있다. 예를 들어, 코드 호환 확인부(160)는 클라우드 인프라 프로바이더(10)에서 제공하는 개발자 도구(SDK)를 이용하여 코드의 호환성을 확인할 수 있다. 코드 호환 확인부(160)는 코드 호환 확인 과정에서 에러 코드가 발생하는 경우 그 결과를 저장할 수 있다. 또한 코드 호환 확인부(160)는 과거 결과를 이용하여 발생된 에러 코드에 대한 조치를 동적으로 확인하여 템플릿을 구성하는 코드를 스스로 수정할 수 있다. The code compatibility check unit 160 may check compatibility of codes constituting the generated template. The code compatibility application unit may verify that the code of the generated template operates in the management system in the cloud infrastructure provider 10 to actually configure the cloud server. For example, the code compatibility check unit 160 may check code compatibility by using a developer tool (SDK) provided by the cloud infrastructure provider 10 . The code compatibility check unit 160 may store a result when an error code occurs in the code compatibility check process. In addition, the code compatibility check unit 160 may dynamically check the action for the generated error code using the past result to revise the code constituting the template by itself.

코드 호환 확인부(160)는 코드 호환 확인 과정을 이용하여 기계 학습을 수행할 수 있다. 코드 호환 확인부(160)의 기계 학습은 지도 학습(supervised learning), 비지도 학습(unsupervised learning) 및 반지도 학습(semisupervised learning)을 통해 이루어질 수 있다. 예를 들어, 지도 학습의 경우 관리자는 에러 코드에 대한 코드 수정 예시를 미리 저장해둘 수 있다. 코드 호환 확인부(160)는 에러 코드 발생시 코드 수정 예시를 적용하여 에러 코드의 해결 여부를 확인할 수 있다. 에러 코드가 해소된 경우의 우선도를 높게 설정하는 방식으로 기계 학습을 진행할 수 있다. The code compatibility check unit 160 may perform machine learning using a code compatibility check process. Machine learning of the code compatibility check unit 160 may be performed through supervised learning, unsupervised learning, and semisupervised learning. For example, in the case of supervised learning, the administrator may pre-store code correction examples for error codes. The code compatibility check unit 160 may check whether the error code is resolved by applying a code correction example when an error code is generated. Machine learning can be performed by setting a high priority when the error code is resolved.

이와 같이, 코드 호환 확인부(160)에서 생성된 템플릿에 대한 검증을 수행하므로 클라우드 서비스 프로바이더가 업데이트를 진행하거나, 서비스의 내용을 일부 변경한다고 하더라도 본 시스템(100)은 오류 없이 생성된 템플릿을 통해 클라우드 서버를 생성할 수 있다. In this way, since the code compatibility check unit 160 verifies the generated template, even if the cloud service provider updates or partially changes the contents of the service, the system 100 checks the generated template without error. You can create a cloud server through

클라우드 서버 생성부(170)는 코드 호환 확인부(160)에서 호환이 확인된 템플릿을 이용하여 클라우드 서비스 프로바이더가 제공하는 관리 체계에 템플릿을 적용하여 클라우드 서버를 생성할 수 있다. 생성된 클라우드 서버는 사용자가 선택한 클라우드 인프라 서비스에 대응하는 템플릿에 의해 생성되었으므로, 사용자가 선택한 클라우드 인프라 서비스에 대응하는 클라우드 서버가 될 수 있다. The cloud server generation unit 170 may generate the cloud server by applying the template to the management system provided by the cloud service provider using the template confirmed by the code compatibility verification unit 160 . Since the created cloud server is generated by a template corresponding to the cloud infrastructure service selected by the user, it may be a cloud server corresponding to the cloud infrastructure service selected by the user.

결과 저장부(180)는, 프로바이더 검색부(140)에서 검색된 검색 결과 및 정렬 결과를 저장할 수 있다. 또한, 결과 저장부(180)는 생성된 클라우드 서버에 대한 결과 코드를 저장할 수 있다. 여기서 결과 코드는 클라우드 서비스 프로바이더가 클라우드 서버 생성시 제공하는 다양한 정보를 포함하는 코드로 이해될 수 있다. 결과 코드를 확인하여 생성된 클라우드 서버의 모든 정보를 확인할 수 있다. 예를 들어, 결과 코드는 생성된 클라우드 서버의 생성 시간, 유지 시간, 소유자, 포함된 클라우드 인프라 서비스와 같은 클라우드 서버의 제반 정보를 포함할 수 있다. The result storage unit 180 may store the search results and the sorting results found in the provider search unit 140 . Also, the result storage unit 180 may store a result code for the generated cloud server. Here, the result code may be understood as a code including various information provided by the cloud service provider when the cloud server is created. By checking the result code, you can check all information of the created cloud server. For example, the result code may include general information of the cloud server such as creation time, maintenance time, owner, and included cloud infrastructure service of the created cloud server.

본 문서의 시스템(100)은 결과 저장부(180)에 저장된 데이터의 위조 및 변조를 방지하기 위하여 결과 저장부(180)에 저장된 데이터를 암호화하거나, 잠금 영역으로 마이그레이션할 수 있다. 잠금 영역으로 마이그레이션된 데이터는 특정 조건(예: 생성된 클라우드 서버의 변경)이 충족되지 않는 경우 접근될 수 없는 위치에 저장되어 관리될 수 있다. The system 100 of this document may encrypt data stored in the result storage unit 180 or migrate it to a lock area in order to prevent forgery and falsification of data stored in the result storage unit 180 . Data migrated to the lock area may be stored and managed in a location that cannot be accessed if certain conditions (eg, change of the created cloud server) are not met.

클라우드 서버 생성부(170)는, 클라우드 서버에 대한 변경 요청이 있는 경우, 잠금 영역에 저장된 데이터에 접근하여 결과 코드를 확인할 수 있다. 결과 코드를 확인하여 운영중인 클라우드 서버의 제반 정보를 확인한 뒤, 클라우드 서버의 변경 사항(예: 클라우드 서버의 추가)에 따른 결과 코드를 업데이트할 수 있다. 예를 들어, 변경 사항에 따른 결과 코드를 기존 결과 코드에 병합하여 관리할 수 있다. 클라우드 서버에 대한 결과 코드를 하나로 관리하므로, 클라우드 서버가 변경되어 연산을 여러 번 적용하더라도 그 결과가 유지될 수 있다. 예를 들어, 생성된 클라우드 서버를 이용 또는 관리하는 사용자가 달라지더라도 동일한 결과를 얻을 수 있다. When there is a change request to the cloud server, the cloud server generating unit 170 may access data stored in the lock area and check the result code. After checking the result code and checking all information of the operating cloud server, the result code can be updated according to the change of the cloud server (eg, addition of the cloud server). For example, a result code according to a change can be merged with an existing result code and managed. Since the result code for the cloud server is managed as one, the result can be maintained even if the cloud server is changed and the operation is applied multiple times. For example, even if the user who uses or manages the created cloud server is different, the same result can be obtained.

다음으로, 도 3을 중심으로 본 문서에 개시된 시스템(100)을 통해 클라우드 서버를 생성하고 관리하는 동작에 대해 설명하도록 한다. Next, an operation of creating and managing a cloud server through the system 100 disclosed in this document will be described with reference to FIG. 3 .

사용자는 시스템(100) 상에 사용자 정보 및 필요 서비스 정보를 입력할 수 있다. 요구 데이터 저장부(130)는 입력 데이터를 저장할 수 있다(S100). 시스템(100)은 입력 데이터를 입력받을 수 있는 UI를 제공할 수 있다. 사용자가 필요한 클라우드 인프라 서비스의 상세 내용을 모르는 경우에는 사용자 정보만을 입력할 수 있다. A user may input user information and required service information on the system 100 . The request data storage unit 130 may store input data (S100). The system 100 may provide a UI for receiving input data. If the user does not know the details of the required cloud infrastructure service, only user information can be entered.

프로바이더 검색부(140)는 요구 데이터 저장부(130)에 저장된 입력 데이터와 프로바이더 저장부(110)에 저장된 클라우드 인프라 프로바이더(10) 및 서비스 저장부(120)에 저장된 클라우드 인프라 서비스를 비교하여 그 결과를 출력할 수 있다(S200). 이 때, 출력되는 결과는 다양한 요소에 의해 정렬될 수 있다. The provider search unit 140 compares the input data stored in the request data storage unit 130 with the cloud infrastructure service stored in the cloud infrastructure provider 10 and the service storage unit 120 stored in the provider storage unit 110 . to output the result (S200). In this case, the output results may be sorted by various factors.

결과의 정렬은 평가 정보 생성부(190)에 저장된 평가 정보와, 결과 저장부(180)에 저장된 데이터를 이용하여 수행될 수 있다. 평가 정보는 생성된 클라우드 서버를 이용하는 사용자가 클라우드 인프라 서비스에 대하여 평가한 정보를 포함할 수 있다. 결과 저장부(180)에 저장된 데이터는 본 시스템(100)으로 생성된 클라우드 서버와 그 클라우드 서버를 소유한 사용자의 정보를 포함할 수 있다. 예를 들어, 사용자가 사용자 정보만을 입력한 경우 사용자 정보에 포함된 사용자의 업종, 사용자의 규모를 확인하고, 결과 저장부(180)에 저장된 데이터로부터 사용자의 업종, 사용자의 규모와 유사한 사용자가 소유한 클라우드 서버의 정보를 확인하여 이를 우선적으로 정렬할 수 있다. 즉, 사용자는 자신과 유사한 업종 및 규모를 갖는 사용자가 소유한 클라우드 서버를 우선적으로 추천받을 수 있다. Sorting of the results may be performed using the evaluation information stored in the evaluation information generating unit 190 and data stored in the result storage unit 180 . The evaluation information may include information that a user using the generated cloud server evaluates the cloud infrastructure service. The data stored in the result storage unit 180 may include the cloud server created by the present system 100 and information of a user who owns the cloud server. For example, when the user inputs only user information, the user's industry type and the user's size included in the user information are checked, and the user's industry type and the user similar to the user's size are owned from the data stored in the result storage unit 180 . You can check the information of one cloud server and sort them preferentially. That is, the user may be preferentially recommended for a cloud server owned by a user having a similar industry and scale to the user.

또한, 결과의 정렬은 사용자 정보, 평가 정보 생성부(190)에 저장된 평가 정보 및 결과 저장부(180)에 저장된 데이터에 포함된 다양한 요소들을 통해 빅데이터 분석 기법으로 분석된 결과에 기반하여 수행될 수 있다. 예를 들어, 인공 신경 망(artificial neural network) 기법을 통해 분석된 데이터를 이용할 수 있다. 생성된 클라우드 서버를 결과값으로 하고, 그 클라우드 서버를 소유한 사용자의 사용자 정보, 사용자의 평가 정보를 입력 값으로 하고 그 사이에 노드를 생성하여 이를 연결하여 분석함으로써, 연결 강도를 도출하고 그에 기반하여 최적의 클라우드 인프라 서비스를 추천할 수 있다. In addition, the sorting of the results may be performed based on the results analyzed by the big data analysis technique through various elements included in the user information, the evaluation information stored in the evaluation information generating unit 190, and the data stored in the result storage unit 180. can For example, data analyzed through an artificial neural network technique may be used. Using the generated cloud server as the result, user information of the user who owns the cloud server, and user evaluation information as input values, creating a node between them, connecting them, and analyzing them to derive the strength of the connection and based on it Thus, the optimal cloud infrastructure service can be recommended.

한편, 사용자가 복수의 클라우드 서버를 생성하는 경우 서로 다른 클라우드 인프라 프로바이더(10)를 이용하는 멀티 클라우드 인프라를 제공하는 것도 가능하다. 프로바이더 검색부(140)는 서로 다른 클라우드 인프라 프로바이더(10)에서 제공하는 클라우드 인프라 서비스를 조합한 결과를 제시할 수 있다. 예를 들어, 사용자가 제공하는 서비스가 중요 기반 데이터와 변동 데이터를 포함하는 경우, 중요 기반 데이터는 안정성이 높은 클라우드 인프라 서비스를 통해 관리하고 변동 데이터는 비용이 낮은 클라우드 인프라 서비스를 통해 관리하기를 원할 수 있다. 프로바이더 검색부(140)는 사용자 수가 많고 운용 기간이 긴 클라우드 인프라 프로바이더(10)가 제공하는 클라우드 인프라 서비스와 비용이 상대적으로 저렴한 클라우드 인프라 프로바이더(10)가 제공하는 클라우드 인프라 서비스를 조합하여 제시할 수 있다. 이와 같은 조합이 선택된 경우, 후술하는 템플릿 생성부(150)는 각 클라우드 인프라 프로바이더(10)에서 클라우드 서버를 생성할 수 있는 코드를 포함하는 템플릿을 생성할 수 있다. Meanwhile, when a user creates a plurality of cloud servers, it is also possible to provide a multi-cloud infrastructure using different cloud infrastructure providers 10 . The provider search unit 140 may present a result of combining cloud infrastructure services provided by different cloud infrastructure providers 10 . For example, if the service provided by the user includes material base data and variable data, the user may want to manage the material base data through a highly reliable cloud infrastructure service and the variable data through a low cost cloud infrastructure service. can The provider search unit 140 combines the cloud infrastructure service provided by the cloud infrastructure provider 10 with a large number of users and a long operating period and the cloud infrastructure service provided by the cloud infrastructure provider 10 with relatively low cost. can present When such a combination is selected, the template generator 150 to be described later may generate a template including a code for generating a cloud server in each cloud infrastructure provider 10 .

프로바이더 검색부(140)에서 출력된 검색 결과 및 정렬 결과는 UI를 통해 사용자에게 제공될 수 있다. 사용자는 결과를 확인하여 원하는 클라우드 인프라 서비스를 선택할 수 있다. The search results and the sorting results output from the provider search unit 140 may be provided to the user through the UI. Users can check the results and select the desired cloud infrastructure service.

템플릿 생성부(150)는 선택된 클라우드 인프라 서비스에 대한 클라우드 서버를 생성할 수 있는 코드를 포함하는 템플릿을 생성할 수 있다(S300). 어떤 실시예에서, 템플릿 생성부(150)는 프로바이더 검색부(140)에서 검색된 클라우드 인프라 서비스에 대한 템플릿을 미리 생성할 수 있다. The template generator 150 may generate a template including a code for generating a cloud server for the selected cloud infrastructure service ( S300 ). In some embodiments, the template generator 150 may generate in advance a template for the cloud infrastructure service found in the provider searcher 140 .

어떤 실시예에서, 템플릿 생성부(150)에서 생성된 템플릿은 클라우드 서버의 구성 단계에서 사용자에게 유용한 코드를 포함할 수 있다. 예를 들어, 템플릿에 포함된 코드는 마이그레이션 코드일 수 있다. 마이그레이션 코드는 복수의 클라우드 서버 사이에서 파일들을 자동으로 옮겨주는 코드일 수 있다. 복수의 클라우드 서버를 구성하는 경우 중요 기반 데이터는 안정성이 높은 제1 클라우드 서버에 저장될 수 있다. 변동성이 높은 데이터는 저장소의 비용이 상대적으로 저렴한 제2 클라우드 서버에 저장될 수 있다. 마이그레이션 코드는 예를 들어, 제2 클라우드 서버의 변동 사항 중 변동 빈도가 낮은 파일들을 제1 클라우드 서버로 이동시키는 코드일 수 있다. 변동 빈도가 낮은 파일들은 중요한 파일일 수 있다. 경우에 따라, 마이그레이션 코드는 제2 클라우드 서버에 파일이 변동될 때, 변동 전 파일을 제1 클라우드 서버로 이동시키는 코드일 수 있다. 이 밖에도 템플릿 생성부(150)에서 생성된 템플릿은 사용자의 편의를 위한 다양한 코드를 포함할 수 있다. In some embodiments, the template generated by the template generating unit 150 may include codes useful to the user in the configuration step of the cloud server. For example, the code included in the template may be migration code. The migration code may be a code that automatically moves files between a plurality of cloud servers. When configuring a plurality of cloud servers, important base data may be stored in the first cloud server with high stability. Data with high volatility may be stored in a second cloud server having a relatively low storage cost. The migration code may be, for example, a code for moving files having a low frequency of change among changes of the second cloud server to the first cloud server. Files that change less frequently may be important files. In some cases, the migration code may be a code for moving a file before the change to the first cloud server when the file is changed in the second cloud server. In addition, the template generated by the template generator 150 may include various codes for user convenience.

코드 호환 확인부(160)는 생성된 템플릿을 구성하는 코드의 호환성을 확인할 수 있다(S400). 코드 호환 확인부(160)는 본 문서에 개시된 시스템(100)에서 구성된 코드를 통해 실제 클라우드 인프라 프로바이더(10)에서 제공하는 클라우드 서버를 생성할 수 있는지 검증할 수 있다. 코드 호환 확인부(160)는 호환성 확인 과정에서 에러 코드를 확인할 수 있다. 확인된 에러 코드를 에러 코드 라이브러리에서 검색하여, 그에 따른 조치를 선택하고 자동적으로 템플릿을 수정할 수 있다. 코드 호환 확인부(160)의 수정 과정은 예를 들어, 기계 학습과 같은 방식으로 수행될 수 있다. The code compatibility check unit 160 may check the compatibility of codes constituting the generated template (S400). The code compatibility check unit 160 may verify whether the cloud server provided by the actual cloud infrastructure provider 10 can be generated through the code configured in the system 100 disclosed in this document. The code compatibility check unit 160 may check an error code during a compatibility check process. You can search the identified error codes in the error code library, select actions accordingly, and automatically modify the template. The correction process of the code compatibility check unit 160 may be performed, for example, in a manner such as machine learning.

클라우드 서버 생성부(170)는 코드 호환 확인부(160)에서 호환성이 검증된 템플릿을 이용하여 클라우드 서버를 생성할 수 있다(S500). 클라우드 서버 생성부(170)는 클라우드 인프라 프로바이더(10)가 제공하는 관리 체계 상에서 템플릿을 적용하여 클라우드 서버를 생성할 수 있다. 예를 들어, 클라우드 서버 생성부(170)는 사용자가 미리 발급받은 접근 키(예: access key, secret key)를 통해 클라우드 인프라 프로바이더(10)가 제공하는 관리 체계에 접근하여 사용자에 대한 클라우드 서버를 생성할 수 있다. The cloud server generation unit 170 may generate a cloud server by using the template whose compatibility has been verified by the code compatibility check unit 160 ( S500 ). The cloud server creation unit 170 may generate a cloud server by applying a template on a management system provided by the cloud infrastructure provider 10 . For example, the cloud server generation unit 170 accesses the management system provided by the cloud infrastructure provider 10 through an access key (eg, access key, secret key) issued in advance by the user to access the cloud server for the user. can create

결과 저장부(180)는 클라우드 서버 생성부(170)에서 클라우드 서버를 생성하는 과정에서 클라우드 인프라 프로바이더(10)가 제공하는 결과 코드를 수신하여 저장할 수 있다. 결과 저장부(180)는 수신된 결과 코드를 잠금 영역으로 마이그레이션할 수 있다. 어떤 실시예에서, 서로 다른 클라우드 인프라 프로바이더(10)가 제공하는 결과 코드의 형식이 상이할 수 있다. 결과 저장부(180)는 서로 상이한 결과 코드를 재가공하여 서로 다른 클라우드 인프라 프로바이더(10) 간의 호환이 가능한 결과 코드로 변환하여 이를 저장할 수 있다. The result storage unit 180 may receive and store the result code provided by the cloud infrastructure provider 10 while the cloud server generation unit 170 creates the cloud server. The result storage unit 180 may migrate the received result code to the lock area. In some embodiments, the format of the result code provided by the different cloud infrastructure providers 10 may be different. The result storage unit 180 may reprocess different result codes, convert them into compatible result codes between different cloud infrastructure providers 10 , and store them.

본 명세서와 도면에 개시된 본 문서에 개시된 실시예들은 본 문서에 개시된 실시예에 따른 기술 내용을 쉽게 설명하고 본 문서에 개시된 실시예의 이해를 돕기 위해 특정 예를 제시한 것일 뿐이며, 본 문서에 개시된 실시예의 범위를 한정하고자 하는 것은 아니다. 따라서 본 문서에 개시된 다양한 실시예의 범위는 여기에 개시된 실시예들 이외에도 본 문서에 개시된 다양한 실시예의 기술적 사상을 바탕으로 도출되는 모든 변경 또는 변형된 형태가 본 문서에 개시된 다양한 실시예의 범위에 포함되는 것으로 해석되어야 한다.The embodiments disclosed in the present document disclosed in the present specification and drawings are merely presented as specific examples to easily explain the technical content according to the embodiments disclosed in this document and help the understanding of the embodiments disclosed in this document, and the implementations disclosed in this document It is not intended to limit the scope of the examples. Accordingly, the scope of the various embodiments disclosed in this document is that, in addition to the embodiments disclosed herein, all changes or modifications derived from the technical ideas of the various embodiments disclosed in this document are included in the scope of the various embodiments disclosed in this document. should be interpreted

100: 시스템 110: 프로바이더 저장부
120: 서비스 저장부 130: 요구 데이터 저장부
140: 프로바이더 저장부 150: 템플릿 생성부
160: 코드 호환 확인부 170: 서버 생성부
180: 결과 저장부 190: 평가 정보 생성부
100: system 110: provider storage
120: service storage 130: request data storage
140: provider storage unit 150: template generation unit
160: code compatibility check unit 170: server generation unit
180: result storage unit 190: evaluation information generation unit

Claims (3)

클라우드 인프라 서비스를 제공하는 클라우드 인프라 프로바이더의 정보를 저장하는 프로바이더 저장부;
상기 프로바이더 저장부로부터 상기 클라우드 인프라 프로바이더가 제공하는 클라우드 인프라 서비스의 정보를 저장하는 서비스 저장부;
과거 채택된 클라우드 인프라 프로바이더 및 서비스를 분석하여 클라우드 인프라 프로바이더와 클라우드 인프라 서비스의 평가 정보를 생성하는 평가 정보 생성부;
사용자의 업종 및 사용자의 규모를 포함하는 사용자 정보 및 필요 서비스 정보 중 적어도 하나를 포함하는 입력 데이터를 입력받아 저장하는 요구 데이터 저장부;
상기 요구 데이터 저장부에 저장된 입력 데이터와 상기 프로바이더 저장부에 저장된 클라우드 인프라 프로바이더 및 상기 서비스 저장부에 저장된 클라우드 인프라 서비스를 비교하고 상기 평가 정보 생성부의 상기 평가 정보를 이용하여 정렬하는 프로바이더 검색부;
상기 프로바이더 검색부에서 검색된 클라우드 인프라 프로바이더 및 클라우드 인프라 서비스를 클라우드 서버 구성을 위한 템플릿 형태로 생성하는 템플릿 생성부;
상기 템플릿 생성부에서 생성된 템플릿을 구성하는 코드의 호환성을 확인하는 코드 호환 확인부; 및
상기 코드 호환 확인부에서 코드의 호환성이 확인되면, 상기 생성된 템플릿을 이용하여 클라우드 서버를 생성하는 클라우드 서버 생성부; 및
상기 프로바이더 검색부에서 검색된 클라우드 인프라 프로바이더와 서비스의 검색 결과 및 정렬 결과를 상기 요구 데이터 저장부에 저장된 입력 데이터와 매칭하여 저장하고, 상기 클라우드 서버 생성부에서 생성한 클라우드 서버의 결과 코드를 저장하는 결과 저장부;를 더 포함하고,
상기 결과 저장부의 데이터는 암호화되어 잠금 영역에 마이그레이션되고,
상기 클라우드 서버 생성부는,
생성된 클라우드 서버의 추가를 포함한 변경이 있을 때, 상기 잠금 영역에 저장된 데이터에 접근하여 상기 결과 코드 확인하고, 변경된 클라우드 서버에 대한 결과 코드를 업데이트하고,
상기 프로바이더 검색부는,
상기 클라우드 인프라 프로바이더와 서비스를 정렬하는 동작에서 상기 결과 저장부에 저장된 데이터를 이용하고,
상기 템플릿 생성부는,
파일의 변동 빈도에 기반하여 서로 다른 클라우드 서버 사이의 파일을 이동시키는 마이그레이션 코드를 포함하여 템플릿을 형성하는 시스템.
a provider storage unit that stores information of a cloud infrastructure provider that provides a cloud infrastructure service;
a service storage unit for storing information on cloud infrastructure services provided by the cloud infrastructure provider from the provider storage unit;
an evaluation information generating unit that analyzes previously adopted cloud infrastructure providers and services to generate evaluation information of the cloud infrastructure providers and cloud infrastructure services;
a request data storage unit for receiving and storing input data including at least one of user information and necessary service information including the user's industry type and the user's size;
A provider search that compares the input data stored in the request data storage unit with the cloud infrastructure provider stored in the provider storage unit and the cloud infrastructure service stored in the service storage unit and sorts them using the evaluation information of the evaluation information generation unit wealth;
a template generation unit generating the cloud infrastructure providers and cloud infrastructure services found in the provider search unit in the form of a template for configuring a cloud server;
a code compatibility checking unit for checking compatibility of codes constituting the template generated by the template generating unit; and
a cloud server generation unit configured to generate a cloud server using the generated template when the code compatibility is confirmed by the code compatibility verification unit; and
The search results and sorting results of the cloud infrastructure providers and services found in the provider search unit are matched and stored with the input data stored in the request data storage unit, and the result code of the cloud server generated by the cloud server generation unit is stored. It further comprises a result storage unit;
The data in the result storage unit is encrypted and migrated to the lock area,
The cloud server generation unit,
When there is a change including the addition of the created cloud server, access the data stored in the lock area to check the result code, update the result code for the changed cloud server,
The provider search unit,
Using the data stored in the result storage unit in the operation of aligning the cloud infrastructure provider and service,
The template generating unit,
A system that forms a template, including migration code that moves files between different cloud servers based on how often the files change.
제1항에 있어서,
상기 클라우드 서버 생성부는,
상기 클라우드 서버의 추가를 포함한 변경이 있을 때, 변경에 따른 결과 코드를 원래 저장된 결과 코드에 병합하는 시스템.
According to claim 1,
The cloud server generation unit,
When there is a change including the addition of the cloud server, a system for merging the result code according to the change into the originally stored result code.
삭제delete
KR1020210101687A 2021-08-03 2021-08-03 Management system for template of cloud infra provider and service KR102337810B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210101687A KR102337810B1 (en) 2021-08-03 2021-08-03 Management system for template of cloud infra provider and service

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210101687A KR102337810B1 (en) 2021-08-03 2021-08-03 Management system for template of cloud infra provider and service

Publications (1)

Publication Number Publication Date
KR102337810B1 true KR102337810B1 (en) 2021-12-09

Family

ID=78866196

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210101687A KR102337810B1 (en) 2021-08-03 2021-08-03 Management system for template of cloud infra provider and service

Country Status (1)

Country Link
KR (1) KR102337810B1 (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009032038A (en) * 2007-07-27 2009-02-12 Hitachi Ltd Storage system connected with removable encoding/decoding module
KR20140003045A (en) * 2012-06-29 2014-01-09 인텔렉추얼디스커버리 주식회사 System and method for service on-demand analysis of cloud service
US20180176078A1 (en) * 2016-12-21 2018-06-21 Joseph Nicholas Nigro Automated platform provisioning 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
KR101977536B1 (en) * 2018-04-05 2019-05-10 부산대학교 산학협력단 Device and method for recommending and integrating cloud service
KR102214139B1 (en) * 2020-06-04 2021-02-09 (주)케이아이티원 Management system for cloud infrastructure template

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009032038A (en) * 2007-07-27 2009-02-12 Hitachi Ltd Storage system connected with removable encoding/decoding module
KR20140003045A (en) * 2012-06-29 2014-01-09 인텔렉추얼디스커버리 주식회사 System and method for service on-demand analysis of cloud service
US20180176078A1 (en) * 2016-12-21 2018-06-21 Joseph Nicholas Nigro Automated platform provisioning 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
KR101977536B1 (en) * 2018-04-05 2019-05-10 부산대학교 산학협력단 Device and method for recommending and integrating cloud service
KR102214139B1 (en) * 2020-06-04 2021-02-09 (주)케이아이티원 Management system for cloud infrastructure template

Similar Documents

Publication Publication Date Title
US10929369B2 (en) Optimized orchestration of complex application-migration projects based on data sensitivity
US10534581B2 (en) Application deployment on a host platform based on text tags descriptive of application requirements
US11093320B2 (en) Analysis facilitator
US11226889B2 (en) Regression prediction in software development
US11558451B2 (en) Machine learning based application deployment
US11269835B2 (en) Customization and recommendation of tree-structured templates
US20210271466A1 (en) Assisting Dependency Migration
US9582270B2 (en) Effective feature location in large legacy systems
AU2021359241A1 (en) Learning-based workload resource optimization for database management systems
US11782913B2 (en) AI-based data virtualization
US11221846B2 (en) Automated transformation of applications to a target computing environment
JP2023509369A (en) Running workloads in a multi-cloud environment
KR102337810B1 (en) Management system for template of cloud infra provider and service
CN112306964A (en) Metadata-based scientific data characterization driven on a large scale by knowledge databases
CN111801666A (en) Query recognition resiliency determination in virtual proxy systems
US20220206786A1 (en) Code library selection management
US11836469B2 (en) Dynamic code snippet promotion
US10025838B2 (en) Extract transform load input suggestion
US20220357930A1 (en) Container file creation based on classified non-functional requirements
JP6705482B2 (en) System construction parameter management device, system construction parameter management system, system construction parameter management method, and system construction parameter management program
US11645110B2 (en) Intelligent generation and organization of user manuals
US11836483B1 (en) Compatible and secure software upgrades
US11893032B2 (en) Measuring relevance of datasets to a data science model
US11853750B2 (en) Subject matter expert identification and code analysis based on a probabilistic filter
US11561979B2 (en) Dynamically detecting and correcting errors in queries

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant