KR20170072552A - 클라우드 개발 환경을 위한 컨테이너 서비스 방법 및 그 장치 - Google Patents

클라우드 개발 환경을 위한 컨테이너 서비스 방법 및 그 장치 Download PDF

Info

Publication number
KR20170072552A
KR20170072552A KR1020150180847A KR20150180847A KR20170072552A KR 20170072552 A KR20170072552 A KR 20170072552A KR 1020150180847 A KR1020150180847 A KR 1020150180847A KR 20150180847 A KR20150180847 A KR 20150180847A KR 20170072552 A KR20170072552 A KR 20170072552A
Authority
KR
South Korea
Prior art keywords
container
user
service
development environment
cloud development
Prior art date
Application number
KR1020150180847A
Other languages
English (en)
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 KR1020150180847A priority Critical patent/KR20170072552A/ko
Publication of KR20170072552A publication Critical patent/KR20170072552A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명에 따른 클라우드 개발 환경을 위한 컨테이너 서비스 방법은, 클라우드 개발 환경 내에서 온-디멘드(on-demand) 컨테이너를 생성 및 할당하는 방법에 있어서, 사용자로부터 컨테이너의 생성 요청이 수신될 때, 사용자 권한과 요구사항을 조회하는 단계와, 조회된 상기 사용자 권한과 요구사항에 의거하여 상기 컨테이너를 생성하는 단계와, 생성된 상기 컨테이너를 상기 사용자에게 할당하는 단계와, 상기 사용자로부터 상기 컨테이너의 사용 종료를 위한 삭제 요청이 수신될 때 상기 컨테이너를 삭제하는 단계를 포함할 수 있다.

Description

