클라우드 컴퓨팅은 확장 성,리소스 프로비저닝,보안,내결함성 및 지속 가능성 등과 같은 모든 종류의 전산 서비스를 제공합니다. 이러한 모든 특성을 적용하려면 클라우드 응용 프로그램을 구현하거나 실제 세계에 배포하기 전에 평가해야 합니다. 이 뒤에 주된 이유는 실시간으로 실행하는 동안 발생한 제한을 변경하는 것은 매우 어렵다는 것입니다. 공급자의 오버 헤드,비용 증가 및 시간 낭비로 이어질 수 있습니다. 시뮬레이션은 이러한 모든 종류의 좌절감을 피하는 가장 좋은 방법입니다.
최초의 시뮬레이션 도구는 2009 년 멜버른 대학교 컴퓨터 과학 및 소프트웨어 공학과의 클라우드 컴퓨팅 및 분산 시스템(클라우드)연구소에서 출시되었습니다. 사용자 지정 응용 프로그램의 구현을 용이하게하기 위해 점차적으로 진화했다.
클라우드심 시뮬레이터
클라우드심은 사용자 지정 응용 프로그램을 구현하기 위한 조항을 제공하는 기본 시뮬레이션 도구이며,따라서 현재 연구 작업에 이 도구를 채택하려는 동기를 부여합니다. 클라우드심의 다양한 버전이 2009 년부터 출시되었으며 표에 나와 있습니다.
클라우드심 버전 |
|
클라우드 시뮬레이션 버전 |
년 |
클라우드 심 1.0 |
|
클라우드 심 2.0 |
7 월 2010 |
클라우드 심 2.1 |
1 월 2011 |
클라우드 심 3.0 |
1 월 2012 |
클라우드 심 3.0.1 |
10 월 2012 |
클라우드 심 3.0.2 |
11 월 2012 |
클라우드 심 3.0.3 |
5 월 2013 |
- 클라우드심
클라우드심 아키텍처는 계층화된 아키텍처를 따릅니다.이 그림에서 알 수 있듯이 아키텍처는 주로 세 가지로 구성됩니다.레이어 특히 사용자 코드,클라우드심의 구성 요소 및 시뮬레이션 엔진. 가상 머신 서비스,클라우드 서비스 및 네트워크를위한 예리한 인터페이스와 함께 전체 가상화 환경을 제공합니다. 각 구성 요소는 다음과 같이 간략하게 설명됩니다.
- 사용자 코드
이 섹션은 시뮬레이션 사양 및 스케줄링 정책으로 구성됩니다. 가상 머신,가상 머신 구성,가상 머신 요구 사항,사용자 수 및 스케줄링 프로세스와 같은 호스팅에 대한 기본 엔티티를 해석합니다.이러한 구성을 사용하여 클라우드 개발자는 페더레이션 클라우드를 배포하고 리소스 프로비저닝 및 부하 분산의 사용자 지정 응용 프로그램을 구현할 수 있습니다.
이 계층에는 사용자 인터페이스 구조,가상 머신 서비스,클라우드 서비스,클라우드 리소스 및 네트워크 애플리케이션이 포함됩니다. 이 섹션의 각 구성 요소에는 고유 한 기능이 있으며 다양한 유형의 서비스를 제공합니다. 그것은 클라우드의 모든 근본적인 문제를 처리합니다.
- 시뮬레이션 엔진
이 섹션에서는 시뮬레이션을 프로비저닝합니다.
클라우드의 클래스 다이어그램:
이 하위 섹션은 클라우드의 빌딩 블록을 클래스 다이어그램의 형태로 묘사합니다. 설명 된 여러 클래스로 구성됩니다.더 섹션에서.
데이터 센터의 클래스 다이어그램은 핵심 인프라 서비스 즉,제공합니다. 클라우드 컴퓨팅 패러다임에서 리소스 제공 업체가 제공하는 하드웨어 및 소프트웨어. 균질 및 이질성을 모두 제공합니다.자원 구성. 데이터 센터의 모든 구성 요소는 대역폭,메모리 및 저장 장치를 할당하는 데 추가로 사용되는 일련의 정책을 사용합니다. 데이터 센터 브로커는 사용자와 서비스 제공 업체 간의 중간 역할을합니다.그것은 사용자를 대신하여 행동하고 품질 보증 및 사용자의 요구 사항을 충족하기 위해 가격 측면에서 공급자와 적절한 클라우드 공급자뿐만 아니라 협상을 검색하는 데 도움이됩니다.클라우드 개발자는 사용자 지정 응용 프로그램을 만들려면이 클래스를 확장 할 수 있습니다.산스토리지는 저장 영역 네트워크를 의미하며 데이터 센터에 많은 양의 데이터를 저장하는 데 사용됩니다. 이 클래스의 도움으로 사용자는 네트워크 대역폭의 가용성에 따라 언제든지 데이터를 저장하고 검색 할 수 있습니다. 가상 머신 클래스는 가상 머신의 인스턴스를 만드는 데 사용됩니다. 또한 가상 머신의 관리를 담당하며 메모리,프로세서 및 스케줄링 정책과 같은 가상 머신의 특성을 저장하는 데 사용됩니다. 모든 구성 요소는 클래스에서 추상화됩니다. 클라우드 렛은 콘텐츠 전송,소셜 네트워킹 및 비즈니스 워크 플로우와 같은 클라우드 기반 애플리케이션 서비스에 사용됩니다.응용 프로그램의 복잡성은 계산 요구 사항 측면에서 나타낼 수 있습니다. 모든 응용 프로그램 구성 요소에는 사전 할당 된 명령 및 데이터 전송 양이 있습니다.데이터 센터에 페더레이션 용량을 제공합니다. 이 클래스는다른 피어 클라우드 코디네이터 서비스 및 클라우드 브로커와의 통신. 또한 시뮬레이션 중에 데이터 센터의 내부 상태를 주기적으로 모니터링합니다. 프로비저닝 정책 간에 네트워크 대역폭을 할당하는 데 사용되는 추상 클래스입니다. 개발자는 사용자 요구 사항에 따라 자신의 전략이 클래스를 확장 할 수 있습니다.메모리 프로비저닝은 메모리를 할당하는 데 사용되는 또 다른 추상 클래스입니다.이 클래스가 사용 가능한 공간을 찾은 경우에만 가상 머신의 호스트를 사용할 수 있습니다.마찬가지로 가상 머신 호스팅을 위한 프로비저닝 정책을 나타냅니다. 주요 책임은 가상 머신 배포에 대한 메모리,스토리지 및 가용성 요구 사항을 충족하는 데이터 센터에서 사용 가능한 호스트를 선택하는 것입니다. 또한 최적화된 정책을 구현하는 데 사용됩니다. 시간 공유 정책을 구현하는 데 사용되는 추상 클래스입니다. 또한 가상 머신에 처리 능력을 할당합니다.
- 클라우드심의 특징
클라우드심은 우리의 작업을 시뮬레이션하는 데 가장 적합한 시뮬레이터로 특정 중요한 기능을 가지고 있습니다. 키 기능은 다음과 같이 나열됩니다:
- 모델링 및 시뮬레이션의 대규모 응용 프로그램을 처리 할 수 있습니다.
- 가상화를 사용하여 서버에 가상 머신을 호스팅하는 리소스 프로비저닝 전략을 지원합니다.
- 에너지 계산 자원의 모델링 및 시뮬레이션에도 사용됩니다.
- 네트워크 토폴로지 및 메시지 전달 응용 프로그램을 시뮬레이션하는 기능이 있습니다.
- 연합 클라우드도 시뮬레이션할 수 있습니다.
- 이 사용자를 사용하면 시작,다시 시작 및 종료와 같은 시뮬레이션 작업을 제어 할 수 있습니다.
- 가상 머신에 대한 사용자 정의 전략 또는 리소스 할당 정책에 대한 시뮬레이션 옵션이 있습니다.
클라우드의 주요 목표는 모델링,시뮬레이션 및 기타 모든 종류의 서비스를 용이하게하는 확장 가능하고 포괄적 인 프레임 워크를 제공하는 것입니다. 시뮬레이터를 사용하여 사용자는 검사중인 특정 문제에 집중할 수 있습니다. 다른 모든 클라우드 시뮬레이터는 그래픽 사용자 인터페이스를 사용할 수 있는지 여부에 관계없이 클라우드의 기능을 상속합니다.