Integrating vCenter with PagerDuty

Deploy VEBA

PagerDuty Setup

PagerDuty Quick first time setup
  • First I signed up for a developer PagerDuty account
  • Once you have your account activated or in your existing setup, you first need a team or user created, this can be done by going to Configuration →Team or Configuration →Users to create one or both
  • Now that you have a team/user created, proceed to create an Escalation policy by going to Configuration → Escalations to define what happens when an incident is triggered
  • Once you have your escalations created, you are now ready to create your Service which represent an application, component, or team you wish to open incidents against.
  • For our Service, we are going to setup the Integration to use PagerDuty Events API v2. This will give us the Integration key for us to use later within our function that we are going to deploy.
  • To finish up and optionally, I also enabled the Slack v2 extension for my service which allows Pagerduty to send a Slack Notification when an incident is triggered. This integration also allows you to resolve an incident directly from Slack as well! Pretty neat!

Integrating with vCenter

  1. Clone VEBA repository
git clone https://github.com/vmware-samples/vcenter-event-broker-appliance
cd vcenter-event-broker-appliance/examples/python/trigger-pagerduty-incident
{
"routing_key": "<replace with your routing key>",
"event_action": "trigger"
}
export OPENFAAS_URL=https://VEBA_FQDN_OR_IP
faas-cli login -p VEBA_OPENFAAS_PASSWORD --tls-no-verify

# now create the secret
faas-cli secret create pdconfig --from-file=pdconfig.json --tls-no-verify
faas-cli deploy -f stack.yml --tls-no-verify

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store