클라우드 개발 환경을 위한 컨테이너 서비스 방법 및 그 장치{METHOD AND APPARATUS FOR SERVICING CONTAINER IN CLOUD DEVELOPMENT}
본 발명은 컨테이너를 서비스하는 기법에 관한 것으로, 더욱 상세하게는 클라우드에서 개발자 환경을 지원하기 위한 PaaS(Platform as a Service)에서 개발자에게 제공하는 개발 환경 내에서 루트 권한 없이 사용자 권한 및 요구사항에 따라 컨테이너를 생성 및 할당할 수 있는 클라우드 개발 환경을 위한 컨테이너 서비스 방법 및 그 장치에 관한 것이다.
최근 들어, 클라우드 기술의 발달에 따라 물리적인 서버를 구입하기보다는 사용요금만 내고 빌려 쓰는 가상 서버 및 가상 머신이 많이 사용되고 있다. 물리적인 서버를 구매 및 설치하고 환경을 설정하는 데에는 시간이 많이 소요되지만, 클라우드 환경에서는 이전보다 쉽게 가상 서버 및 가상 머신을 생성할 수 있다.
그러나, 수천 내지 수만 대의 가상 서버 및 가상 머신에 여러 가지 소프트웨어를 설치하고 환경을 설정하는 데에는 아직도 많은 어려움이 수반되는 문제가 있으며, 이에 따라 클라우드 환경에서 가상 서버 및 가상 머신의 설치와 배포를 쉽고 빠르게 실행할 수 있는 기술에 대한 요구가 증가하고 있다.
그런데, 가상 머신은 사용이 편리하기는 하지만 물리적인 서버에 비해서 속도가 느리다는 등 성능이 다소 떨어지는 문제가 있다. 또한, 가상 머신 자체는 완전한 컴퓨터이기 때문에 항상 게스트 운영체제(OS)를 설치해야 하고, 따라서 이미지 안에 운영체제가 포함되기 때문에 이미지 용량이 커지는 등의 문제가 있었다. 즉, 가상화에만 초점이 맞춰져 있기 때문에 이미지를 생성하고 실행하는 기능만 있을 뿐 배포 및 관리 기능이 부족하다는 문제가 있다.
이에 반해, 컨테이너는 가상화 또는 반가상화보다 좀 더 경량화된 방식을 사용한다. 즉, 게스트 운영체제를 설치하지 않고 서버 운영을 위한 프로그램과 라이브러리만 격리해서 설치할 수 있고, 시스템 콜과 같은 운영체제 자원은 호스트 머신과 공유하게 되면서 이미지 용량도 크게 줄어드는 장점을 갖는다.
그리고, 컨테이너에 대한 관심이 증가하는 이유는 개발자들이 개발에만 신경을 쓸 수 있기 때문이다. 즉, 개발자들은 소프트웨어 개발을 위해서 개발 환경에 대한 고민을 많이 하는데, 예컨대 리눅스의 경우 커널 버전은 무엇인지, 운영체제 버전은 어떤 종류인지 등에 대한 환경을 먼저 고려한다.
이것은 운영체제가 다르면 자바 등 언어의 패키지 버전도 다르기 때문에 당연히 신경을 쓸 수밖에 없으며, 이를 위해 개발자는 코드를 작성하기 위해 시간을 써야 하는데 환경을 구성하기 위해 더 많은 시간을 할애하고 있다.
그러나, 컨테이너가 등장하면서 코드에만 신경을 쓸 수 있게 되었는데, 이것은 컨테이너가 운영체제 커널에 관계없이 실행되기 때문이다.
한편, 컨테이너로 서버를 구축할 때는 일반적으로 하나의 컨테이너에 웹서버 및 데이터베이스 등을 모두 포함하는 것이 아니다. 즉, 하나의 컨테이너에 웹서버를 설치하고, 또 다른 컨테이너에 데이터베이스를 설치 및 생성한 후 이들 컨테이너를 연결하여 사용한다. 이러한 접근법은 추가 자원이 더 필요한 컨테이너만 추가 생성하여 자원을 증가시켜 줄 수 있기 때문에 부하 증감에 보다 신속하고 효율적으로 대응할 수 있는 장점이 있다.
그러나, 종래에는 컨테이너 생성 및 실행을 항상 루트(root) 권한으로 실행해야 했었다. 즉, 호스트 서버의 루트 사용자 또는 가상 머신을 할당받은 사용자만이 루트 권한으로 컨테이너를 실행할 수 있었다.
이때, 가상 머신을 할당받은 사용자가 컨테이너를 사용하는 경우, 호스트 서버 운영체제에 별도의 운영체제를 가진 가상 머신을 할당받아 그 안에서 또 컨테이너를 생성하여 사용해야만 하기 때문에 스토리지 자원을 효율적으로 사용하지 못하는 단점이 있다.
대한민국 공개특허 제2015-0099440호(공개일: 2015. 08. 31)
본 발명은, 클라우드에서 개발자 환경을 지원하기 위한 PaaS(Platform as a Service)에서 개발자에게 제공하는 개발 환경 내에서 사용자 권한 및 요구에 따라 컨테이너를 생성 및 할당함으로써 루트 권한 없이도 클라우드 자원을 사용할 수 있는 컨테이너 서비스 방법 및 그 장치를 제안하고자 한다.
본 발명의 실시 예에 따르면, 클라우드 개발 환경을 위한 컨테이너 서비스 방법과 이러한 컨테이너 서비스 방법을 프로세서가 수행할 수 있도록 컴퓨터 판독 가능한 기록매체에 저장된 컴퓨터 프로그램을 제안한다.
본 발명이 해결하고자 하는 과제는 상기에서 언급한 것으로 제한되지 않으며, 언급되지 않은 또 다른 해결하고자 하는 과제는 아래의 기재들로부터 본 발명이 속하는 통상의 지식을 가진 자에 의해 명확하게 이해될 수 있을 것이다.
본 발명은, 일 관점에 따라, 클라우드 개발 환경 내에서 온-디멘드(on-demand) 컨테이너를 생성 및 할당하는 방법에 있어서, 사용자로부터 컨테이너의 생성 요청이 수신될 때, 사용자 권한과 요구사항을 조회하는 단계와, 조회된 상기 사용자 권한과 요구사항에 의거하여 상기 컨테이너를 생성하는 단계와, 생성된 상기 컨테이너를 상기 사용자에게 할당하는 단계와, 상기 사용자로부터 상기 컨테이너의 사용 종료를 위한 삭제 요청이 수신될 때 상기 컨테이너를 삭제하는 단계를 포함하는 클라우드 개발 환경을 위한 컨테이너 서비스 방법을 제공한다.
본 발명은, 다른 관점에 따라, 제 1 항 내지 제 9 항 중 어느 한 항에 따른 클라우드 개발 환경을 위한 컨테이너 서비스 방법을 프로세서가 수행할 수 있도록 컴퓨터 판독 가능한 기록매체에 저장된 컴퓨터 프로그램을 제공한다.
본 발명은, 또 다른 관점에 따라, 컨테이너의 생성 요청을 위한 사용자 인터페이스를 제공하는 사용자 인터페이스 제공부와, 상기 사용자 인터페이스 제공부를 통해 상기 컨테이너의 생성 요청을 수신하는 요청 수신부와, 사용자 권한과 요구사항을 저장하는 정보 저장부와, 상기 생성 요청이 수신될 때, 상기 정보 저장부에 저장된 상기 사용자 권한과 요구사항에 의거하여 컨테이너를 생성한 후 상기 사용자에게 할당하는 컨테이너 자원 관리부를 포함하는 클라우드 개발 환경을 위한 컨테이너 서비스 장치를 제공한다.
본 발명은 클라우드에서 개발자 환경을 지원하기 위한 PaaS에서 개발자에게 제공하는 개발 환경 내에서 사용자 권한 및 요구에 따라 컨테이너를 생성 및 할당함으로써 루트 권한 없이도 클라우드 자원을 효율적으로 사용할 수 있으며, 이를 통해 클라우드 사용 비용의 절감과 더불어 어플리케이션의 개발 및 배포의 용이성을 실현할 수 있다.
도 1은 본 발명의 실시 예에 따른 클라우드 개발 환경을 위한 컨테이너 서비스 장치에 대한 블록 구성도이다.
도 2a는 기존의 가상머신 계층도이고, 2b는 본 발명에 따른 예시적인 컨테이너 계층도이다.
도 3a는 기존의 가상머신 배치도이고, 3b는 본 발명에 따른 예시적인 컨테이너 배치도이다.
도 4는 본 발명의 실시 예에 따라 클라우드 개발 환경을 위한 컨테이너 서비스를 제공하는 주요 절차를 도시한 순서도이다.
먼저, 본 발명의 장점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되는 실시 예들을 참조하면 명확해질 것이다. 여기에서, 본 발명은 이하에서 개시되는 실시 예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 발명의 범주를 명확하게 이해할 수 있도록 하기 위해 예시적으로 제공되는 것이므로, 본 발명의 기술적 범위는 청구항들에 의해 정의되어야 할 것이다.
아울러, 아래의 본 발명을 설명함에 있어서 공지 기능 또는 구성 등에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들인 것으로, 이는 사용자, 운용자 등의 의도 또는 관례 등에 따라 달라질 수 있음은 물론이다. 그러므로, 그 정의는 본 명세서의 전반에 걸쳐 기술되는 기술사상을 토대로 이루어져야 할 것이다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시 예에 대하여 상세하게 설명한다.
도 1은 본 발명의 실시 예에 따른 클라우드 개발 환경을 위한 컨테이너 서비스 장치에 대한 블록 구성도이다.
도 1을 참조하면, 본 발명의 실시 예에 따른 컨테이너 서비스 장치는 사용자 인터페이스 제공부(110), 요청 수신부(120), 컨테이너 자원 관리부(130), 정보 저장부(140) 및 컨테이너 보안 관리부(150) 등을 포함할 수 있다.
먼저, 사용자 인터페이스 제공부(110)는 클라우드 개발 환경 등을 위해 컨테이너의 생성을 요청하기 위한 사용자 인터페이스를 제공하는 등의 기능을 수행할 수 있다. 여기에서, 사용자는, 루트 권한 또는 가상 머신이 없는 클라우드 사용자를 의미할 수 있다.
그리고, 요청 수신부(120)는 사용자 인터페이스 제공부(110)를 컨테이너의 생성 요청, 즉 루트 권한 또는 가상 머신이 없는 클라우드 사용자로부터 컨테이너의 생성 요청이 수신될 때 컨테이너 자원 관리부(130)로 전달하는 등의 기능을 제공할 수 있다.
다음에, 컨테이너 자원 관리부(130)는 요청 수신부(120)로부터 컨테이너의 생성 요청이 전달될 때, 정보 저장부(140)에 기 저장되어 있는 사용자 권한과 요구사항의 조회 등을 통해 컨테이너를 생성하고, 이 생성된 컨테이너를 사용자에게 할당하는 등의 기능을 제공할 수 있는데, 이를 위해 컨테이너 가능자원 조회 블록(131), 권한 및 요구사항 조회 블록(132), 컨테이너 생성 블록(133), 컨테이너 할당 블록(134), 할당 컨테이너 표시 블록(135), 컨테이너 해제 블록(136) 및 컨테이너 삭제 블록(137) 등을 포함할 수 있다.
여기에서, 정보 저장부(140)에는 사용자 권한과 요구사항 등의 정보들이 기 저장되어 있는데, 사용자 권한은, 예컨대 사용자의 가입 요금제 또는 기 할당된 권한 등급 중 어느 하나를 의미할 수 있다.
또한, 사용자 권한은, 예컨대 하드웨어 자원 권한, 기능 권한 및 서비스 사용 권한 등을 포함할 수 있는데, 하드웨어 자원 권한은, 예컨대 컨테이너 개수, 프로세서 개수 및 용량, 코어 개수, 메모리 용량, 디스크 용량 등을 포함할 수 있고, 기능 권한은, 예컨대 오토 스케일링, 로드 밸런싱, 고가용성, 경보(alerting), 사용 가능 프로그래밍 언어 등을 포함할 수 있으며, 서비스 사용 권한은, 예컨대 데이터베이스 서비스, 미들웨어 서비스, 응용 서비스 등을 포함할 수 있다.
그리고, 요구사항은, 예컨대 서비스 품질(QoS)에 대한 서비스 수준 협약(Service Level Agreement) 등을 포함할 수 있는데, 여기에서 서비스 품질은, 예컨대 평균/최대 지연시간, 연간 장애 발생 누적 시간 등을 포함할 수 있다.
여기에서, 평균/최대 지연시간은 도시 생략된 미터링/모니터링 서버를 통해 수집될 수 있으며, 물리적으로 컨테이너 서비스 장치와 별도의 서버로 구성될 수도 있으나 미터링/모니터링 정보는 컨테이너 서비스 장치를 통해 제공된다. 또한, 평균/최대 지연 시간은 사용자가 지정한 설정값 시간 구간별로 누적, 예컨대 1분, 5분, 10분, 30분, 1시간 등의 구간별로 누적될 수 있다. 이때, 지연시간을 측정하는 방법은 주기적으로 RTT(Roud Trip delay Time)을 측정하거나, 또는 패킷 손실율(패킷이 네트워크 경로를 왕복하는 동안 보낸 데이터가 돌아오지 않는 데이터 비율을 나타내는 손실율은 손실되는 데이터를 백분율 %로 나타냄)이 일정 값을 넘어서게 될 때만 측정할 수도 있다.
또한, 연간 장애 발생 누적 시간은 미터링/모니터링 서버를 통해 수집될 수 있으며, 클라우드 사업자의 귀책사유에 의해 발생하는 장애와 사용자의 귀책사유에 의해 발생하는 장애로 구분될 수 있다. 모니터링 서버가 주기적으로 서비스에 대한 정상 동작 여부를 폴링을 통해 감시하며, 폴링에 대한 응답이 없는 시간을 장애시간으로 간주하여 해당 시간을 장애 시간으로 누적할 있다.
다음에, 컨테이너 자원 관리부(130) 내의 컨테이너 가능자원 조회 블록(131)은 요청 수신부(120)로부터 컨테이너의 생성 요청이 수신될 때, 정보 저장부(140)로의 조회를 통해 요청된 컨테이너를 생성 가능한 자원(예컨대, 컴퓨팅, 스토리지, 네트워크 자원 등)이 존재하는 지의 여부를 확인(체크)하고, 자원이 존재하는 것으로 판단될 때 이를 컨테이너 생성 블록(133)으로 통지하는 등의 기능을 제공할 수 있다.
또한, 권한 및 요구사항 조회 블록(132)은 정보 저장부(140)로의 조회를 통해 사용자에 의해 요구된 컨테이너 자원 규모가 사용자가 사용 가능한 권한(또는 권한 조건)을 충족시키는지의 여부를 확인(체크)하고, 권한이 충족되는 것으로 판단될 때 이를 컨테이너 생성 블록(133)으로 통지하는 등의 기능을 제공할 수 있다.
한편, 권한 및 요구사항 조회 블록(132)은 사용자가 요구한 컨테이너의 생성 요청이 사용자 권한과 요구사항의 조건에 불충족될 때, 사용자가 요구한 조건에 가장 적합한 사용자 권한과 요구사항을 사용자에게 안내(제안)할 수 있다. 예컨대, 사용자가 요구한 조건이 6개이고, 사용할 수 있는 프로파일(권한 집합, 예컨대 Gold는 HDD 20G, Memory 1G, N/W 10Gb, 프로세서 4개, 코어 2개, 1500 Transaction Per Second, Silver는 HDD 15G, Memory 1G, N/W 1Gb, 프로세서 2개, 코어 1개, 1000 TPS 등)에 만족하는 조건이 가장 많은(예를 들면, 6개 중에서 4개) 프로파일을 안내할 수 있다.
또한, 권한 및 요구사항 조회 블록(132)은 사용자가 요구한 컨테이너의 생성 요청이 사용자 권한과 요구사항의 조건에 불충족될 때, 상기와 같이 사용자가 요구하는 조건을 만족하는 개수를 기준으로 하는 것 외에도, 조건별로 가중치를 부여하여(예컨대, 프로세서 요구 조건 30%, 코어 요구 조건 30%, Memory 25%, HDD 15%, TPS 10% 등) 사용자 요구조건에 가장 적합한 가중치가 부여된 점수가 높은 조건을 사용자에게 안내할 수도 있다.
그리고, 컨테이너 생성 블록(133)은 사용자가 요청한 자원이 존재함과 동시에 사용 가능한 권한 조건(사용자 권한 및 요구사항)이 충족되거나 혹은 사용자가 선택한 사용자 권한과 요구사항에 의거하여 요구된 컨테이너 자원 규모에 대응하는 컨테이너를 생성한 후 컨테이너 할당 블록(134)으로 전달하는 등의 기능을 제공할 수 있다.
또한, 컨테이너 할당 블록(134)은 컨테이너 생성 블록(133)을 통해 생성된 컨테이너를 사용자(즉, 루트 권한 또는 가상 머신이 없는 클라우드 사용자)에게 할당하는 등의 기능을 제공할 수 있으며, 따라서 사용자는 자신에게 할당된 컨테이너를 통해 게스트 운영체제(OS)가 없는 독립된 운영 환경에서 사용자 단말의 성능 그대로를 이용하여 어플리케이션 등을 실행할 수 있다.
다음에, 할당 컨테이너 표시 블록(135)은 컨테이너 할당 블록(134)을 통해 해당 사용자에게 컨테이너가 할당될 때 할당된 컨테이너 리스트를 생성하고, 이 생성된 컨테이너 리스트를 컨테이너 사용자, 클라우드 운영자 및 PaaS(Platform as a Service) 운영자에게 표출하는 등의 기능을 제공할 수 있다.
여기에서, 할당 컨테이너 리스트에는 컨테이너 식별자(ID), 컨테이너 이름, 컨테이너 이미지, 실행한 파일, 생성 시간, 실행 상태, 포트 등이 포함될 수 있는데, 이러한 할당 컨테이너 리스트를 표출해 주는 것은 컨테이너 생성 및 상태를 확인할 수 있도록 하기 위해서이며, 또한 컨테이너 식별자, 이름 등을 확인하여 컨테이너와 컨테이너끼리 연결할 수 있도록 함으로써 다른 컨테이너의 DB에 연결하거나 새로운 서비스를 만들 수 있도록 하기 위해서이다.
그리고, 컨테이너 해제 블록(136)은 사용자의 요청에 따라 컨테이너를 할당받아 사용 중이던 사용자 단말로부터 컨테이너의 사용 종료를 위한 삭제 요청이 수신되는 지의 여부를 모니터링, 즉 요청 수신부(120)를 통해 삭제 요청이 수신되는 지의 여부를 체크하여 삭제 요청이 수신될 때 해당 사용자에게 할당해 준 컨테이너를 해제시킨 후 이를 컨테이너 삭제 블록(137)으로 통지하는 등의 기능을 제공할 수 있다.
여기에서, 컨테이너 해제라 함은 서비스를 사용할 수 없는 상태가 되었지만 데이터는 아직 삭지되지 않아서 컨테이너를 활성화시키면 다시 사용할 수 있는 복구 가능한 상태를 의미할 수 있다.
또한, 컨테이너 삭제 블록(137)은 컨테이너 해제 블록(136)을 통해 해제된 컨테이너를 삭제하는 등의 기능을 제공할 수 있다. 여기에서, 컨테이너 삭제라 함은 컨테이너를 더 이상 사용할 수 없도록 완전히 제거된 복구가 불가능한 상태를 의미할 수 있다.
다시 도 1을 참조하면, 컨테이너 보안 관리부(150)는, 사용자가 생성 및 할당된 컨테이너를 사용할 때 루트 권한이 허용되지 않도록 격리시키는 보안 모듈로서 기능할 수 있는 것으로, 사용자의 생성 요청에 따라 생성되어 사용자에게 할당된 컨테이너에서 루트 권한으로 다른 명령어가 실행되는지의 여부를 모니터링하고 루트 권한으로 다른 명령어가 실행될 때 이를 차단하는 등의 기능을 제공할 수 있다. 이것은 루트 권한이 없는 일반 사용자에 의한 악의적인 루트 권한의 허용을 방지하기 위해서이다.
도 2a는 기존의 가상머신 계층도이고, 2b는 본 발명에 따른 예시적인 컨테이너 계층도이다.
도 2a를 참조하면, 가상머신은 하나의 컴퓨터이기 때문에 호스트 OS와 하이퍼바이저 위에 항상 게스트 OS를 설치해야 한다. 따라서, 이미지 안에 OS가 포함되기 때문에 이미지 용량이 커지는 단점이 있을 뿐만 아니라 가상화 이미지를 인터넷을 통해 전송하기 위해서는 많은 트래픽이 유발되는 문제가 있다. 특히, 가상머신은 OS를 가상화하는 것에만 초점이 맞춰져 있기 때문에, 이미지를 생성하고 실행하는 기능만 있을 뿐 배포와 관리 기능은 부족하다.
도 2b를 참조하면, 컨테이너는 가상머신에 비해 상대적으로 경량화된 계층 구조를 갖는데, 이러한 컨테이너에는 호스트 OS 위에 컨테이너 엔진만 존재할 뿐 별도의 게스트 OS가 존재하지 않는다. 따라서, 컨테이너에 설치되는 이미지에 서버 운영을 위한 프로그램과 라이브러리만 격리해서 설치할 수 있으며, OS 자원은 호스트 OS와 공유하는 방법으로 이미지 용량을 크게 줄일 수 있다. 또한, 컨테이너는 가상머신과 달리 하드웨어를 가상화하는 계층이 별도로 없기 때문에 메모리 접근, 파일시스템 및 네트워크 속도가 가상머신에 비해 상대적으로 빠른 장점을 가질 수 있다.
도 3a는 기존의 가상머신 배치도이고, 3b는 본 발명에 따른 예시적인 컨테이너 배치도이다.
도 3a를 참조하면, 기존에는 가상머신을 사용할 경우에 호스트 서버에 가상머신을 생성하고, 가상머신을 할당받은 사용자가 가상머신에 한 개 이상의 컨테이너를 생성하여 사용하였다. 컨테이너는 가상머신에 비해 경량화하여 사용할 수 있는 것이 장점인데, 가상머신 위에 컨테이너를 사용함으로써 컨테이너 사용 의도가 퇴색될 정도로 계층이 무거워지는 문제가 있다.
도 3b를 참조하면, 본 발명의 컨테이너 배치도에서는 서버에 가상머신을 사용하지 않고, 컨테이너를 설치하게 된다. 기존 가상머신 안에 컨테이너를 사용하는 방법과 비교하면 계층이 상대적으로 매우 단순해지며 이에 따라 컨테이너의 장점인 빠른 메모리 접근, 파일시스템 및 네트워크 속도를 충분히 활용할 수 있다.
그러나, 컨테이너는 보안상의 이유로 루트(root) 권한을 가진 사용자만 사용할 수 있기 때문에, 일반 사용자가 컨테이너를 사용할 수 있도록 하려면 별도의 장치가 필요한데, 이를 위한 장치가 사용자 인터페이스 제공부와 보안모듈이다.
즉, 루트 권한이 없는 일반 사용자가 컨테이너를 사용할 수 있도록 하기 위해서 사용자 인터페이스 제공부를 통해서만 접근할 수 있도록 함으로써, 악의적인 사용자가 루트 쉘 명령어 모드로 접근할 수 없도록 한다. 또한, 보안모듈을 구축하여 컨테이너를 격리시키도록 함으로써, 컨테이너 외부의 파일 및 디렉터리에 접근할 수 없도록 관리할 수 있고, 또한 사용자에게 할당되지 않았거나 허가받지 않은 프로세스로 접근할 수 없도록 관리할 수 있다.
다음에, 상술한 바와 같은 구성을 갖는 본 실시 예의 컨테이너 서비스 장치를 이용하여 클라우드 개발 환경을 위한 컨테이너 서비스를 제공하는 일련의 과정들에 대하여 상세하게 설명한다.
도 4는 본 발명의 실시 예에 따라 클라우드 개발 환경을 위한 컨테이너 서비스를 제공하는 주요 절차를 도시한 순서도이다.
도 4를 참조하면, 요청 수신부(120)에서는 사용자 인터페이스 제공부(110)를 컨테이너의 생성 요청, 즉 루트 권한 또는 가상 머신이 없는 클라우드 사용자로부터 컨테이너의 생성 요청이 수신되면 이를 컨테이너 자원 관리부(130)로 전달한다(단계 402).
다음에, 컨테이너 가능자원 조회 블록(131)에서 요청 수신부(120)로부터 컨테이너의 생성 요청이 수신될 때, 정보 저장부(140)를 조회함으로써 요청된 컨테이너를 생성 가능한 자원(예컨대, 컴퓨팅, 스토리지, 네트워크 자원 등)이 존재하는 지의 여부를 체크한다(단계 404).
이어서, 권한 및 요구사항 조회 블록(132)에서는 정보 저장부(140)를 조회함으로써 사용자에 의해 요구된 컨테이너 자원 규모가 사용자가 사용 가능한 권한(또는 권한 조건)을 충족시키는지의 여부를 체크한다(단계 406).
이때, 권한 및 요구사항 조회 블록(132)은 사용자가 요구한 컨테이너의 생성 요청이 사용자 권한과 요구사항의 조건에 불충족될 때, 사용자가 요구한 조건에 가장 적합한 사용자 권한과 요구사항을 사용자에게 안내하거나 혹은 조건별로 가중치를 부여하여 사용자 요구조건에 가장 적합한 가중치가 부여된 점수가 높은 조건을 사용자에게 안내할 수 있다.
다음에, 컨테이너 생성 블록(133)에서는 사용자가 요청한 자원이 존재함과 동시에 사용 가능한 권한 조건(사용자 권한 및 요구사항)이 충족되거나 혹은 사용자가 선택한 사용자 권한과 요구사항에 의거하여 요구된 컨테이너 자원 규모에 대응하는 컨테이너를 생성하고, 컨테이너 할당 블록(134)에서는 생성된 컨테이너를 사용자(즉, 루트 권한 또는 가상 머신이 없는 클라우드 사용자)에게 할당한다(단계 408).
따라서 사용자는 자신에게 할당된 컨테이너를 통해 게스트 운영체제(OS)가 없는 독립된 운영 환경에서 사용자 단말의 성능 그대로를 이용하여 어플리케이션 등을 실행하는 등의 작업을 수행할 수 있다.
한편, 도 4에서의 도시는 생략되었으나, 할당 컨테이너 표시 블록(135)에서는 해당 사용자에게 컨테이너가 할당될 때 할당된 컨테이너 리스트를 생성하고, 이 생성된 컨테이너 리스트를 컨테이너 사용자, 클라우드 운영자 및 PaaS(Platform as a Service) 운영자에게 표출할 수 있는데, 이러한 할당 컨테이너 리스트에는 컨테이너 식별자(ID), 컨테이너 이름, 컨테이너 이미지, 실행한 파일, 생성 시간, 실행 상태, 포트 등이 포함될 수 있다.
다음에, 컨테이너 해제 블록(136)에서는 사용자의 요청에 따라 컨테이너를 할당받아 사용 중이던 사용자 단말로부터 컨테이너의 사용 종료를 위한 삭제 요청이 수신되는 지의 여부를 모니터링하며(단계 410), 이러한 모니터링을 통해 요청 수신부(120)를 통해 삭제 요청이 수신되는 지의 여부를 체크한다(단계 412).
상기 단계(412)에서의 체크 결과, 삭제 요청이 수신되면 컨테이너 해제 블록(136)에서는 해당 사용자에게 할당해 준 컨테이너를 해제, 즉 서비스를 사용할 수는 없지만 컨테이너를 활성화시키면 다시 사용할 수 있는 복구 가능한 상태로 해제시킨다(단계 414).
이후, 컨테이너 삭제 블록(137)에서는 해제 상태의 컨테이너를 삭제, 즉 복구가 불가능한 상태로 삭제시킨다(단계 416).
한편, 도 4에서의 도시는 생략되었으나, 컨테이너 보안 관리부(150)에서는 사용자에게 할당된 컨테이너에서 루트 권한으로 다른 명령어가 실행되는지의 여부를 모니터링하고 루트 권한으로 다른 명령어가 실행될 때 이를 차단하는 프로세스를 수행할 수 있다.
다른 한편, 상술한 바와 같이 실시 예를 제시하고 있는 본 발명에 따른 클라우드 개발 환경을 위한 컨테이너 서비스 방법은 컴퓨터(또는 휴대용 컴퓨터)로 판독 가능한 기록 매체에 컴퓨터가 실행할 수 있는 코드(컴퓨터 프로그램 코드)로서 구현될 수 있는데, 컴퓨터로 판독 가능한 기록매체는 컴퓨터 시스템에 의해 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함할 수 있다. 이러한 컴퓨터 판독 가능의 기록매체의 예로는 ROM, RAM, CD-ROM, 자기테이프, 플로피디스크, 광 데이터 저장장치, 모바일 앱 등이 있다.
그리고, 본 발명의 실시 예로서 첨부된 블록도의 각 구성부재(블록)와 흐름도의 각 단계의 조합들은 컴퓨터 프로그램 스트럭션들에 의해 수행될 수 있는데, 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 블록도의 각 블록 또는 흐름도의 각 단계에서 설명된 기능들을 수행하는 수단을 생성할 수 있다.
또한, 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리 등에 저장되는 것도 가능하므로, 그 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 블록도의 각 블록 또는 흐름도의 각 단계에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다.
여기에서, 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 블록도의 각 블록 및 흐름도의 각 단계에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.
또한, 각 블록 또는 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 적어도 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다.
그리고, 다른 실시 예들에서는 블록들 또는 단계들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 순서적으로 도시되어 있는 두 개의 블록들 또는 단계들은 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들 또는 단계들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.
이상의 설명은 본 발명의 기술사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경 등이 가능함을 쉽게 알 수 있을 것이다. 즉, 본 발명에 개시된 실시 예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것으로서, 이러한 실시 예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다.
따라서, 본 발명의 보호 범위는 후술되는 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
110 : 사용자 인터페이스 제공부
120 : 요청 수신부
130 : 컨테이너 자원 관리부
131 : 컨테이너 가능자원 조회 블록
132 : 권한 및 요구사항 조회 블록
133 : 컨테이너 생성 블록
134 : 컨테이너 할당 블록
135 : 할당 컨테이너 표시 블록
136 : 컨테이너 해제 블록
137 : 컨테이너 삭제 블록
140 : 정보 저장부
150 : 컨테이너 보안 관리부

