One of the core strengths of Pivotal Cloud Foundry is its well-established, consistent and practical method of deploying applications. PCF provides the same user experience when deployed over different IaaS layers, and the same developer experience regardless of application language. AppDynamics adheres to this opinionated approach, making it simpler for our customers to monitor their apps on the PCF platform.
(For a brief history of PCF and AppDynamics’ commitment to Pivotal Cloud Foundry performance monitoring, read my earlier blog.)
Enabling AppDynamics’ best-in-class APM on PCF is a two-step process. You must:
Deploy your application with a PCF buildpack, which provides the framework and runtime support for your application.
Use the AppDynamics Service Broker, which enables third parties like AppDynamics to configure plug-in services used by the buildpack.
Pivotal’s opinionated approach offers many advantages. Say you’re a Java developer who’s building an app and deploying it in staging environments. But things aren’t running smoothly: You’re encountering performance issues and getting negative feedback from beta users. Unsurprisingly, you decide to try APM to locate the source of the problem. But rather than make significant changes to the app to accommodate an APM agent, you simply install the AppDynamics Service Broker Tile (more on this below), enter the config parameters, and redeploy the app. It’s really that simple.
Using the Buildpack
The PCF buildpack examines your apps to determine which dependencies to download, and how to configure the apps to interact with bound services. When you push up an app, you don’t have to write fabric support code to access Pivotal services and those of its partners. Rather, the framework provided by the buildpack does this work for you. (See Pivotal’s documentation for more details.)
Let’s use another Java example. (We’ve chosen the Java buildpack because it’s the most widely used with the longest history. Many AppDynamics customers use it, and our support for it is first class.) Your Java application—for example, a web app or JAR file—goes into the Java buildpack. The Cloud Foundry infrastructure handles how the app interacts with the BOSH system layer, as well as services such as logging and deployment. This article shows how to use AppDynamics with Java applications on PCF.
Service Broker Tile
The PCF tile for AppDynamics installs the AppDynamics Service Broker as an application. As the image below shows, the app does appear as a “tile” in the PCF Ops Manager, hence the name:
Essentially, the Service Broker provides a consistent way for third parties like AppDynamics to configure plug-in services that get consumed in the buildpack. These services become part of the “service fabric” that applications can use. In addition to APM, other examples include queuing services, MySQL, and many others.
The AppDynamics Service Broker plugs into this fabric to become a integral component of the Pivotal platform. The Service Broker Tile automates the BOSH deployment and configuration of the AppDynamics agents and controller. It’s a central point for entering your configuration information.
The Service Broker Tile registers the AppDynamics app as a service broker on Cloud Foundry, displays its service plans on the PCF Marketplace, and installs the Machine Agent extension, a separate application that ingests management metrics and shows them on the AppDynamics dashboard. PCF also attaches AppD’s Cloud Foundry performance monitoring agent to your applications.
New, Lightweight Service Broker Tile
We recently added a new version of the Service Broker Tile, which you can find on PivNet. Many of our customers are moving to PCF 2.x to take advantage of the new platform, and we took the opportunity to refresh our implementation of the tile, not just to support PCF versions 2.0 and 2.1, but also to make the tile lightweight, faster to install, and easier to use. The new version of the tile was rewritten using Python, and supports the very latest Pivotal Service Broker APIs. The Pivotal platform evolves rapidly, and so we removed some older APIs that aren’t relevant any more: the result is a leaner, faster version of the tile that lets you get your applications configured and deployed more easily.
Future Major Enhancements
By adhering to Pivotal’s opinionated platform philosophy, AppDynamics makes it easy to add APM to your PCF applications. In the future, we will greatly expand our Pivotal Cloud Foundry performance monitoring capabilities, adding new metrics and dashboards that provide more insights than ever before. The next blog in this series will take a closer look at these enhancements.
Do you need more robust APM to effectively manage your Pivotal applications? To learn more about AppDynamics Service Broker for PCF, explore our product overview page on the Pivotal Network site.
Future features and functionality are subject to change at the sole discretion of AppDynamics, and AppDynamics will have no liability for delay in the delivery or failure to deliver any of the features and functionality set forth in this document.