Google Developer News Includes New Managed VMs Service

Google Inc. this week is making lots of noise with a flurry of news announcements stemming from its Google Platform Live conference, including the introduction of Managed VMs designed to help developers using the App Engine cloud service access native resources and run native code.

App Engine is the Google Platform as a Service (PaaS) offering used by developers to build and run apps in the cloud. Developers mainly use Java for these apps, with the Python, PHP and Go programming languages also available.

For more leeway, developers could choose to use virtual machines (VMs) in Compute Engine, the more substantial -- and likely more expensive -- Infrastructure as a Service (IaaS) Google offering. It includes client libraries for the Microsoft .NET Framework, Objective-C, Ruby and more.

Yesterday, Google announced it was adding VM capability to App Engine with Managed VMs, giving developers a new option.

"You shouldn't have to choose between the flexibility of VMs and the auto-management and scaling provided by App Engine," read yesterday's blog post by company exec Urs Hölzle, who gave the keynote address at the conference. "Managed VMs let you run any binary inside a VM and turn it into a part of your App Engine app with just a few lines of code. App Engine will automatically manage these VMs for you."

A key feature of the new service is being able to access native resources and languages. As explained on the Managed VM page: "You can start with App Engine and if you ever run into a case where you need more control, or need to use a language or library that App Engine doesn't support, you can replace part of your application with a VM. For example, your application may need access to a native resource, such as a file system or network stack; or you might require a library or framework that is only available in C or C++. Current [PaaS] offerings lack this type of support and developers are forced off the cliff into an [IaaS] world. With Managed VMs, this is not the case."

Developers can also migrate apps built on unmanaged VMs and let Google manage details such as scaling. The company said it has extended the App Engine SDK to let developers configure and control Managed VMs.

The new service is now available only to "early access" users, but will soon be released to more developers as a technology preview. Developers can request to try it now or be notified when the preview becomes available.

Google also announced it was trying to make it easier for developers to build, test and release apps completely in the cloud by better integrating with the popular Git distributed version control system used to synchronize team development projects. "Simply commit a change with Git and we'll run a clean build and all unit tests," Hölzle said.

In even more developer news, Google said coders can now aggregate logs across multiple instances and filter and search the log data. Also, debugging has been enhanced with the addition of detailed stack traces for bugs. This provides "one-click access to the exact version of the code that caused the issue," Hölzle said. "You can even make small code changes right in the browser."