Claims (14)

  1. 클라우드 개발 환경 내에서 온-디멘드(on-demand) 컨테이너를 생성 및 할당하는 방법에 있어서,
    사용자로부터 컨테이너의 생성 요청이 수신될 때, 사용자 권한과 요구사항을 조회하는 단계와,
    조회된 상기 사용자 권한과 요구사항에 의거하여 상기 컨테이너를 생성하는 단계와,
    생성된 상기 컨테이너를 상기 사용자에게 할당하는 단계와,
    상기 사용자로부터 상기 컨테이너의 사용 종료를 위한 삭제 요청이 수신될 때 상기 컨테이너를 삭제하는 단계
    를 포함하는 클라우드 개발 환경을 위한 컨테이너 서비스 방법.
  2. 제 1 항에 있어서,
    상기 사용자는,
    루트 권한 또는 가상 머신이 없는 사용자인
    클라우드 개발 환경을 위한 컨테이너 서비스 방법.
  3. 제 1 항에 있어서,
    상기 사용자 권한은,
    상기 사용자의 가입 요금제 또는 기 할당된 권한 등급 중 어느 하나를 나타내는
    클라우드 개발 환경을 위한 컨테이너 서비스 방법.
  4. 제 1 항에 있어서,
    상기 사용자 권한은,
    하드웨어 자원 권한, 기능 권한 및 서비스 사용 권한을 포함하는
    클라우드 개발 환경을 위한 컨테이너 서비스 방법.
  5. 제 4 항에 있어서,
    상기 하드웨어 자원 권한은,
    컨테이너 개수, 프로세서 개수 및 용량, 코어 개수, 메모리 용량, 디스크 용량 중 적어도 하나 이상을 포함하는
    클라우드 개발 환경을 위한 컨테이너 서비스 방법.
  6. 제 4 항에 있어서,
    상기 기능 권한은,
    오토 스케일링, 로드 밸런싱, 고가용성, 경보(alerting), 사용 가능 프로그래밍 언어 중 적어도 하나 이상을 포함하는
    클라우드 개발 환경을 위한 컨테이너 서비스 방법.
  7. 제 4 항에 있어서,
    상기 서비스 사용 권한은,
    데이터베이스 서비스, 미들웨어 서비스, 응용 서비스 중 적어도 하나 이상을 포함하는
    클라우드 개발 환경을 위한 컨테이너 서비스 방법.
  8. 제 1 항에 있어서,
    상기 요구사항은,
    서비스 품질(QoS)에 대한 서비스 수준 협약(Service Level Agreement)을 포함하는
    클라우드 개발 환경을 위한 컨테이너 서비스 방법.
  9. 제 8 항에 있어서,
    상기 서비스 품질은,
    평균/최대 지연시간, 연간 장애 발생 누적 시간을 포함하는
    클라우드 개발 환경을 위한 컨테이너 서비스 방법.
  10. 제 1 항 내지 제 9 항 중 어느 한 항에 따른 클라우드 개발 환경을 위한 컨테이너 서비스 방법을 프로세서가 수행할 수 있도록 컴퓨터 판독 가능한 기록매체에 저장된 컴퓨터 프로그램.
  11. 컨테이너의 생성 요청을 위한 사용자 인터페이스를 제공하는 사용자 인터페이스 제공부와,
    상기 사용자 인터페이스 제공부를 통해 상기 컨테이너의 생성 요청을 수신하는 요청 수신부와,
    사용자 권한과 요구사항을 저장하는 정보 저장부와,
    상기 생성 요청이 수신될 때, 상기 정보 저장부에 저장된 상기 사용자 권한과 요구사항에 의거하여 컨테이너를 생성한 후 상기 사용자에게 할당하는 컨테이너 자원 관리부
    를 포함하는 클라우드 개발 환경을 위한 컨테이너 서비스 장치.
  12. 제 11 항에 있어서,
    상기 장치는,
    할당된 상기 컨테이너에서 루트 권한으로 다른 명령어가 실행될 때 이를 차단하는 컨테이너 보안 관리부
    를 더 포함하는 클라우드 개발 환경을 위한 컨테이너 서비스 장치.
  13. 제 11 항에 있어서,
    상기 컨테이너 자원 관리부는,
    상기 컨테이너의 생성 요청이 수신될 때, 상기 정보 저장부로의 조회를 통해 상기 컨테이너를 생성 가능한 자원이 존재하는 지의 여부를 확인하는 컨테이너 가능자원 조회 블록과,
    상기 사용자에 의해 요구된 컨테이너 자원 규모가 상기 사용자가 사용 가능한 권한을 충족시키는지의 여부를 확인하는 권한 및 요구사항 조회 블록과,
    상기 권한이 충족될 때 상기 요구된 컨테이너 자원 규모에 대응하는 상기 컨테이너를 생성하는 컨테이너 생성 블록과,
    생성된 상기 컨테이너를 상기 사용자에게 할당하는 컨테이너 할당 블록과,
    상기 사용자로부터 상기 컨테이너의 사용 종료를 위한 삭제 요청이 수신될 때 상기 컨테이너를 해제시키는 컨테이너 해제 블록과,
    해제된 상기 컨테이너를 삭제하는 컨테이너 삭제 블록
    을 포함하는 클라우드 개발 환경을 위한 컨테이너 서비스 장치.
  14. 제 13 항에 있어서,
    상기 컨테이너 자원 관리부는,
    상기 컨테이너가 할당될 때 할당된 컨테이너 리스트를 생성하여 상기 사용자, 클라우드 운영자 및 PaaS 운영자에게 표출하는 할당 컨테이너 표시 블록
    을 더 포함하는 클라우드 개발 환경을 위한 컨테이너 서비스 장치.
