Skip to content

check for the data plane #1103

@grampelberg

Description

@grampelberg

check is a very powerful tool for users to validate that the control plane is healthy. Similar functionality should be added for validating that the data plane is operational and working as it should for specific applications.

User Stories

  • As a developer, I would like to verify that my app is working correctly after I have injected the data plane so that I can be sure it isn't my fault when something goes wrong.
  • As an operator, I would like to have a set of checks to alert on, verifying functionality, so that I can alert when an issue comes up in production.
  • As a developer, I would like to verify data plane operation on my application, so that I can understand if issues I'm experiencing are related to the proxy or something else.

Checks

Pre-Flight (#1516)

  • Host networking
  • UDP
  • Known initContainers

Post-Flight

  • Could pull proxy image
  • Proxy is passing readiness checks
  • Proxy is passing liveness checks
  • Is everything meshed (ex. deployment)
  • Can the new pods be scheduled?
  • Can the proxy reach the destination service?
  • Is the proxy reporting back?
  • Is the app passing liveness/readiness checks?

User Interface

CLI

$ cat foobar.yaml | linkerd inject -

supported resource type: [ok]
hostNetworking: [ok]
dnsPolicy: [ok]
$ linkerd check deploy/foobar --post

has proxy: [ok]
proxy is healthy: [ok]
metrics are being received: [ok]

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions