Sun Java Solaris Communities My SDN Account Join SDN
 

JavaOne Online Technical Sessions

Pump Up Your Technical Knowledge
Listen and watch as industry luminaries bring you the latest on Java technologies
Begin Product Tab Sub Links Active Sub LinkJavaOne Technical Sessions JavaOne Hands-on Labs

Project Caroline: Platform as a Service, at Your Service, for Your Service
TS-1991


Presenter: Bob Scheifler, Sun Microsystems, Inc.


Project Caroline is a research project to build a system that provides a dynamic virtualized grid of language-level virtual machines (VMs), networks, and storage. The principal VM is the Java Virtual Machine (JVM), but others can also be supported, such as for Perl, Python, and Ruby. The system is designed for operation as a utility to host software-as-a-service (SaaS) providers and business-internal applications and is intended to be an attractive, horizontally scalable development and deployment environment for long-running services. This presentation describes the researchers' view of what a complete system would encompass, the current subset implementation and its programming model, and an example of its use.

The base system API is layered on Java Platform, Standard Edition (Java SE). At its core, Project Caroline features programmatic spawning of VMs on the grid; programmatic allocation of networks, IP addresses, host names, file systems, and database instances; and programmatic control of network connectivity between resources (VMs, storage, and the Internet), including connectivity with other customers' resources. Internet-facing connectivity includes static and dynamic NAT, layer 4-7 load balancing (including HTTPS), name-based virtual hosting, and direct binding to Internet-routable IP addresses for maximum protocol flexibility.

Off-grid developer access to the system is via the same API that is used on-grid, WebDAV (for file systems), and a web portal. Developer tools include NetBeans IDE support for remotely deploying and debugging applications on the grid. Higher-level frameworks automate on-grid deployment and management of subsystems and applications, such as automated deployment and network configuration of multiple Apache Tomcat instances in a load-balanced configuration. A systemwide Liberty identity provider simplifies end-user identity management for SaaS providers.

The system makes use of multiple features of the Solaris Operating System (Solaris OS): Zones are used for VM isolation and network binding control. Resource pools and the Fair Share Scheduler are used to manage processor allocations. IP Filter is used in network connectivity control. Extended accounting facilities are used to account for CPU time and network traffic. ZFS file system features such as snapshots and clones are available to developers.

Watch The Session
You need to be a registered Sun Developer Network member to view this multimedia session. If you are a registered SDN member, please click on "Watch Multimedia" button to log-in to view the multimedia session. If you wish to join SDN, please click here.

 
 
FREE White Papers on Java SE, Java EE, cloud computing and database technologies.
New SDN Member Only Offers Every Month Discounts, FREE white papers and more!
Java University and JavaOne Training Sessions