Google Stackdriver aggregates metrics, logs, and events from infrastructure, giving developers and operators a rich set of observable signals that speed root-cause analysis and reduce mean time to resolution (MTTR).
You can add a Stackdriver verification step to your workflow and Stackdriver will be used by Harness to verify the performance and quality of your deployments using Harness machine-learning verification analysis.
Verification with Stackdriver
You can read more about Harness and Stackdriver integration on the Harness Blog.
Verification Setup Overview
You set up Stackdriver and Harness in the following way:
- Stackdriver - Monitor your application using Stackdriver. In this article, we assume that you are using Stackdriver to monitor your application already.
- Cloud Provider Setup - In Harness, you connect Harness to your Google account, adding Google Cloud Platform as a Harness Cloud Provider. For more informations, see Add Cloud Providers.
- Harness Application- Create a Harness Application with a Service, Environment, and Workflow. We do not cover Application set up in this article. See Application Components.
- Verify Deployments:
- Add a Workflow to your Harness Application and deploy your microservice or application to the service infrastructure in your Environment.
- After you have run a successful deployment, you then add verification steps to the Workflow using your Verification Provider.
- Harness uses unsupervised machine-learning and Stackdriver monitoring to analyze your future deployments, discovering events that might be causing your deployments to fail. Then you can use this information to set rollback criteria and improve your deployments.
Connect to Stackdriver
Connect Harness to Stackdriver to have Harness verify the success of your deployments. Harness will use your tools to verify deployments and use its machine learning features to identify sources of failures.
Most APM and logging tools are added to Harness as Verification Providers. For Stackdriver, you use the Google Cloud Platform account set up as a Harness Cloud Provider.
Verify with Stackdriver
Harness can analyze Stackdriver data and analysis to verify, rollback, and improve deployments. To apply this analysis to your deployments, you set up Stackdriver as a verification step in a Harness Workflow.
This section covers how to set up Stackdriver in a Harness Workflow, and provides a summary of Harness verification results.
To verify your deployment with Stackdriver, do the following:
- Ensure that you have added Google Cloud Platform as a Cloud Provider provider, as described above.
- In your Workflow, under Verify Service, click Add Verification, and then click Stackdriver. The Stackdriver dialog appears.
- Configure the following settings.
Select the Google Cloud Platform (GCP) Cloud Provider you set up in Harness.
The Stackdriver API uses a service-specific notion of location. Harness uses the name of a region. Select the GCP region where the application is hosted.
You can find the region in Stackdriver Metrics Explorer but selecting the location column:
Currently, Harness does not support multi-region load balancers.
Load Balancer Metrics
In Load Balancer, select the IP address of the load balancer to use. In Metric Names, select the GCP metrics for Harness to analyze. Currently, Harness analyzes CPU and memory metrics only.
You can find the IP address used by a load balancer on its Frontends tab:
Pod Metric Names
Select the CPU and memory metrics to analyze. These are the same metrics you use in Stackdriver Metrics Explorer:
Analysis Time duration
Set the duration for the verification step. If a verification step exceeds the value, the workflow Failure Strategy is triggered. For example, if the Failure Strategy is Ignore, then the verification state is marked Failed but the workflow execution continues.
Baseline for Risk Analysis
Select Previous Analysis to have this verification use the previous analysis for a baseline comparison. If your workflow is a Canary workflow type, you can select Canary Analysis to have this verification compare old versions of nodes to new versions of nodes in real-time.
Execute with previous steps
Check this checkbox to run this verification step in parallel with the previous steps in Verify Service.
Specify the sensitivity of the failure criteria. When the criteria is met, the workflow Failure Strategy is triggered.
When are done, the dialog will look something like this:
- Click TEST to test your settings. In the testing assistant, select a host and click RUN. The host name is the same as you can see in the Stackdriver Metrics Explorer:
If the settings are correct, and the Harness Delegate can reach the platform via its API, the assistant displays the data it found:
- When you are finished, click SUBMIT. The Stackdriver verification step is added to your Workflow.
Once you have deployed your Workflow (or Pipeline) using the Stackdriver verification step, you can automatically verify performance across your deployment. For more information, see Add a Workflow and Add a Pipeline.
To see the results of Harness machine-learning evaluation of your Stackdriver verification, in your workflow or pipeline deployment you can expand the Verify Service step and then click the Stackdriver step.
You can also see the evaluation in the Continuous Verification dashboard. The Workflow verification view is for the DevOps user who developed the workflow. The Continuous Verification dashboard is where all future deployments are displayed for developers and others interested in deployment analysis.