BOSH CPI Support for CloudStack
Today’s guest post is from Iwasaki Yudai, research engineer at NTT Laboratory Software Innovation Center and Du Jun and Zhang Lei from the Cloud Team, Software Engineering Laboratory, Zhejiang University, China (ZJU-SST).
Cloud Foundry is the leading open source PaaS offering with a fast growing ecosystem and strong enterprise demand. One of its advantages which attracts many developers is its consistent model for deploying and running applications across multiple clouds such as AWS, VSphere and OpenStack. The approach provides cloud adopters with more choices and flexibilities.
CollabNet’s CloudForge Available on run.pivotal.io Marketplace
The following is a guest post by Kelly Lanspa from the CloudForge product team.
CloudForge from CollabNet is a collaborative software development and application lifecycle management platform. It includes source code management, Git/Subversion hosting and bug tracking on one platform, with backup services, additional storage and secure role-based user access to manage distributed teams. CloudForge is integrated with Pivotal’s hosted Cloud Foundry service, enabling users to easily build-test-deploy and scale apps.
From the marketplace console (or the cf command line utility), select CloudForge then choose one of the packages available.
Wrapping libyaml in go
We recently released version 6.0.0 of cf, the command line client for Cloud Foundry. cf was previously written in Ruby, and we have rewritten it in Go. This allowed us to package cf as as a single binary and simplified our deployment strategy enormously.
The YAML problem
Two weeks before our release, we realized that the go YAML library we were using, goyaml, is distributed under the LGPL license. This makes it unusable for cf. We had to quickly find another way to parse YAML in cf.
The definitive YAML implementation is a C library called libyaml. We knew that Go had good support for interfacing with C libraries, so we decided to write our own go bindings to libyaml. This felt a bit risky given that we were releasing in two weeks, so we named our creation ‘gamble’.
HM9000: Ready for Launch
Cloud Foundry (CF) is a platform-as-a-service that, once deployed, makes it easy for developers to deploy, run and scale web applications. Powering this elegant PAAS is a complex distributed system comprised of several interoperating components: the Cloud Controller (CC) accepts user input and directs Droplet Execution Agents (DEAs) to stage and run web applications. Meanwhile, the Router maps inbound traffic to web-app instances, while the Loggregator streams log output back to developers. All these components communicate via NATS, a performant message bus.
It’s possible to boil CF down to a relatively simple mental model: users inform CC that they desire applications and Cloud Foundry ensures that those applications, and only those applications, are actually running on DEAs.
Cloud Foundry Serving Around the Globe
The Church of Jesus Christ of Latter-day Saints (LDS Church) is a really large organization with even larger reach – probably much more than most of us realize. Sure, you probably know about the massive genealogy library and databases that they have, but it’s so much more. In my cursory research I found that they have numerous humanitarian programs, benefitting people around the globe with health services, drilling wells for safe water, disaster relief, educational services and more.
Why am I telling you all this? Because, just like in virtually every other industry Software is Eating the World; the mission of the LDS Church is greatly enabled and supported through technological innovation and application.
Monitoring Java Apps with AppDynamics
The following is a guest blog post by Dustin Whittle, Developer Evangelist at AppDynamics.
AppDynamics is an Application Performance Management company that offers solutions to monitor a variety of applications running on public clouds or in private data centers. App Dynamics is excited to support Pivotal’s Cloud Platform by making it easy to monitor Java apps running on Cloud Foundry and Pivotal’s Web Services.
Monitor Apps on Pivotal Web Services
The AppDynamic Java agents are included in the default Java buildpack for Cloud Foundry, so if you have AppDynamics monitoring running, the Cloud Foundry DEA will auto-detect the service and enable the agent in the buildpack.
Remote Dependencies, Convenience, Risk and Other Considerations for Operating Distributed Systems
One deeply held principle by experienced distributed system operators that I have worked with is that you should have no external dependencies to your software other than the ties to minimum requirements of the OS such as common system libraries, utilities, and the kernel of the base OS. This approach should enable recreating a distributed system deployment without any dependencies on the outside world. When something goes wrong, you should have control over your own destiny. Reliance on any external dependency that is managed or hosted by someone else introduces risk that something outside your system can affect your ability to restore and recreate the system any time you need to.
Migrating a Cloud Foundry PaaS to Run on OpenStack
The following is a guest blog post by Julian Fischer (email@example.com, @railshoster) founder and CEO or AnyNines, a Cloud Foundry and Rails hosting service operated by Avarteq GmbH in Saarbrücken, Germany.
Cloud Foundry is well known for simplifying application portability from one CF-based PaaS to another, but how simple is it to move an entire, live, Cloud Foundry installation from one underlying IaaS to another? We asked the team at Pivotal, who recounted their experience moving the Cloud Foundry instance at run.pivotal.io from one Amazon AWS availability zone to another in 40 minutes.
SAP HANA Service Broker Contributed to the Cloud Foundry Incubator
The quintessential story for platform as a service is that the developer needn’t perform a bunch of administrative functions just to start working on their code. Have a look at the installation instructions for the developer-targeted Spring Trader reference implementation for a pre-PaaS deployment experience. In a PaaS, this lengthy guide is replaced with one command each to provision a database and a messaging service, and then another command that deploys each part of the application with bindings to these services.
Service brokers are what make this provisioning and binding happen with ease, and today we are delighted to report that Cloud Foundry partner, SAP, has open sourced a new Cloud Foundry service broker for their SAP HANA database.
Sending Email from Cloud Foundry Java Applications with SendGrid
The following is a guest blog post by Scott Motte (@scottmotte), Developer Evangelist at SendGrid, a cloud based SMTP email delivery and management service.
A few weeks ago SendGrid released their sendgrid-java helper library. The library goes a step further in sticking with Cloud Foundry’s “it just works” experience and making your life as a developer easier. Previously, you had to write a large amount of boilerplate code using JavaMail. Now, you can send email with just a few lines of code.
How Does It Work?
At your Cloud Foundry Command Line Interface, add SendGrid as a service and bind it your app.
cf create-service sendgrid
Next, Install the vcapenv library, and install the sendgrid-java library.