Monday, September 25, 2017

Get the Most Out of Your Application Performance Monitoring Tool – Upgrade Today

by  August 16, 2017
It’s no secret that upgrading your existing application performance monitoring tool can be a timely an extensive process. But here at CA, we are commited to making this process as easy and smooth as possible by helping each step of the way.
Recently I was asked to help a customer get up to speed with the latest version of  CA Application Performance Management (APM) 10.5 and some of its new features and capabilities. As you could imagine, there is a bit of a learning curve customers coming from an older version.
In this instance, one of the key customer requirements was to create dashboards quickly so they could give APM access to several of their app and support teams as part of their on-boarding strategy. They primarily had three categories (or roles) of users for their dashboards, as described below:
  • Executive: “How are my revenue impacting services doing and is end user experience good?”
  • Support: “Are systems, apps and data centers that am responsible for healthy and if not what’s the root cause and who do I triage to?”
  • App Dev: “Are any of my recent changes to servlets, EJB’s and DB’s causing any negative impact and if yes how and what’s the root cause?”
Apart from role based dashboards, another ask was the ability for a user to view his or her own data and nothing else. Not an unusual request as many of our customers have similar requirements, however traditional Application Performance Monitoring tools don’t offer an easy solution.

The Solution – CA APM 10

Enter CA APM 10 – it completely redefines the way dashboards are created and used. Among many features and functionalities – CA APM 10 introduced the concept of Perspectives, Attributes and Universes that together make dashboard creation a piece of cake. Before we get into the details let’s quickly recap what Attributes, Perspectives and Universes are:
  • Attributes: Are meta data associated with the Team Center elements like vertices and edges that give more information about that element. Attributes show up on the right-hand side of Team Center when you select a vertex or an edge (E.g. Location, Owner etc.).
  • Perspectives: The ability to set views by grouping attributes (E.g. AWS perspective based on grouping of attributes like Region, Apps and EC2ImageID). And allows the user to create a Team Center view that reflects their mental map of the layout.
  • Universes: Allows the user to define ACL based on user info and attribute data. For example, you can select all the Team Center elements based on a certain application (attribute here is application) and assign only the users who are responsible for those apps.

Creating Custom Dashboards with Ease

Now that we understand some of these concepts let’s see how CA APM 10 makes dashboard creation easy, going back to our customer use case. We started off with one perspective for each of our roles (i.e. Executive, Support and AppDev). Each of these perspectives were grouped by following attributes (determined by the customer, yours could be different):
  •  Executive Perspective: BT, Application
  •  Support Perspective: Location, Application, Hostname
  •  AppDev Perspective: Application, Type (component)
These perspectives formed our templates. In CA APM 10 this is as simple as creating three new perspectives with relevant attributes from the perspective drop down and takes only a minute or two to implement.
Next, we needed to populate each perspective with relevant data and associate users. For this we leveraged CA APM 10’s Universes and created new Universes based on data access requirements (in this case we defined Universes based on the application). Once the Universes were defined, the customer associated the data to each template relevant to that Universe – based on attributes and filters.
Last but not least, we needed to associate appropriate users to each Universe, so that a user who is responsible for say App A, when logged in, would only see data related to App A. This is easily done in the settings tab by associating users to the Universe. Once we had one template completely nailed, the customer went on to create additional Universes based on other apps.
All in all,  we were able to complete defining dashboards in less than two hours which can now be used for any number of users with the defined roles – and anytime a new app came in that required a dashboard, all we needed to do was define a Universe, associate team center data and relevant users and all our templates would be automatically populated. If a new view (template/perspective) was required, it would take only a few minutes to set up and relevant data would be automatically populated.
In summary, the old way of creating dashboards (which just about every APM vendor still follows) is cumbersome, error prone and time consuming. It’s hard to maintain and requires constant tweaks. With CA APM 10 and dynamic dashboards, in just a matter of minutes one could create templates and populate them with data that is relevant to the user – making it effortless, clean and easy to maintain.
To learn more about the new features in CA APM 10.5, watch this video:


