Upload
rajkamal
View
4
Download
0
Tags:
Embed Size (px)
DESCRIPTION
cloud computing books
Citation preview
Cloud and
Ubiquitous
Computing
INDEX
Sr. no Title Page no
1 Implement Windows / Linux Cluster
2 Developing application for Windows Azure.
3 Implementing private cloud with Xen Server.
4 Implement Hadoop
5 Develop application using GAE
6 Implement VMWAreESXi Server.
7 Native Virtualization using Hyper V.
8 Using OpenNebula to manage heterogeneous
distributed data center infrastructures.
Practical No 1: Implement Windows / Linux Cluster
Creating a Failover Cluster using Failover Cluster Manager
1. Open Failover Cluster Manager - it can be opened from Server Manager using the Tools menu:
2. In the Failover Cluster Manager, choose the Create Cluster action, which can be found in 3 places:
3. The Create Cluster Wizard initializes. Review the information on the Before You Begin screen. Click Next
4. Enter the names of all the servers that will be part of the cluster. Note: More that none node can be specified at a time using comma separation.
Example: MyServer1, MyServer2, MyServer3
5. If the nodes specified have not been validated, the following page in the wizard will be shown. Its highly recommended to validate the configuration before you create the cluster. This will help ensure that the servers are connected and configured correctly and that it can be supported by Microsoft:
6. In the Cluster Name field, provide a NetBIOS name to be used as the cluster name. This cluster name is also the name that can be used to connect to the cluster to manage it. During cluster creation, a computer object will also be created in the Active Directory domain and Organizational Unit where the cluster nodes computer objects are located. If the servers have no NICs configured for DHCP, then this page will also prompt for a static IP address. If any of the networks are configured for DHCP, then this will not be shown and an IPv4 DHCP assigned address will be used. Click Next:
Note: If you do not want the Active Directory object for the cluster to be placed in the same Organizational Unit (OU) as the servers, the specific OU can be designated by specifying the full distinguished name like screen shot below:
Review the Confirmation screen. If all eligible storage will be added to the cluster, check the box Add all eligible storage to the cluster. Click Next
Note: This ability to choose whether all eligible storage will be added to the cluster or not is new for Windows Server 2012. In previous versions all storage would always be added to the cluster. If you choose not to add all eligible storage to the cluster, you can
add specific disks after the cluster is created:
7. The cluster should be successfully created. Review the Summary report if desired. Click Finish
8. A Failover Cluster Manager will automatically connect to the cluster when the wizard finishes:
Creating a Failover Cluster using PowerShell
An alternate way to create a Failover Cluster is to use PowerShell. This can be accomplished with the New-Cluster PowerShell cmdlet. The following command creates 2-Node cluster (Contoso-FC1) and it assumes that a DHCP assigned address can be assigned and all eligible storage is added.
PowerShell:
New-Cluster -Name Contoso-FC1 -Node Contoso-N1,Contoso-N2
The following command is an example of specifying a static IP address for cluster to use for its management connection, and if you dont want any storage to be automatically added to the cluster.
PowerShell:
New-Cluster -Name Contoso-FC1 -Node Contoso-N1,Contoso-N2 StaticAddress 10.0.0.14 -NoStorage
The following command is an example that would put the cluster account put into an existing Active Directory OU called Clusters that is in the Contoso.local domain.
PowerShell:
New-Cluster -Name CN=Contoso-
FC1,OU=Clusters,DC=Contoso,DC=local -Node Contoso-N1,Contoso-
N2
Sign:___________________
Practical No 2: Develop Applications for Windows Azure
Setting up your development environment
From the Windows Azure Getting Started Roadmap there are some bullet points on how to
get started with your development environment.
Step 1: download the Windows Azure Platform Training Kit
Step 2 - Configuring & install Visual Studio 2010
Step 3 Download Tools & SDK: usingWeb Platform Installer as shown above or Manually.
Step 4 After Installation prepare the first deploable Hello world application
A) Building Your First Windows Azure Cloud Application with Visual Studio 2010
You dont need to sign up for anything or request any invitation tokens to walk through the steps in this post.
Start Visual Studio 2010, and begin a new project. Scroll to the new Cloud Service project
type, select the Cloud Service template, and name the project HelloCloud.
When you choose the Cloud Service template, you are creating at least two projects for your
solution: the cloud service project itself, and any number of hosted role projects which Visual
Studio prompts for with the New Cloud Service Project dialog. There are three types of role
projects you can have, but the one were interested in is the ASP.NET Web Role. Add an ASP.NET Web Role to the solution from the Visual C# group and click OK.
We now have two separate projects in our solution: a Cloud Service project named
HelloCloud, and an ASP.NET Web Role project named WebRole1:
The HelloCloudservice project just holds configuration information for hosting one or more
role projects in the cloud. Its Roles node in Solution Explorer presently indicates that its hosting one role, which is our WebRole1 ASP.NET Web Role. Additional roles can be added
to the service, including ASP.NET Web Roles that host WCF services in the cloud, but well cover that in a future post. Note also that its set as the solutions startup project.
The project contains two XML files named ServiceDefinition.csdefand
ServiceConfiguration.cscfg. Together, these two files define the roles hosted by the service.
Again, for our first cloud application, they currently reflect the single ASP.NET Web Role
named WebRole1:
ServiceDefinition.csdef
1
2
3
4
5
6
7
ServiceConfiguration.cscfg
1
2
3
4
5
6
7
8
9
1
0
cloud -->
The second project, WebRole1, is nothing more than a conventional ASP.NET application
that holds a reference to the Azure runtime assembly
System.ServiceHosting.ServiceRuntime. From your perspective as an ASP.NET developer,
an ASP.NET Web Role is an ASP.NET application, but one that can be hosted in the cloud.
You can add any Web components to it that you would typically include in a Web
application, including HTML pages, ASPX pages, ASMX or WCF services, images, media,
etc.
For our exercise, well just set the title text and add some HTML content in the Default.aspx page created by Visual Studio for the WebRole1 project.
1
2
3
4
5
6
7
8
9
10
11
12
13
Hello Windows Azure Hello From The Cloud!
Were ready to debug/run our application, but unlike debugging a conventional ASP.NET Web application:
The ASP.NET Web Role project is not the startup project; the Cloud Service project
is
The ASP.NET Web Role project wont run on the Development Server (aka Cassini) or IIS
So debugging cloud services locally means starting the Cloud Service project, which in turn
will start all the role projects that the service project hosts. And instead of Cassini or IIS, the
ASP.NET Web Role projects will be hosted by two special services that simulate the cloud
on your local machine: Development Fabric and Development Storage. The Development
Fabric service provides the Azure computational services used in the cloud, and the
Development Storage service provides the Azure storage services used in the cloud.
There are still a few things you need to ensure before you hit F5:
You must have started Visual Studio as an administrator. If you havent, youll get an error message complaining that The Development Fabric must be run elevated. Youll need to restart Visual Studio as an administrator and try again.
SQL Server Express Edition (2005 or 2008) must be running as the .\SQLEXPRESS
instance, your Windows account must have a login in .\SQLEXPRESS, and must be a
member of the sysadminrole. If SQL Express isnt configured properly, youll get a permissions error.
Go ahead and hit F5 and give it a run.
Visual Studio will prompt you to initialize the Development Storage service (this wont happen again for future builds). Click Yes, and wait a few moments while Visual Studio
sets up the SQL Express database.
Once the build is complete, Internet Explorer should launch and display our Hello Cloud
page.
In the tray area, the Development Fabric service appears as a gears icon. Click on the gears
icon to display the context menu:
Click Show Development Fabric UI to display the services user interface. In the Service Deployments treeview on the left, drill down to the HelloCloudservice. Beneath it, youll see
the WebRole1 project is running. Expand the WebRole1 project to see the number of fabric
instances that are running:
At present, and by default, only one instance is running. But you can scale out to increase the
capacity of your application simply by changing one parameter in the
ServiceDefinition.csdeffile.
Close the browser and open ServiceDefinition.csdefin the HelloCloudservice project. Change
the value of the count attribute in the Instances tag from 1 to 4:
Now hit F5 again, and view the Development Fabric UI again. This time, it shows 4 instances
hosting WebRole1:
As you can see, its easy to instantly increase the capacity of our applications and services. The experience would be the same in the cloud.
Congratulations! Youve just built your first Windows Azure application.
B) (Optional: We have to pay for using azure customer platform)
Building Your First Windows Azure Cloud Application with Visual
Studio 2010 (Online deployable Application on Azure)
Note: Follow the similar steps for creating the azure application as given in first example above.
Before running the application..
Signing up for the Windows Azure Service
Next up is to sign up for the Windows Azure Service through Microsoft Online Services.
Signing up for a Windows Azure account can be a little confusing since you dont sign up for Windows Azure directly but sign up with Microsoft Online Services which manages all of
your subscriptions to the Microsoft Online Services (Azure is one of them; there also is the
hosted Exchange and SharePoint which you can sign up for too).
You can see the various Windows Azure offers from this page and here is a Windows Azure
Comparison chart which shows that there is a free offer called Introductory Special. The Introductory Special offer says it lasts only until July so I guess at that point Microsoft Online
Services will start charging your credit card for any services that are in use.
WARNING: The introductory offer only includes 25 hours of compute time. You can
easily burn through that by just leaving your deployment running (faster if you have
both a staging and production deployment running). Make sure you DELETE (not
suspend; you must DELETE) your hosted service deployment (see below) when you
have finished with this tutorial.
Clicking on the Buy button takes me to the Microsoft Online Services customer portal where
you can sign in with your Windows Live account and sign up for the Windows Azure
Service. NOTE: Signing up on the Microsoft Online Services site is a multi-step process
where you first create your account, then checkout with the Windows Azure Introductory
Special in your shopping cart, activate your service, and finally specify the service
administrator.
Here is the Service Activation Screen where I have specified the project name as
AzureHelloWorld. This project name will be the project that is created in the Windows Azure Portal later on (whats up with those purple borders around everything?!?).
Now you will have a subscription to Windows Azure and after a little bit the Microsoft
Online Services Customer Portal will show that the Service is Active:
Now you can go to the Windows Azure Portal (http://windows.azure.com) and sign in with
the same Windows Live account that you used to sign up for the subscription at Microsoft
Online Services.
Now you will see the Windows Azure Portal home page with a single project named from
when you activated the service (in my case, AzureHelloWorld).
Select this project and choose New Service which is located to the right and just above the
project name:
Choose the Hosted Services from the two Windows Azure services that are presented:
Then name the service:
Then choose a url for your service and also the region where it will be running:
Clicking Next will get you to the Deployment page:
Now you are at the point where you can deploy your Hello World project that you created
earlier, but first you have to use Visual Studio to Publish it.
Return to your Hello World Visual Studio Windows Azure project and right click on the
HelloWorld Azure Project and click Publish:
This will create the deployment package and the configuration package (and open Windows
Explorer to their location too):
A new browser will be opened and you will be taken to the Windows Azure Portal but you
can close that and return to the previous window where the Deploy cube was showing:
Click that Deploy button and browse to the application package (*.cspkg) and configuration settings (*.cscfg) and then give a name for this deployment:
and finally click the Deploy button. Your files will begin copying:
And then you will see your package getting deployed:
Then once it is deployed, you can click Run and your application will begin initializing:
This took a while for me but eventually it finished (I actually went to lunch so I am not sure
how long it took but it was greater than 10 minutes).
And now when you browse to the cloudapp.net web site url on your console you will get your
Windows Azure Hello World:
And there you have it a successfully created and deployed (and running) Windows Azure Hello World application from beginning to end.
DON'T FORGET: Make sure your DELETE your hosted service deployment when you
are finished trying out Windows Azure. The introductory offer only includes 25 hours
of compute time. You can easily burn through that by just leaving your deployment
running (faster if you have both a staging and production deployment running). And
only suspended it does not stop the hours from accumulating. You will need to
DELETE the hosted service deployment to stop the compute hours from accumulating.
Sign:___________________
Practical No 3: Implementing private cloud with XenServer.
With the recent public availability of XenServer 6.2 there are an increasing number of people
wanting to try it; here is a walk-through of an install so that you know what to expect if you
want to try it yourself. In this example we are using a NFS datastore on the network to store
VM files. First, burn the ISO installer to a CD and boot to it:
You should see the above screen to start with. If you press F2 you will see the advanced
options:
Most people who are trying it out are just going to want to choose the most straight-forward
option press enter. For those who are curious about the other screen (F3):
Once you press enter, you should see the following:
As most of you who have installed many OS would be familiar with, we begin by choosing the keymap.
Now we have a standard disclaimer about data loss. Assuming you have backed up your data
or are doing an install to a fresh disk (or just dont care about whats on there), we hit OK:
Once you have read the EULA, hit Accept EULA:
Here we choose which disk to install to. In a similar way to ESXi, we dont have the option of software RAID, so here we choose a single disk or available hardware RAID volume.
Press space to select a drive:
Now we can key down to OK.
Since we are using a NFS datastore on the network to store virtual machines, this is OK.
Moving on:
We have the install media here so we will use the Local Media option.
If you have to ask what a Supplemental Pack is, you dont have one. Select No. If you select Yes and dont have one dont worry, it wont harm anything.
You can verify your installation media here if you like.
Pick a root password you will need this for logging in via the console or via the XenServer client on Windows.
The motherboard we are installing to has two Ethernet ports, both of which are supported by
XenServer 6.2. Choose the one you wish to use for the management network you can change this later.
Here we get to choose the networkg settings for our mangaement network. This is the IP
address used for logging in to manage the XenServer its advisable not to use DHCP, as youll waste time trying to find XenServer on the network if your DHCP server changes the IP address. As you can see above we have selected an IP address for a 10.1.1.0 network you may have another IP range, such as 192.168.1.* or another.
Next we choose the hostname and the DNS server settings if youre at home you likely use your gateway IP address.
This one should be easy pick your country!
Now choose whether to set your time based on an NTP server or on your manual input.
Last chance before install!
Youll get a progress bar so you can see where the install is up to. Once it has done, if you said you did have supplemental packs you should see:
If not, and you chose manual time entry:
Now you should be able to boot into the new install!
The above is the loading screen for your new XenServer 6.2 install.
This is the console screen for XenServer 6.2.
Installing virtual machine using xencenter:
Open Citrix XenCenter
Click on ADD a Server.
Add new server window will popup.
Now here enter all the details and click on Add.
Once server is added we will start will virtual machine deployment process.
First we need to create a storage repository where we will store all the iso images of virtual
machine. So for that click on New Storage.
In type select CIFS, in name you can give any name of your choice, in Location give the path of the shared folder which contains all the images of virtual machine & Click Finish.
Now we have new storage in which we have all the iso files required for installation of VMs.
So lets create new virtual machine.
For that click on New VM.
In template field select the name of the virtual machine you want to install.
Then in name field provide name of the virtual machine of your choice.
In the Installation Media field select the iso image of the vm from the storage repository we
created earlier.
Keep Home Server field unchanged and click Next.
Provide cpu & Memory details.
Provide the Storage for VM.
Keep Networking field as default and then click on Create New.
Once created it will automatically power on.
Sign:___________________
Practical No 4: Develop MapReduce Applications in Hadoop
Installing the Hortonworks Data Platform 2.0 for Windows is straightforward. Lets take a ok
at how to install a one node cluster on your Windows Server 2012 R2 machine.
To start, download the HDP 2.0 for Windows package. The package is under 1 GB, and will
take a few moments to download depending on your internet speed. Documentation for
installing a single node instance is located here. This blog post will guide you through that
instruction set to get you going with HDP 2.0 for Windows!
Heres an outline of the process youll work through to deploy:
Install the prerequisites Deploy HDP on your single node machine Start the services Run smoke tests to validate the install
Install the Pre-requisites
Youll now install Java, Python, and MSFT C++ run time. Windows Server 2012 already has the up to date .NET runtime, so you can skip that step.
Lets download the C++ run time, and install that by double clicking the downloaded MSI.
Download Python 2.7.x, and double click the downloaded MSI to install the package.
Once youve installed, youll need to ensure HDP can find Python by updating the PATH System Environment variable.
Go to Computer > Properties > Advanced System Settings > Environment variables.
Then append the install path to Python, for example C:\Python27, to this path after a ;:
( )
Verify your path is setup by entering a new Powershell or Command Prompt and typing:
python, which should run the python interpreter. Type quit() to exit.
Setup Java, which you can get here. You will also need to setup JAVA_HOME, which
Hadoop requires. Make sure to install Java to somewhere without a space in the path Program Files will not work!
To setup JAVA_HOME, in Explorer > right click Computer > Properties > Advanced
System Settings > Environment variables. Then setup a new System variable called
JAVA_HOME that points to your Java install (in this case, C:\java\jdk1.6.0_31).
Install the MSI package
Now we have all the pre-requisites installed. The next step is to install the HDP 2.0 for
Windows package.
Extract the MSI from the zip package you downloaded earlier. Open a Powershell prompt in
Administrator (Run as Administrator) mode, and execute the MSI through this command:
>msiexec /i "hdp-2.0.6.0.winpkg.msi"
The HDP Setup window appears pre-populated with the host name of the server, as well as
default installation parameters. Now, complete the form with your parameters:
Set the Hadoop User Password. This enables you to log in as the administrative user and perform administrative actions. This must match your local Windows Server password requirements. We recommend a strong pasword. Note the password you set well use this later.
Check Delete Existing HDP Data. This ensures that HDFS will be formatted and ready to use after you install.
Check Install HDP Additional Components. Select this check box to install Zookeeper, Flume, and HBase as HDP services deployed to the single node server.
Set the Hive and Oozie database credentials. Set hive for all Hive Metastore entries, and oozie for all OozieMetastore entries.
Select DERBY, and not MSSQL, as the DB Flavor in the dropdown selection. This will setup HDP to use an embedded Derby database, which is ideal for the evaluation single node scenario.
When you have finished setting the installation parameters, click Install to install HDP.
The HDP Setup window will close, and a progress indicator will be displayed while the
installer is running. The installation will take a few minutes disregard the progress bar expected time display.
The MSI installer window will display an info prompt when the installation is finished and
successful.
Start the services and run a jobs
Once the install is successful, you will start the HDP services on the single node.
Open a command prompt, and navigate to the HDP install directory. By default, the location
is C:\hdp, unless you set a different location:
>cd C:\hdp
>start_local_hdp_services
Validate the install by running the full suite of smoke tests. Its easiest to run the smoke tests as the HDP super user: hadoop.
In a command prompt, switch to using the hadoop user:
>runas /user:hadoopcmd
When prompted, enter the password you had set up during install.
Run the provided smoke tests as the hadoop user to verify that the HDP 2.0 services work as
expected:
>cd C:\hdp
>Run-SmokeTestshadoop
This will fire up a Mapreduce job on your freshly set up cluster. If it fails the first time, try
running it again with the same command Run-SmokeTestshadoop.
Sign:___________________
Practical No 5: Develop Applications using Google AppEngine
What Is Google App Engine?
Google App Engine lets you run your web applications on Google's infrastructure. App
Engine applications are easy to build, maintain and easy to scale as your traffic and data
storage needs grow. With App Engine, there are no servers to maintain, you just upload your
application, and it's ready to serve your users.
You can serve your app from your own domain name (such as http://www.example.com/)
using Google Apps. Or, you can serve your app using a free name on the appspot.com
domain. You can share your application with the world, or limit access to members of your
organization.
Google App Engine supports apps written in several programming languages. With App
Engine's Java runtime environment, you can build your app using standard Java technologies
including the JVM, Java servlets, and the Java programming languageor any other language using a JVM-based interpreter or compiler, such as JavaScript or Ruby. App Engine
also features a dedicated Python runtime environment, which includes a fast Python
interpreter and the Python standard library. The Java and Python runtime environments are
built to ensure that your application runs quickly, securely, and without interference with
other apps on the system.
With App Engine, you only pay for what you use. There are no set-up costs and no recurring
fees. The resources your application uses, such as storage and bandwidth, are measured in
gigabyte, and billed at competitive rates. You control the maximum amount of resources your
app can consume, so it always stays within your budget.
App Engine costs nothing to get started. All applications can use up to 500 MB of storage and
enough CPU and bandwidth to support an efficient app serving around 5 million page views a
month, absolutely free. When you enable billing for your application, your free limits are
raised and you only pay for resources you use above the free levels.
Requirements:
Download and Install Eclipse IDE
Configure Google Plug-in for Eclipse Validate the Configuration
1. Download the latest update site archive for Eclipse 4.3. 2. Unzip the archive. 3. In Eclipse, choose Help > Install New Software... 4. In the "Work with" section, click the Add... button. The "Add Repository" dialog box
appears.
5. Click Local and select the directory you unzipped, then click OK. Its path appears in the "Location" field. Leave the "Name" field empty.
6. Follow the steps below: a. Select the software components you want (typically the Google Plugin for Eclipse
and the Google App Engine SDK).
b. Click Next to review the list of items to be installed, click Next again to read and accept the license agreements, then click Finish. Eclipse will then install any
external dependencies, and add the chosen components to the Eclipse installation.
c. When asked, restart Eclipse.
The plugin should now be installed!
Simple Hello World Application:
1. Select the File menu > New > Web Application Project (If you do not see this menu option, select the Window menu > Reset Perspective..., click OK, then try the File menu again.)
Alternatively, click the New Web Application Project button on the toolbar.
Click 'Next'
Note: Unselect 'Use Google Web Toolkit' option.
The "Create a Web Application Project" wizard opens. For "Project name," enter a
name for your project, such as 'CodeLabEx0'. For "Package," enter an appropriate
package name, such as com.google.appengine.codelab.
And the project file structure would look like CodeLabEx0/
src/
com.google.appengine.codelab/
CodeLabEx0Servlet.java
META-INF/
jdoconfig.xml
log4j.properties
logging.properties
war/
WEB-INF/
lib/
...AppEngineJARs...
appengine-web.xml
web.xml
index.html
Run the application
Open a browser instance and type 'http://localhost:8888/' to launch application
deployed.
Click on Servlet link to launch application UI (run.html content).
Uploading Your Application
You create and manage applications in App Engine using the Administration Console. Once
you have registered an application ID for your application, you upload it to App Engine using
either the Eclipse plugin, or a command-line tool in the SDK.
Note: Once you register an application ID, you can delete it, but you can't re-register that
same application ID after it has been deleted. You can skip these next steps if you don't want
to register an ID at this time.
Registering the Application
You create and manage App Engine web applications from the App Engine Administration
Console, at the following URL:
https://appengine.google.com/
Sign in to App Engine using your Google account. If you do not have a Google account, you
can create a Google account with an email address and password.
Note: You may have already created a project using the Google Cloud Console. If this is the
case, you do not have to create a new application. Your project has a title and an id. In the
instructions that follow, the project title and id can be used wherever an application title and
id are mentioned. They are the same thing.
To create a new application, click the "Create an Application" button. Follow the instructions
to register an application ID, a name unique to this application.
Edit the appengine-web.xml file, then change the value of the element to be
your registered application ID.
For this tutorial, you should probably elect to use the free appspot.com domain name, and so
the full URL for the application will be http://your_app_id.appspot.com/. You can also
purchase a top-level domain name for your app, or use one that you have already registered.
For Authentication Options (Advanced), the default option, "Open to all Google Accounts
users", is the simplest choice for this tutorial. If you choose "Restricted to the following
Google Apps domain", then your domain administrator must add your new app as a service
on that domain. If you choose the Google Apps domain authentication option, then failure to
add your app to your Google Apps domain will result in an HTTP 500 where the stack trace
shows the error "Unexpected exception from servlet: java.lang.IllegalArgumentException:
The requested URL was not allowed: /guestbook.jsp". If you see this error, add the app to
your domain. See Configuring Google Apps to Authenticate on Appspot for instructions.
If you have an App Engine Premier account, you can specify that your new application
should reside in the European Union rather than the United States. This is especially useful if
your application's users are closer to Europe than to the United States. There is less network
latency and the End User Content will be stored at rest in the European Union. You must
specify this location when you register the application; you cannot change it later. Click the
Edit link in the Location Options section; select a location option, either United States or
European Union.
Uploading the Application
You can upload your application using Eclipse, or using a command at the command prompt.
Uploading From Eclipse
You can upload your application code and files from within Eclipse using the Google Plugin.
To upload your application from Eclipse, click on the Google button in the Eclipse
toolbar, then select "Deploy to App Engine."
If prompted, follow the instructions to provide the Application ID from the App Engine
console that you would like to use for this app, your Google account username (your email
address), and your password. Then click the Deploy button. Eclipse will then automatically
upload the contents of the war/ directory.
Uploading Using the Command Prompt
You can upload your application code and files using a command included in the SDK named
appcfg.cmd (Windows) or appcfg.sh (Mac OS X, Linux).
AppCfg is a multi-purpose tool for interacting with your app on App Engine. The command
takes the name of an action, the path to your app's war/ directory, and other options. To
upload the app code and files to App Engine, you use the update action.
To upload the app, using Windows:
..\appengine-java-sdk\bin\appcfg.cmd update war
To upload the app, using Mac OS X or Linux:
../appengine-java-sdk/bin/appcfg.sh update war
Enter your Google username and password at the prompts.
Checking Your Application State
After your application is uploaded, its Datastore Indexes will be automatically generated.
This operation may take some time, and any visitors to your site will receive a
DatastoreNeedIndexException until the indexes have been built. You can monitor the
progress of the operation by visiting the App Engine console, selecting your application, and
then selecting the Datastore Indexes link.
Accessing Your Application
You can now see your application running on App Engine. If you set up a free appspot.com
domain name, the URL for your website begins with your application ID:
http://your_app_id.appspot.com/
Sign:___________________
Practical No 6: Implement VMWAreESXi Server.
Boot your Host from the CD, and then select the standard installer option
You will see the following screens as it goes through its boot process
Once done we get to the installation, select enter to continue and then follow the next steps (fairly straight forward so far).
Now we have installed ESXi (didnt take that long did it!? How long did you think it would take?), if we reboot the host will then come up and load the ESXi OS.
Press F2 to customise your system (enter the root password created when installing)
The main part we will focus on is the network. We want to manually assign IP information to this host (much like we do with servers).
As you can see everything is set to DHCP so go through the IP configuration and DNS configuration and change them to suit your environment.
Once done, it will ask you to save changes and restart the network management of the ESXi host. Confirm this and now we can leave this underlying OS behind.
Download VSphere Client.
Once installed, log on to your ESXi host as below:
We are now going to create our first virtual machine (and in this example its going to be the VMWare Vcenter Server).
Right click the host, and select New Virtual Machine (its a standard next, next, next, finish dialogue box), just change any details you require as the screen shots below
I always like to edit the virtual machine before completion (tick box at the bottom).
The reason for this is:
1. I remove the floppy drive 2. I give the virtual machine the maximum amount of ram
possible (after all I dont want to sit about waiting for my first VM to install) and it can be easily adjusted when you come to add additional VMs.
We now want to mount the ISO file, (Ive already uploaded a few ISOs to the datastore) to do this follow the below:
Go to the Summary Tab, Right click on Datastore1 (or whatever youve called it), browse datastore, then chose to upload files to this datastore.
Now this is done we can mount the ISO and select connect at power on
Right click the new VM and select Power on, and then right click and select console.
You will now see the installation process of your VM.
And thats the basics done.
If all you require is to manage the ESXi Server like this, create/delete Virtual Machines then you are done!
Sign:___________________
Practical No 7: Native Virtualization using Hyper V.
What Youll Need to Run Hyper-V on Windows 8
In order to run Client Hyper-V on Windows 8 youll need the following:
Windows 8 Pro or Enterprise 64 bit Operating System
64 bit processor with Second Level Address Translation (SLAT)
BIOS-level Hardware Virtualization support
At least 4GB system ram
If you are running 64-bit Windows 8 and meet the hardware requirements
listed above youre equipped to give Client Hyper-V a try!
Setting Up Hyper-V
The first thing to do when getting ready to run Client Hyper-V is to make sure
that hardware virtualization support is turned on in the BIOS settings. For my
demonstration in this article I configured my HP Z820 desktop system to run
Client Hyper-V. Below is a picture of the BIOS settings I configured on my HP
Z820:
Once you have confirmed that hardware virtualization support is available and
enabled, its time to enable Hyper-V in the Turn Windows features on or off
dialog which you can launch by typing turn windows features at the Start
Screen and then selecting Settings in the right-hand pane.
Hyper-V Enabled in Windows Features
If Hyper-V wasnt enabled previously, youll need to reboot after applying this
change. After enabling Hyper-V its a good idea to configure networking for
the Hyper-V environment. In order to support external network connections,
youll need to make sure that a virtual switch has been created and is
functional. To get started with this, open the Virtual Switch Manager which
youll find on the Actions panel in the Hyper-V Manager (Type Hyper-V at the
Start Screen to find the Hyper-V Manager).
After clicking on Virtual Switch Manager in the Actions pane ensure that
External is highlighted, and then click on the Create Virtual Switch button.
If you have more than one NIC in your system, ensure that you have selected
the NIC to be used for VM external network connections. Heres the settings
that I used on my HP Z820:
While there are many other options and features that you can configure, this is
a good starting point and is all I needed to do to start creating and using VMs
on Window 8 Pro.
Creating VMs
Since Client Hyper-V is fully compatible with Hyper-V on Windows Server you
can use VMs and Vitual Hard Drives (VHDs) created on Windows Server Hyper-
V machines. Creating a new VM its easy. In this section Ill outline the process
to create a VM from scratch using PXE boot from the network. You can also
very easily perform OS installs from USB drives or optical media like DVDs.
To create a VM you just click on New Virtual Machine under Actions on
the right panel in the Hyper-V Manager. When you do this, the New Virtual
Machine Wizard will launch. The first task is to choose a VM name and
optionally specify a path for the VM file:
Next, youll decide how much memory to allocate. I chose to use the default of
512 MB to see how my VM would perform with default memory settings. I
know that I can always change this later.
After that youll need to select a virtual switch if networking is needed. In this
case I chose the virtual switch that I created in the earlier steps outlined in this
post.
The next step is to setup the VHD for the VM being created. Here you have the
option to create a new VHD, use an existing VHD, or to postpone VHD
configuration for later:
I chose to have a VHD created using the default settings. Note that you want
to think about where the VHD file is stored during this process. I like to keep
VM files and VHD files in the same directory for most configurations.
After clicking Finish I had one important step thats required to enable PXE
boot from VMs. in This last step was to create a Legacy Network Adapter in
VM settings. To do this, you launch the settings dialog for the VM that needs
network boot support, and then click Add Hardware which is the top item in
the left pane.
All you need to do is click the Add button and then ensure that the proper
virtual switch is used. Thats it! It only takes a couple minutes to perform all of
these steps once you know what to do. This VM was now ready for PXE boot
and the installation of the OS.
After clicking the green Start button for your VM in the right pane of the
Hyper-V Manager, youll then see the familiar PXE boot menu where you can
press F-12 for a network boot:
This works just like network booting from a physical machine. I used network
boot to kick off a clean Windows 7 install as you can see here:
Having VMs for different operating systems is great when you need to test
software on different operating systems, run machine images that are isolated
from the network, test upgrade scenarios, and many more activities. Just
remember to save snapshots for key configurations so that you can revert
machine state when needed.
Connecting to VMs on Windows 8
Once you have your VMs setup there are two great options for interacting
with and connecting to your VMs: the Hyper-V Manager, or Remote Desktop
Connection using Remote Desktop Protocol (RDP).
Using the Hyper-V manager youll be able to control your VM state in the
Virtual Machine Connection Window but youll have a more limited experience
(max screen resolution is 1600x1200, less seamless keyboard/mouse
interactions, etc).
Heres my clean Windows 7 VM running via the Hyper-V Virtual Machine
Connection window: (click/tap to enlarge)
For comparison, I connected to this VM via Remote Desktop Connection on a
display running WQHD screen resolution (2560x1440) which you can see here:
(click/tap to enlarge)
When using Remote Desktop with Hyper-V the keyboard and mouse work
seamlessly just like they do in any other Remote Desktop session. The only
downside is that you dont have the VM state management controls in this
view. If youre running RDP on the same Windows 8 machine as your Hyper-V
Manager, you can always switch over between the Hyper-V Manger and the
Remote Desktop session and have the best of both worlds.
For fun, I found an old Windows 3.51 VHD file that was last modified in 2003
and created a VM in the Hyper-V manager to run it. Remember the stabbing
fingers animation at the log on screen? Good times
There are many different ways to create VMs, and in this post Ive illustrated
how easy it is to get started with Hyper-V on Windows 8. There are a lot of
powerful tools for managing Hyper-V on Windows 8 including the same
PowerShell management capabilities that exist on Windows Server!
Sign:___________________
Practical No 8: Using OpenNebula to manage heterogeneous
distributed data center infrastructures.
ESX SandBox
The sandbox is a CentOS 6.3 virtual machine image with a pre-configured OpenNebula 4.4
(Retina) front-end, a virtualization host using QEMU ready to execute virtual machines, and
prepared images to offer a complete and rich cloud experience. Optionally other physical
worker nodes using any of the hypervisors supported by OpenNebula can be enrolled to build
small-scale cloud infrastructures. Users are able to log into an OpenNebula cloud, peer the
managed resources, and launch instances of virtual machines without the hassle of
configuring a physical infrastructure.
1. Requirements
ESX(i) 5.0+(Follow the steps performed in practical number 6 for installing ESXi). o other versions may be used converting the image first with vmkfstools (vmkfstools -i
{source vmdk} {destination vmdk}) 512 MB of free RAM for the Virtual Machine 10 GB of free disk space Virtual Infrastructure client (VI Client)
o windows application to interact with the ESX host
2. Download the Virtual Appliance
Download the image for ESX from the marketplace.
The image is compressed with bzip2. Be sure to decompress it before moving on. You
should end up with a folder containing two .vmdk files.
Recommended unarchivers:
o Mac OS X: The Unarchiver o Linux: use tar xvzf opennebula-4.2-sandbox.vmdk.tar.gz o Windows: 7-Zip
3. Boot the Appliance
Step 3.1 Upload Sandbox image
Start VI Client, connect to the ESX host and follow these steps:
Click on the Configuration tab and select Storage from the left Hardware menu Select one of the listed datastores (remember, you need 10GB of free space), right click,
Browse datastore Click on the Upload files to this folder icon Select the uncompressed two files (one at a time) to upload it to the datastore
Step 3.2 Create a new virtual machine
On the VI Client, click on the New Virtual Machine icon
Select Custom virtual machine Name: opennebula-sandbox Select the same datastore as in the point above Select Virtual Machine Version 8 Select Linux CentOS 4/5/6 (64 bit) CPUs: Accept the defaults Memory: 512 MB Network: Accept the default SCSI Controller: VMware Paravirtual Select disk: Use an existing virtual disk. Browse to the uploaded disk (select the one named
opennebula-3.8-sandbox.vmdk). Advanced options: Select the default Once created, start the Sandbox appliance
Step 3.3 Enter the Appliance
At this point the Virtual Machine will be running. Wait until you see a login prompt in the VI
client console that says one-sandbox login:
You can log in into the Virtual Machine using the following information:
Login: root Password: opennebula
4. Take a Test Drive
Sunstone GUI
The first thing were going to do is to log in as oneadmin to take a look at the superuser Sunstone, which has more options than the Sunstone panel for a regular user.
To login to sunstone open your browser at http://:9869
Read the specific guide for your Sandbox: VirtualBox, KVM, ESX or AWS to know what IP to use.
The login information is:
Login: oneadmin Password: opennebula
This login information can be obtained from ~/.one/one_auth of the oneadmin account.
Take a look at all the resources you can see. You can verify that the resources we created
earlier are visible.
Now logout and log in as the user we created earlier (myuser / mypassword). The first thing
you might have noticed is that the physical and security resources arent available anymore, since they can be only managed by the oneadmin user. In particular: Users, Groups, ACLs,
Clusters and Hosts.
To start the first Virtual Machine, you simply need to enter into the Virtual Resources Virtual Machines menu option (we refer to menu options throughout the documentation as
TABs) and click on the + Create button. Enter a name: tty and select the ttylinux template.
As a curiosity, you would have been able to instantiate the template from the CLI by doing:
$ onetemplate instantiate ttylinux --name tty
After clicking the create button, you will be brought back to the Virtual Machines TAB,
where you will see the Virtual Machine transition from PENDING (waiting for the scheduler to deploy it), to PROLOG and finally to running.
You may want to click on the VNC icon at the far right of the Virtual Machine row. A new
dialog will open with the VNC console in it. Click inside the console to focus it and press the
enter key to enter the login screen. The login information is:
Login: root Password: password
Sign:___________________