Tuesday Nov 15, 2011

What's a "Cloud Operating System"?

What's a "Cloud Operating System"?

Oracle's recently introduced Solaris 11 has been touted as "The First Cloud OS". Interesting claim, but what exactly does it mean? To answer that, we need to recall what characteristics define a cloud and then see how Solaris 11's capabilities map to those characteristics.

By now, most cloud computing professionals have at least heard of, if not adopted, the National Institute of Standards and Technology (NIST) Definition of Cloud Computing, including its vocabulary and conceptual architecture. NIST says that cloud computing includes these five characteristics:

  1. On-demand self-service
  2. Broad network access
  3. Resource pooling
  4. Rapid elasticity
  5. Measured service
How does Solaris 11 support these capabilities? Well, one of the key enabling technologies for cloud computing is virtualization, and Solaris 11 along with Oracle's SPARC and x86 hardware offerings provides the full range of virtualization technologies including dynamic hardware domains, hypervisors for both x86 and SPARC systems, and efficient non-hypervisor workload virtualization with containers. This provides the elasticity needed for cloud systems by supporting on-demand creation and resizing of application environments; it supports the safe partitioning of cloud systems into multi-tenant infrastructures, adding resources as needed and deprovisioning computing resources when no longer needed, allowing for pay-only-for-usage chargeback models.

For cloud computing developers, add to that the next generation of Java, and you've got the NIST requirements covered. The results, or one of them anyway, are services like the new Oracle Public Cloud. And Solaris is the ideal platform for running your Java applications.

So, if you want to develop for cloud computing, for IaaS, PaaS, or SaaS, start with an operating system designed to support cloud's key requirements…start with Solaris 11.

Sunday May 15, 2011

Java Gets Cloudy

Most of the books I've seen so far about cloud computing are full of advice, "shoulds" and "shouldn'ts" about cloud concepts and architecture, security recommendations, and policy compliance, but are not much in the "how" department. Of course, there are multiple perspectives from which to view the cloud -- end user, IaaS or PaaS provider, services broker, and, of course, developers. So, how do you actually build "cloud applications"? And what programming languages and APIs should developers use to build them? Well, there are some answers available.

Recently published is Code in the Cloud: Programming the Google App Engine, by Mark C. Chu-Carroll of Google. He starts his book with cloud programming examples written in Python, but then jumps to Java and the Google Web Toolkit, a very useful set of Java class libraries and widgets that generate fast JavaScript-based Web applications.

But that's not all; JCP, the caretakers of the Java technical standards, recently approved the Java EE 7 Platform Java Specification Request which will enable Java EE applications to support the multi-tenant and elastic features required for cloud computing solutions. Oracle's developers and customers, along with those of IBM, Red Hat, and even SAP, are pleased to see the continuing evolution and support of Java technology into "the Cloud".

Hmmm..."Write Once, Run in the Cloud" has a nice ring to it, don't you think?

About

The purpose of this blog is to highlight and to explore general issues around "Cloud Computing" -- its benefits, risks, and component technologies -- and how they are evolving. I'll also periodically comment (of course!) on Oracle's Cloud Computing capabilities, resources, and cloud-related events. -- Harry J Foxwell, PhD, Principal Consultant for Cloud Computing, Oracle Public Sector HW

Search

Categories
Archives
« April 2014
SunMonTueWedThuFriSat
  
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
   
       
Today