Upgrade in 4 Simple Steps

Convinced it’s time to upgrade your application performance monitoring tool? Get started now and take advantage of all CA APM 10.5 has to offer!

Friday, April 14, 2017

Future Proofing Business with Microservices and Docker Monitoring

Future Proofing Business with Microservices and Docker Monitoring
February 17, 2017
Pete Waterhouse
CA Technologies
Imagine you're a cog in a well-oiled team that's architected a wonderful new business app comprising 50 plus microservices running across Docker containers (it's a small deployment). Pretty standard stuff, right?
And everything's Docker-centric across dev, test, and pre-prod environments. The team is so DevOps awesome that they're even thinking about running Docker in production – gasp!
Perhaps it's a cloud delivery model, so you're using a number of elastic compute instances for each one of those container-housed microservice nuggets.
Now let's get down to monitoring.
No problemo I hear you say. Resilience is the mantra, so the team probably automates a swag load of health checks in short time intervals each and every day. Ok, it's resulting in an increase in events and alarms, but we can take it – we always have.
Of course, monitoring doesn't end at the ops console. Because this is a business-critical app, there are some pretty important functional considerations too. Being services-driven, the team is laser-focused on capturing "golden signals" all google SRE style (latency; traffic; errors; saturation), or perhaps they go further, injecting app performance checks into Jenkins CI builds and analyzing cloud instance level performance metrics.
But there is a pattern emerging and it isn't one of those funky analytics-based insights you keep reading about on the Interwebs. Nope, because of the dynamic (even ephemeral) nature of container architectures, microservice dependencies and API-centric communication, that sharp increase in alarms is becoming unmanageable. So much so that the notion of running Docker in production is not looking so good after all.
This is tragic for business.
Why? Because Dockerized applications and services are unequivocally the architectural fabric needed to engage customers at scale. Not next month or next year, now. Defer adoption due to concerns about service levels and the only thing we might be guaranteeing is an uncertain business future.
It's not to say that monitoring is trivial – it certainly isn't. It just requires a different approach. One that treats dockerized apps as the future of a modern digital business and works to, well - future proof them.
There are four important considerations:

1. FAST, SIMPLE AND EASY-TO-USE

There's no rest for the wicked in the Docker world. What you configure for today can change in minutes, so explore agentless approaches that continuously detect, discover, model and map containers and clusters. When it comes to Docker monitoring, what's key is ensuring monitoring is baked into dockerized apps right from the get-go; not being forced to treat it as tough operational chore.

2. DEEP, ACTIONABLE MONITORING INSIGHTS

Tech loves tech (and there's not much more techy than Docker), but the business cares about functionality and customer experience. It's why you'll need visibility into the "vital signs'"of containerized applications; including latency, response time and performance. Use analytics sure, but to find signals in all the noise, expose patterns, anomalies, behaviors. There'll be plenty of these with Docker, you just need a system that knows what questions to ask to find them.

3. HYPER PERFORMANCE DELIVERED AT SCALE

Table stakes is aggregating millions of data points; rapidly detecting, diagnosing and isolating problems across Docker containers, clusters and elastic cloud services. For DevOps goodness give a big tick to approaches that allow cross-functional buddies to share deep Docker performance insights, while serving up actionable information in context of roles and tasks.

4. COMPREHENSIVE, FULL STACK SUPPORT

Monitor Docker platforms and architectures top-to-bottom, inside-out and outside-in. Sounds like a mouthful, but what it really means understanding Dockerized app performance in context of business outcomes and then correlating to every nook and cranny (across apps, infrastructure and networks) that support them. Whether you're an SRE, app owner or sysadmin, this approach is sure to pay dividends.
Docker is transformational because it helps companies architect and deliver better business outcomes from software - faster. To support these goals, it's time to rethink and re-engineer our Docker monitoring approaches. Seek out solutions that help ensure this tech always delivers on its promise – today and well into the future.
Pete Waterhouse, Advisor, Product Marketing at CA Technologies.