KR101826368B1 - 클라우드 컴퓨팅 모니터링 및 관리 시스템 - Google Patents
클라우드 컴퓨팅 모니터링 및 관리 시스템 Download PDFInfo
- Publication number
- KR101826368B1 KR101826368B1 KR1020127018050A KR20127018050A KR101826368B1 KR 101826368 B1 KR101826368 B1 KR 101826368B1 KR 1020127018050 A KR1020127018050 A KR 1020127018050A KR 20127018050 A KR20127018050 A KR 20127018050A KR 101826368 B1 KR101826368 B1 KR 101826368B1
- Authority
- KR
- South Korea
- Prior art keywords
- application
- cloud
- monitoring
- message
- computing environment
- Prior art date
Links
Images
Classifications
-
- 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
-
- 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
- Computer And Data Communications (AREA)
Abstract
클라우드 컴퓨팅 모니터링 시스템은 로컬 모니터링 시스템에 성능 추적 및 경보 관리를 제공하는 경보 캡처링 시스템 및 메시지 전송 시스템을 가진다. 경보 캡처링 시스템은 관리되는 코드 구조의 일부로서 동작할 수 있고, 운영 체계로 전송될 수 있는 경보들 뿐 아니라 애플리케이션 익셉션들 및 디버깅 정보를 캡처 및 라우팅할 수 있다. 메시지 큐잉 시스템은 클라우드 시스템의 메시지 큐잉 시스템에 가입한 커넥터를 가질 수 있는 로컬 모니터링 시스템에 경보들을 전송할 수 있다.
Description
클라우드 컴퓨팅은 종래의 컴퓨터의 여러 양태들을 추상화한 컴퓨팅 패러다임이다. 클라우드 환경에서, 하드웨어 구성요소들은 하드웨어 패브릭(fabric)으로 추상화될 수 있다. 하드웨어 패브릭은 한 개 이상의 데이터 센터들에 위치하는 많은 서버 컴퓨터들일 수 있고, 데이터 센터들은 지리적으로 흩어져 있을 수 있다.
많은 클라우드 환경에서 운영체계에 대한 종래의 개념 역시, 애플리케이션들이 런타임 환경에서 동작할 수 있도록 추상화될 수 있지만, 운영체계 기능들에 대해 제한된 액세스 권한을 가진다.
클라우드 환경은 고도로 확장가능한(scalable) 방식으로 애플리케이션들을 실행할 수 있다. 개발자는 실행할 애플리케이션을 제공할 수 있고, 관리 시스템은 얼마나 많은 컴퓨팅 자원들을 할당할 지와 그 자원들의 지리적 위치를 결정할 수 있으며, 애플리케이션을 실행할 하드웨어 플랫폼들을 결정할 수 있다. 일부 경우, 관리자는 컴퓨팅 자원들에 대한 몇몇 상한 및 하한을 정할 수 있지만, 클라우드 관리 시스템은 특정 자원들의 할당 및 애플리케이션 실행 관리를 처리할 수 있다.
클라우드 관리 시스템이 고부하 기간 중에 자원들을 할당하며 저부하 중에는 자원들에 대한 제한을 없앨 수 있는 것처럼, 클라우드 환경은 애플리케이션들이 부하에 따라 스케일링 업 및 다운되게 할 수 있다.
클라우드 컴퓨팅 모니터링 시스템은 로컬 모니터링 시스템에 성능 추적 및 경보 관리(alert management)를 제공하는 이벤트 캡처링 시스템 및 메시지 전송 시스템을 가진다. 이벤트 캡처링 시스템은 관리되는 코드 구조의 일부로서 동작할 수 있으며, 모니터링 시스템에 전송될 수 있는 경보들뿐만 아니라 애플리케이션 예외들(application exceptions) 및 디버깅 정보를 캡처 및 라우팅할 수 있다. 메시지 큐잉 시스템은 클라우드 시스템의 메시지 큐잉 시스템에 가입하는 커넥터를 가질 수 있는 로컬 모니터링 시스템으로 이벤트들을 전송할 수 있다. 모니터링 시스템은 애플리케이션에 링크되어 애플리케이션에 의해 호출될 수 있는 구조 또는 실행가능 코드 라이브러리일 수 있다.
이 요약은 이하의 상세한 설명에 자세히 기술되는 개념들의 선택을 간략한 형식으로 소개하기 위해 주어진다. 이 요약은 청구된 발명 대상의 주요 특징이나 필수적 특징을 확인하도록 의도되거나 청구된 발명 대상의 범위를 한정하는 데 사용되도록 의도된 것이 아니다.
도면들에서,
도 1은 모니터링 시스템이 클라우드 컴퓨팅 환경을 사용하여 동작할 수 있는 네트워크 환경을 도시하는 일 실시예의 다이어그램이다.
도 2는 모니터링된 이벤트들을 캡처하고, 전송하며 사용하는 방법을 도시하는 일 실시예의 타임라인도이다.
도 3은 모니터링 프레임워크를 가진 클라우드 컴퓨팅 환경을 도시하는 일 실시예의 다이어그램이다.
도 1은 모니터링 시스템이 클라우드 컴퓨팅 환경을 사용하여 동작할 수 있는 네트워크 환경을 도시하는 일 실시예의 다이어그램이다.
도 2는 모니터링된 이벤트들을 캡처하고, 전송하며 사용하는 방법을 도시하는 일 실시예의 타임라인도이다.
도 3은 모니터링 프레임워크를 가진 클라우드 컴퓨팅 환경을 도시하는 일 실시예의 다이어그램이다.
클라우드 컴퓨팅 런타임 환경은 에러, 디버깅 정보, 성능 정보, 상태, 및 중앙집중화된 모니터링 애플리케이션에 전달될 수 있는 다른 정보를 캡처하여 보고하기 위한 실행가능 루틴들을 포함하는 모니터링 프레임워크를 가질 수 있다. 중앙집중화된 모니터링 애플리케이션은 관리자들에게 경보 및 관리 기능들을 제공하기 위해 여러 실행 애플리케이션들로부터 정보를 수집한다. 일부 실시예들에서, 모니터링 애플리케이션은 실시간 네트워크 및 애플리케이션 모니터링을 위해 네트워크 운영 센터에서 사용될 수 있다.
모니터링 프레임워크는 애플리케이션으로부터 정보를 캡처하며 모니터링 애플리케이션으로 그 정보를 전달하는 기능들을 포함할 수 있다. 모니터링 프레임워크는 전송할 정보를 수신하고, 그 정보로부터 메시지를 준비하며, 그 메시지를 모니터링 시스템으로 모니터링 시스템이 사용할 수 있는 포맷으로 전송할 수 있다. 일부 실시예들에서, 메시지 큐잉 시스템은 모니터링 시스템이 메시지 큐에 가입할 수 있게 하는 커넥터 또는 다른 메커니즘을 가지는 모니터링 시스템으로 메시지들을 전송하는 데 사용될 수 있다.
모니터링 프레임워크는 일부 실시예들에서 클라우드 컴퓨팅 환경을 위한 런타임 환경에 포함될 수 있다. 런타임 환경은 실시간 링크, 가비지(garbage) 수집 및 기타 서비스들을 포함할 수 있는 관리 코드 환경일 수 있다. 일부 실시예들에서 모니터링 프레임워크는 애플리케이션이 개발되고, 테스트되며 클라우드 환경 안에 배치될 수 있는 소프트웨어 개발 키트나 다른 소정 실행자들(executables)의 집합 안에 포함될 수 있다.
이 명세서 전체를 통해 동일한 참조 부호는 도면에 대한 설명 전체에 걸쳐 동일한 구성요소를 나타낸다.
구성요소들이 "연결된다(connected)"거나 "결합된다(coupled)"고 언급될 때, 그 구성요소들은 서로 직접 연결되거나 결합될 수 있고, 아니면 한 개 이상의 개재되는 구성요소들이 존재할 수도 있다. 이와 달리, 구성요소들이 "바로 연결된다(directly connected)"거나 "바로 결합된다(directly coupled)"라고 언급될 때에는 개재되는 아무 구성요소들도 존재하지 않는다.
발명의 대상은 장치, 시스템, 방법, 및/또는 컴퓨터 프로그램 제품으로 구현될 수 있다. 따라서, 발명의 대상의 일부나 전부는 하드웨어 및/또는 소프트웨어(펌웨어, 상주 소프트웨어, 마이크로코드, 상태 머신, 게이트 어레이 등을 포함)로 구현될 수 있다. 또한, 발명의 대상은 명령어 실행 시스템에 의하거나 그와 연관되어 사용할 매체 안에 수록된 컴퓨터 이용가능 또는 컴퓨터 판독가능 프로그램 코드를 가지는 컴퓨터 이용가능 또는 컴퓨터 판독가능 저장 매체 상에 있는 컴퓨터 프로그램 제품의 형태를 취할 수 있다. 이 문서와 관련하여 컴퓨터 이용가능 또는 컴퓨터 판독가능 매체는 명령어 실행 시스템, 장치 또는 기기에 의하거나 그와 관련하여 사용할 프로그램을 포함하거나, 저장하거나, 전송하거나, 전파하거나, 운송할 수 있는 어떤 매체일 수 있다.
컴퓨터 이용가능 또는 컴퓨터 판독가능 매체는 예컨대, 비한정적인 것으로서 전자, 자기, 광학, 전자기, 적외선, 또는 반도체 시스템, 장치, 기기, 또는 전파 매체일 수 있다. 한정이 아닌 예로서, 컴퓨터 판독가능 매체는 컴퓨터 판독가능 저장 매체 및 통신 매체를 포함할 수 있다.
컴퓨터 판독가능 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈이나 기타 데이터 같은 정보의 저장을 위해 어떤 방법 또는 기술로 구현된 휘발성 및 비휘발성, 착탈형 및 비착탈형 매체를 포함한다. 컴퓨터 판독가능 저장 매체는 RAM, ROM, EEPROM, 플래시 메모리 또는 다른 메모리 기술, CD-ROM, DVD(digital versatile disks) 또는 다른 광학 저장부, 마그네틱 카세트, 마그네틱 테이프, 마그네틱 디스크 저장부 또는 다른 마그네틱 저장기, 또는 원하는 정보를 저장하는데 사용될 수 있고 명령어 실행 시스템에 의해 액세스될 수 있는 어떤 다른 매체를 포함하나, 그에 국한되지 않는다. 프로그램은 가령 종이나 다른 적절한 매체의 광학적 스캐닝을 통해 전자적으로 캡처되고, 그런 다음 컴파일되고, 해석되고, 필요하다면 적절한 방식으로 다르게 처리되며 그런 다음 컴퓨터 메모리 안에 저장될 수 있으므로, 컴퓨터 이용가능 또는 컴퓨터 판독가능 매체는 프로그램이 인쇄되는 종이나 다른 적절한 매체일 수 있다.
통신 매체는 통상적으로 반송파나 다른 전송 메커니즘 같은 변조된 데이터 신호를 통해 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 다른 데이터를 구현하며 어떤 정보 전달 매체를 포함한다. "변조된 데이터 신호(modulated data signal)"라는 용어는 신호 안에 정보를 인코딩하기 위한 방식으로 세팅되거나 변경되는 신호의 특성들 중 한 개 이상을 가지는 신호라고 정의될 수 있다. 한정하는 것이 아닌 예로서, 통신 매체는 유선 네트워크나 직접 유선 연결 같은 유선 매체, 및 청각, RF, 적외선 및 다른 무선 매체 같은 무선 매체를 포함한다. 상술한 것 중 어느 조합 역시 컴퓨터 판독가능 매체의 범위 안에 포함될 수 있을 것이다.
발명의 대상이 컴퓨터 실행가능 명령어들의 일반적 맥락 안에서 실시될 때, 실시예는 한 개 이상의 시스템, 컴퓨터, 또는 다른 기기들에 의해 실행되는 프로그램 모듈들을 포함할 수 있다. 일반적으로 프로그램 모듈은 특정 작업을 수행하거나 특정한 추상적 데이터 타입들을 구현하는 루틴, 프로그램, 오브젝트, 컴포넌트, 데이터 구조 등을 포함한다. 통상적으로, 프로그램 모듈들의 기능은 다양한 실시예들에서 원하는 바대로 결합되거나 분산될 수 있다.
도 1은 모니터링 시스템을 포함하는 클라우드 환경을 도시하는 일 실시예(100)의 다이어그램이다. 실시예(100)는 클라우드 컴퓨팅 환경 내 애플리케이션들과 연계하여 작업할 수 있는 모니터링 시스템과 장치의 간략화된 예로서, 여기서 클라우드 애플리케이션들은 모니터링 애플리케이션에 의해 사용되는 메시지를 캡처 및 전송하는 모니터링 프레임워크를 이용할 수 있다.
도 1의 도면은 시스템의 기능적 구성요소들을 예시한다. 어떤 경우, 구성요소는 하드웨어 구성요소, 소프트웨어 구성요소, 또는 하드웨어 및 소프트웨어의 조합일 수 있다. 구성요소들의 일부는 애플리케이션 레벨 소프트웨어일 수 있으며, 다른 구성요소들은 운영체계 레벨 구성요소들일 수 있다. 어떤 경우 한 구성요소와 또 다른 구성요소의 연결은 둘 이상의 구성요소들이 한 개의 하드웨어 플랫폼 상에서 동작하는 가까운 연결일 수 있다. 다른 경우 그 연결은 장거리에 걸친 네트워크 접속을 통해 이루어질 수 있다. 각각의 실시예는 기술된 기능들을 수행하기 위해 다양한 하드웨어, 소프트웨어, 및 상호접속 구조들을 이용할 수 있다.
실시예(100)는 클라우드 애플리케이션들을 모니터링할 수 있는 모니터링의 일례이다. 모니터링 시스템이 많은 다양한 기기들, 애플리케이션들, 및 기타 구성요소들을 모니터할 수 있으며 그런 다음 그 구성요소들의 상태를 사용자 인터페이스 안에서 통합 정리할 수 있다. 모니터링 시스템은 기업의 정보 기술 인프라의 건강성과 상태를 중앙집중적 방식으로 모니터링하는데 사용될 수 있다.
정보 인프라는 많은 다양한 서버들, 서비스들, 애플리케이션들, 및 기타 구성요소들을 포함할 수 있다. 구성요소들 중 일부는 모니터링 장치 상에서 실행되는 애플리케이션들 및 랜(local area network) 안의 장치들 상에서 실행되는 애플리케이션들과 같은 로컬 또는 구내 구성요소들일 수 있다. 다른 구성요소들은 클라우드 애플리케이션들과 같은 원격 구성요소들일 수 있다.
클라우드 컴퓨팅 환경은 다양한 변형을 가진다. 한 타입의 클라우드 환경에서는 가상 머신이 원격 하드웨어 패브릭 상에서 생성 및 실행될 수 있다. 가상 머신은 모니터링 시스템과 인터페이스하도록 구성되거나 구현될 수 있는 운영체계나 다른 기능을 가질 수 있다.
다른 타입의 클라우드 컴퓨팅 환경에서는 하드웨어 패브릭이 각자 운영체계를 가지는 여러 서버 장치들을 가질 수 있으며, 그 각각은 또한 운영체계들 상에서 동작하는 클라우드 계층을 가질 수도 있다. 클라우드 계층은 애플리케이션으로부터 운영체계를 추상화할 수 있으며, 많은 자동화된 관리 기능들을 제공할 수 있다. 클라우드 계층은 부하 조절(load balancing), 중복(redundancy), 다양한 지리적 영역들에서의 복제, 자원 관리, 및 기타 기능들을 제공할 수 있다. 여러 구현예들에서, 클라우드 계층은 클라우드 애플리케이션을 실행하는데 사용되는 자원들을 자동으로 관리할 수 있다.
많은 클라우드 컴퓨팅 환경들이 모니터링 프레임워크를 구현할 수 있다. 모니터링 프레임워크는 애플리케이션에 의해 호출되어 정보를 캡처하고 그 정보를 모니터링 시스템으로 전송할 수 있는 기능들의 집합일 수 있다. 모니터링 프레임워크는 전송될 정보를 캡슐화하는 메시지들을 생성할 수 있으며, 그 메시지들은 모니터링 시스템과 포맷과 전달 두 가지 모두에 있어 호환가능하다.
장치(102)는 클라우드 환경에서 실행되는 애플리케이션들을 포함하여 다양한 구성요소들을 모니터하는 데 사용될 수 있다. 장치(102)는 하드웨어 플랫폼(104) 및 다양한 소프트웨어 구성요소들(106)을 가질 수 있다. 장치(102)는 모니터링 애플리케이션이 운영될 수 있는 자립형 장치로서 예시된다.
하드웨어 플랫폼(104)은 서버나 데스크탑 컴퓨터와 같은 통상적 컴퓨팅 플랫폼일 수 있다. 하드웨어 플랫폼(104)은 프로세서(108), 램(random access memory)(110), 및 비휘발성 저장부(112)를 포함할 수 있다. 하드웨어 플랫폼(104)은 또한 네트워크 인터페이스(114) 및 사용자 인터페이스(116)를 포함할 수 있다.
여러 실시예들에서, 하드웨어 플랫폼(104)은 서버 컴퓨터일 수 있으나, 다른 실시예들에서 하드웨어 플랫폼(104)은 모든 타입의 컴퓨팅 장치일 수 있다. 예를 들어, 하드웨어 플랫폼(104)은 서버 컴퓨터, 데스크탑 컴퓨터, 랩탑 컴퓨터, 넷북 컴퓨터, 또는 다른 장치일 수 있다. 어떤 경우, 하드웨어 플랫폼(104)은 PDA(personal digital assistant), 휴대형 컴퓨터, 모바일 전화, 또는 다른 모바일 장치와 같은 모바일 장치일 수 있다.
소프트웨어 구성요소들(106)은 모니터링 애플리케이션(120)이 실행될 수 있는 운영체계(118)를 포함할 수 있다. 모니터링 애플리케이션(120)은 특정 장치들, 애플리케이션들, 또는 다른 모니터링되는 구성요소들로부터 정보를 모을 수 있는 여러 커넥터들(122)을 가질 수 있다.
모니터링 애플리케이션(120)은 다른 구성요소들로부터 정보를 모을 수 있으며 그 정보를 사용자 인터페이스 안에 한데 모을 수 있다. 하나의 사용 시나리오에서, 모니터링 애플리케이션(120)은 회사나 기타 기업 내에서 하드웨어 및 소프트웨어 구성요소들의 성능, 구성, 및 사용을 모니터링하는데 사용될 수 있다. 모니터링 애플리케이션(120)은 모니터링되는 구성요소들 중 어느 하나에서 문제가 발생될 때 관리자에게 경보를 발할 뿐만 아니라 구성요소들의 상태를 제공할 수 있다. 여러 실시예들에서, 모니터링 애플리케이션(120)은 모니터링되는 구성요소들의 실시간이나 실시간에 가까운 업데이트 및 상태를 제공할 수 있다.
일부 실시예들에서, 모니터링 애플리케이션(120)은 모니터링되는 구성요소들의 상태 및 어떤 경보들이 제공될 수 있는 사용자 인터페이스(123)를 가질 수 있다. 모니터링 애플리케이션(120)은 메시징 시스템을 이용하여 이메일, 음성메일, 또는 다른 메커니즘을 써서 다양한 수신자들에게 경보들이나 기타 메시지들을 전송할 수 있다. 경보는 예컨대 긴급 이벤트가 검출될 때 전송될 수 있는 비상 메시지일 수 있다.
모니터링 애플리케이션(120)은 여러 커넥터들(122)을 가질 수 있다. 커넥터들(122)은 모니터링되는 구성요소들에 대한 정보를 수집하고 모으기 위해 다양한 정보 소스들과 연결될 수 있다. 정보 소스들은 모니터링 애플리케이션(120)에 의해 사용될 수 있는 경보, 이벤트, 성능 데이터, 또는 기타 정보를 생성할 수 있는 어떤 애플리케이션, 기능, 기기, 또는 다른 구성요소일 수 있다. 커넥터들(122)은 소스로부터 정보를 요청할 수 있는 능동적 기능들뿐 아니라 정보가 입수 가능할 때 주기적으로 정보를 수신할 수 있는 수동적 기능들일 수 있다.
능동적 커넥터(122)는 주기적으로 데이터 수집을 시작할 수 있다. 일부 실시예들에서, 커넥터(122)는 요청된 정보를 돌려줄 수 있는 어떤 서비스로 정보 요청을 전송할 수 있다. 다른 실시예에서, 커넥터(122)는 원격 데이터 저장 장치를 접촉하며, 그 저장 장치에 저장된 데이터를 다운로드하거나 검색할 수 있다.
수동적 커넥터(122)는 다른 장치나 서비스에 의해 개시될 수 있는 전송사항을 수신할 수 있다. 다른 기기나 서비스가 주기적으로 혹은 전송할 정보가 존재할 때 메시지들이나 다른 형식의 정보를 커넥터((122)로 전송할 수 있다.
어떤 커넥터들(122)은 정보 업데이트를 수신하도록 메시지 큐에 가입할 수 있다. 커넥터(122)는 URL(Uniform Resource Identifier)이나 다른 식별자나 어드레스를 사용하여 큐잉(queuing) 시스템이나 다른 메시징 시스템을 접촉함으로서 가입을 시작할 수 있다. 일부 실시예들에서 그러한 커넥터(122)는 메시지를 수신할 수 있도록 메시징 시스템에 보증서를 제출할 수 있다.
일부 메시징 시스템은 한 개 이상의 모니터링 시스템들이 가입할 수 있는 여러 가입들을 생성할 수 있다. 예를 들어, 어떤 클라우드 애플리케이션은 높은 우선순위의 경보들에 대한 것, 동작 상태에 대한 것, 및 디버깅 정보에 대한 것과 같이 여러 이용 가능한 가입들을 가질 수 있다. 일부 경우, 모니터링 애플리케이션(120)이 그러한 이용 가능한 가입들 중 한 개 이상을 가입할 수 있다.
모니터링 애플리케이션(120)은 모니터링되는 구성요소로부터 각종 다앙한 타입의 정보를 모을 수 있다. 그 정보는 일반적인 상태 정보, 성능 정보, 경보 및 비상 상태, 디버깅 정보, 및 다른 정보를 포함할 수 있다. 일부 실시예들은 정보를 모으고, 저장하고, 처리하며 제공하는 여러 방식들을 포함하여, 각종 타입의 정보를 다루는 다양한 메커니즘을 가질 수 있다.
상태 정보는 어느 구성요소의 현재의 동작 상태를 가리킬 수 있다. 상태 정보는 구성요소가 시동되거나, 일시정지되거나, 중지되거나, 다른 상태 변화를 가질 때 업데이트될 수 있다. 많은 경우 상태 정보는 실시간이나 실시간에 가깝게 제공될 수 있다. 상태 정보는 여러 모니터링되는 구성요소들의 고수준의 개요를 제공하는데 사용될 수 있다. 예를 들어, 모니터링되는 애플리케이션들의 집합에 대한 대시보드 보기가 동작 상태에 대해 초록 아이콘들을 사용하고 정지나 일시정지 상태에 대해 빨강 아이콘들을 사용하여 제공될 수 있다. 한 개의 사용자 인터페이스가 스캔하기 쉬운 사용자 인터페이스 안에 각종 다양한 모니터링되는 구성요소들에 대한 현재 상태를 제공할 수 있다.
성능 정보는 구성요소의 동작에 대한 다양한 개략 또는 상세 통계치를 포함할 수 있다. 모니터링되는 하드웨어 구성요소에 대해, 성능 정보는 프로세서 사용, 디스크 용량, 네트워크 활동, 메모리 사용, 및 기타 정보를 포함할 수 있다. 모니터링되는 소프트웨어 구성요소에 대해, 성능 정보는 처리된 여러 요청들, 전송된 데이터량, 또는 다른 성능 메트릭들을 포함할 수 있다. 성능 정보의 타입은 각종 타입의 애플리케이션들에 따라 달라질 수 있다. 어떤 성능 정보는 시간에 민감한 방식으로 전송 및 디스플레이될 수 있는 실시간 정보일 수 있다. 다른 성능 정보는 모니터링 애플리케이션(120)으로 지연 상태로 전송될 수 있는 이력 정보일 수 있다.
성능 정보는 개략 통계치들 및, 개략 통계치들을 생성하는데 사용되는 상세 정보일 수 있다. 일부 실시예들은 상세 정보와 다른 방식으로 개략 통계치들을 전송할 수 있다. 예를 들어, 개략 통계치들은 개략 통계치들을 모니터링 애플리케이션(120)으로 푸쉬(push)하는 메시지 통지 시스템을 이용하여 빈번하게 업데이트될 수 있으며, 상세 정보는 원격 데이터베이스에 저장되어 그 정보가 요청될 때 모니터링 애플리케이션(120)에 의해 풀링될(pulled) 수 있다.
일부 실시예들에서 개략 통계치들은 상세 성능 정보로부터 모니터링 프레임워크에 따라 생성될 수 있다. 다른 실시예들에서, 상세 성능 정보는 모니터링 애플리케이션(120)으로 전송될 수 있고, 개략 통계치들은 모니터링 애플리케이션(120)에 의해 생성될 수 있다.
경보 및 비상 정보는 취해질 수 있는 액션들을 식별하기 위해 사용될 수 있는 높은 우선순위의 메시지들을 포함할 수 있다. 예를 들어 경보는 이용 가능한 저장 공간이 바로 하한까지 감소될 때, 혹은 애플리케이션에서 치명적 에러가 발생했을 때 생성될 수 있다. 일부 실시예들에서 경보들은 모니터링 애플리케이션(120)에 의해 처리되어 이메일, 음성메일, 또는 다른 메커니즘을 사용해 관리자에게 전송될 수 있다.
디버깅 정보는 문제를 추적하여 해결하기 위해 개발자에 의해 사용될 수 있는 정보일 수 있다. 디버깅 정보는 아주 상세하고 매우 방대할 수 있다. 예를 들어, 디버깅 정보는 어떤 기능이 그 기능 안으로나 그 기능 밖으로 건네지는 파라미터들과 함께 호출될 때 지시자들을 포함할 수 있다.
일부 실시예들에서, 모니터링 시스템(120)으로 전송되는 정보는 정책과 설정환경 둘 모두에 의해 규정될 수 있다. 정책은 수집 및 전송될 수 있는 정보의 고수준 규정일 수 있다. 일부 실시예들은 자(child) 정책들이 모(parent) 정책들로부터 특성들을 물려받는 계층적 정책들을 가질 수 있다. 설정 환경은 어떤 정보를 수집하고 전송할지를 결정하기 위해 조정될 수 있는 특정 파라미터들, 알고리즘들, 또는 조건들을 포함할 수 있다. 일부 실시예들은 수집 및 전송될 수 있는 정보를 규정하기 위한 다른 메커니즘들을 가질 수 있다.
모니터링 애플리케이션(120)은 수집된 정보를 히스토리 데이터베이스(121) 안에 저장할 수 있다. 히스토리 데이터베이스(121)는 어떤 시간 주기 동안 수집되었던 정보를 포함할 수 있다. 일부 실시예들에서, 히스토리 데이터베이스(121)는 사용자 인터페이스(123) 상에 디스플레이될 수 있는 개략적 통계치들 및 사용자가 정보 안에 드릴다운함으로써 디스플레이할 수 있는 상세 데이터를 생성하는데 사용될 수 있다.
모니터링 애플리케이션(120)은 각종 다양한 소스들로부터 정보를 수집할 수 있다. 장치(102)는 랜(124) 및 랜(124)에 연결되는 여러 장치들(126)에 연결될 수 있다. 장치들(126)은 모니터링 애플리케이션(120)에 의해 수집되고 관리되고 디스플레이되는 정보의 소스들을 가질 수 있다.
장치들(126)은 하드웨어 플랫폼(128)뿐 아니라 운영체계(130) 및 다양한 애플리케이션들(132)을 가질 수 있다. 하드웨어 플랫폼(128)은 장치(102)의 하드웨어 플랫폼(104)과 유사할 수 있으며, 장치들(126)은 서버 컴퓨터들, 데스크탑 컴퓨터들, 랩탑 컴퓨터, PDA(personal digital assistant), 휴대 전화들, 네트워크 가전기기, 또는 어떤 다른 컴퓨팅 장치일 수 있다.
애플리케이션들(132)은 수집할 정보를 식별하며 그 정보가 이벤트 관리자(134) 안에 저장되게 할 수 있는 수단(136)을 가질 수 있다. 이벤트 관리자(134)는 운영체계(130)나 애플리케이션들(132)에서 발생할 수 있는 다양한 이벤트들을 관리 또는 다른 용도로 수집하는 애플리케이션 또는 운영체계 레벨의 기능일 수 있다. 커넥터(138)는 이벤트 관리자(134)에 의해 수집된 정보를 교류하고 그 정보를 모니터링 애플리케이션(120)으로 전송하기 위해 커넥터들(122)과 통신할 수 있다.
수단(136)은 정보를 수집하기 위해 애플리케이션들(132)로 추가되거나 그에 의해 호출되는 기능일 수 있다. 수단(136)은 디버깅 정보, 성능 정보, 상태 정보 또는 다른 정보를 모으는 루틴들일 수 있다. 어떤 경우들에 있어서, 수단(136)은 애플리케이션이나 운영체계 기능에 의해 바로 호출되지 않고 상태, 성능 및 기타 정보를 모으기 위해 애플리케이션이나 운영체계 기능을 모니터링할 수 있다.
클라우드 컴퓨팅 환경(144) 역시 모니터링 애플리케이션에 의해 모니터링될 수 있다. 장치(102)는 랜(124)에 연결되고 랜(124)은 게이트웨이(140)에 연결되며, 게이트웨이(140)는 WAN(wide area network)(142)에 연결될 수 있다. WAN(142)은 예컨대 인터넷일 수 있다. 클라우드 컴퓨팅 환경(144)은 인터넷이나 WAN(142)에 연결될 수 있다.
클라우드 컴퓨팅 환경(144)은 사용자, 개발자, 또는 관리자로부터 추상화되는 하드웨어 패브릭(146)을 가질 수 있다. 여러 경우들에서 하드웨어 패브릭(146)은 수백, 수천, 또는 심지어 수십만의 많은 컴퓨팅 장치들을 포함할 수 있는 대형 데이터 센터이거나 대형 데이터 센터들의 그룹일 수 있다. 많은 데이터 센터들은 과잉 전력 소스들, 과잉 네트워크 접속, 및 많은 장애극복 메커니즘들을 가지고 매우 높은 이용가능성 및 매우 높은 업타임(uptimes)이 달성되게 한다.
클라우드 컴퓨팅 환경(144)은 부하 조절, 클러스터링, 및 용량이 소정 프로세스들이나 기능들에 대해 할당되거나 할당 해제되게 하는 다른 기능들을 수행하는 내부 관리 시스템들을 포함할 수 있다. 많은 경우, 클라우드 컴퓨팅 환경(144)은 최종 사용자, 개발자, 또는 관리자와 상호작용하지 않고 소정 프로세스들이나 기능들을 특정한 지리적 영역들로 이동시키거나, 프로세스들을 한 데이터 센터로부터 다른 데이터 센터로 전달하거나, 프로세스들을 한 하드웨어 플랫폼으로부터 다른 하드웨어 플랫폼으로 이동시키거나, 다른 할당 프로세스들을 수행할 수 있다.
어떤 클라우드 컴퓨팅 환경들은 데이터 센터 운영자가 각종 다양한 고객들로부터의 애플리케이션들을 실행하는 클라우드 컴퓨팅 인프라를 제공할 수 있는 공유 환경들일 수 있다. 각각의 고객은 그 고객에 대해 실행되고 그 고객에 의해 관리되는 애플리케이션을 가질 수 있다. 애플리케이션이 그 고객에 의해 관리되더라도, 기본 데이터 센터 동작들은 데이터 센터 운영자에 의해 관리될 수 있다. 고객은 데이터 센터 운영자에 의해 수행될 수 있는 모니터링 및 관리 동작들과 별도로 자신들의 애플리케이션에 대한 성능, 상태, 디버깅, 및 기타 정보를 모으기 위해 모니터링 프레임워크를 이용할 수 있다.
클라우드 컴퓨팅 환경(144)은 런타임 환경(154)을 가진 인스턴스들(148)을 추상화할 수 있는 클라우드 추상화 계층(147)을 가질 수 있다. 클라우드 추상화 계층(147)은 여러 하드웨어 장치들을 운영체계에 대한 일반 개념 없이 애플리케이션들이 실행될 수 있는 시스템 안에 결합시키는 소프트웨어 계층일 수 있다.
런타임 환경(154)은 런타임 실행자(156)를 사용하여 애플리케이션들(158)을 실행할 수 있다. 런타임 실행자(156)는 애플리케이션들(158)의 연결 및 실행을 수행할 수 있으며, 런타임 환경(154)은 가비지(garbage) 수집, 컴파일레이션, 및 기타 기능들과 같은 추가 관리 기능들을 제공할 수 있다.
모니터링 프레임워크(160)는 애플리케이션들(158) 안에 링크되어 그들에 의해 호출될 수 있다. 모니터링 프레임워크(160)는 애플리케이션들로부터 정보를 수집하고 처리하여 모니터링 애플리케이션(120)으로 전송하는 기능들의 집합일 수 있다.
일부 실시예들에서 모니터링 프레임워크(160)는 메시지 큐잉 시스템(162)을 이용하여 모니터링 애플리케이션(120)으로 정보를 전송할 수 있다. 메시지 큐잉 시스템(162)은 다양한 소스들로부터 메시지들을 수집하여 가입자가 그 메시지들을 사용하게 할 수 있다. 어떤 양태들에서, 메시지 큐잉 시스템(162)은 수신자가 메시지들을 수신할 준비가 될 때, 액세스될 수 있는 큐 안에 메시지들이 함께 모여질 수 있는 이메일이나 다른 메시지 시스템과 같이 동작할 수 있다.
메시지 큐잉 시스템(162)은 수신자가 메시지들을 수신할 수 있게 하는 가입 서비스를 가질 수 있다. 예정된 수신자가 메시지 큐잉 시스템(162)을 접촉하여 메시지들을 수신할 수 있으며, 메시지들은 수신자에게 푸쉬되거나 수신자에 의해 풀링될 수 있다. 애플리케이션(120)을 모니터링하는 경우, 커넥터(122)는 정보를 수신하도록 메시지 큐에 가입하고 메시지 큐잉 시스템(162)과 통신하도록 구성될 수 있다.
어떤 메시지 큐잉 시스템들은 유일한 하나의 가입자만이 특정 메시지 큐에 가입하게 할 수 있다. 다른 메시지 큐잉 시스템들은 여러 가입자들이 한 개의 큐에 가입하게 할 수 있다.
많은 실시예들에서, 클라우드 컴퓨팅 환경은 각종 다양한 물리적 장치들 상에서, 그리고 종종 전세계적으로 지리적으로 산재될 수 있는 각종 다양한 데이터 센터들에서 운영될 수 있는 여러 인스턴스들(148)을 가질 수 있다. 그러한 실시예들에서 메시지 큐잉 시스템(162)은 그 다양한 인스턴스들에 의해 생성된 어떤 메시지들에 대한 중앙 저장고로서 동작하고 모니터링 애플리케이션(120)이 애플리케이션(158)의 다양한 인스턴스들 전부를 하나의 그룹이나 유닛으로서 모니터링하게 할 수 있다.
일부 실시예들에서 가입자는 메시지 큐잉 시스템(162)에 보증서를 제시하거나 그렇지 않고 메시지 큐잉 시스템(162)에 대해 인증될 수 있다. 인증은 여러 다양한 방식으로 수행될 수 있다. 어떤 경우, 커넥터(122)는 인증 메커니즘(178)으로부터 인증된 토큰을 획득할 수 있고, 가입을 위해 그 인증된 토큰을 메시지 큐잉 시스템(162)에 제시할 수 있다.
어떤 클라우드 컴퓨팅 환경(144)은 가상 머신 패러다임을 이용할 수 있다. 가상 머신들(164)은 운영체계(167)를 실행할 수 있는 가상 기기(166)를 가질 수 있다. 다양한 애플리케이션들(170)이 운영체계(167) 안에서 실행될 수 있다.
가상 머신들(164)에 의해 예시된 가상 머신 패러다임은 운영체계(167)가 여러 애플리케이션들의 개발자나 관리자에게 노출되고, 그들에 의해 선택될 수 있며 관리될 수 있다는 점에서, 인스턴스들(148)의 클라우드 계층 추상화와 상이하다. 인스턴스들(148)의 경우, 운영체계가 애플리케이션들(158)의 개발자나 관리자에 의해 액세스될 수 없지만, 가상 머신들(164)의 경우에는 운영체계(167)가 애플리케이션들(170)의 개발자들이나 관리자들에 의해 액세스될 수 있다.
애플리케이션들(170)은 수단(172)을 가지고 모니터링 프레임워크(173)를 액세스할 수 있다. 일부 실시예들에서 모니터링 프레임워크(173)는 모니터링 프레임워크(160)와 동일할 수 있다.
모니터링 프레임워크(173)는 다양한 이벤트들(176)이 저장될 수 있는 저장부(174)로 정보를 출력하는 것으로 예시된다. 저장부(174)는 커넥터(122)에 의해 풀링될 수 있는 정보를 저장할 수 있다. 커넥터(122)는 저장부(174)를 액세스하여 모니터링 프레임워크(173)에 의해 생성된 정보를 포함할 수 있는 이벤트들(176)을 다운로드할 수 있다.
저장부(174)는 메시지 큐잉 시스템(162)과 다른 전송 메커니즘을 예시할 수 있다. 메시지 큐잉 시스템(162)은 메시지들을 이용해 커넥터(122)로 정보가 전송될 수 있게 하는 메커니즘을 예시할 수 있다. 그러한 여러 시스템들에서, 메시지 큐잉 시스템(162)은 통신 및 보안을 도모할 수 있는 많은 특징들을 가질 수 있다. 이들은 인증, 암호화, 메시지 저장, 및 기타 특징들을 포함할 수 있다. 메시지 큐잉 시스템(162)의 전송 메커니즘들은 메시지 큐잉 시스템(162)이 메시지들이 이용 가능할 때 그 메시지들을 커넥터(122)로 전송할 수 있는 푸쉬 타입의 전송일 수 있다. 어떤 메시지 큐잉 시스템은 커넥터(122)가 메시지들을 요청하게 할 수 있고, 풀 타입의 전송으로서 동작할 수 있다. 저장부(174)는 커넥터(122)가 이벤트들(176)을 찾아 가져오도록 저장부(174)를 접촉할 수 있는 풀 타입의 전송일 수 있다.
일부 실시예들에서, 모니터링 프레임워크는 정보 전송을 위해 메시지 큐잉 시스템 및 저장 메커니즘 둘 모두를 사용할 수 있다. 그러한 일부 실시예들에서 데이터의 소정 유형들이나 타입들은 한 가지 메커니즘을 사용하여 전송될 수 있으며, 데이터의 다른 타입들은 다른 메커니즘을 사용하여 전송될 수 있다. 예를 들어, 모니터링 프레임워크는 메시지 큐잉 시스템을 이용하여 경보 및 비상 메시지들을 전송할 수 있고 저장 메커니즘을 사용하여 디버깅 정보를 전송할 수 있다.
도 2는 애플리케이션에 의해 생성된 정보를 생성하고, 전송하고 사용하기 위한 방법을 도시하는 일 실시예(200)의 타임라인도이다. 실시예(200)는 좌측 열에 있는 애플리케이션(202), 중앙 열에 있는 모니터링 프레임워크(204), 및 우측 열에 있는 모니터링 애플리케이션(206)에 의해 수행될 수 있는 동작들을 예시한다. 실시예(200)는 실시예(100)의 애플리케이션들(158이나 170), 모니터링 프레임워크들(160 또는 173), 및 모니터링 애플리케이션(120)에 의해 수행되는 기능들의 일부를 예시할 수 있다.
다른 실시예들은 유사 기능들을 수행하기 위해 다른 순서, 추가되거나 줄어드는 단계들, 및 다른 명명법이나 용어를 사용할 수 있다. 일부 실시예들에서는 다양한 동작들이나 동작들의 집합이 다른 동작들과 병렬로, 동기식이나 비동기식으로 수행될 수 있다. 여기에서 선택된 단계들은 동작들의 어떤 원리를 간략한 형태로 예시하기 위해 선택되었다.
애플리케이션(202)은 많은 다양한 방식으로 정보를 생성할 수 있다. 예를 들어, 애플리케이션(202)은 블록(208)에서 예외를 전가하거나(throw an exception), 블록(210)에서 프로세스를 시작 또는 종료하거나, 블록(212)에서 성능 데이터를 생성할 수 있다. 다른 예들은 디버깅 정보의 생성, 데이터 값의 캡처, 또는 소정 조건에 대한 직면을 포함할 수 있다. 애플리케이션(202)에 의해 생성된 정보는 그 애플리케이션 자체 내에서 만들어지거나 애플리케이션 실행자에 링크되어 호출될 수 있는 수단화 프레임워크(instrumentation framework)의 일부로서 만들어질 수 있다.
블록들(208-212)에서 생성된 정보 중 어느 하나가 사용되어 블록(214)에서 이벤트를 생성할 수 있다. 블록(214)의 이벤트는 애플리케이션(202)에 의해 전송될 수 있고 모니터링 애플리케이션(206)에 의해 사용될 수 있는 정보일 수 있다. 이벤트가 애플리케이션(202)에 의해 전송되어 블록(216)에서 모니터링 프레임워크(204)에 의해 수신될 수 있다.
모니터링 프레임워크(204)는 이벤트를 모니터링 애플리케이션(206)으로 전송하기 앞서 그 이벤트에 대한 어떤 처리를 수행할 수 있다. 프로세싱은 블록(218)에서 이벤트를 필터링할 뿐 아니라 그 이벤트를 한데 모으는 동작을 포함할 수 있다.
블록(218)에서의 필터링은 이벤트를 분류하고 분류에 기초하여 그 이벤트가 어떻게 처리될 수 있는가를 결정할 수 있다. 예를 들어, 어떤 이벤트들은 높은 우선순위의 이벤트들로서 식별되어 모니터링 애플리케이션(206)으로 신속히 보내질 수 있는 반면, 다른 이벤트들은 정책 또는 환경 설정에 기초해 무시되어 전혀 전송되지 않을 수 있다.
블록(220)에서 이벤트가 전송되게 되어 있지 않으면, 그 이벤트는 블록(222)에서 저장될 수 있다. 일부 실시예들에서, 이벤트는 데이터 저장 시스템 내에 저장되어, 모니터링 애플리케이션(206)이 추후 어느 시점에 그 데이터 저장 시스템으로부터 정보를 풀링할 수 있도록 한다. 어떤 상황들 하에서 그 이벤트는 버려질 수도 있다.
블록(220)에서 이벤트가 전송되게 되어 있고 블록(224)에서 한데 모아지지 않으면, 블록(227)에서 메시지가 포맷될 수 있고 블록(228)에서 이벤트가 전송될 수 있다.
블록 224에서 이벤트가 한데 모아지게 되어 있지 않으면, 블록 226에서 그 이벤트는 집합 전송을 위해 다른 이벤트들과 함께 저장될 수 있다. 집합 전송은 여러 방식으로 수행될 수 있다. 한 경우, 이벤트들의 집합은 전송할 한 개의 메시지 안에 통합될 수 있다. 그러한 이벤트들은 동일한 이벤트의 반복 인스턴스들이거나, 유사하거나 심지어 관련이 없는 이벤트들의 그룹일 수 있다. 또 다른 경우, 수차례 되풀이되는 이벤트는 그 이벤트가 발생했던 횟수를 포함하는 단일 이벤트 안에 통합될 수 있다. 예를 들어, 알려진 오류 이벤트가 모아져서, 그 이벤트의 100번의 발생을 수신한 후에 한 개의 메시지가 전송되도록 할 수 있다.
모니터링 애플리케이션(206)은 블록(230)에서 그 이벤트를 수신할 수 있다. 다양한 메커니즘들이 사용되어 블록(228)에서 그 이벤트를 전송하도록 하고 블록(230)에서 그 이벤트를 수신하도록 할 수 있다. 그러한 메커니즘들은 모니터링 프레임워크(204)로부터 모니터링 애플리케이션(206)으로 이벤트들을 푸쉬하고 모니터링 프레임워크(204)로부터 모니터링 애플리케이션(206)까지 이벤트들을 풀링하는 메커니즘들을 포함한다. 메커니즘들은 메시지 큐잉 시스템, 데이터 저장 시스템, 및 기타 통신 메커니즘들을 포함할 수 있다.
블록(230)에서 이벤트를 수신한 후, 블록(232)에서 그 이벤트가 저장될 수 있다. 블록(234)에서 이벤트가 분류될 수 있으며, 블록(236)에서 이벤트가 중요도가 높은 이벤트인 경우 블록(238)에서 경보가 보내질 수 있다. 블록(236)에서 이벤트가 중요도가 높은 이벤트가 아니라면, 블록(240)에서 그 이벤트가 디스플레이될 수 있다.
도 3은 모니터링 시스템을 포함하는 클라우드 환경을 도시하는 일 실시예(300)의 다이어그램이다. 실시예(300)는 모니터링 프레임워크와 함께 애플리케이션들을 실행할 수 있는 런타임 인스턴스의 간략화된 예이다.
도 3의 도면은 시스템의 기능적 구성요소들을 예시한다. 어떤 경우, 구성요소는 하드웨어 구성요소, 소프트웨어 구성요소, 또는 하드웨어 및 소프트웨어의 조합일 수 있다. 구성요소들의 일부는 애플리케이션 레벨 소프트웨어일 수 있고, 다른 구성요소들은 운영체계 레벨 구성요소들일 수 있다. 어떤 경우 한 구성요소와 또 다른 구성요소의 연결은 둘 이상의 구성요소들이 한 개의 하드웨어 플랫폼 상에서 동작하는 가까운 연결일 수 있다. 다른 경우 그 연결은 장거리에 걸친 네트워크 접속을 통해 이루어질 수 있다. 각각의 실시예는 기술된 기능들을 수행하기 위해 다양한 하드웨어, 소프트웨어, 및 상호접속 구조들을 이용할 수 있다.
실시예(300)는 클라우드 컴퓨팅 환경으로서 동작할 수 있는 시스템의 예이다. 하드웨어 패브릭(302)은 추상화된 클라우드 컴퓨팅 계층을 제공하는 소프트웨어 패브릭(304)을 운영할 수 있다. 클라우드 컴퓨팅 계층은 실시예(100)에 예시된 인스턴스들(148)과 같은 여러 인스턴스들을 가질 수 있는 런타임 환경(306)을 포함할 수 있다.
런타임 환경(306)은 애플리케이션(312)을 관리 코드로서 실행할 수 있는 실행 엔진(310)을 포함할 수 있다. 일부 실시예들에서, 컴파일러(314)는 소스 코드나 중간 코드에서 실행 코드로 애플리케이션(312)을 컴파일할 수 있다. 링커(316)는 다양한 프레임워크들, 동적 링크된 라이브러리들, 또는 다른 코드 요소들을 애플리케이션(312)에 링크할 수 있다. 일부 실시예들은 해석된 언어로 정의되는 애플리케이션(312)을 가질 수 있다.
런타임 환경(306)은 동적 링킹(dynamic linking), 가비지 수집(318), 메모리 관리, 자원 관리, 오류 캡처링 및 기타 특징들과 같은 다양한 관리 코드 기능들을 포함할 수 있다.
애플리케이션(312)은 소정 조건, 데이터, 에러, 성능 메트릭, 또는 기타 이벤트나 정보를 식별하고 캡처할 수 있는 수단(320)을 포함할 수 있다. 수단(320)은 여러 가지 기능들을 포함할 수 있는 모니터링 프레임워크(322)를 호출할 수 있다. 모니터링 프레임워크(322)는 애플리케이션(312)으로부터 수신된 정보를 처리하고 모니터링 시스템으로 전송될 정보를 준비시킬 수 있다.
모니터링 프레임워크(322)는 애플리케이션(312)으로부터 정보를 수신할 수 있는 수신 기능(324)을 가질 수 있다. 수신 기능(324)은 수신된 정보를 다른 기능들을 위해 모니터링 프레임워크(322)에 의해 사용될 수 있는 포맷 및, 모니터링 애플리케이션에 의해 사용될 수 있는 포맷으로 놓는 것과 같은 정보의 초기 처리를 수행할 수 있다. 일부 실시예들에서, 수신 기능(324)은 애플리케이션(312)과 어떤 핸드셰이킹을 수행할 수 있다.
수신 기능(324)은 애플리케이션(312)으로부터 수신된 정보 외에 다른 정보를 수집할 수 있다. 예를 들어 수신 기능(324)은 애플리케이션(312)으로부터 오류 조건을 수신할 수 있다. 수신 기능(324)은 타임 스탬프, 어떤 환경 설정의 값들, 소정 변수들의 값들, 또는 다른 정보와 같은 다른 데이터를 수집할 수 있다. 수신 기능(324)은 모니터링 프레임워크(322)에서 정보를 수집하여 다른 기능들에 의해 사용될 수 있는 포맷으로 조직할 수 있다.
일부 실시예들에서 환경 설정(340)은 애플리케이션(312)이 디버깅 모드에서 동작된다는 것을 가리킬 수 있다. 디버깅 모드는 모니터링 프레임워크(322)에 의해 캡처될 수 있는 고수준의 디버깅 정보를 규정할 수 있다. 어떤 경우들에서 디버깅 모드는 고수준의 세부사항을 캡처하기 위해 모니터링 프레임워크(322)에 의해 사용되는 설정일 수 있다. 다른 경우들에서는, 애플리케이션(312)이 디버깅 모드에서 실행되어 애플리케이션(312)이 정상 동작보다 높은 수준의 세부사항으로 더 많은 양의 이벤트들을 생성하도록 할 수 있다.
분류 기능(326)은 모니터링 프레임워크(322)의 일부일 수 있고 이벤트를 분류하도록 동작할 수 있다. 그 분류는 이벤트가 어떻게 처리되어야 할지를 결정하기 위해 정책들(338) 및 환경 설정(340)과 연계하여 사용될 수 있다. 어떤 이벤트들은 높은 우선순위를 가지고 전송되는 한편, 다른 이벤트들은 모아지거나 심지어 버려질 수 있다.
메시지 발생 기능(328)은 이벤트 및 기타 정보를, 메시지 큐잉 시스템(334)을 사용해 전송될 수 있거나 데이터 저장 시스템(336)에 저장될 수 있는 메시지 안에 포맷시킬 수 있다.
메시지 집합 기능(330)은 메시지들을 한 개의 메시지 안에 함께 병합할 수 있다. 어떤 경우들에서는 한 개의 메시지에 대한 여러 인스턴스들이 하나의 메시지 안에 병합될 수 있다. 다른 경우들에서는 상이한 메시지들이 하나의 메시지 안에 함께 그룹화될 수 있다.
메시지 전송 기능(332)은 메시지가 모니터링 프레임워크(322)에서 모니터링 애플리케이션으로 전송되게 할 수 있다. 메시지 전송 기능(332)은 메시지 큐잉 시스템(334), 데이터 저장 시스템(336), 또는 다른 메커니즘들을 사용하여 메시지를 전송할 수 있다.
일부 실시예들에서 모니터링 프레임워크(322)는 애플리케이션 개발에 사용될 수 있는 모니터링 프레임워크와 동일하거나 유사할 수 있다. 애플리케이션 개발에 사용될 때, 모니터링 프레임워크(322)는 로컬 애플리케이션 개발 플랫폼 안에 포함되어 애플리케이션과 함께 컴파일 및 링크될 수 있다. 애플리케이션은 개발자가 그 애플리케이션을 테스트하고 순화할 수 있도록 디버그 또는 개발 모드로 로컬 장치 상에서 실행될 수 있다. 애플리케이션이 클라우드 상에 배치되도록 준비되면, 그 애플리케이션은 클라우드로 업로드되고 클라우드 내 모니터링 프레임워크와 함께 컴파일 및 링크될 수 있다.
발명 대상에 대한 상기 설명은 예시 및 설명의 목적으로 제시되었다. 완벽하게 포괄적이거나 발명 대상을 개시된 바로 그 형태로 한정하도록 의도되지 않았으며, 상기 가르침에 비추어 다른 변형 및 변경이 이루어질 수 있다. 본 발명의 원리와 그 실제적 응용을 가장 잘 설명하여 그에 의해 당업자가 예상되는 특정 용도에 적합하도록 본 발명을 다양한 실시예들 및 다양한 변형예들에서 활용할 수 있도록 하기 위해 상기 실시예들이 선택되고 기술되었다. 첨부된 청구범위는 선행 기술에 의해 제한되지 않는 범위 안에서 다른 대안적 실시예들을 포함하는 것으로 해석되도록 의도되어 있다.
Claims (20)
- 고객에 의해 클라우드 컴퓨팅 환경에 업로드된 클라우드 애플리케이션을 실행하도록 하기 위한 상기 클라우드 컴퓨팅 환경을 제공하도록 구성된 하드웨어 패브릭의 하나 이상의 컴퓨팅 장치와,
상기 클라우드 컴퓨팅 환경 내에서 구현되며, 상기 클라우드 애플리케이션에 링크된 모니터링 프레임워크와,
상기 클라우드 컴퓨팅 환경 내에서 구현되며, 기업의 정보 인프라 내에 위치한 컴퓨팅 장치에서 동작하는 원격 모니터링 애플리케이션과 통신하도록 상기 모니터링 프레임워크에 의해 사용되는 메시지 큐잉 시스템
을 포함하되,
상기 모니터링 프레임워크는 상기 클라우드 애플리케이션에 의해 생성된 성능 정보를 수집하고 상기 성능 정보를 상기 클라우드 컴퓨팅 환경 내의 상기 메시지 큐잉 시스템에 제공하도록 구성되고,
상기 메시지 큐잉 시스템은 복수의 메시지 큐에 대한 가입 서비스를 제공하고, 상기 기업의 정보 인프라 내에 위치한 상기 컴퓨팅 장치에서 동작하는 상기 원격 모니터링 애플리케이션과 호환가능한 메시지 내에 상기 성능 정보를 캡슐화하며, 상기 성능 정보를 캡슐화하는 상기 메시지를 상기 원격 모니터링 애플리케이션과 연관된 특정 메시지 큐에 저장하도록 구성되고,
상기 원격 모니터링 애플리케이션은 상기 특정 메시지 큐에 가입하고 상기 성능 정보를 캡슐화하는 상기 메시지를, 광역망을 통해 상기 클라우드 컴퓨팅 환경 내의 상기 특정 메시지 큐로부터 검색하도록 구성되며,
상기 원격 모니터링 애플리케이션은 상기 검색된 메시지로부터의 상기 성능 정보를, 상기 기업의 정보 인프라 내에 위치한 구내 구성요소(on-premise components)로부터 상기 원격 모니터링 애플리케이션에 의해 수집되고 상기 원격 모니터링 애플리케이션에 의해 모니터링되는 다른 성능 정보와 종합(aggregate)하도록 구성되는
컴퓨팅 시스템. - 제1항에 있어서,
상기 원격 모니터링 애플리케이션은 상기 메시지 큐에 가입하기 위한 인증 토큰을 제시하는
컴퓨팅 시스템. - 제1항에 있어서,
상기 모니터링 프레임워크는 상기 클라우드 컴퓨팅 환경의 런타임 환경(runtime environment)에 포함되는
컴퓨팅 시스템. - 제1항에 있어서,
상기 모니터링 프레임워크는 동적으로 상기 클라우드 애플리케이션에 링크되고 상기 클라우드 애플리케이션에 의해 호출되는
컴퓨팅 시스템. - 제1항에 있어서,
상기 클라우드 컴퓨팅 환경 내의 상기 모니터링 프레임워크는 상기 모니터링 프레임워크의 런타임 버전이고,
상기 클라우드 애플리케이션은 상기 모니터링 프레임워크의 개발 버전을 포함하는 개발 플랫폼으로부터 업로드되는
컴퓨팅 시스템. - 제1항에 있어서,
상기 모니터링 프레임워크는 상기 클라우드 애플리케이션에 의해 전가된(thrown) 예외들을 수집하고 저장하도록 구성되고,
상기 원격 모니터링 애플리케이션은 상기 클라우드 애플리케이션에 의해 전가된 상기 예외들에 대한 경고를 생성하도록 구성되는
컴퓨팅 시스템. - 제1항에 있어서,
상기 모니터링 프레임워크는 상기 클라우드 애플리케이션이 디버깅 모드로 동작될 때 생성된 디버깅 정보를 수집 및 저장하도록 구성되는
컴퓨팅 시스템. - 제1항에 있어서,
상기 클라우드 컴퓨팅 환경은 상기 클라우드 애플리케이션의 복수의 인스턴스를 포함하고,
상기 모니터링 프레임워크는 상기 클라우드 애플리케이션의 상기 복수의 인스턴스에 의해 생성된 성능 정보를 종합하도록 구성되는
컴퓨팅 시스템. - 하드웨어 패브릭의 하나 이상의 컴퓨팅 장치에 의해, 고객에 의해 클라우드 컴퓨팅 환경에 업로드된 클라우드 애플리케이션을 실행하도록 하기 위한 상기 클라우드 컴퓨팅 환경을 제공하는 단계와,
상기 클라우드 컴퓨팅 환경 내에 모니터링 프레임워크를 구현하는 단계와,
상기 클라우드 컴퓨팅 환경 내의 상기 클라우드 애플리케이션에 상기 모니터링 프레임워크를 링크시키는 단계와,
상기 클라우드 컴퓨팅 환경 내에 메시지 큐잉 시스템을 구현하는 단계- 상기 메시지 큐잉 시스템은 기업의 정보 인프라 내에 위치한 컴퓨팅 장치에서 동작하는 원격 모니터링 애플리케이션과 통신하도록 상기 모니터링 프레임워크에 의해 사용됨 -와,
상기 모니터링 프레임워크에 의해, 상기 클라우드 애플리케이션에 의해 생성된 성능 정보를 수집하는 단계와,
상기 모니터링 프레임워크에 의해, 상기 클라우드 컴퓨팅 환경 내의 상기 메시지 큐잉 시스템에 상기 성능 정보를 제공하는 단계와,
상기 메시지 큐잉 시스템에 의해, 복수의 메시지 큐에 대한 가입 서비스를 제공하는 단계와,
상기 메시지 큐잉 시스템에 의해, 상기 기업의 정보 인프라 내에 위치한 상기 컴퓨팅 장치에서 동작하는 상기 원격 모니터링 애플리케이션과 호환가능한 메시지 내에 상기 성능 정보를 캡슐화하는 단계와,
상기 메시지 큐잉 시스템에 의해, 상기 성능 정보를 캡슐화하는 상기 메시지를 상기 원격 모니터링 애플리케이션과 연관된 특정 메시지 큐에 저장하는 단계
를 포함하되,
상기 원격 모니터링 애플리케이션은 상기 특정 메시지 큐에 가입하고 상기 성능 정보를 캡슐화하는 상기 메시지를, 광역망을 통해 상기 클라우드 컴퓨팅 환경 내의 상기 특정 메시지 큐로부터 검색하도록 구성되고,
상기 원격 모니터링 애플리케이션은 상기 검색된 메시지로부터의 상기 성능 정보를, 상기 기업의 정보 인프라 내에 위치한 구내 구성요소로부터 상기 원격 모니터링 애플리케이션에 의해 수집되고 상기 원격 모니터링 애플리케이션에 의해 모니터링되는 다른 성능 정보와 종합하도록 더 구성되는
방법. - 제9항에 있어서,
상기 모니터링 프레임워크는 상기 클라우드 컴퓨팅 환경의 런타임 환경에 포함되는
방법. - 제9항에 있어서,
상기 메시지 큐잉 시스템에 의해, 상기 원격 모니터링 애플리케이션으로부터의 상기 특정 메시지 큐에 가입하려는 가입 요청을 인증하는 단계를 더 포함하는 방법. - 제9항에 있어서,
상기 클라우드 컴퓨팅 환경 내의 상기 모니터링 프레임워크는 상기 모니터링 프레임워크의 런타임 버전이고,
상기 클라우드 애플리케이션은 상기 모니터링 프레임워크의 개발 버전을 포함하는 개발 플랫폼으로부터 업로드되는
방법. - 제9항에 있어서,
상기 모니터링 프레임워크는 상기 클라우드 애플리케이션에 의해 전가된 예외들을 수집 및 저장하도록 구성되고,
상기 원격 모니터링 애플리케이션은 상기 클라우드 애플리케이션에 의해 전가된 예외들에 대한 경고를 생성하도록 구성되는
방법. - 제9항에 있어서,
상기 모니터링 프레임워크는 상기 클라우드 애플리케이션이 디버깅 모드로 동작될 때 생성된 디버깅 정보를 수집 및 저장하도록 구성되는
방법. - 제9항에 있어서,
상기 클라우드 컴퓨팅 환경은 상기 클라우드 애플리케이션의 복수의 인스턴스를 포함하고,
상기 모니터링 프레임워크는 상기 클라우드 애플리케이션의 상기 복수의 인스턴스에 의해 생성된 성능 정보를 종합하도록 구성되는
방법. - 하드웨어 패브릭의 하나 이상의 컴퓨팅 장치에 의해 실행되는 경우 방법을 수행하는 컴퓨텅 실행가능 명령어들을 저장하는 컴퓨터 판독가능 저장 매체로서,
상기 방법은
상기 하드웨어 패브릭의 상기 하나 이상의 컴퓨팅 장치에 의해, 고객에 의해 클라우드 컴퓨팅 환경에 업로드된 클라우드 애플리케이션을 실행하도록 하기 위한 상기 클라우드 컴퓨팅 환경을 제공하는 단계와,
상기 클라우드 컴퓨팅 환경 내에 모니터링 프레임워크를 구현하는 단계와,
상기 클라우드 컴퓨팅 환경 내의 상기 클라우드 애플리케이션에 상기 모니터링 프레임워크를 링크시키는 단계와,
상기 클라우드 컴퓨팅 환경 내에 메시지 큐잉 시스템을 구현하는 단계- 상기 메시지 큐잉 시스템은 기업의 정보 인프라 내에 위치한 컴퓨팅 장치에서 동작하는 원격 모니터링 애플리케이션과 통신하도록 상기 모니터링 프레임워크에 의해 사용됨 -와,
상기 모니터링 프레임워크에 의해, 상기 클라우드 애플리케이션에 의해 생성된 성능 정보를 수집하는 단계와,
상기 모니터링 프레임워크에 의해, 상기 클라우드 컴퓨팅 환경 내의 상기 메시지 큐잉 시스템에 상기 성능 정보를 제공하는 단계와,
상기 메시지 큐잉 시스템에 의해, 복수의 메시지 큐에 대한 가입 서비스를 제공하는 단계와,
상기 메시지 큐잉 시스템에 의해, 상기 기업의 정보 인프라 내에 위치한 상기 컴퓨팅 장치에서 동작하는 상기 원격 모니터링 애플리케이션과 호환가능한 메시지 내에 상기 성능 정보를 캡슐화하는 단계와,
상기 메시지 큐잉 시스템에 의해, 상기 성능 정보를 캡슐화하는 상기 메시지를 상기 원격 모니터링 애플리케이션과 연관된 특정 메시지 큐에 저장하는 단계
를 포함하되,
상기 원격 모니터링 애플리케이션은 상기 특정 메시지 큐에 가입하고 상기 성능 정보를 캡슐화하는 상기 메시지를, 광역망을 통해 상기 클라우드 컴퓨팅 환경 내의 상기 특정 메시지 큐로부터 검색하도록 구성되고,
상기 원격 모니터링 애플리케이션은 상기 검색된 메시지로부터의 상기 성능 정보를, 상기 기업의 정보 인프라 내에 위치한 구내 구성요소로부터 상기 원격 모니터링 애플리케이션에 의해 수집되고 상기 원격 모니터링 애플리케이션에 의해 모니터링되는 다른 성능 정보와 종합하도록 더 구성되는
컴퓨터 판독가능 저장 매체. - 제16항에 있어서,
상기 클라우드 컴퓨팅 환경은 상기 클라우드 애플리케이션의 복수의 인스턴스를 포함하고,
상기 모니터링 프레임워크는 상기 클라우드 애플리케이션의 상기 복수의 인스턴스에 의해 생성된 성능 정보를 종합하도록 구성되는
컴퓨터 판독가능 저장 매체. - 제16항에 있어서,
상기 클라우드 컴퓨팅 환경 내의 상기 모니터링 프레임워크는 상기 모니터링 프레임워크의 런타임 버전이고,
상기 클라우드 애플리케이션은 상기 모니터링 프레임워크의 개발 버전을 포함하는 개발 플랫폼으로부터 업로드되는
컴퓨터 판독가능 저장 매체. - 제16항에 있어서,
상기 모니터링 프레임워크는 상기 클라우드 애플리케이션에 의해 전가된 예외들을 수집 및 저장하도록 구성되고,
상기 원격 모니터링 애플리케이션은 상기 클라우드 애플리케이션에 의해 전가된 예외들에 대한 경고를 생성하도록 구성되는
컴퓨터 판독가능 저장 매체. - 제16항에 있어서,
상기 모니터링 프레임워크는 상기 클라우드 애플리케이션이 디버깅 모드로 동작될 때 생성된 디버깅 정보를 수집 및 저장하도록 구성되는
컴퓨터 판독가능 저장 매체.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/636,712 US8819701B2 (en) | 2009-12-12 | 2009-12-12 | Cloud computing monitoring and management system |
US12/636,712 | 2009-12-12 | ||
PCT/US2010/055739 WO2011071624A2 (en) | 2009-12-12 | 2010-11-05 | Cloud computing monitoring and management system |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20120120220A KR20120120220A (ko) | 2012-11-01 |
KR101826368B1 true KR101826368B1 (ko) | 2018-02-06 |
Family
ID=44144390
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020127018050A KR101826368B1 (ko) | 2009-12-12 | 2010-11-05 | 클라우드 컴퓨팅 모니터링 및 관리 시스템 |
Country Status (7)
Country | Link |
---|---|
US (1) | US8819701B2 (ko) |
EP (1) | EP2510653B1 (ko) |
JP (1) | JP5677455B2 (ko) |
KR (1) | KR101826368B1 (ko) |
CN (1) | CN102652410B (ko) |
CA (1) | CA2780013C (ko) |
WO (1) | WO2011071624A2 (ko) |
Families Citing this family (136)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8572706B2 (en) | 2010-04-26 | 2013-10-29 | Vmware, Inc. | Policy engine for cloud platform |
US8813065B2 (en) | 2010-04-26 | 2014-08-19 | Vmware, Inc. | Microcloud platform delivery system |
US8627426B2 (en) | 2010-04-26 | 2014-01-07 | Vmware, Inc. | Cloud platform architecture |
US9772831B2 (en) | 2010-04-26 | 2017-09-26 | Pivotal Software, Inc. | Droplet execution engine for dynamic server application deployment |
US9448790B2 (en) | 2010-04-26 | 2016-09-20 | Pivotal Software, Inc. | Rapid updating of cloud applications |
US9191236B2 (en) | 2010-05-20 | 2015-11-17 | International Business Machines Corporation | Message broadcasting in a clustered computing environment |
US9009663B2 (en) * | 2010-06-01 | 2015-04-14 | Red Hat, Inc. | Cartridge-based package management |
WO2012023050A2 (en) | 2010-08-20 | 2012-02-23 | Overtis Group Limited | Secure cloud computing system and method |
US8819168B2 (en) * | 2010-12-14 | 2014-08-26 | Microsoft Corporation | Link expansion service |
US8447894B2 (en) | 2011-01-05 | 2013-05-21 | Alibaba Group Holding Limited | Upgrading an elastic computing cloud system |
KR20120099951A (ko) * | 2011-03-02 | 2012-09-12 | 삼성전자주식회사 | 휴대 단말기를 이용한 전자기기 a/s 제공 방법 및 시스템 |
US8997078B2 (en) | 2011-04-12 | 2015-03-31 | Pivotal Software, Inc. | Release lifecycle management system for a multi-node application |
ES2413562B1 (es) * | 2011-07-01 | 2014-08-18 | Telefónica, S.A. | Método y sistema para gestionar la asignación de recursos en despliegues escalables |
US9170798B2 (en) | 2012-03-02 | 2015-10-27 | Vmware, Inc. | System and method for customizing a deployment plan for a multi-tier application in a cloud infrastructure |
WO2013016584A1 (en) * | 2011-07-26 | 2013-01-31 | Nebula, Inc. | Systems and methods for implementing cloud computing |
US8661125B2 (en) | 2011-09-29 | 2014-02-25 | Microsoft Corporation | System comprising probe runner, monitor, and responder with associated databases for multi-level monitoring of a cloud service |
US9558048B2 (en) * | 2011-09-30 | 2017-01-31 | Oracle International Corporation | System and method for managing message queues for multinode applications in a transactional middleware machine environment |
US8447851B1 (en) * | 2011-11-10 | 2013-05-21 | CopperEgg Corporation | System for monitoring elastic cloud-based computing systems as a service |
US8918501B2 (en) | 2011-11-10 | 2014-12-23 | Microsoft Corporation | Pattern-based computational health and configuration monitoring |
US8935375B2 (en) * | 2011-12-12 | 2015-01-13 | Microsoft Corporation | Increasing availability of stateful applications |
US9251039B2 (en) * | 2012-02-17 | 2016-02-02 | Microsoft Technology Licensing, Llc | Remote debugging as a service |
US10031783B2 (en) | 2012-03-02 | 2018-07-24 | Vmware, Inc. | Execution of a distributed deployment plan for a multi-tier application in a cloud infrastructure |
US9052961B2 (en) | 2012-03-02 | 2015-06-09 | Vmware, Inc. | System to generate a deployment plan for a cloud infrastructure according to logical, multi-tier application blueprint |
US9047133B2 (en) | 2012-03-02 | 2015-06-02 | Vmware, Inc. | Single, logical, multi-tier application blueprint used for deployment and management of multiple physical applications in a cloud environment |
CN102662815A (zh) * | 2012-03-12 | 2012-09-12 | 苏州萃智新技术开发有限公司 | 云计算监视和管理系统 |
US9152640B2 (en) * | 2012-05-10 | 2015-10-06 | Hewlett-Packard Development Company, L.P. | Determining file allocation based on file operations |
US8856341B2 (en) * | 2012-05-31 | 2014-10-07 | Hewlett-Packard Development Company, L.P. | Balancing management duties in a cloud system |
JP6602669B2 (ja) * | 2012-06-15 | 2019-11-06 | サイクル コンピューティング,エルエルシー | クラウドインフラストラクチャ内のインフラストラクチャ欠陥を自動的に検出及び解決する方法及びシステム |
US9348652B2 (en) | 2012-07-02 | 2016-05-24 | Vmware, Inc. | Multi-tenant-cloud-aggregation and application-support system |
US9047410B2 (en) | 2012-07-18 | 2015-06-02 | Infosys Limited | Cloud-based application testing |
GB2504491A (en) * | 2012-07-30 | 2014-02-05 | Ibm | Remote debug service in a cloud environment |
US9032072B2 (en) | 2012-08-08 | 2015-05-12 | Empire Technology Development Llc | Real-time compressive data collection for cloud monitoring |
US20140047099A1 (en) * | 2012-08-08 | 2014-02-13 | International Business Machines Corporation | Performance monitor for multiple cloud computing environments |
EP2912524B1 (en) * | 2012-10-23 | 2017-09-06 | Kortek Industries PTY LTD | System and method for exchanging support data with a device having no physical user interface |
US9647906B2 (en) * | 2012-11-02 | 2017-05-09 | Rockwell Automation Technologies, Inc. | Cloud based drive monitoring solution |
KR101494820B1 (ko) * | 2012-11-13 | 2015-02-23 | 주식회사 지벤파크 | 클라우드 기반 가상 머신의 성능 모니터링 시스템 및 방법 |
US20140149568A1 (en) * | 2012-11-26 | 2014-05-29 | Sap Ag | Monitoring alerts in a computer landscape environment |
EP2939131A4 (en) * | 2012-12-27 | 2016-08-17 | Intel Corp | RESERVATION AND EXECUTION RECORDING OF SYSTEM OWN COMPUTER DEVICES |
CN103067502A (zh) * | 2012-12-31 | 2013-04-24 | 博彦科技(上海)有限公司 | 一种开发测试云的硬件系统 |
US9813307B2 (en) | 2013-01-28 | 2017-11-07 | Rackspace Us, Inc. | Methods and systems of monitoring failures in a distributed network system |
US9397902B2 (en) | 2013-01-28 | 2016-07-19 | Rackspace Us, Inc. | Methods and systems of tracking and verifying records of system change events in a distributed network system |
US9483334B2 (en) * | 2013-01-28 | 2016-11-01 | Rackspace Us, Inc. | Methods and systems of predictive monitoring of objects in a distributed network system |
CN103095533A (zh) * | 2013-02-22 | 2013-05-08 | 浪潮电子信息产业股份有限公司 | 一种云计算系统平台中的定时监控方法 |
CN103118138B (zh) * | 2013-03-04 | 2016-02-10 | 中国信息安全测评中心 | 一种基于云服务的消息队列流处理方法 |
US9430350B2 (en) * | 2013-03-22 | 2016-08-30 | Empire Technology Development Llc | Instance monitor |
CN104281520B (zh) * | 2013-07-10 | 2017-06-13 | 腾讯科技(深圳)有限公司 | 跟踪和调试的方法、装置及系统 |
US9197546B2 (en) | 2013-08-06 | 2015-11-24 | Oracle International Corporation | System and method for providing a messaging cluster with hybrid partitions |
US10348581B2 (en) * | 2013-11-08 | 2019-07-09 | Rockwell Automation Technologies, Inc. | Industrial monitoring using cloud computing |
US9391866B1 (en) * | 2013-11-14 | 2016-07-12 | Sprint Communication Company L.P. | Method for qualitative analysis of system performance correlation factors |
KR102201634B1 (ko) * | 2013-12-27 | 2021-01-12 | 엘지전자 주식회사 | 단말기 및 그 동작 방법 |
US9614963B2 (en) | 2014-03-26 | 2017-04-04 | Rockwell Automation Technologies, Inc. | Cloud-based global alarm annunciation system for industrial systems |
US10208947B2 (en) * | 2014-03-26 | 2019-02-19 | Rockwell Automation Technologies, Inc. | Cloud-level analytics for boiler networks |
US9843617B2 (en) | 2014-03-26 | 2017-12-12 | Rockwell Automation Technologies, Inc. | Cloud manifest configuration management system |
US10095202B2 (en) * | 2014-03-26 | 2018-10-09 | Rockwell Automation Technologies, Inc. | Multiple controllers configuration management interface for system connectivity |
US9971317B2 (en) | 2014-03-26 | 2018-05-15 | Rockwell Automation Technologies, Inc. | Cloud-level industrial controller loop gain tuning based on industrial application type |
US9825949B2 (en) | 2014-03-26 | 2017-11-21 | Rockwell Automation Technologies, Inc. | Device authentication to facilitate secure cloud management of industrial data |
US9866635B2 (en) | 2014-03-26 | 2018-01-09 | Rockwell Automation Technologies, Inc. | Unified data ingestion adapter for migration of industrial data to a cloud platform |
US9838476B2 (en) | 2014-03-26 | 2017-12-05 | Rockwell Automation Technologies, Inc. | On-premise data collection and ingestion using industrial cloud agents |
US9886012B2 (en) | 2014-03-26 | 2018-02-06 | Rockwell Automation Technologies, Inc. | Component factory for human-machine interface migration to a cloud platform |
US10623285B1 (en) | 2014-05-09 | 2020-04-14 | Amazon Technologies, Inc. | Multi-mode health monitoring service |
US10313225B1 (en) | 2014-05-09 | 2019-06-04 | Amazon Technologies, Inc. | Scalable routing service |
US9813379B1 (en) | 2014-05-09 | 2017-11-07 | Amazon Technologies, Inc. | Virtual private gateways using compute instances |
US20160021171A1 (en) * | 2014-07-18 | 2016-01-21 | Jive Communications, Inc. | Datacenter event stream processing in a network-based communication system |
US10044581B1 (en) | 2015-09-29 | 2018-08-07 | Amazon Technologies, Inc. | Network traffic tracking using encapsulation protocol |
US9473567B2 (en) | 2014-08-20 | 2016-10-18 | At&T Intellectual Property I, L.P. | Virtual zones for open systems interconnection layer 4 through layer 7 services in a cloud computing system |
US9742690B2 (en) | 2014-08-20 | 2017-08-22 | At&T Intellectual Property I, L.P. | Load adaptation architecture framework for orchestrating and managing services in a cloud computing system |
US9912529B2 (en) | 2014-08-20 | 2018-03-06 | International Business Machines Corporation | Tenant-specific log for events related to a cloud-based service |
US10291689B2 (en) | 2014-08-20 | 2019-05-14 | At&T Intellectual Property I, L.P. | Service centric virtual network function architecture for development and deployment of open systems interconnection communication model layer 4 through layer 7 services in a cloud computing system |
US9749242B2 (en) | 2014-08-20 | 2017-08-29 | At&T Intellectual Property I, L.P. | Network platform as a service layer for open systems interconnection communication model layer 4 through layer 7 services |
US9800673B2 (en) | 2014-08-20 | 2017-10-24 | At&T Intellectual Property I, L.P. | Service compiler component and service controller for open systems interconnection layer 4 through layer 7 services in a cloud computing system |
US9787499B2 (en) | 2014-09-19 | 2017-10-10 | Amazon Technologies, Inc. | Private alias endpoints for isolated virtual networks |
US9825881B2 (en) * | 2014-09-30 | 2017-11-21 | Sony Interactive Entertainment America Llc | Methods and systems for portably deploying applications on one or more cloud systems |
US20170262911A1 (en) * | 2014-12-05 | 2017-09-14 | Hewlett Packard Enterprise Development Lp | Cloud service rating |
US9906420B2 (en) | 2014-12-22 | 2018-02-27 | International Business Machines Corporation | Dynamic boundary based monitoring and metering |
WO2016114789A1 (en) * | 2015-01-16 | 2016-07-21 | Hewlett Packard Enterprise Development Lp | Memory manager |
US10912626B2 (en) | 2015-02-18 | 2021-02-09 | James R. Glidewell Dental Ceramics, Inc. | Integrated digital workflow for providing dental restoration |
US10650085B2 (en) | 2015-03-26 | 2020-05-12 | Microsoft Technology Licensing, Llc | Providing interactive preview of content within communication |
US10379889B2 (en) | 2015-06-15 | 2019-08-13 | Microsoft Technology Licensing, Llc | Monitoring and reporting performance of collaboration services using a monitoring service native to the collaboration service |
US10021196B1 (en) | 2015-06-22 | 2018-07-10 | Amazon Technologies, Inc. | Private service endpoints in isolated virtual networks |
CN105072161A (zh) * | 2015-07-20 | 2015-11-18 | 山东超越数控电子有限公司 | 一种基于云计算的应用程序管理系统 |
US10505881B2 (en) * | 2015-09-23 | 2019-12-10 | Amazon Technologies, Inc. | Generating message envelopes for heterogeneous events |
US10320644B1 (en) | 2015-09-14 | 2019-06-11 | Amazon Technologies, Inc. | Traffic analyzer for isolated virtual networks |
US10033602B1 (en) | 2015-09-29 | 2018-07-24 | Amazon Technologies, Inc. | Network health management using metrics from encapsulation protocol endpoints |
US10795775B2 (en) | 2015-10-29 | 2020-10-06 | Datto, Inc. | Apparatuses, methods, and systems for storage and analysis of SaaS data and non-SaaS data for businesses and other organizations |
US10082955B2 (en) | 2015-12-03 | 2018-09-25 | International Business Machines Corporation | Automated home memory cloud with key authenticator |
US10250452B2 (en) | 2015-12-14 | 2019-04-02 | Microsoft Technology Licensing, Llc | Packaging tool for first and third party component deployment |
US10666517B2 (en) | 2015-12-15 | 2020-05-26 | Microsoft Technology Licensing, Llc | End-to-end automated servicing model for cloud computing platforms |
US10699211B2 (en) | 2016-02-29 | 2020-06-30 | Oracle International Corporation | Supervised method for classifying seasonal patterns |
US10885461B2 (en) | 2016-02-29 | 2021-01-05 | Oracle International Corporation | Unsupervised method for classifying seasonal patterns |
US10331802B2 (en) | 2016-02-29 | 2019-06-25 | Oracle International Corporation | System for detecting and characterizing seasons |
US10867421B2 (en) | 2016-02-29 | 2020-12-15 | Oracle International Corporation | Seasonal aware method for forecasting and capacity planning |
US9942787B1 (en) | 2016-03-22 | 2018-04-10 | Amazon Technologies, Inc. | Virtual private network connection quality analysis |
US9971675B2 (en) | 2016-04-04 | 2018-05-15 | International Business Machines Corporation | Triggering debug processing within a scalable cloud environment |
US10073906B2 (en) | 2016-04-27 | 2018-09-11 | Oracle International Corporation | Scalable tri-point arbitration and clustering |
US10198339B2 (en) | 2016-05-16 | 2019-02-05 | Oracle International Corporation | Correlation-based analytic for time-series data |
CN106201738B (zh) * | 2016-06-27 | 2020-09-29 | 北京小米移动软件有限公司 | 系统广播调用方法及装置 |
US10635563B2 (en) | 2016-08-04 | 2020-04-28 | Oracle International Corporation | Unsupervised method for baselining and anomaly detection in time-series data for enterprise systems |
US11082439B2 (en) | 2016-08-04 | 2021-08-03 | Oracle International Corporation | Unsupervised method for baselining and anomaly detection in time-series data for enterprise systems |
US10223234B2 (en) | 2016-08-15 | 2019-03-05 | Microsoft Technology Licensing, Llc | Monitoring a web application using an outside-in strategy |
US10574558B1 (en) * | 2016-09-09 | 2020-02-25 | Equinix, Inc. | Limiting alarms in an asset monitoring system |
US10764255B2 (en) | 2016-09-21 | 2020-09-01 | Rockwell Automation Technologies, Inc. | Secure command execution from a cloud monitoring system to a remote cloud agent |
US10917324B2 (en) | 2016-09-28 | 2021-02-09 | Amazon Technologies, Inc. | Network health data aggregation service |
US10911263B2 (en) | 2016-09-28 | 2021-02-02 | Amazon Technologies, Inc. | Programmatic interfaces for network health information |
US10862777B2 (en) | 2016-09-28 | 2020-12-08 | Amazon Technologies, Inc. | Visualization of network health information |
US10243820B2 (en) | 2016-09-28 | 2019-03-26 | Amazon Technologies, Inc. | Filtering network health information based on customer impact |
US10241848B2 (en) | 2016-09-30 | 2019-03-26 | Microsoft Technology Licensing, Llc | Personalized diagnostics, troubleshooting, recovery, and notification based on application state |
US10476768B2 (en) * | 2016-10-03 | 2019-11-12 | Microsoft Technology Licensing, Llc | Diagnostic and recovery signals for disconnected applications in hosted service environment |
US10303582B2 (en) * | 2016-10-25 | 2019-05-28 | International Business Machines Corporation | Facilitating debugging serverless applications via graph rewriting |
US10560431B1 (en) | 2016-12-05 | 2020-02-11 | Amazon Technologies, Inc. | Virtual private gateway for encrypted communication over dedicated physical link |
US10467082B2 (en) | 2016-12-09 | 2019-11-05 | Microsoft Technology Licensing, Llc | Device driver verification |
US10452459B2 (en) | 2016-12-09 | 2019-10-22 | Microsoft Technology Licensing, Llc | Device driver telemetry |
US10915830B2 (en) | 2017-02-24 | 2021-02-09 | Oracle International Corporation | Multiscale method for predictive alerting |
US10949436B2 (en) | 2017-02-24 | 2021-03-16 | Oracle International Corporation | Optimization for scalable analytics using time series models |
US10817803B2 (en) | 2017-06-02 | 2020-10-27 | Oracle International Corporation | Data driven methods and systems for what if analysis |
US10394670B2 (en) * | 2017-06-02 | 2019-08-27 | Verizon Patent And Licensing Inc. | High availability and disaster recovery system architecture |
US10560404B2 (en) * | 2017-06-14 | 2020-02-11 | Citrix Systems, Inc. | Real-time cloud-based messaging system |
WO2018229153A1 (en) * | 2017-06-16 | 2018-12-20 | Amadeus S.A.S. | Cross-cluster service provision |
US11327473B2 (en) | 2017-07-11 | 2022-05-10 | Rockwell Automation Technologies, Inc. | Dynamically reconfigurable data collection agent for fracking pump asset |
US10482063B2 (en) | 2017-08-14 | 2019-11-19 | Rockwell Automation Technologies, Inc. | Modular control manifest generator for cloud automation |
US10416660B2 (en) | 2017-08-31 | 2019-09-17 | Rockwell Automation Technologies, Inc. | Discrete manufacturing hybrid cloud solution architecture |
CN107689925B (zh) * | 2017-09-28 | 2020-01-14 | 平安科技(深圳)有限公司 | 基于云监控的负载均衡优化方法及装置 |
US10496396B2 (en) | 2017-09-29 | 2019-12-03 | Oracle International Corporation | Scalable artificial intelligence driven configuration management |
CN108234659B (zh) * | 2018-01-08 | 2021-10-08 | 上海京像微电子有限公司 | 数据处理方法、装置及系统 |
US11140020B1 (en) | 2018-03-01 | 2021-10-05 | Amazon Technologies, Inc. | Availability-enhancing gateways for network traffic in virtualized computing environments |
US10997517B2 (en) | 2018-06-05 | 2021-05-04 | Oracle International Corporation | Methods and systems for aggregating distribution approximations |
US10963346B2 (en) | 2018-06-05 | 2021-03-30 | Oracle International Corporation | Scalable methods and systems for approximating statistical distributions |
US10742517B2 (en) | 2018-06-29 | 2020-08-11 | International Business Machines Corporation | Rapid testing of configuration changes in software defined infrastructure |
US11138090B2 (en) | 2018-10-23 | 2021-10-05 | Oracle International Corporation | Systems and methods for forecasting time series with variable seasonality |
US12001926B2 (en) | 2018-10-23 | 2024-06-04 | Oracle International Corporation | Systems and methods for detecting long term seasons |
US10884815B2 (en) | 2018-10-29 | 2021-01-05 | Pivotal Software, Inc. | Independent services platform |
US10855548B2 (en) | 2019-02-15 | 2020-12-01 | Oracle International Corporation | Systems and methods for automatically detecting, summarizing, and responding to anomalies |
US11533326B2 (en) | 2019-05-01 | 2022-12-20 | Oracle International Corporation | Systems and methods for multivariate anomaly detection in software monitoring |
US11537940B2 (en) | 2019-05-13 | 2022-12-27 | Oracle International Corporation | Systems and methods for unsupervised anomaly detection using non-parametric tolerance intervals over a sliding window of t-digests |
US11887015B2 (en) | 2019-09-13 | 2024-01-30 | Oracle International Corporation | Automatically-generated labels for time series data and numerical lists to use in analytic and machine learning systems |
US10958523B1 (en) | 2020-07-28 | 2021-03-23 | Bank Of America Corporation | Consistent deployment of monitoring configurations on multiple computing systems |
US11188437B1 (en) | 2020-07-30 | 2021-11-30 | Bank Of America Corporation | Remote deployment of monitoring agents on computing systems |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090055838A1 (en) | 2007-08-23 | 2009-02-26 | Microsoft Corporation | Monitoring distributed applications |
US20090300635A1 (en) | 2008-05-30 | 2009-12-03 | James Michael Ferris | Methods and systems for providing a marketplace for cloud-based networks |
US20090300149A1 (en) | 2008-05-28 | 2009-12-03 | James Michael Ferris | Systems and methods for management of virtual appliances in cloud-based network |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6018343A (en) * | 1996-09-27 | 2000-01-25 | Timecruiser Computing Corp. | Web calendar architecture and uses thereof |
JPH11122260A (ja) * | 1997-10-17 | 1999-04-30 | Fujitsu Ltd | 通信制御装置及びその方法 |
US7197561B1 (en) * | 2001-03-28 | 2007-03-27 | Shoregroup, Inc. | Method and apparatus for maintaining the status of objects in computer networks using virtual state machines |
US7127507B1 (en) * | 2001-09-27 | 2006-10-24 | Sprint Communications Company L.P. | Method and apparatus for network-level monitoring of queue-based messaging systems |
CN101272288B (zh) | 2001-12-27 | 2011-02-09 | 富士施乐株式会社 | 信息管理服务器及信息管理方法 |
JP4039195B2 (ja) * | 2001-12-27 | 2008-01-30 | 富士ゼロックス株式会社 | ネットワークシステム |
US20040122936A1 (en) * | 2002-12-20 | 2004-06-24 | Ge Mortgage Holdings, Llc | Methods and apparatus for collecting, managing and presenting enterprise performance information |
US7301907B2 (en) * | 2005-01-06 | 2007-11-27 | Telefonktiebolaget Lm Ericsson (Publ) | Method of controlling packet flow |
US7826376B1 (en) * | 2005-01-25 | 2010-11-02 | Symantec Operating Corporation | Detection of network problems in a computing system |
US7467388B2 (en) * | 2005-11-22 | 2008-12-16 | Microsoft Corporation | Monitoring message queues and starting processing applications |
WO2007133308A2 (en) * | 2006-02-16 | 2007-11-22 | United States Postal Service | Centralized processing and management system |
US8601467B2 (en) * | 2006-10-03 | 2013-12-03 | Salesforce.Com, Inc. | Methods and systems for upgrading and installing application packages to an application platform |
US8468244B2 (en) * | 2007-01-05 | 2013-06-18 | Digital Doors, Inc. | Digital information infrastructure and method for security designated data and with granular data stores |
WO2008109537A1 (en) * | 2007-03-02 | 2008-09-12 | Spiceworks, Inc. | System and method for hardware and software monitoring with integrated resource acquisition |
US20080319984A1 (en) * | 2007-04-20 | 2008-12-25 | Proscia James W | System and method for remotely gathering information over a computer network |
US8108770B2 (en) * | 2007-08-27 | 2012-01-31 | Yahoo! Inc. | Secure inter-module communication mechanism |
JP4863125B2 (ja) | 2008-03-06 | 2012-01-25 | 日本電気株式会社 | 運用管理システム及び方法、並びに、プログラム |
US8849971B2 (en) * | 2008-05-28 | 2014-09-30 | Red Hat, Inc. | Load balancing in cloud-based networks |
US8943496B2 (en) * | 2008-05-30 | 2015-01-27 | Red Hat, Inc. | Providing a hosted appliance and migrating the appliance to an on-premise environment |
US8543998B2 (en) * | 2008-05-30 | 2013-09-24 | Oracle International Corporation | System and method for building virtual appliances using a repository metadata server and a dependency resolution service |
US9529689B2 (en) * | 2009-11-30 | 2016-12-27 | Red Hat, Inc. | Monitoring cloud computing environments |
-
2009
- 2009-12-12 US US12/636,712 patent/US8819701B2/en active Active
-
2010
- 2010-11-05 CN CN201080055878.5A patent/CN102652410B/zh active Active
- 2010-11-05 KR KR1020127018050A patent/KR101826368B1/ko not_active Application Discontinuation
- 2010-11-05 WO PCT/US2010/055739 patent/WO2011071624A2/en active Application Filing
- 2010-11-05 CA CA2780013A patent/CA2780013C/en active Active
- 2010-11-05 JP JP2012543114A patent/JP5677455B2/ja active Active
- 2010-11-05 EP EP10836385.4A patent/EP2510653B1/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090055838A1 (en) | 2007-08-23 | 2009-02-26 | Microsoft Corporation | Monitoring distributed applications |
US20090300149A1 (en) | 2008-05-28 | 2009-12-03 | James Michael Ferris | Systems and methods for management of virtual appliances in cloud-based network |
US20090300635A1 (en) | 2008-05-30 | 2009-12-03 | James Michael Ferris | Methods and systems for providing a marketplace for cloud-based networks |
Also Published As
Publication number | Publication date |
---|---|
CA2780013C (en) | 2017-09-05 |
JP2013513860A (ja) | 2013-04-22 |
US20110145836A1 (en) | 2011-06-16 |
CN102652410A (zh) | 2012-08-29 |
US8819701B2 (en) | 2014-08-26 |
EP2510653B1 (en) | 2018-12-26 |
CN102652410B (zh) | 2015-08-19 |
JP5677455B2 (ja) | 2015-02-25 |
WO2011071624A2 (en) | 2011-06-16 |
EP2510653A2 (en) | 2012-10-17 |
CA2780013A1 (en) | 2011-06-16 |
EP2510653A4 (en) | 2014-01-22 |
WO2011071624A3 (en) | 2011-09-22 |
KR20120120220A (ko) | 2012-11-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101826368B1 (ko) | 클라우드 컴퓨팅 모니터링 및 관리 시스템 | |
US10565034B2 (en) | Event-driven serverless function orchestration | |
US8972787B2 (en) | Dynamic collection of instrumentation data | |
US9419917B2 (en) | System and method of semantically modelling and monitoring applications and software architecture hosted by an IaaS provider | |
CN109714192A (zh) | 一种监控云平台的监控方法及系统 | |
US9128792B2 (en) | Systems and methods for installing, managing, and provisioning applications | |
Trihinas et al. | Monitoring elastically adaptive multi-cloud services | |
US9235491B2 (en) | Systems and methods for installing, managing, and provisioning applications | |
US20170357524A1 (en) | Automated software configuration management | |
US20130124720A1 (en) | Usage reporting from a cloud-hosted, distributed system | |
Akshaya et al. | A basic introduction to devops tools | |
US11528207B1 (en) | Computing system monitor auditing | |
US9317269B2 (en) | Systems and methods for installing, managing, and provisioning applications | |
US20230214229A1 (en) | Multi-tenant java agent instrumentation system | |
US20170031743A1 (en) | Quorum based distributed anomaly detection and repair | |
US7783752B2 (en) | Automated role based usage determination for software system | |
KR20170122874A (ko) | 데이터 분산 서비스 기반의 응용 시스템의 통합 로그 관리 장치 | |
CN115687036A (zh) | 日志采集方法、装置及日志系统 | |
KR20170131007A (ko) | 데이터 분산 서비스 기반의 실시간 통신 감시 시스템 | |
JP6926646B2 (ja) | 事業者間一括サービス管理装置および事業者間一括サービス管理方法 | |
US20240338299A1 (en) | Detecting funtional anomalies associated with software services in a distributed computing environment | |
Nilsson et al. | The AutoSPADA Platform: User-Friendly Edge Computing for Distributed Learning and Data Analytics in Connected Vehicles | |
CN117215639A (zh) | 一种基于观测云进行根因分析的配置管理方法及系统 | |
CN115812298A (zh) | 供应故障的区块链管理 | |
CN115168489A (zh) | 基于区块链的数据存证方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
N231 | Notification of change of applicant | ||
A201 | Request for examination | ||
E902 | Notification of reason for refusal |