Internship Presentation
Internship Presentation
0 Cloud Computing
Cloud Services
IaaS
Infrastructure-as-a-Service
PaaS
Platform-as-a-Service
SaaS
Software-as-a-Service
host
build
consume
Cloud Services
Typical IT Management
Allocated IT-capacities Not Enough Power Load Forecast
IT CAPACITY
Actual Load
TIME
Load Forecast
IT CAPACITY
TIME
Windows Azure
0 Windows Azure is a foundation of Microsofts
Runs applications in the cloud Provides Storage Application Management Developer SDK
API.
functionalities from the application rather than using the azure portal.
Interface: IAzureServiceManager
Properties Functions
Implementation
0 AzureServiceMgr exposes the APIs to the user of the
library.
requests.
Use of Library
Callbacks
Learning
0 Azure Infrastructure
0 REST API
0 Asynchronous Functions with Callbacks
Questions?
from WA. 0 Ability to run current stress (endurance) and scale tests. Users can set:
0 0 0 0 0
Duration Tests to run Target threads to run per test Threads per process Delay between starting each process
0 0 0 0 0
Runs can be stopped at any time Tests can run against any environment SDK and test binaries can be updated without redeploying test infrastructure Display a history of the results of tests that we had run User interacts with the system through a Web Site, with some level of security
0 Current pass rate % 0 Any counter that tests specify, e.g. messages sent, messages received, etc. 0 Test logs
Motivation
0 Latency Check: An exclusive test running in some VM may
monitor the latency of the other tests running in other VMs. 0 Management of VMs: An exclusive test running in some VM can carry out node up-down or rolling upgrade of other VMs. 0 Test Specific: Some tests may require to be running in exclusive mode and will fail when some other test instance gets scheduled and run in its VM. 0 Stress Testing: We may have a better interpretation of the stress test when the test is running in exclusive mode.
Changes Required
0 The design requires three changes: 0 Changes in the core scheduling part of the CTH. 0 Introduction of the tags in the ste file so that test writer can configure the test to be exclusive. 0 Preference to the exclusive threads to be read first and scheduler to assign worker role first. 0 Project wise 0 CTH_Common 0 CTH_WebRole 0 CTH_WorkerRole
CTH_Common
0 First, we introduce IsAvailable flag to the worker node
CTH_WebRole
0 Core Scheduling Change
CTH_WorkerRole
0 In the file TestRunnerServices.cs, introduce the following property for determining whether
the given worker role is available for scheduling or not. private bool isAvailable = true;
0 Again in the public void GetInfo(object source, System.Timers.ElapsedEventArgs e), have the
unavailable as per the exclusiveness of the test instance to be run. this.SetIsAvailable(test); workerRole to be available. this.SetIsAvailableOnStopOrPurgeOrException();
0 Whenever an exception is thrown or the caseSetId is stopped or is purged, then mark the
are inserted in the CaseSetResult Table and the instances that are being scheduled are inserted in the Recovery Table.
0 Periodically, after every 3 min the web role scans the Recovery
Table and picks up all the CaseSetResultId which are not in the RunningCaseSets of the worker roles for scheduling if it is not yet scheduled or deletes the entry if it has already been scheduled and completed.
0 The new design extends the existing pattern and adds to the
Recovery table all those instances for which a worker role could not be assigned.
0 Note:
0 The new tag in .ste file is not mandatory and if no tag is specified then
Test Scenarios
0 The table below lists the test scenarios along with their priority:
Serial No
1 2 3
Priority
Worker Roles
8 8 8
Behavior
P0 P0 P0
Existing Behavior. Unique machine for each test instance. Unique machines for the 7 exclusive tests and the remaining 3 test instances in a single machine. Each of the exclusive test instance gets a unique machine while the 16 non-exclusive test instances get scheduled in the remaining four machines. Similar to the above scenario.
P0
16
P0
18
P1
12
First all the machines are uniquely allotted to exclusive instances. Once the instances get completed, non-exclusive instances get scheduled.
First all the machines are engaged to the 8 exclusive instances. Once they are done, machines are available for the remaining test instances.
P1
10
10
Questions ???
Thank You.