KR1020150180847A 2015-12-17 2015-12-17 클라우드 개발 환경을 위한 컨테이너 서비스 방법 및 그 장치 KR20170072552A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150180847A KR20170072552A (ko) 2015-12-17 2015-12-17 클라우드 개발 환경을 위한 컨테이너 서비스 방법 및 그 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150180847A KR20170072552A (ko) 2015-12-17 2015-12-17 클라우드 개발 환경을 위한 컨테이너 서비스 방법 및 그 장치

Publications (1)

Publication Number Publication Date
KR20170072552A true KR20170072552A (ko) 2017-06-27

Family

ID=59514635

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150180847A KR20170072552A (ko) 2015-12-17 2015-12-17 클라우드 개발 환경을 위한 컨테이너 서비스 방법 및 그 장치

Country Status (1)

Country Link
KR (1) KR20170072552A (ko)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102099118B1 (ko) * 2019-04-29 2020-04-09 래블업(주) 사용자가 요청한 다수개의 라이브러리를 탑재한 세션 컨테이너 제공방법
CN111259412A (zh) * 2020-01-09 2020-06-09 远景智能国际私人投资有限公司 权限控制方法、装置、计算机设备及存储介质
KR20210058401A (ko) * 2019-11-14 2021-05-24 대구대학교 산학협력단 클라우드 컴퓨팅 환경에서의 컨테이너 배치 장치 및 방법
KR20210065818A (ko) * 2019-11-27 2021-06-04 주식회사 가토랩 딥러닝 프라이빗 클라우드 서비스 시스템의 서비스 제공 방법
KR20210067415A (ko) * 2019-11-29 2021-06-08 주식회사 데브스택 클라우드 컴퓨팅 기반의 플랫폼 제공 시스템 및 이를 이용한 플랫폼 제공 방법
CN113419880A (zh) * 2021-07-19 2021-09-21 北京百度网讯科技有限公司 云手机根权限获取方法、相关装置及计算机程序产品
KR102474986B1 (ko) * 2022-03-03 2022-12-07 농업협동조합중앙회 클라우드 상의 가상 머신 자원 할당을 지원하는 서버 및 그 제어 방법
WO2023106503A1 (ko) * 2021-12-09 2023-06-15 래블업 주식회사 클러스터 상에서 다중 컨테이너 기반 연산 세션의 자동 스케일링 방법 및 시스템
CN117762390A (zh) * 2024-02-22 2024-03-26 北方健康医疗大数据科技有限公司 基于私有云开发环境的程序开发方法、系统、终端及介质

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020222352A1 (ko) * 2019-04-29 2020-11-05 래블업(주) 사용자가 요청한 다수개의 라이브러리를 탑재한 세션 컨테이너 제공방법
KR102099118B1 (ko) * 2019-04-29 2020-04-09 래블업(주) 사용자가 요청한 다수개의 라이브러리를 탑재한 세션 컨테이너 제공방법
US11144343B1 (en) 2019-04-29 2021-10-12 Lablup Inc. Method of providing session container mounted with plurality of libraries requested by user
KR20210058401A (ko) * 2019-11-14 2021-05-24 대구대학교 산학협력단 클라우드 컴퓨팅 환경에서의 컨테이너 배치 장치 및 방법
KR20210065818A (ko) * 2019-11-27 2021-06-04 주식회사 가토랩 딥러닝 프라이빗 클라우드 서비스 시스템의 서비스 제공 방법
KR20210067415A (ko) * 2019-11-29 2021-06-08 주식회사 데브스택 클라우드 컴퓨팅 기반의 플랫폼 제공 시스템 및 이를 이용한 플랫폼 제공 방법
CN111259412B (zh) * 2020-01-09 2023-12-05 远景智能国际私人投资有限公司 权限控制方法、装置、计算机设备及存储介质
CN111259412A (zh) * 2020-01-09 2020-06-09 远景智能国际私人投资有限公司 权限控制方法、装置、计算机设备及存储介质
CN113419880A (zh) * 2021-07-19 2021-09-21 北京百度网讯科技有限公司 云手机根权限获取方法、相关装置及计算机程序产品
CN113419880B (zh) * 2021-07-19 2024-04-09 北京百度网讯科技有限公司 云手机根权限获取方法、相关装置及计算机程序产品
WO2023106503A1 (ko) * 2021-12-09 2023-06-15 래블업 주식회사 클러스터 상에서 다중 컨테이너 기반 연산 세션의 자동 스케일링 방법 및 시스템
US11977911B2 (en) 2021-12-09 2024-05-07 Lablup Inc. Method and system for automatically scaling multi-container-based computational session on cluster
KR102474986B1 (ko) * 2022-03-03 2022-12-07 농업협동조합중앙회 클라우드 상의 가상 머신 자원 할당을 지원하는 서버 및 그 제어 방법
US11886565B2 (en) 2022-03-03 2024-01-30 National Agricultural Cooperative Federation Server that supports security access of terminal device of the user and controlling method thereof
CN117762390A (zh) * 2024-02-22 2024-03-26 北方健康医疗大数据科技有限公司 基于私有云开发环境的程序开发方法、系统、终端及介质

Similar Documents

Publication Publication Date Title
KR20170072552A (ko) 클라우드 개발 환경을 위한 컨테이너 서비스 방법 및 그 장치
US20210266237A1 (en) Methods, systems, and apparatus to scale in and/or scale out resources managed by a cloud automation system
EP3761170B1 (en) Virtual machine creation method and apparatus
EP3313023B1 (en) Life cycle management method and apparatus
US9760395B2 (en) Monitoring hypervisor and provisioned instances of hosted virtual machines using monitoring templates
EP3149591B1 (en) Tracking application deployment errors via cloud logs
WO2017170470A1 (ja) ネットワーク機能仮想化管理オーケストレーション装置と方法とプログラム
US8104038B1 (en) Matching descriptions of resources with workload requirements
US9122534B2 (en) Secure application partitioning enablement
KR101700313B1 (ko) 인스턴스 호스트 구성
US11924117B2 (en) Automated local scaling of compute instances
JP7143417B2 (ja) コンピューティング・デバイス
KR20170022028A (ko) 컨테이너 이미지 보안 검사 방법 및 그 장치
WO2014075875A1 (en) Automatic template creation based on new feeds
US20150067761A1 (en) Managing security and compliance of volatile systems
US20160371102A1 (en) System and method for supporting execution of application based on multi-platform using virtual platform service
US20190190845A1 (en) Dynamic management of computing platform resources
US20170331920A1 (en) Jointly managing a cloud and non-cloud environment
CN112130960A (zh) 一种轻量化移动边缘计算节点及构建方法
CN115039100A (zh) 为安全访客保留一个或多个安全模块
US11748168B2 (en) Flexible batch job scheduling in virtualization environments
US10884818B2 (en) Increasing processing capacity of virtual machines
US20200151049A1 (en) Increasing processing capacity of processor cores during initial program load processing
CN109905258B (zh) PaaS的管理方法、装置及存储介质
US20220318433A1 (en) Provisioning a computing subsystem with disaggregated computing hardware resources selected in compliance with a physical location requirement of a workload

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X601 Decision of rejection after re-examination