Repository: linkerd/linkerd2
Pull request #5803 (2021-02-23 03:14:10)

Remove linkerd prefix from extension resources
This change removes the `linkerd-` prefix on all non-cluster resources
in the jaeger and viz linkerd extensions. Removing the prefix makes all
linkerd extensions consistent in their naming.

Signed-off-by: Dennis Adjei-Baah <dennis@buoyant.io>

dadjeibaah: @adleong, just to confirm, we still want the addition of annotation keys for jaeger for example, we just want it to be hardcoded in the helm charts, is that correct?
adleong: Yeah, it's most important to have that label on the cluster-scoped resources (for the purposes of uninstall), and I think it's already there.  For the namespace scoped resources it's less important, but we might as well, I guess.
olix0r: Spot-checking this branch I think there may be a few places that still need updating:
```
:; grep -RF 'extension: linkerd-' .
./multicluster/charts/linkerd-multicluster/templates/remote-access-service-mirror-rbac.yam    linkerd.io/extension: linkerd-multicluster
./multicluster/charts/linkerd-multicluster/templates/remote-access-service-mirror-rbac.yam    linkerd.io/extension: linkerd-multicluster
./multicluster/charts/linkerd-multicluster/templates/remote-access-service-mirror-rbac.yam    linkerd.io/extension: linkerd-multicluster
./multicluster/charts/linkerd-multicluster/templates/gateway.yaml:    linkerd.io/extension: linkerd-multicluster
./multicluster/charts/linkerd-multicluster/templates/gateway.yaml:    linkerd.io/extension: linkerd-multicluster
./multicluster/charts/linkerd-multicluster/templates/gateway.yaml:    linkerd.io/extension: linkerd-multicluster
./multicluster/charts/linkerd-multicluster/templates/gateway.yaml:    linkerd.io/extension: linkerd-multicluster
./multicluster/charts/linkerd-multicluster/templates/namespace.yaml:    linkerd.io/extension: linkerd-multicluster
./multicluster/charts/linkerd-multicluster/templates/link-crd.yaml:    linkerd.io/extension: linkerd-multicluster
```
```
#; golly:~/b/l2  (dad/naming-consistency ✔)
:; rg ExtensionName\ = 
viz/cmd/root.go
14:     ExtensionName = "viz"

jaeger/cmd/check.go
21:     JaegerExtensionName = "jaeger"

multicluster/cmd/check.go
29:     MulticlusterExtensionName = "linkerd-multicluster"

test/integration/install_test.go
87:     multiclusterExtensionName = "linkerd-multicluster"

viz/pkg/healthcheck/healthcheck.go
25:     VizExtensionName = "viz"

web/app/js/components/Navigation.jsx
47:const multiclusterExtensionName = 'linkerd-multicluster';

web/app/js/components/Gateway.jsx
15:const multiclusterExtensionName = 'linkerd-multicluster';
```
adleong: We avoid renaming any resources in the multicluster extension here to avoid upgrade issues.  However, since the `linkerd.io/extension` label is new, there should be no concerns about updating the value of that label in the multicluster extension from linkerd-multicluster to multicluster.  So :+1: to making that change here.
dadjeibaah: @olix0r, I was under the impression that we didn't want to modify the prefixes in the multicluster extension since it is on stable 2.9 and that we could modify anything in viz and jaeger since its not on stable yet.
olix0r: @dadjeibaah as Alex mentioned, the label is new; so while we shouldn't update multi cluster _resources_, the label should probably be consistent.

Patch:
diff --git a/charts/linkerd2/templates/heartbeat.yaml b/charts/linkerd2/templates/heartbeat.yaml
index 9c5fc9aed..dda0f24be 100644
--- a/charts/linkerd2/templates/heartbeat.yaml
+++ b/charts/linkerd2/templates/heartbeat.yaml
@@ -46,7 +46,7 @@ spec:
             - "-controller-namespace={{.Values.namespace}}"
             - "-log-level={{.Values.controllerLogLevel}}"
             - "-log-format={{.Values.controllerLogFormat}}"
-            - "-prometheus-url=http://linkerd-prometheus.linkerd-viz.svc.{{.Values.clusterDomain}}:9090"
+            - "-prometheus-url=http://prometheus.linkerd-viz.svc.{{.Values.clusterDomain}}:9090"
             {{- if .Values.heartbeatResources -}}
             {{- include "partials.resources" .Values.heartbeatResources | nindent 12 }}
             {{- end }}
diff --git a/cli/cmd/controller-metrics.go b/cli/cmd/controller-metrics.go
new file mode 100644
index 000000000..60f4db655
--- /dev/null
+++ b/cli/cmd/controller-metrics.go
@@ -0,0 +1,75 @@
+package cmd
+
+import (
+	"bytes"
+	"fmt"
+	"time"
+
+	"github.com/linkerd/linkerd2/pkg/k8s"
+	"github.com/spf13/cobra"
+	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
+)
+
+// ControllerMetricsOptions holds values for command line flags that apply to the controller-metrics
+// command.
+type ControllerMetricsOptions struct {
+	wait time.Duration
+}
+
+// newControllerMetricsOptions initializes controller-metrics options setting
+// the max wait time duration as 30 seconds to fetch controller-metrics
+//
+// This option may be overridden on the CLI at run-time
+func newControllerMetricsOptions() *ControllerMetricsOptions {
+	return &ControllerMetricsOptions{
+		wait: 30 * time.Second,
+	}
+}
+
+// newCmdControllerMetrics creates a new cobra command `controller-metrics` which contains commands to fetch control plane container's metrics
+func newCmdControllerMetrics() *cobra.Command {
+	options := newControllerMetricsOptions()
+
+	cmd := &cobra.Command{
+		Use:     "controller-metrics",
+		Aliases: []string{"cp-metrics"},
+		Short:   "Fetch metrics directly from the Linkerd control plane containers",
+		Long: `Fetch metrics directly from Linkerd control plane containers.
+
+  This command initiates port-forward to each control plane process, and
+  queries the /metrics endpoint on them.`,
+		Args: cobra.NoArgs,
+		RunE: func(cmd *cobra.Command, args []string) error {
+			k8sAPI, err := k8s.NewAPI(kubeconfigPath, kubeContext, impersonate, impersonateGroup, 0)
+			if err != nil {
+				return err
+			}
+
+			pods, err := k8sAPI.CoreV1().Pods(controlPlaneNamespace).List(cmd.Context(), metav1.ListOptions{})
+			if err != nil {
+				return err
+			}
+
+			results := getMetrics(k8sAPI, pods.Items, adminHTTPPortName, options.wait, verbose)
+
+			var buf bytes.Buffer
+			for i, result := range results {
+				content := fmt.Sprintf("#\n# POD %s (%d of %d)\n", result.pod, i+1, len(results))
+				if result.err != nil {
+					content += fmt.Sprintf("# ERROR %s\n", result.err)
+				} else {
+					content += fmt.Sprintf("# CONTAINER %s \n#\n", result.container)
+					content += string(result.metrics)
+				}
+				buf.WriteString(content)
+			}
+			fmt.Printf("%s", buf.String())
+
+			return nil
+		},
+	}
+
+	cmd.Flags().DurationVarP(&options.wait, "wait", "w", options.wait, "Time allowed to fetch diagnostics")
+
+	return cmd
+}
diff --git a/cli/cmd/diagnostics.go b/cli/cmd/diagnostics.go
index d15251efa..cfe8aeadc 100644
--- a/cli/cmd/diagnostics.go
+++ b/cli/cmd/diagnostics.go
@@ -1,78 +1,42 @@
 package cmd
 
 import (
-	"bytes"
-	"fmt"
-	"time"
-
-	"github.com/linkerd/linkerd2/pkg/k8s"
 	"github.com/spf13/cobra"
-	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
 )
 
 const (
 	adminHTTPPortName string = "admin-http"
 )
 
-// diagnosticsOptions holds values for command line flags that apply to the diagnostics
-// command.
-type diagnosticsOptions struct {
-	wait time.Duration
-}
-
-// newDiagnosticsOptions initializes diagnostics options setting
-// the max wait time duration as 30 seconds to fetch diagnostics
-//
-// This option may be overridden on the CLI at run-time
-func newDiagnosticsOptions() *diagnosticsOptions {
-	return &diagnosticsOptions{
-		wait: 30 * time.Second,
-	}
-}
-
-// newCmdDashboard creates a new cobra command `diagnostics` which contains commands to fetch control plane container's metrics
+// newCmdDiagnostics creates a new cobra command `diagnostics` which contains commands to fetch Linkerd diagnostics
 func newCmdDiagnostics() *cobra.Command {
-	options := newDiagnosticsOptions()
-
-	cmd := &cobra.Command{
-		Use:   "diagnostics",
-		Short: "Fetch metrics directly from the Linkerd control plane containers",
-		Long: `Fetch metrics directly from Linkerd control plane containers.
-
-  This command initiates port-forward to each control plane process, and
-  queries the /metrics endpoint on them.`,
-		Args: cobra.NoArgs,
-		RunE: func(cmd *cobra.Command, args []string) error {
-			k8sAPI, err := k8s.NewAPI(kubeconfigPath, kubeContext, impersonate, impersonateGroup, 0)
-			if err != nil {
-				return err
-			}
-
-			pods, err := k8sAPI.CoreV1().Pods(controlPlaneNamespace).List(cmd.Context(), metav1.ListOptions{})
-			if err != nil {
-				return err
-			}
-
-			results := getMetrics(k8sAPI, pods.Items, adminHTTPPortName, options.wait, verbose)
-
-			var buf bytes.Buffer
-			for i, result := range results {
-				content := fmt.Sprintf("#\n# POD %s (%d of %d)\n", result.pod, i+1, len(results))
-				if result.err != nil {
-					content += fmt.Sprintf("# ERROR %s\n", result.err)
-				} else {
-					content += fmt.Sprintf("# CONTAINER %s \n#\n", result.container)
-					content += string(result.metrics)
-				}
-				buf.WriteString(content)
-			}
-			fmt.Printf("%s", buf.String())
 
-			return nil
-		},
+	diagnosticsCmd := &cobra.Command{
+		Use:     "diagnostics [flags]",
+		Aliases: []string{"dg"},
+		Args:    cobra.NoArgs,
+		Short:   "Commands used to diagnose Linkerd components",
+		Long: `Commands used to diagnose Linkerd components.
+
+This command provides subcommands to diagnose the functionality of Linkerd.`,
+		Example: `  # Get control-plane component metrics
+  linkerd diagnostics controller-metrics
+
+  # Get metrics from the web deployment in the emojivoto namespace.
+  linkerd diagnostics proxy-metrics -n emojivoto deploy/web
+ 
+  # Get the endpoints for authorities in Linkerd's control-plane itself
+  linkerd diagnostics endpoints linkerd-controller-api.linkerd.svc.cluster.local:8085
+
+  # Install service profiles for the control-plane components.
+  linkerd diagnostics install-sp
+  `,
 	}
 
-	cmd.Flags().DurationVarP(&options.wait, "wait", "w", options.wait, "Time allowed to fetch diagnostics")
+	diagnosticsCmd.AddCommand(newCmdControllerMetrics())
+	diagnosticsCmd.AddCommand(newCmdEndpoints())
+	diagnosticsCmd.AddCommand(newCmdMetrics())
+	diagnosticsCmd.AddCommand(newCmdInstallSP())
 
-	return cmd
+	return diagnosticsCmd
 }
diff --git a/cli/cmd/endpoints.go b/cli/cmd/endpoints.go
index ee0e248c0..19714357a 100644
--- a/cli/cmd/endpoints.go
+++ b/cli/cmd/endpoints.go
@@ -62,14 +62,14 @@ func newCmdEndpoints() *cobra.Command {
 	options := newEndpointsOptions()
 
 	example := `  # get all endpoints for the authorities emoji-svc.emojivoto.svc.cluster.local:8080 and web-svc.emojivoto.svc.cluster.local:80
-  linkerd endpoints emoji-svc.emojivoto.svc.cluster.local:8080 web-svc.emojivoto.svc.cluster.local:80
+  linkerd diagnostics endpoints emoji-svc.emojivoto.svc.cluster.local:8080 web-svc.emojivoto.svc.cluster.local:80
 
   # get that same information in json format
-  linkerd endpoints -o json emoji-svc.emojivoto.svc.cluster.local:8080 web-svc.emojivoto.svc.cluster.local:80
+  linkerd diagnostics endpoints -o json emoji-svc.emojivoto.svc.cluster.local:8080 web-svc.emojivoto.svc.cluster.local:80
 
   # get the endpoints for authorities in Linkerd's control-plane itself
-  linkerd endpoints linkerd-controller-api.linkerd.svc.cluster.local:8085
-  linkerd endpoints linkerd-web.linkerd.svc.cluster.local:8084`
+  linkerd diagnostics endpoints linkerd-controller-api.linkerd.svc.cluster.local:8085
+  linkerd diagnostics endpoints linkerd-web.linkerd.svc.cluster.local:8084`
 
 	cmd := &cobra.Command{
 		Use:     "endpoints [flags] authorities",
diff --git a/cli/cmd/metrics.go b/cli/cmd/metrics.go
index 95240729b..a69e4de03 100644
--- a/cli/cmd/metrics.go
+++ b/cli/cmd/metrics.go
@@ -33,7 +33,7 @@ func newCmdMetrics() *cobra.Command {
 	options := newMetricsOptions()
 
 	cmd := &cobra.Command{
-		Use:   "metrics [flags] (RESOURCE)",
+		Use:   "proxy-metrics [flags] (RESOURCE)",
 		Short: "Fetch metrics directly from Linkerd proxies",
 		Long: `Fetch metrics directly from Linkerd proxies.
 
@@ -62,13 +62,13 @@ func newCmdMetrics() *cobra.Command {
   * replicationcontrollers
   * statefulsets`,
 		Example: `  # Get metrics from pod-foo-bar in the default namespace.
-  linkerd metrics po/pod-foo-bar
+  linkerd diagnostics proxy-metrics po/pod-foo-bar
 
   # Get metrics from the web deployment in the emojivoto namespace.
-  linkerd metrics -n emojivoto deploy/web
+  linkerd diagnostics proxy-metrics -n emojivoto deploy/web
 
   # Get metrics from the linkerd-controller pod in the linkerd namespace.
-  linkerd metrics -n linkerd $(
+  linkerd diagnostics proxy-metrics -n linkerd $(
     kubectl --namespace linkerd get pod \
       --selector linkerd.io/control-plane-component=controller \
       --output name
diff --git a/cli/cmd/root.go b/cli/cmd/root.go
index 8e47fa0e2..89efb5d7a 100644
--- a/cli/cmd/root.go
+++ b/cli/cmd/root.go
@@ -103,13 +103,10 @@ func init() {
 	RootCmd.AddCommand(newCmdCompletion())
 	RootCmd.AddCommand(newCmdDiagnostics())
 	RootCmd.AddCommand(newCmdDoc())
-	RootCmd.AddCommand(newCmdEndpoints())
 	RootCmd.AddCommand(newCmdIdentity())
 	RootCmd.AddCommand(newCmdInject())
 	RootCmd.AddCommand(newCmdInstall())
 	RootCmd.AddCommand(newCmdInstallCNIPlugin())
-	RootCmd.AddCommand(newCmdInstallSP())
-	RootCmd.AddCommand(newCmdMetrics())
 	RootCmd.AddCommand(newCmdProfile())
 	RootCmd.AddCommand(newCmdRepair())
 	RootCmd.AddCommand(newCmdUninject())
diff --git a/jaeger/charts/linkerd-jaeger/templates/jaeger-injector.yaml b/jaeger/charts/linkerd-jaeger/templates/jaeger-injector.yaml
index 37a988cb5..ae12db910 100644
--- a/jaeger/charts/linkerd-jaeger/templates/jaeger-injector.yaml
+++ b/jaeger/charts/linkerd-jaeger/templates/jaeger-injector.yaml
@@ -6,8 +6,10 @@ apiVersion: apps/v1
 kind: Deployment
 metadata:
   labels:
+    linkerd.io/extension: jaeger
     app.kubernetes.io/name: jaeger-injector
     app.kubernetes.io/part-of: Linkerd
+    app.kubernetes.io/version: {{default .Values.webhook.image.version .Values.cliVersion}}
     component: jaeger-injector
   name: jaeger-injector
   namespace: {{.Values.namespace}}
@@ -15,12 +17,14 @@ spec:
   replicas: 1
   selector:
     matchLabels:
+      linkerd.io/extension: jaeger
       component: jaeger-injector
   template:
     metadata:
       annotations:
         checksum/config: {{ include (print $.Template.BasePath "/rbac.yaml") . | sha256sum }}
       labels:
+        linkerd.io/extension: jaeger
         component: jaeger-injector
     spec:
       containers:
@@ -62,13 +66,14 @@ metadata:
   name: jaeger-injector
   namespace: {{.Values.namespace}}
   labels:
+    linkerd.io/extension: jaeger
     component: jaeger-injector
 spec:
   type: ClusterIP
   selector:
+    linkerd.io/extension: jaeger
     component: jaeger-injector
   ports:
   - name: jaeger-injector
     port: 443
     targetPort: jaeger-injector
-
diff --git a/jaeger/charts/linkerd-jaeger/templates/namespace.yaml b/jaeger/charts/linkerd-jaeger/templates/namespace.yaml
index 395c9c88d..0dbbcd53f 100644
--- a/jaeger/charts/linkerd-jaeger/templates/namespace.yaml
+++ b/jaeger/charts/linkerd-jaeger/templates/namespace.yaml
@@ -4,6 +4,6 @@ apiVersion: v1
 metadata:
   name: {{.Values.namespace}}
   labels:
-    linkerd.io/extension: linkerd-jaeger
+    linkerd.io/extension: jaeger
   annotations:
     linkerd.io/inject: enabled
diff --git a/jaeger/charts/linkerd-jaeger/templates/rbac.yaml b/jaeger/charts/linkerd-jaeger/templates/rbac.yaml
index ebedc7dd8..342ff9646 100644
--- a/jaeger/charts/linkerd-jaeger/templates/rbac.yaml
+++ b/jaeger/charts/linkerd-jaeger/templates/rbac.yaml
@@ -26,7 +26,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-jaeger-injector
   labels:
-    linkerd.io/extension: linkerd-jaeger
+    linkerd.io/extension: jaeger
 rules:
 - apiGroups: [""]
   resources: ["namespaces"]
@@ -37,7 +37,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-jaeger-injector
   labels:
-    linkerd.io/extension: linkerd-jaeger
+    linkerd.io/extension: jaeger
 subjects:
 - kind: ServiceAccount
   name: jaeger-injector
@@ -73,7 +73,7 @@ kind: MutatingWebhookConfiguration
 metadata:
   name: linkerd-jaeger-injector-webhook-config
   labels:
-    linkerd.io/extension: linkerd-jaeger
+    linkerd.io/extension: jaeger
 webhooks:
 - name: jaeger-injector.linkerd.io
   {{- if .Values.webhook.namespaceSelector }}
@@ -102,4 +102,3 @@ webhooks:
     apiVersions: ["v1"]
     resources: ["pods"]
   sideEffects: None
-
diff --git a/jaeger/charts/linkerd-jaeger/values.yaml b/jaeger/charts/linkerd-jaeger/values.yaml
index 94e57ffdd..f4afba965 100644
--- a/jaeger/charts/linkerd-jaeger/values.yaml
+++ b/jaeger/charts/linkerd-jaeger/values.yaml
@@ -48,8 +48,6 @@ webhook:
     #- key: runlevel
     #  operator: NotIn
     #  values: ["0","1"]
-
   objectSelector:
     #matchLabels:
     #  foo: bar
-
diff --git a/jaeger/cmd/check.go b/jaeger/cmd/check.go
index 6371a82d5..d208ff641 100644
--- a/jaeger/cmd/check.go
+++ b/jaeger/cmd/check.go
@@ -18,10 +18,10 @@ import (
 const (
 
 	// JaegerExtensionName is the name of jaeger extension
-	JaegerExtensionName = "linkerd-jaeger"
+	JaegerExtensionName = "jaeger"
 
 	// linkerdJaegerExtensionCheck adds checks related to the jaeger extension
-	linkerdJaegerExtensionCheck healthcheck.CategoryID = JaegerExtensionName
+	linkerdJaegerExtensionCheck healthcheck.CategoryID = "linkerd-jaeger"
 
 	// linkerdJaegerExtensionDataPlaneCheck adds checks related to the jaeger extension
 	linkerdJaegerExtensionDataPlaneCheck healthcheck.CategoryID = JaegerExtensionName + "-data-plane"
diff --git a/jaeger/cmd/uninstall.go b/jaeger/cmd/uninstall.go
index 3a2efbba3..fe5b2ac99 100644
--- a/jaeger/cmd/uninstall.go
+++ b/jaeger/cmd/uninstall.go
@@ -35,7 +35,7 @@ func uninstallRunE(ctx context.Context) error {
 	}
 
 	resources, err := resource.FetchKubernetesResources(ctx, k8sAPI,
-		metav1.ListOptions{LabelSelector: "linkerd.io/extension=linkerd-jaeger"},
+		metav1.ListOptions{LabelSelector: "linkerd.io/extension=jaeger"},
 	)
 	if err != nil {
 		return err
diff --git a/multicluster/charts/linkerd-multicluster/templates/gateway.yaml b/multicluster/charts/linkerd-multicluster/templates/gateway.yaml
index 476a23dde..286522ef3 100644
--- a/multicluster/charts/linkerd-multicluster/templates/gateway.yaml
+++ b/multicluster/charts/linkerd-multicluster/templates/gateway.yaml
@@ -6,7 +6,7 @@ metadata:
   name: {{.Values.gatewayName}}-config
   labels:
     linkerd.io/control-plane-component: gateway
-    linkerd.io/extension: linkerd-multicluster
+    linkerd.io/extension: multicluster
   annotations:
     {{ include "partials.annotations.created-by" . }}
   namespace: {{.Values.namespace}}
@@ -59,7 +59,7 @@ metadata:
     app.kubernetes.io/version: {{.Values.linkerdVersion}}
     linkerd.io/control-plane-component: gateway
     app: {{.Values.gatewayName}}
-    linkerd.io/extension: linkerd-multicluster
+    linkerd.io/extension: multicluster
   name: {{.Values.gatewayName}}
   namespace: {{.Values.namespace}}
 spec:
@@ -118,7 +118,7 @@ metadata:
   name: {{.Values.gatewayName}}
   namespace: {{.Values.namespace}}
   labels:
-    linkerd.io/extension: linkerd-multicluster
+    linkerd.io/extension: multicluster
   annotations:
     mirror.linkerd.io/gateway-identity: {{.Values.gatewayName}}.{{.Values.namespace}}.serviceaccount.identity.{{.Values.linkerdNamespace}}.{{.Values.identityTrustDomain}}
     mirror.linkerd.io/probe-period: "{{.Values.gatewayProbeSeconds}}"
@@ -148,5 +148,5 @@ metadata:
   name: {{.Values.gatewayName}}
   namespace: {{.Values.namespace}}
   labels:
-    linkerd.io/extension: linkerd-multicluster
+    linkerd.io/extension: multicluster
 {{end -}}
diff --git a/multicluster/charts/linkerd-multicluster/templates/link-crd.yaml b/multicluster/charts/linkerd-multicluster/templates/link-crd.yaml
index c16e1e3ac..904564226 100644
--- a/multicluster/charts/linkerd-multicluster/templates/link-crd.yaml
+++ b/multicluster/charts/linkerd-multicluster/templates/link-crd.yaml
@@ -7,7 +7,7 @@ kind: CustomResourceDefinition
 metadata:
   name: links.multicluster.linkerd.io
   labels:
-    linkerd.io/extension: linkerd-multicluster
+    linkerd.io/extension: multicluster
   annotations:
     {{ include "partials.annotations.created-by" . }}
 spec:
diff --git a/multicluster/charts/linkerd-multicluster/templates/namespace.yaml b/multicluster/charts/linkerd-multicluster/templates/namespace.yaml
index bd07aa84b..5a82ce424 100644
--- a/multicluster/charts/linkerd-multicluster/templates/namespace.yaml
+++ b/multicluster/charts/linkerd-multicluster/templates/namespace.yaml
@@ -4,5 +4,5 @@ apiVersion: v1
 metadata:
   name: {{ .Values.namespace }}
   labels:
-    linkerd.io/extension: linkerd-multicluster
+    linkerd.io/extension: multicluster
 {{end -}}
diff --git a/multicluster/charts/linkerd-multicluster/templates/remote-access-service-mirror-rbac.yaml b/multicluster/charts/linkerd-multicluster/templates/remote-access-service-mirror-rbac.yaml
index 786328ecf..bd34e08ea 100644
--- a/multicluster/charts/linkerd-multicluster/templates/remote-access-service-mirror-rbac.yaml
+++ b/multicluster/charts/linkerd-multicluster/templates/remote-access-service-mirror-rbac.yaml
@@ -11,7 +11,7 @@ metadata:
   name: {{.}}
   namespace: {{$.Values.namespace}}
   labels:
-    linkerd.io/extension: linkerd-multicluster
+    linkerd.io/extension: multicluster
   annotations:
     {{ include "partials.annotations.created-by" $ }}
 rules:
@@ -29,7 +29,7 @@ metadata:
   name: {{.}}
   namespace: {{$.Values.namespace}}
   labels:
-    linkerd.io/extension: linkerd-multicluster
+    linkerd.io/extension: multicluster
   annotations:
     {{ include "partials.annotations.created-by" $ }}
 ---
@@ -39,7 +39,7 @@ metadata:
   name: {{.}}
   namespace: {{$.Values.namespace}}
   labels:
-    linkerd.io/extension: linkerd-multicluster
+    linkerd.io/extension: multicluster
   annotations:
     {{ include "partials.annotations.created-by" $ }}
 roleRef:
diff --git a/multicluster/cmd/check.go b/multicluster/cmd/check.go
index 58f787ee8..d1f68b112 100644
--- a/multicluster/cmd/check.go
+++ b/multicluster/cmd/check.go
@@ -26,10 +26,10 @@ import (
 
 const (
 	// MulticlusterExtensionName is the name of the multicluster extension
-	MulticlusterExtensionName = "linkerd-multicluster"
+	MulticlusterExtensionName = "multicluster"
 
 	// linkerdMulticlusterExtensionCheck adds checks related to the multicluster extension
-	linkerdMulticlusterExtensionCheck healthcheck.CategoryID = MulticlusterExtensionName
+	linkerdMulticlusterExtensionCheck healthcheck.CategoryID = "linkerd-multicluster"
 
 	linkerdServiceMirrorServiceAccountName = "linkerd-service-mirror-%s"
 	linkerdServiceMirrorComponentName      = "service-mirror"
diff --git a/viz/charts/linkerd-viz/templates/grafana-rbac.yaml b/viz/charts/linkerd-viz/templates/grafana-rbac.yaml
index e2c875f17..8a56634ab 100644
--- a/viz/charts/linkerd-viz/templates/grafana-rbac.yaml
+++ b/viz/charts/linkerd-viz/templates/grafana-rbac.yaml
@@ -6,10 +6,10 @@
 kind: ServiceAccount
 apiVersion: v1
 metadata:
-  name: linkerd-grafana
+  name: grafana
   namespace: {{.Values.namespace}}
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: grafana
     namespace: {{.Values.namespace}}
 {{- include "partials.image-pull-secrets" .Values.imagePullSecrets }}
diff --git a/viz/charts/linkerd-viz/templates/grafana.yaml b/viz/charts/linkerd-viz/templates/grafana.yaml
index 8a7234536..9d1ebeb4b 100644
--- a/viz/charts/linkerd-viz/templates/grafana.yaml
+++ b/viz/charts/linkerd-viz/templates/grafana.yaml
@@ -6,17 +6,17 @@
 kind: ConfigMap
 apiVersion: v1
 metadata:
-  name: linkerd-grafana-config
+  name: grafana-config
   namespace: {{.Values.namespace}}
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: grafana
     namespace: {{.Values.namespace}}
   annotations:
     {{ include "partials.annotations.created-by" . }}
 data:
   grafana.ini: |-
-    instance_name = linkerd-grafana
+    instance_name = grafana
     [server]
     root_url = %(protocol)s://%(domain)s:/grafana/
     [auth]
@@ -40,7 +40,7 @@ data:
       {{- if .Values.prometheusUrl }}
       url: {{.Values.prometheusUrl}}
       {{- else }}
-      url: http://linkerd-prometheus.{{.Values.namespace}}.svc.{{.Values.clusterDomain}}:9090
+      url: http://prometheus.{{.Values.namespace}}.svc.{{.Values.clusterDomain}}:9090
       {{- end }}
       isDefault: true
       jsonData:
@@ -64,10 +64,10 @@ data:
 kind: Service
 apiVersion: v1
 metadata:
-  name: linkerd-grafana
+  name: grafana
   namespace: {{.Values.namespace}}
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: grafana
     namespace: {{.Values.namespace}}
   annotations:
@@ -75,7 +75,7 @@ metadata:
 spec:
   type: ClusterIP
   selector:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: grafana
   ports:
   - name: http
@@ -88,19 +88,19 @@ metadata:
   annotations:
     {{ include "partials.annotations.created-by" . }}
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     app.kubernetes.io/name: grafana
     app.kubernetes.io/part-of: Linkerd
-    app.kubernetes.io/version: {{default .Values.linkerdVersion .Values.controllerImageVersion}}
+    app.kubernetes.io/version: {{default .Values.linkerdVersion .Values.cliVersion}}
     component: grafana
     namespace: {{.Values.namespace}}
-  name: linkerd-grafana
+  name: grafana
   namespace: {{.Values.namespace}}
 spec:
   replicas: 1
   selector:
     matchLabels:
-      linkerd.io/extension: linkerd-viz
+      linkerd.io/extension: viz
       component: grafana
       namespace: {{.Values.namespace}}
   template:
@@ -112,7 +112,7 @@ spec:
         {{- end }}
         {{- with .Values.podAnnotations }}{{ toYaml . | trim | nindent 8 }}{{- end }}
       labels:
-        linkerd.io/extension: linkerd-viz
+        linkerd.io/extension: viz
         component: grafana
         namespace: {{.Values.namespace}}
         {{- with .Values.podLabels }}{{ toYaml . | trim | nindent 8 }}{{- end }}
@@ -155,7 +155,7 @@ spec:
         - mountPath: /etc/grafana
           name: grafana-config
           readOnly: true
-      serviceAccountName: linkerd-grafana
+      serviceAccountName: grafana
       volumes:
       - emptyDir: {}
         name: data
@@ -167,6 +167,6 @@ spec:
             path: provisioning/datasources/datasources.yaml
           - key: dashboards.yaml
             path: provisioning/dashboards/dashboards.yaml
-          name: linkerd-grafana-config
+          name: grafana-config
         name: grafana-config
 {{ end -}}
diff --git a/viz/charts/linkerd-viz/templates/metrics-api-rbac.yaml b/viz/charts/linkerd-viz/templates/metrics-api-rbac.yaml
index 1a7cd89c6..e68c5d90a 100644
--- a/viz/charts/linkerd-viz/templates/metrics-api-rbac.yaml
+++ b/viz/charts/linkerd-viz/templates/metrics-api-rbac.yaml
@@ -7,7 +7,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-{{.Values.namespace}}-metrics-api
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: metrics-api
 rules:
 - apiGroups: ["extensions", "apps"]
@@ -31,7 +31,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-{{.Values.namespace}}-metrics-api
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: metrics-api
 roleRef:
   apiGroup: rbac.authorization.k8s.io
@@ -39,15 +39,15 @@ roleRef:
   name: linkerd-{{.Values.namespace}}-metrics-api
 subjects:
 - kind: ServiceAccount
-  name: linkerd-metrics-api
+  name: metrics-api
   namespace: {{.Values.namespace}}
 ---
 kind: ServiceAccount
 apiVersion: v1
 metadata:
-  name: linkerd-metrics-api
+  name: metrics-api
   namespace: {{.Values.namespace}}
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: metrics-api
 {{- include "partials.image-pull-secrets" .Values.imagePullSecrets }}
diff --git a/viz/charts/linkerd-viz/templates/metrics-api.yaml b/viz/charts/linkerd-viz/templates/metrics-api.yaml
index 768e3562f..962c33b90 100644
--- a/viz/charts/linkerd-viz/templates/metrics-api.yaml
+++ b/viz/charts/linkerd-viz/templates/metrics-api.yaml
@@ -5,17 +5,17 @@
 kind: Service
 apiVersion: v1
 metadata:
-  name: linkerd-metrics-api
+  name: metrics-api
   namespace: {{.Values.namespace}}
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: metrics-api
   annotations:
     {{ include "partials.annotations.created-by" . }}
 spec:
   type: ClusterIP
   selector:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: metrics-api
   ports:
   - name: http
@@ -28,18 +28,18 @@ metadata:
   annotations:
     {{ include "partials.annotations.created-by" . }}
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     app.kubernetes.io/name: metrics-api
     app.kubernetes.io/part-of: Linkerd
-    app.kubernetes.io/version: {{default .Values.linkerdVersion .Values.controllerImageVersion}}
+    app.kubernetes.io/version: {{default .Values.linkerdVersion .Values.cliVersion}}
     component: metrics-api
-  name: linkerd-metrics-api
+  name: metrics-api
   namespace: {{.Values.namespace}}
 spec:
   replicas: {{.Values.metricsAPI.replicas}}
   selector:
     matchLabels:
-      linkerd.io/extension: linkerd-viz
+      linkerd.io/extension: viz
       component: metrics-api
   template:
     metadata:
@@ -53,7 +53,7 @@ spec:
         {{- end }}
         {{- with .Values.podAnnotations }}{{ toYaml . | trim | nindent 8 }}{{- end }}
       labels:
-        linkerd.io/extension: linkerd-viz
+        linkerd.io/extension: viz
         component: metrics-api
         {{- with .Values.podLabels }}{{ toYaml . | trim | nindent 8 }}{{- end }}
     spec:
@@ -73,7 +73,7 @@ spec:
         {{- if .Values.prometheusUrl }}
         - -prometheus-url={{.Values.prometheusUrl}}
         {{- else if .Values.prometheus.enabled }}
-        - -prometheus-url=http://linkerd-prometheus.{{.Values.namespace}}.svc.{{.Values.clusterDomain}}:9090
+        - -prometheus-url=http://prometheus.{{.Values.namespace}}.svc.{{.Values.clusterDomain}}:9090
         {{- else }}
         {{ fail "Please enable `linkerd-prometheus` or provide `prometheusUrl` for the viz extension to function properly"}}
         {{- end }}
@@ -100,4 +100,4 @@ spec:
         {{- end }}
         securityContext:
           runAsUser: {{.Values.metricsAPI.UID | default .Values.defaultUID}}
-      serviceAccountName: linkerd-metrics-api
+      serviceAccountName: metrics-api
diff --git a/viz/charts/linkerd-viz/templates/namespace.yaml b/viz/charts/linkerd-viz/templates/namespace.yaml
index 300086644..4369fda11 100644
--- a/viz/charts/linkerd-viz/templates/namespace.yaml
+++ b/viz/charts/linkerd-viz/templates/namespace.yaml
@@ -8,7 +8,7 @@ apiVersion: v1
 metadata:
   name: {{.Values.namespace}}
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
   annotations:
     {{- if .Values.prometheusUrl }}
     viz.linkerd.io/external-prometheus: {{.Values.prometheusUrl}}
diff --git a/viz/charts/linkerd-viz/templates/prometheus-rbac.yaml b/viz/charts/linkerd-viz/templates/prometheus-rbac.yaml
index 6f936d6db..e90597fac 100644
--- a/viz/charts/linkerd-viz/templates/prometheus-rbac.yaml
+++ b/viz/charts/linkerd-viz/templates/prometheus-rbac.yaml
@@ -8,7 +8,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-{{.Values.namespace}}-prometheus
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: prometheus
 rules:
 - apiGroups: [""]
@@ -20,7 +20,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-{{.Values.namespace}}-prometheus
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: prometheus
 roleRef:
   apiGroup: rbac.authorization.k8s.io
@@ -28,16 +28,16 @@ roleRef:
   name: linkerd-{{.Values.namespace}}-prometheus
 subjects:
 - kind: ServiceAccount
-  name: linkerd-prometheus
+  name: prometheus
   namespace: {{.Values.namespace}}
 ---
 kind: ServiceAccount
 apiVersion: v1
 metadata:
-  name: linkerd-prometheus
+  name: prometheus
   namespace: {{.Values.namespace}}
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: prometheus
     namespace: {{.Values.namespace}}
 {{- include "partials.image-pull-secrets" .Values.imagePullSecrets }}
diff --git a/viz/charts/linkerd-viz/templates/prometheus.yaml b/viz/charts/linkerd-viz/templates/prometheus.yaml
index e61b6efad..3f7fdc61a 100644
--- a/viz/charts/linkerd-viz/templates/prometheus.yaml
+++ b/viz/charts/linkerd-viz/templates/prometheus.yaml
@@ -6,10 +6,10 @@
 kind: ConfigMap
 apiVersion: v1
 metadata:
-  name: linkerd-prometheus-config
+  name: prometheus-config
   namespace: {{.Values.namespace}}
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: prometheus
     namespace: {{.Values.namespace}}
   annotations:
@@ -174,10 +174,10 @@ data:
 kind: Service
 apiVersion: v1
 metadata:
-  name: linkerd-prometheus
+  name: prometheus
   namespace: {{.Values.namespace}}
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: prometheus
     namespace: {{.Values.namespace}}
   annotations:
@@ -185,7 +185,7 @@ metadata:
 spec:
   type: ClusterIP
   selector:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: prometheus
   ports:
   - name: admin-http
@@ -198,13 +198,13 @@ metadata:
   annotations:
     {{ include "partials.annotations.created-by" . }}
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     app.kubernetes.io/name: prometheus
     app.kubernetes.io/part-of: Linkerd
-    app.kubernetes.io/version: {{default .Values.linkerdVersion .Values.controllerImageVersion}}
+    app.kubernetes.io/version: {{default .Values.linkerdVersion .Values.cliVersion}}
     component: prometheus
     namespace: {{.Values.namespace}}
-  name: linkerd-prometheus
+  name: prometheus
   namespace: {{.Values.namespace}}
 spec:
   replicas: 1
@@ -214,7 +214,7 @@ spec:
   {{- end }}
   selector:
     matchLabels:
-      linkerd.io/extension: linkerd-viz
+      linkerd.io/extension: viz
       component: prometheus
       namespace: {{.Values.namespace}}
   template:
@@ -226,7 +226,7 @@ spec:
         {{- end }}
         {{- with .Values.podAnnotations }}{{  . | trim | nindent 8 }}{{- end }}
       labels:
-        linkerd.io/extension: linkerd-viz
+        linkerd.io/extension: viz
         component: prometheus
         namespace: {{.Values.namespace}}
         {{- with .Values.podLabels }}{{ toYaml . | trim | nindent 8 }}{{- end }}
@@ -284,7 +284,7 @@ spec:
           name: prometheus-config
           subPath: prometheus.yml
           readOnly: true
-      serviceAccountName: linkerd-prometheus
+      serviceAccountName: prometheus
       volumes:
     {{- range .Values.prometheus.ruleConfigMapMounts }}
       - name: {{ .name }}
@@ -294,12 +294,12 @@ spec:
       - name: data
     {{- if .Values.prometheus.persistence }}
         persistentVolumeClaim:
-          claimName: linkerd-prometheus
+          claimName: prometheus
     {{- else }}
         emptyDir: {}
     {{- end }}
       - configMap:
-          name: linkerd-prometheus-config
+          name: prometheus-config
         name: prometheus-config
 {{- if .Values.prometheus.persistence }}
 ---
@@ -307,12 +307,12 @@ kind: PersistentVolumeClaim
 apiVersion: v1
 metadata:
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     app.kubernetes.io/name: prometheus
     app.kubernetes.io/part-of: Linkerd
-    app.kubernetes.io/version: {{default .Values.linkerdVersion .Values.controllerImageVersion}}
+    app.kubernetes.io/version: {{default .Values.linkerdVersion}}
     component: prometheus
-  name: linkerd-prometheus
+  name: prometheus
   namespace: {{.Values.namespace}}
 spec:
   accessModes:
diff --git a/viz/charts/linkerd-viz/templates/psp.yaml b/viz/charts/linkerd-viz/templates/psp.yaml
index af5be45f6..5134a6414 100644
--- a/viz/charts/linkerd-viz/templates/psp.yaml
+++ b/viz/charts/linkerd-viz/templates/psp.yaml
@@ -2,29 +2,29 @@
 apiVersion: rbac.authorization.k8s.io/v1
 kind: RoleBinding
 metadata:
-  name: linkerd-viz-psp
+  name: viz-psp
   namespace: {{.Values.namespace}}
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     namespace: {{.Values.namespace}}
 roleRef:
   kind: Role
-  name: linkerd-psp
+  name: psp
   apiGroup: rbac.authorization.k8s.io
 subjects:
 - kind: ServiceAccount
-  name: linkerd-tap
+  name: tap
   namespace: {{.Values.namespace}}
 - kind: ServiceAccount
-  name: linkerd-web
+  name: web
   namespace: {{.Values.namespace}}
 {{ if .Values.grafana.enabled -}}
 - kind: ServiceAccount
-  name: linkerd-grafana
+  name: grafana
   namespace: {{.Values.namespace}}
 {{ end -}}
 {{ if .Values.prometheus.enabled -}}
 - kind: ServiceAccount
-  name: linkerd-prometheus
+  name: prometheus
   namespace: {{.Values.namespace}}
 {{ end -}}
diff --git a/viz/charts/linkerd-viz/templates/tap-injector-rbac.yaml b/viz/charts/linkerd-viz/templates/tap-injector-rbac.yaml
index c1b516a41..28438ae56 100644
--- a/viz/charts/linkerd-viz/templates/tap-injector-rbac.yaml
+++ b/viz/charts/linkerd-viz/templates/tap-injector-rbac.yaml
@@ -7,7 +7,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-tap-injector
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
 rules:
 - apiGroups: [""]
   resources: ["namespaces"]
@@ -18,7 +18,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-tap-injector
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
 subjects:
 - kind: ServiceAccount
   name: tap-injector
@@ -56,7 +56,7 @@ kind: MutatingWebhookConfiguration
 metadata:
   name: linkerd-tap-injector-webhook-config
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
 webhooks:
 - name: tap-injector.linkerd.io
   {{- if .Values.tapInjector.namespaceSelector }}
diff --git a/viz/charts/linkerd-viz/templates/tap-injector.yaml b/viz/charts/linkerd-viz/templates/tap-injector.yaml
index f8f75f7aa..3dc314f11 100644
--- a/viz/charts/linkerd-viz/templates/tap-injector.yaml
+++ b/viz/charts/linkerd-viz/templates/tap-injector.yaml
@@ -8,7 +8,7 @@ metadata:
   name: tap-injector
   namespace: {{.Values.namespace}}
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap-injector
   annotations:
     {{ include "partials.annotations.created-by" . }}
@@ -27,7 +27,7 @@ metadata:
   annotations:
     {{ include "partials.annotations.created-by" . }}
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     app.kubernetes.io/name: tap-injector
     app.kubernetes.io/part-of: Linkerd
     component: tap-injector
@@ -55,7 +55,7 @@ spec:
         {{- end }}
         {{- with .Values.podAnnotations }}{{ toYaml . | trim | nindent 8 }}{{- end }}
       labels:
-        linkerd.io/extension: linkerd-viz
+        linkerd.io/extension: viz
         component: tap-injector
         {{- with .Values.podLabels }}{{ toYaml . | trim | nindent 8 }}{{- end }}
     spec:
@@ -70,7 +70,7 @@ spec:
       containers:
       - args:
         - injector
-        - -tap-service-name=linkerd-tap.{{.Values.namespace}}.serviceaccount.identity.$(_l5d_ns).$(_l5d_trustdomain)
+        - -tap-service-name=tap.{{.Values.namespace}}.serviceaccount.identity.$(_l5d_ns).$(_l5d_trustdomain)
         - -log-level={{.Values.tapInjector.logLevel | default .Values.defaultLogLevel}}
         image: {{.Values.tapInjector.image.registry | default .Values.defaultRegistry}}/{{.Values.tapInjector.image.name}}:{{.Values.tapInjector.image.tag | default .Values.linkerdVersion}}
         imagePullPolicy: {{.Values.tapInjector.image.pullPolicy | default .Values.defaultImagePullPolicy}}
diff --git a/viz/charts/linkerd-viz/templates/tap-rbac.yaml b/viz/charts/linkerd-viz/templates/tap-rbac.yaml
index 08b734cd5..7b1a2110b 100644
--- a/viz/charts/linkerd-viz/templates/tap-rbac.yaml
+++ b/viz/charts/linkerd-viz/templates/tap-rbac.yaml
@@ -7,7 +7,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-{{.Values.namespace}}-tap
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
 rules:
 - apiGroups: [""]
@@ -25,7 +25,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-{{.Values.namespace}}-tap-admin
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
 rules:
 - apiGroups: ["tap.linkerd.io"]
@@ -37,7 +37,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-{{.Values.namespace}}-tap
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
 roleRef:
   apiGroup: rbac.authorization.k8s.io
@@ -45,7 +45,7 @@ roleRef:
   name: linkerd-{{.Values.namespace}}-tap
 subjects:
 - kind: ServiceAccount
-  name: linkerd-tap
+  name: tap
   namespace: {{.Values.namespace}}
 ---
 apiVersion: rbac.authorization.k8s.io/v1
@@ -53,7 +53,7 @@ kind: ClusterRoleBinding
 metadata:
   name: linkerd-{{.Values.namespace}}-tap-auth-delegator
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
 roleRef:
   apiGroup: rbac.authorization.k8s.io
@@ -61,16 +61,16 @@ roleRef:
   name: system:auth-delegator
 subjects:
 - kind: ServiceAccount
-  name: linkerd-tap
+  name: tap
   namespace: {{.Values.namespace}}
 ---
 kind: ServiceAccount
 apiVersion: v1
 metadata:
-  name: linkerd-tap
+  name: tap
   namespace: {{.Values.namespace}}
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
     namespace: {{.Values.namespace}}
 {{- include "partials.image-pull-secrets" .Values.imagePullSecrets }}
@@ -81,7 +81,7 @@ metadata:
   name: linkerd-{{.Values.namespace}}-tap-auth-reader
   namespace: kube-system
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
     namespace: {{.Values.namespace}}
 roleRef:
@@ -90,19 +90,19 @@ roleRef:
   name: extension-apiserver-authentication-reader
 subjects:
 - kind: ServiceAccount
-  name: linkerd-tap
+  name: tap
   namespace: {{.Values.namespace}}
 ---
-{{- $host := printf "linkerd-tap.%s.svc" .Values.namespace }}
+{{- $host := printf "tap.%s.svc" .Values.namespace }}
 {{- $ca := genSelfSignedCert $host (list) (list $host) 365 }}
 {{- if (not .Values.tap.externalSecret) }}
 kind: Secret
 apiVersion: v1
 metadata:
-  name: linkerd-tap-k8s-tls
+  name: tap-k8s-tls
   namespace: {{ .Values.namespace }}
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
     namespace: {{.Values.namespace}}
   annotations:
@@ -118,7 +118,7 @@ kind: APIService
 metadata:
   name: v1alpha1.tap.linkerd.io
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
 spec:
   group: tap.linkerd.io
@@ -126,7 +126,7 @@ spec:
   groupPriorityMinimum: 1000
   versionPriority: 100
   service:
-    name: linkerd-tap
+    name: tap
     namespace: {{.Values.namespace}}
 {{- if and (.Values.tap.externalSecret) (empty .Values.tap.caBundle) }}
   {{- fail "If tap.externalSecret is true then you need to provide tap.caBundle" }}
diff --git a/viz/charts/linkerd-viz/templates/tap.yaml b/viz/charts/linkerd-viz/templates/tap.yaml
index 610de2303..725237b8e 100644
--- a/viz/charts/linkerd-viz/templates/tap.yaml
+++ b/viz/charts/linkerd-viz/templates/tap.yaml
@@ -5,10 +5,10 @@
 kind: Service
 apiVersion: v1
 metadata:
-  name: linkerd-tap
+  name: tap
   namespace: {{.Values.namespace}}
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
     namespace: {{.Values.namespace}}
   annotations:
@@ -16,7 +16,7 @@ metadata:
 spec:
   type: ClusterIP
   selector:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
   ports:
   - name: grpc
@@ -32,19 +32,19 @@ metadata:
   annotations:
     {{ include "partials.annotations.created-by" . }}
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     app.kubernetes.io/name: tap
     app.kubernetes.io/part-of: Linkerd
-    app.kubernetes.io/version: {{default .Values.linkerdVersion .Values.controllerImageVersion}}
+    app.kubernetes.io/version: {{default .Values.linkerdVersion .Values.cliVersion}}
     component: tap
     namespace: {{.Values.namespace}}
-  name: linkerd-tap
+  name: tap
   namespace: {{.Values.namespace}}
 spec:
   replicas: {{.Values.tap.replicas}}
   selector:
     matchLabels:
-      linkerd.io/extension: linkerd-viz
+      linkerd.io/extension: viz
       component: tap
       namespace: {{.Values.namespace}}
   {{- if .Values.enablePodAntiAffinity }}
@@ -64,7 +64,7 @@ spec:
         {{- end }}
         {{- with .Values.podAnnotations }}{{ toYaml . | trim | nindent 8 }}{{- end }}
       labels:
-        linkerd.io/extension: linkerd-viz
+        linkerd.io/extension: viz
         component: tap
         namespace: {{.Values.namespace}}
         {{- with .Values.podLabels }}{{ toYaml . | trim | nindent 8 }}{{- end }}
@@ -112,9 +112,8 @@ spec:
         - mountPath: /var/run/linkerd/tls
           name: tls
           readOnly: true
-      serviceAccountName: linkerd-tap
+      serviceAccountName: tap
       volumes:
       - name: tls
         secret:
-          secretName: linkerd-tap-k8s-tls
-
+          secretName: tap-k8s-tls
diff --git a/viz/charts/linkerd-viz/templates/web-rbac.yaml b/viz/charts/linkerd-viz/templates/web-rbac.yaml
index b92a2c43a..49b3649df 100644
--- a/viz/charts/linkerd-viz/templates/web-rbac.yaml
+++ b/viz/charts/linkerd-viz/templates/web-rbac.yaml
@@ -5,10 +5,10 @@
 apiVersion: rbac.authorization.k8s.io/v1
 kind: Role
 metadata:
-  name: linkerd-web
+  name: web
   namespace: {{.Values.linkerdNamespace}}
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
     namespace: {{.Values.linkerdNamespace}}
 rules:
@@ -31,19 +31,19 @@ rules:
 apiVersion: rbac.authorization.k8s.io/v1
 kind: RoleBinding
 metadata:
-  name: linkerd-web
+  name: web
   namespace: {{.Values.linkerdNamespace}}
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
     namespace: {{.Values.linkerdNamespace}}
 roleRef:
   kind: Role
-  name: linkerd-web
+  name: web
   apiGroup: rbac.authorization.k8s.io
 subjects:
 - kind: ServiceAccount
-  name: linkerd-web
+  name: web
   namespace: {{.Values.namespace}}
 ---
 {{- if not .Values.dashboard.restrictPrivileges }}
@@ -52,7 +52,7 @@ kind: ClusterRole
 metadata:
   name: linkerd-{{.Values.namespace}}-web-check
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
 rules:
 - apiGroups: ["rbac.authorization.k8s.io"]
@@ -79,7 +79,7 @@ kind: ClusterRoleBinding
 metadata:
   name: linkerd-{{.Values.namespace}}-web-check
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
 roleRef:
   kind: ClusterRole
@@ -87,7 +87,7 @@ roleRef:
   apiGroup: rbac.authorization.k8s.io
 subjects:
 - kind: ServiceAccount
-  name: linkerd-web
+  name: web
   namespace: {{.Values.namespace}}
 ---
 kind: ClusterRoleBinding
@@ -95,7 +95,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-{{.Values.namespace}}-web-admin
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
 roleRef:
   apiGroup: rbac.authorization.k8s.io
@@ -103,7 +103,7 @@ roleRef:
   name: linkerd-{{.Values.namespace}}-tap-admin
 subjects:
 - kind: ServiceAccount
-  name: linkerd-web
+  name: web
   namespace: {{.Values.namespace}}
 ---
 apiVersion: rbac.authorization.k8s.io/v1
@@ -111,7 +111,7 @@ kind: ClusterRole
 metadata:
   name: linkerd-{{.Values.namespace}}-web-api
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
 rules:
 - apiGroups: [""]
@@ -123,7 +123,7 @@ kind: ClusterRoleBinding
 metadata:
   name: linkerd-{{.Values.namespace}}-web-api
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
 roleRef:
   kind: ClusterRole
@@ -131,17 +131,17 @@ roleRef:
   apiGroup: rbac.authorization.k8s.io
 subjects:
 - kind: ServiceAccount
-  name: linkerd-web
+  name: web
   namespace: {{.Values.namespace}}
 ---
 {{- end}}
 kind: ServiceAccount
 apiVersion: v1
 metadata:
-  name: linkerd-web
+  name: web
   namespace: {{.Values.namespace}}
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
     namespace: {{.Values.namespace}}
 {{- include "partials.image-pull-secrets" .Values.imagePullSecrets }}
diff --git a/viz/charts/linkerd-viz/templates/web.yaml b/viz/charts/linkerd-viz/templates/web.yaml
index 8d2ceb05e..0f80f7954 100644
--- a/viz/charts/linkerd-viz/templates/web.yaml
+++ b/viz/charts/linkerd-viz/templates/web.yaml
@@ -5,10 +5,10 @@
 kind: Service
 apiVersion: v1
 metadata:
-  name: linkerd-web
+  name: web
   namespace: {{.Values.namespace}}
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
     namespace: {{.Values.namespace}}
   annotations:
@@ -16,7 +16,7 @@ metadata:
 spec:
   type: ClusterIP
   selector:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
   ports:
   - name: http
@@ -32,19 +32,19 @@ metadata:
   annotations:
     {{ include "partials.annotations.created-by" . }}
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     app.kubernetes.io/name: web
     app.kubernetes.io/part-of: Linkerd
-    app.kubernetes.io/version: {{default .Values.linkerdVersion .Values.controllerImageVersion}}
+    app.kubernetes.io/version: {{default .Values.linkerdVersion .Values.cliVersion}}
     component: web
     namespace: {{.Values.namespace}}
-  name: linkerd-web
+  name: web
   namespace: {{.Values.namespace}}
 spec:
   replicas: {{.Values.dashboard.replicas}}
   selector:
     matchLabels:
-      linkerd.io/extension: linkerd-viz
+      linkerd.io/extension: viz
       component: web
       namespace: {{.Values.namespace}}
   template:
@@ -56,7 +56,7 @@ spec:
         {{- end }}
         {{- with .Values.podAnnotations }}{{ toYaml . | trim | nindent 8 }}{{- end }}
       labels:
-        linkerd.io/extension: linkerd-viz
+        linkerd.io/extension: viz
         component: web
         namespace: {{.Values.namespace}}
         {{- with .Values.podLabels }}{{ toYaml . | trim | nindent 8 }}{{- end }}
@@ -68,12 +68,12 @@ spec:
       containers:
       - args:
         - -linkerd-controller-api-addr=linkerd-controller-api.{{.Values.linkerdNamespace}}.svc.{{.Values.clusterDomain}}:8085
-        - -linkerd-metrics-api-addr=linkerd-metrics-api.{{.Values.namespace}}.svc.{{.Values.clusterDomain}}:8085
+        - -linkerd-metrics-api-addr=metrics-api.{{.Values.namespace}}.svc.{{.Values.clusterDomain}}:8085
         - -cluster-domain={{.Values.clusterDomain}}
         {{- if .Values.grafanaUrl }}
         - -grafana-addr={{.Values.grafanaUrl}}
         {{- else if .Values.grafana.enabled }}
-        - -grafana-addr=linkerd-grafana.{{.Values.namespace}}.svc.{{.Values.clusterDomain}}:3000
+        - -grafana-addr=grafana.{{.Values.namespace}}.svc.{{.Values.clusterDomain}}:3000
         {{- end}}
         {{- if .Values.jaegerUrl }}
         - -jaeger-addr={{.Values.jaegerUrl}}
@@ -84,8 +84,8 @@ spec:
         {{- if .Values.dashboard.enforcedHostRegexp }}
         - -enforced-host={{.Values.dashboard.enforcedHostRegexp}}
         {{- else -}}
-        {{- $hostFull := replace "." "\\." (printf "linkerd-web.%s.svc.%s" .Values.namespace .Values.clusterDomain) }}
-        {{- $hostAbbrev := replace "." "\\." (printf "linkerd-web.%s.svc" .Values.namespace) }}
+        {{- $hostFull := replace "." "\\." (printf "web.%s.svc.%s" .Values.namespace .Values.clusterDomain) }}
+        {{- $hostAbbrev := replace "." "\\." (printf "web.%s.svc" .Values.namespace) }}
         - -enforced-host=^(localhost|127\.0\.0\.1|{{ $hostFull }}|{{ $hostAbbrev }}|\[::1\])(:\d+)?$
         {{- end}}
         image: {{.Values.dashboard.image.registry | default .Values.defaultRegistry}}/{{.Values.dashboard.image.name}}:{{.Values.dashboard.image.tag | default .Values.linkerdVersion}}
@@ -111,4 +111,4 @@ spec:
         {{- end }}
         securityContext:
           runAsUser: {{.Values.dashboard.UID | default .Values.defaultUID}}
-      serviceAccountName: linkerd-web
+      serviceAccountName: web
diff --git a/viz/cmd/dashboard.go b/viz/cmd/dashboard.go
index 6d63e8675..74d978f36 100644
--- a/viz/cmd/dashboard.go
+++ b/viz/cmd/dashboard.go
@@ -26,7 +26,7 @@ const (
 	showURL = "url"
 
 	// webDeployment is the name of the web deployment in cli/install/template.go
-	webDeployment = "linkerd-web"
+	webDeployment = "web"
 
 	// webPort is the http port from the web pod spec in cli/install/template.go
 	webPort = 8084
diff --git a/viz/cmd/root.go b/viz/cmd/root.go
index 870dd572f..75134d26e 100644
--- a/viz/cmd/root.go
+++ b/viz/cmd/root.go
@@ -11,7 +11,7 @@ import (
 
 const (
 	// ExtensionName is the value that the viz extension resources should be labeled with
-	ExtensionName = "linkerd-viz"
+	ExtensionName = "viz"
 
 	vizChartName            = "linkerd-viz"
 	defaultLinkerdNamespace = "linkerd"
diff --git a/viz/metrics-api/client/client.go b/viz/metrics-api/client/client.go
index cd45997a8..63240501d 100644
--- a/viz/metrics-api/client/client.go
+++ b/viz/metrics-api/client/client.go
@@ -28,7 +28,7 @@ const (
 	APIPrefix = "api/" + apiVersion + "/"
 
 	apiPort       = 8085
-	apiDeployment = "linkerd-metrics-api"
+	apiDeployment = "metrics-api"
 )
 
 type grpcOverHTTPClient struct {
diff --git a/viz/pkg/healthcheck/healthcheck.go b/viz/pkg/healthcheck/healthcheck.go
index 70308e654..2d94000c0 100644
--- a/viz/pkg/healthcheck/healthcheck.go
+++ b/viz/pkg/healthcheck/healthcheck.go
@@ -20,7 +20,7 @@ import (
 
 const (
 	// VizExtensionName is the name of the viz extension
-	VizExtensionName = "linkerd-viz"
+	VizExtensionName = "viz"
 
 	// LinkerdVizExtensionCheck adds checks related to the Linkerd Viz extension
 	LinkerdVizExtensionCheck healthcheck.CategoryID = "linkerd-viz"
@@ -28,7 +28,7 @@ const (
 	// LinkerdVizExtensionDataPlaneCheck adds checks related to dataplane for the linkerd-viz extension
 	LinkerdVizExtensionDataPlaneCheck healthcheck.CategoryID = "linkerd-viz-data-plane"
 
-	tapTLSSecretName    = "linkerd-tap-k8s-tls"
+	tapTLSSecretName    = "tap-k8s-tls"
 	tapOldTLSSecretName = "linkerd-tap-tls"
 
 	// linkerdTapAPIServiceName is the name of the tap api service
@@ -74,7 +74,7 @@ func (hc *HealthChecker) VizCategory() healthcheck.Category {
 			WithHintAnchor("l5d-viz-ns-exists").
 			Fatal().
 			WithCheck(func(ctx context.Context) error {
-				vizNs, err := hc.KubeAPIClient().GetNamespaceWithExtensionLabel(ctx, "linkerd-viz")
+				vizNs, err := hc.KubeAPIClient().GetNamespaceWithExtensionLabel(ctx, "viz")
 				if err != nil {
 					return err
 				}
@@ -113,7 +113,7 @@ func (hc *HealthChecker) VizCategory() healthcheck.Category {
 					return err
 				}
 
-				identityName := fmt.Sprintf("linkerd-tap.%s.svc", hc.vizNamespace)
+				identityName := fmt.Sprintf("tap.%s.svc", hc.vizNamespace)
 				return hc.CheckCertAndAnchors(cert, anchors, identityName)
 			}),
 		*healthcheck.NewChecker("tap API server cert is valid for at least 60 days").
@@ -158,7 +158,7 @@ func (hc *HealthChecker) VizCategory() healthcheck.Category {
 				}
 
 				// Check for relevant pods to be present
-				err = healthcheck.CheckForPods(pods, []string{"linkerd-web", "linkerd-tap", "linkerd-metrics-api", "tap-injector"})
+				err = healthcheck.CheckForPods(pods, []string{"web", "tap", "metrics-api", "tap-injector"})
 				if err != nil {
 					return err
 				}
@@ -170,7 +170,7 @@ func (hc *HealthChecker) VizCategory() healthcheck.Category {
 			Warning().
 			WithCheck(func(ctx context.Context) error {
 				if hc.externalPrometheusURL != "" {
-					return &healthcheck.SkipError{Reason: "linkerd-prometheus is disabled"}
+					return &healthcheck.SkipError{Reason: "prometheus is disabled"}
 				}
 
 				// Check for ClusterRoles
@@ -186,7 +186,7 @@ func (hc *HealthChecker) VizCategory() healthcheck.Category {
 				}
 
 				// Check for ConfigMap
-				err = healthcheck.CheckConfigMaps(ctx, hc.KubeAPIClient(), hc.vizNamespace, true, []string{"linkerd-prometheus-config"}, "")
+				err = healthcheck.CheckConfigMaps(ctx, hc.KubeAPIClient(), hc.vizNamespace, true, []string{"prometheus-config"}, "")
 				if err != nil {
 					return err
 				}
@@ -197,7 +197,7 @@ func (hc *HealthChecker) VizCategory() healthcheck.Category {
 					return err
 				}
 
-				err = healthcheck.CheckForPods(pods, []string{"linkerd-prometheus"})
+				err = healthcheck.CheckForPods(pods, []string{"prometheus"})
 				if err != nil {
 					return err
 				}
diff --git a/web/app/js/components/Navigation.jsx b/web/app/js/components/Navigation.jsx
index 9ee36e34b..44f74783f 100644
--- a/web/app/js/components/Navigation.jsx
+++ b/web/app/js/components/Navigation.jsx
@@ -44,7 +44,7 @@ import { withStyles } from '@material-ui/core/styles';
 import yellow from '@material-ui/core/colors/yellow';
 
 const jsonFeedUrl = 'https://linkerd.io/dashboard/index.json';
-const multiclusterExtensionName = 'linkerd-multicluster';
+const multiclusterExtensionName = 'multicluster';
 const localStorageKey = 'linkerd-updates-last-clicked';
 const minBrowserWidth = 960;
 
diff --git a/web/app/js/components/ServiceMesh.jsx b/web/app/js/components/ServiceMesh.jsx
index 804f90abb..ebe282526 100644
--- a/web/app/js/components/ServiceMesh.jsx
+++ b/web/app/js/components/ServiceMesh.jsx
@@ -58,13 +58,13 @@ const getPodClassification = pod => {
 
 const componentsToDeployNames = {
   Destination: 'linkerd-controller',
-  Grafana: 'linkerd-grafana',
+  Grafana: 'grafana',
   Identity: 'linkerd-identity',
-  Prometheus: 'linkerd-prometheus',
+  Prometheus: 'prometheus',
   'Public API': 'linkerd-controller',
   'Service Profile Validator': 'linkerd-sp-validator',
   Tap: 'linkerd-tap',
-  'Web UI': 'linkerd-web',
+  'Web UI': 'web',
 };
 
 class ServiceMesh extends React.Component {
diff --git a/web/main.go b/web/main.go
index 7b6376d4e..8d899baea 100644
--- a/web/main.go
+++ b/web/main.go
@@ -98,7 +98,7 @@ func main() {
 	signal.Notify(stop, os.Interrupt, syscall.SIGTERM)
 
 	if *traceCollector != "" {
-		if err := trace.InitializeTracing("linkerd-web", *traceCollector); err != nil {
+		if err := trace.InitializeTracing("web", *traceCollector); err != nil {
 			log.Warnf("failed to initialize tracing: %s", err)
 		}
 	}


Test patch:
diff --git a/cli/cmd/testdata/install_controlplane_tracing_output.golden b/cli/cmd/testdata/install_controlplane_tracing_output.golden
index 1a29f3d11..d9364471d 100644
--- a/cli/cmd/testdata/install_controlplane_tracing_output.golden
+++ b/cli/cmd/testdata/install_controlplane_tracing_output.golden
@@ -1825,7 +1825,7 @@ spec:
             - "-controller-namespace=linkerd"
             - "-log-level=info"
             - "-log-format=plain"
-            - "-prometheus-url=http://linkerd-prometheus.linkerd-viz.svc.cluster.local:9090"
+            - "-prometheus-url=http://prometheus.linkerd-viz.svc.cluster.local:9090"
             securityContext:
               runAsUser: 2103
 ---
diff --git a/cli/cmd/testdata/install_custom_domain.golden b/cli/cmd/testdata/install_custom_domain.golden
index 3042fdd1d..f59b9e0bb 100644
--- a/cli/cmd/testdata/install_custom_domain.golden
+++ b/cli/cmd/testdata/install_custom_domain.golden
@@ -1822,7 +1822,7 @@ spec:
             - "-controller-namespace=l5d"
             - "-log-level=info"
             - "-log-format=plain"
-            - "-prometheus-url=http://linkerd-prometheus.linkerd-viz.svc.cluster.local:9090"
+            - "-prometheus-url=http://prometheus.linkerd-viz.svc.cluster.local:9090"
             securityContext:
               runAsUser: 2103
 ---
diff --git a/cli/cmd/testdata/install_custom_registry.golden b/cli/cmd/testdata/install_custom_registry.golden
index 6523fbbe0..1e5cf8a2d 100644
--- a/cli/cmd/testdata/install_custom_registry.golden
+++ b/cli/cmd/testdata/install_custom_registry.golden
@@ -1822,7 +1822,7 @@ spec:
             - "-controller-namespace=linkerd"
             - "-log-level=info"
             - "-log-format=plain"
-            - "-prometheus-url=http://linkerd-prometheus.linkerd-viz.svc.cluster.local:9090"
+            - "-prometheus-url=http://prometheus.linkerd-viz.svc.cluster.local:9090"
             securityContext:
               runAsUser: 2103
 ---
diff --git a/cli/cmd/testdata/install_default.golden b/cli/cmd/testdata/install_default.golden
index 74aaf180a..c4038abcd 100644
--- a/cli/cmd/testdata/install_default.golden
+++ b/cli/cmd/testdata/install_default.golden
@@ -1822,7 +1822,7 @@ spec:
             - "-controller-namespace=linkerd"
             - "-log-level=info"
             - "-log-format=plain"
-            - "-prometheus-url=http://linkerd-prometheus.linkerd-viz.svc.cluster.local:9090"
+            - "-prometheus-url=http://prometheus.linkerd-viz.svc.cluster.local:9090"
             securityContext:
               runAsUser: 2103
 ---
diff --git a/cli/cmd/testdata/install_default_override_dst_get_nets.golden b/cli/cmd/testdata/install_default_override_dst_get_nets.golden
index 2fa1be42a..01d2afa4e 100644
--- a/cli/cmd/testdata/install_default_override_dst_get_nets.golden
+++ b/cli/cmd/testdata/install_default_override_dst_get_nets.golden
@@ -1822,7 +1822,7 @@ spec:
             - "-controller-namespace=linkerd"
             - "-log-level=info"
             - "-log-format=plain"
-            - "-prometheus-url=http://linkerd-prometheus.linkerd-viz.svc.cluster.local:9090"
+            - "-prometheus-url=http://prometheus.linkerd-viz.svc.cluster.local:9090"
             securityContext:
               runAsUser: 2103
 ---
diff --git a/cli/cmd/testdata/install_ha_output.golden b/cli/cmd/testdata/install_ha_output.golden
index 4d2d7ee0c..e45f9ee5a 100644
--- a/cli/cmd/testdata/install_ha_output.golden
+++ b/cli/cmd/testdata/install_ha_output.golden
@@ -2008,7 +2008,7 @@ spec:
             - "-controller-namespace=linkerd"
             - "-log-level=info"
             - "-log-format=plain"
-            - "-prometheus-url=http://linkerd-prometheus.linkerd-viz.svc.cluster.local:9090"
+            - "-prometheus-url=http://prometheus.linkerd-viz.svc.cluster.local:9090"
             resources:
               limits:
                 memory: "250Mi"
diff --git a/cli/cmd/testdata/install_ha_with_overrides_output.golden b/cli/cmd/testdata/install_ha_with_overrides_output.golden
index 4555cd333..78780b453 100644
--- a/cli/cmd/testdata/install_ha_with_overrides_output.golden
+++ b/cli/cmd/testdata/install_ha_with_overrides_output.golden
@@ -2008,7 +2008,7 @@ spec:
             - "-controller-namespace=linkerd"
             - "-log-level=info"
             - "-log-format=plain"
-            - "-prometheus-url=http://linkerd-prometheus.linkerd-viz.svc.cluster.local:9090"
+            - "-prometheus-url=http://prometheus.linkerd-viz.svc.cluster.local:9090"
             resources:
               limits:
                 memory: "250Mi"
diff --git a/cli/cmd/testdata/install_helm_output.golden b/cli/cmd/testdata/install_helm_output.golden
index 3edcf9f8a..3d496b7d9 100644
--- a/cli/cmd/testdata/install_helm_output.golden
+++ b/cli/cmd/testdata/install_helm_output.golden
@@ -1799,7 +1799,7 @@ spec:
             - "-controller-namespace=linkerd"
             - "-log-level=info"
             - "-log-format=plain"
-            - "-prometheus-url=http://linkerd-prometheus.linkerd-viz.svc.cluster.local:9090"
+            - "-prometheus-url=http://prometheus.linkerd-viz.svc.cluster.local:9090"
             securityContext:
               runAsUser: 2103
 ---
diff --git a/cli/cmd/testdata/install_helm_output_ha.golden b/cli/cmd/testdata/install_helm_output_ha.golden
index 1cf1fc4ca..3063d3ee1 100644
--- a/cli/cmd/testdata/install_helm_output_ha.golden
+++ b/cli/cmd/testdata/install_helm_output_ha.golden
@@ -1985,7 +1985,7 @@ spec:
             - "-controller-namespace=linkerd"
             - "-log-level=info"
             - "-log-format=plain"
-            - "-prometheus-url=http://linkerd-prometheus.linkerd-viz.svc.cluster.local:9090"
+            - "-prometheus-url=http://prometheus.linkerd-viz.svc.cluster.local:9090"
             resources:
               limits:
                 memory: "250Mi"
diff --git a/cli/cmd/testdata/install_helm_output_ha_labels.golden b/cli/cmd/testdata/install_helm_output_ha_labels.golden
index 4a475b488..d9daddf98 100644
--- a/cli/cmd/testdata/install_helm_output_ha_labels.golden
+++ b/cli/cmd/testdata/install_helm_output_ha_labels.golden
@@ -2005,7 +2005,7 @@ spec:
             - "-controller-namespace=linkerd"
             - "-log-level=info"
             - "-log-format=plain"
-            - "-prometheus-url=http://linkerd-prometheus.linkerd-viz.svc.cluster.local:9090"
+            - "-prometheus-url=http://prometheus.linkerd-viz.svc.cluster.local:9090"
             resources:
               limits:
                 memory: "250Mi"
diff --git a/cli/cmd/testdata/install_helm_output_ha_namespace_selector.golden b/cli/cmd/testdata/install_helm_output_ha_namespace_selector.golden
index 7f265c20f..445bedb9d 100644
--- a/cli/cmd/testdata/install_helm_output_ha_namespace_selector.golden
+++ b/cli/cmd/testdata/install_helm_output_ha_namespace_selector.golden
@@ -1985,7 +1985,7 @@ spec:
             - "-controller-namespace=linkerd"
             - "-log-level=info"
             - "-log-format=plain"
-            - "-prometheus-url=http://linkerd-prometheus.linkerd-viz.svc.cluster.local:9090"
+            - "-prometheus-url=http://prometheus.linkerd-viz.svc.cluster.local:9090"
             resources:
               limits:
                 memory: "250Mi"
diff --git a/cli/cmd/testdata/install_no_init_container.golden b/cli/cmd/testdata/install_no_init_container.golden
index 2077c10c5..4a1ae2e1d 100644
--- a/cli/cmd/testdata/install_no_init_container.golden
+++ b/cli/cmd/testdata/install_no_init_container.golden
@@ -1705,7 +1705,7 @@ spec:
             - "-controller-namespace=linkerd"
             - "-log-level=info"
             - "-log-format=plain"
-            - "-prometheus-url=http://linkerd-prometheus.linkerd-viz.svc.cluster.local:9090"
+            - "-prometheus-url=http://prometheus.linkerd-viz.svc.cluster.local:9090"
             securityContext:
               runAsUser: 2103
 ---
diff --git a/cli/cmd/testdata/install_output.golden b/cli/cmd/testdata/install_output.golden
index 346dd233d..8fbbfdef3 100644
--- a/cli/cmd/testdata/install_output.golden
+++ b/cli/cmd/testdata/install_output.golden
@@ -1822,7 +1822,7 @@ spec:
             - "-controller-namespace=linkerd"
             - "-log-level=ControllerLogLevel"
             - "-log-format=ControllerLogFormat"
-            - "-prometheus-url=http://linkerd-prometheus.linkerd-viz.svc.cluster.local:9090"
+            - "-prometheus-url=http://prometheus.linkerd-viz.svc.cluster.local:9090"
             securityContext:
               runAsUser: 2103
 ---
diff --git a/cli/cmd/testdata/install_proxy_ignores.golden b/cli/cmd/testdata/install_proxy_ignores.golden
index fde60089f..c98b3fde8 100644
--- a/cli/cmd/testdata/install_proxy_ignores.golden
+++ b/cli/cmd/testdata/install_proxy_ignores.golden
@@ -1822,7 +1822,7 @@ spec:
             - "-controller-namespace=linkerd"
             - "-log-level=info"
             - "-log-format=plain"
-            - "-prometheus-url=http://linkerd-prometheus.linkerd-viz.svc.cluster.local:9090"
+            - "-prometheus-url=http://prometheus.linkerd-viz.svc.cluster.local:9090"
             securityContext:
               runAsUser: 2103
 ---
diff --git a/cli/cmd/testdata/install_values_file.golden b/cli/cmd/testdata/install_values_file.golden
index 8192f8312..d417015ba 100644
--- a/cli/cmd/testdata/install_values_file.golden
+++ b/cli/cmd/testdata/install_values_file.golden
@@ -1808,7 +1808,7 @@ spec:
             - "-controller-namespace=l5d"
             - "-log-level=info"
             - "-log-format=plain"
-            - "-prometheus-url=http://linkerd-prometheus.linkerd-viz.svc.example.com:9090"
+            - "-prometheus-url=http://prometheus.linkerd-viz.svc.example.com:9090"
             securityContext:
               runAsUser: 2103
 ---
diff --git a/controller/heartbeat/heartbeat_test.go b/controller/heartbeat/heartbeat_test.go
index 334565e77..79f5c5b26 100644
--- a/controller/heartbeat/heartbeat_test.go
+++ b/controller/heartbeat/heartbeat_test.go
@@ -69,13 +69,13 @@ apiVersion: v1
 metadata:
   name: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz`,
+    linkerd.io/extension: viz`,
 			},
 			url.Values{
-				"k8s-version":     []string{"v0.0.0-master+$Format:%h$"},
-				"install-time":    []string{"1550234096"},
-				"uuid":            []string{"fake-uuid"},
-				"ext-linkerd-viz": []string{"1"},
+				"k8s-version":  []string{"v0.0.0-master+$Format:%h$"},
+				"install-time": []string{"1550234096"},
+				"uuid":         []string{"fake-uuid"},
+				"ext-viz":      []string{"1"},
 			},
 		},
 	}
diff --git a/test/integration/edges/testdata/direct_edges.golden b/test/integration/edges/testdata/direct_edges.golden
index 3d836cb9f..f70ecb80f 100644
--- a/test/integration/edges/testdata/direct_edges.golden
+++ b/test/integration/edges/testdata/direct_edges.golden
@@ -9,20 +9,20 @@
     "no_tls_reason": ""
   \},
   \{
-    "src": "linkerd-prometheus",
+    "src": "prometheus",
     "src_namespace": "{{.VizNs}}",
     "dst": "slow-cooker",
     "dst_namespace": "{{.Ns}}",
-    "client_id": "linkerd-prometheus.{{.VizNs}}",
+    "client_id": "prometheus.{{.VizNs}}",
     "server_id": "default.{{.Ns}}",
     "no_tls_reason": ""
   \},
   \{
-    "src": "linkerd-prometheus",
+    "src": "prometheus",
     "src_namespace": "{{.VizNs}}",
     "dst": "terminus",
     "dst_namespace": "{{.Ns}}",
-    "client_id": "linkerd-prometheus.{{.VizNs}}",
+    "client_id": "prometheus.{{.VizNs}}",
     "server_id": "default.{{.Ns}}",
     "no_tls_reason": ""
   \}
diff --git a/test/integration/endpoints/endpoints_test.go b/test/integration/endpoints/endpoints_test.go
index 1e1dd36a4..9d64b19e9 100644
--- a/test/integration/endpoints/endpoints_test.go
+++ b/test/integration/endpoints/endpoints_test.go
@@ -24,19 +24,20 @@ func TestGoodEndpoints(t *testing.T) {
 	vizNs := TestHelper.GetVizNamespace()
 	testDataPath := "testdata"
 	cmd := []string{
+		"diagnostics",
 		"endpoints",
 		fmt.Sprintf("linkerd-controller-api.%s.svc.cluster.local:8085", ns),
 		fmt.Sprintf("linkerd-dst.%s.svc.cluster.local:8086", ns),
-		fmt.Sprintf("linkerd-grafana.%s.svc.cluster.local:3000", vizNs),
+		fmt.Sprintf("grafana.%s.svc.cluster.local:3000", vizNs),
 		fmt.Sprintf("linkerd-identity.%s.svc.cluster.local:8080", ns),
 		fmt.Sprintf("linkerd-proxy-injector.%s.svc.cluster.local:443", ns),
 		fmt.Sprintf("linkerd-sp-validator.%s.svc.cluster.local:443", ns),
-		fmt.Sprintf("linkerd-tap.%s.svc.cluster.local:8088", vizNs),
-		fmt.Sprintf("linkerd-web.%s.svc.cluster.local:8084", vizNs),
+		fmt.Sprintf("tap.%s.svc.cluster.local:8088", vizNs),
+		fmt.Sprintf("web.%s.svc.cluster.local:8084", vizNs),
 	}
 
 	if !TestHelper.ExternalPrometheus() {
-		cmd = append(cmd, fmt.Sprintf("linkerd-prometheus.%s.svc.cluster.local:9090", vizNs))
+		cmd = append(cmd, fmt.Sprintf("prometheus.%s.svc.cluster.local:9090", vizNs))
 	} else {
 		cmd = append(cmd, "prometheus.external-prometheus.svc.cluster.local:9090")
 		testDataPath += "/external_prometheus"
@@ -69,7 +70,7 @@ func TestGoodEndpoints(t *testing.T) {
 
 // TODO: when #3004 gets fixed, add a negative test for mismatched ports
 func TestBadEndpoints(t *testing.T) {
-	_, stderr, err := TestHelper.PipeToLinkerdRun("", "endpoints", "foo")
+	_, stderr, err := TestHelper.PipeToLinkerdRun("", "diagnostics", "endpoints", "foo")
 	if err == nil {
 		testutil.AnnotatedFatalf(t, "was expecting an error", "was expecting an error: %v", err)
 	}
diff --git a/test/integration/endpoints/testdata/external_prometheus/linkerd_endpoints.golden b/test/integration/endpoints/testdata/external_prometheus/linkerd_endpoints.golden
index 7a55d6255..4f4b71102 100644
--- a/test/integration/endpoints/testdata/external_prometheus/linkerd_endpoints.golden
+++ b/test/integration/endpoints/testdata/external_prometheus/linkerd_endpoints.golden
@@ -45,21 +45,21 @@
     "namespace": "{{.VizNs}}",
     "ip": "\d+\.\d+\.\d+\.\d+",
     "port": 3000,
-    "pod": "linkerd\-grafana\-[a-f0-9]+\-[a-z0-9]+",
-    "service": "linkerd\-grafana\.{{.VizNs}}"
+    "pod": "grafana\-[a-f0-9]+\-[a-z0-9]+",
+    "service": "grafana\.{{.VizNs}}"
   \},
   \{
     "namespace": "{{.VizNs}}",
     "ip": "\d+\.\d+\.\d+\.\d+",
     "port": 8088,
-    "pod": "linkerd\-tap\-[a-f0-9]+\-[a-z0-9]+",
-    "service": "linkerd\-tap\.{{.VizNs}}"
+    "pod": "tap\-[a-f0-9]+\-[a-z0-9]+",
+    "service": "tap\.{{.VizNs}}"
   \},
   \{
     "namespace": "{{.VizNs}}",
     "ip": "\d+\.\d+\.\d+\.\d+",
     "port": 8084,
-    "pod": "linkerd\-web\-[a-f0-9]+\-[a-z0-9]+",
-    "service": "linkerd\-web\.{{.VizNs}}"
+    "pod": "web\-[a-f0-9]+\-[a-z0-9]+",
+    "service": "web\.{{.VizNs}}"
   \}
 \]
diff --git a/test/integration/endpoints/testdata/linkerd_endpoints.golden b/test/integration/endpoints/testdata/linkerd_endpoints.golden
index 05e378c1b..8e09830ef 100644
--- a/test/integration/endpoints/testdata/linkerd_endpoints.golden
+++ b/test/integration/endpoints/testdata/linkerd_endpoints.golden
@@ -38,28 +38,28 @@
     "namespace": "{{.VizNs}}",
     "ip": "\d+\.\d+\.\d+\.\d+",
     "port": 3000,
-    "pod": "linkerd\-grafana\-[a-f0-9]+\-[a-z0-9]+",
-    "service": "linkerd\-grafana\.{{.VizNs}}"
+    "pod": "grafana\-[a-f0-9]+\-[a-z0-9]+",
+    "service": "grafana\.{{.VizNs}}"
   \},
   \{
     "namespace": "{{.VizNs}}",
     "ip": "\d+\.\d+\.\d+\.\d+",
     "port": 9090,
-    "pod": "linkerd\-prometheus-[a-f0-9]+\-[a-z0-9]+",
-    "service": "linkerd\-prometheus\.{{.VizNs}}"
+    "pod": "prometheus-[a-f0-9]+\-[a-z0-9]+",
+    "service": "prometheus\.{{.VizNs}}"
   \},
   \{
     "namespace": "{{.VizNs}}",
     "ip": "\d+\.\d+\.\d+\.\d+",
     "port": 8088,
-    "pod": "linkerd\-tap\-[a-f0-9]+\-[a-z0-9]+",
-    "service": "linkerd\-tap\.{{.VizNs}}"
+    "pod": "tap\-[a-f0-9]+\-[a-z0-9]+",
+    "service": "tap\.{{.VizNs}}"
   \},
   \{
     "namespace": "{{.VizNs}}",
     "ip": "\d+\.\d+\.\d+\.\d+",
     "port": 8084,
-    "pod": "linkerd\-web\-[a-f0-9]+\-[a-z0-9]+",
-    "service": "linkerd\-web\.{{.VizNs}}"
+    "pod": "web\-[a-f0-9]+\-[a-z0-9]+",
+    "service": "web\.{{.VizNs}}"
   \}
 \]
diff --git a/test/integration/install_test.go b/test/integration/install_test.go
index 57e17d1cb..180e0cc2a 100644
--- a/test/integration/install_test.go
+++ b/test/integration/install_test.go
@@ -47,10 +47,10 @@ var (
 	linkerdSvcEdge = []testutil.Service{
 		{Namespace: "linkerd", Name: "linkerd-controller-api"},
 		{Namespace: "linkerd", Name: "linkerd-dst"},
-		{Namespace: "linkerd-viz", Name: "linkerd-grafana"},
+		{Namespace: "linkerd-viz", Name: "grafana"},
 		{Namespace: "linkerd", Name: "linkerd-identity"},
-		{Namespace: "linkerd-viz", Name: "linkerd-web"},
-		{Namespace: "linkerd-viz", Name: "linkerd-tap"},
+		{Namespace: "linkerd-viz", Name: "web"},
+		{Namespace: "linkerd-viz", Name: "tap"},
 		{Namespace: "linkerd", Name: "linkerd-dst-headless"},
 		{Namespace: "linkerd", Name: "linkerd-identity-headless"},
 	}
@@ -84,8 +84,8 @@ var (
 	//skippedInboundPorts lists some ports to be marked as skipped, which will
 	// be verified in test/integration/inject
 	skippedInboundPorts       = "1234,5678"
-	multiclusterExtensionName = "linkerd-multicluster"
-	vizExtensionName          = "linkerd-viz"
+	multiclusterExtensionName = "multicluster"
+	vizExtensionName          = "viz"
 )
 
 //////////////////////
@@ -539,8 +539,8 @@ func TestControlPlaneResourcesPostInstall(t *testing.T) {
 	expectedServices := linkerdSvcEdge
 	expectedDeployments := testutil.LinkerdDeployReplicasEdge
 	if !TestHelper.ExternalPrometheus() {
-		expectedServices = append(expectedServices, testutil.Service{Namespace: "linkerd-viz", Name: "linkerd-prometheus"})
-		expectedDeployments["linkerd-prometheus"] = testutil.DeploySpec{Namespace: "linkerd-viz", Replicas: 1, Containers: []string{}}
+		expectedServices = append(expectedServices, testutil.Service{Namespace: "linkerd-viz", Name: "prometheus"})
+		expectedDeployments["prometheus"] = testutil.DeploySpec{Namespace: "linkerd-viz", Replicas: 1, Containers: []string{}}
 	}
 
 	// Upgrade Case
@@ -880,7 +880,7 @@ func TestUpgradeTestAppWorksAfterUpgrade(t *testing.T) {
 }
 
 func TestInstallSP(t *testing.T) {
-	cmd := []string{"install-sp"}
+	cmd := []string{"diagnostics", "install-sp"}
 
 	out, err := TestHelper.LinkerdRun(cmd...)
 	if err != nil {
@@ -1052,7 +1052,7 @@ func TestCheckProxy(t *testing.T) {
 func TestRestarts(t *testing.T) {
 	expectedDeployments := testutil.LinkerdDeployReplicasEdge
 	if !TestHelper.ExternalPrometheus() {
-		expectedDeployments["linkerd-prometheus"] = testutil.DeploySpec{Namespace: "linkerd-viz", Replicas: 1, Containers: []string{}}
+		expectedDeployments["prometheus"] = testutil.DeploySpec{Namespace: "linkerd-viz", Replicas: 1, Containers: []string{}}
 	}
 	for deploy, spec := range expectedDeployments {
 		if err := TestHelper.CheckPods(context.Background(), spec.Namespace, deploy, spec.Replicas); err != nil {
diff --git a/test/integration/multicluster/target2/target_test.go b/test/integration/multicluster/target2/target_test.go
index f1a8c5848..093a966e5 100644
--- a/test/integration/multicluster/target2/target_test.go
+++ b/test/integration/multicluster/target2/target_test.go
@@ -26,7 +26,7 @@ func TestMain(m *testing.M) {
 // successfully issued requests, then we'll see log messages indicating that the
 // web-svc can't reach the voting-svc (because it's not running).
 //
-// TODO it may be clearer to invoke `linkerd metrics` to check whether we see
+// TODO it may be clearer to invoke `linkerd diagnostics proxy-metrics` to check whether we see
 // connections from the gateway pod to the web-svc?
 func TestTargetTraffic(t *testing.T) {
 	timeout := time.Minute
diff --git a/test/integration/opaqueports/opaque_ports_test.go b/test/integration/opaqueports/opaque_ports_test.go
index d20de4461..ed3c98d9d 100644
--- a/test/integration/opaqueports/opaque_ports_test.go
+++ b/test/integration/opaqueports/opaque_ports_test.go
@@ -142,7 +142,7 @@ func TestOpaquePorts(t *testing.T) {
 
 func getPodMetrics(pod v1.Pod, ns string) (string, error) {
 	podName := fmt.Sprintf("pod/%s", pod.Name)
-	cmd := []string{"metrics", "--namespace", ns, podName}
+	cmd := []string{"diagnostics", "proxy-metrics", "--namespace", ns, podName}
 	metrics, err := TestHelper.LinkerdRun(cmd...)
 	if err != nil {
 		return "", err
diff --git a/test/integration/stat/stat_test.go b/test/integration/stat/stat_test.go
index 8893be21b..98dbb72f7 100644
--- a/test/integration/stat/stat_test.go
+++ b/test/integration/stat/stat_test.go
@@ -37,7 +37,7 @@ func TestCliStatForLinkerdNamespace(t *testing.T) {
 	ctx := context.Background()
 	var prometheusPod, prometheusAuthority, prometheusNamespace, prometheusDeployment, metricsPod string
 	// Get Metrics Pod
-	pods, err := TestHelper.GetPodNamesForDeployment(ctx, TestHelper.GetVizNamespace(), "linkerd-metrics-api")
+	pods, err := TestHelper.GetPodNamesForDeployment(ctx, TestHelper.GetVizNamespace(), "metrics-api")
 	if err != nil {
 		testutil.AnnotatedFatalf(t, "failed to get pods for metrics-api",
 			"failed to get pods for metrics-api: %s", err)
@@ -53,7 +53,7 @@ func TestCliStatForLinkerdNamespace(t *testing.T) {
 		prometheusDeployment = "prometheus"
 	} else {
 		prometheusNamespace = TestHelper.GetVizNamespace()
-		prometheusDeployment = "linkerd-prometheus"
+		prometheusDeployment = "prometheus"
 	}
 
 	pods, err = TestHelper.GetPodNamesForDeployment(ctx, prometheusNamespace, prometheusDeployment)
@@ -98,13 +98,13 @@ func TestCliStatForLinkerdNamespace(t *testing.T) {
 		{
 			args: []string{"viz", "stat", "deploy", "-n", TestHelper.GetVizNamespace(), "--to", fmt.Sprintf("po/%s", prometheusPod), "--to-namespace", prometheusNamespace},
 			expectedRows: map[string]string{
-				"linkerd-metrics-api": "1/1",
+				"metrics-api": "1/1",
 			},
 		},
 		{
 			args: []string{"viz", "stat", "deploy", "-n", TestHelper.GetVizNamespace(), "--to", fmt.Sprintf("svc/%s", prometheusDeployment), "--to-namespace", prometheusNamespace},
 			expectedRows: map[string]string{
-				"linkerd-metrics-api": "1/1",
+				"metrics-api": "1/1",
 			},
 		},
 		{
@@ -131,12 +131,12 @@ func TestCliStatForLinkerdNamespace(t *testing.T) {
 			{
 				args: []string{"viz", "stat", "deploy", "-n", TestHelper.GetVizNamespace()},
 				expectedRows: map[string]string{
-					"linkerd-metrics-api": "1/1",
-					"linkerd-grafana":     "1/1",
-					"linkerd-prometheus":  "1/1",
-					"linkerd-tap":         "1/1",
-					"linkerd-web":         "1/1",
-					"tap-injector":        "1/1",
+					"metrics-api":  "1/1",
+					"grafana":      "1/1",
+					"prometheus":   "1/1",
+					"tap":          "1/1",
+					"web":          "1/1",
+					"tap-injector": "1/1",
 				},
 			},
 			{
@@ -146,9 +146,9 @@ func TestCliStatForLinkerdNamespace(t *testing.T) {
 				},
 			},
 			{
-				args: []string{"viz", "stat", "svc", "linkerd-prometheus", "-n", TestHelper.GetVizNamespace(), "--from", "deploy/linkerd-metrics-api", "--from-namespace", TestHelper.GetVizNamespace()},
+				args: []string{"viz", "stat", "svc", "prometheus", "-n", TestHelper.GetVizNamespace(), "--from", "deploy/metrics-api", "--from-namespace", TestHelper.GetVizNamespace()},
 				expectedRows: map[string]string{
-					"linkerd-prometheus": "1/1",
+					"prometheus": "1/1",
 				},
 			},
 		}...,
@@ -162,11 +162,11 @@ func TestCliStatForLinkerdNamespace(t *testing.T) {
 			{
 				args: []string{"viz", "stat", "deploy", "-n", TestHelper.GetVizNamespace()},
 				expectedRows: map[string]string{
-					"linkerd-metrics-api": "1/1",
-					"linkerd-grafana":     "1/1",
-					"linkerd-tap":         "1/1",
-					"linkerd-web":         "1/1",
-					"tap-injector":        "1/1",
+					"metrics-api":  "1/1",
+					"grafana":      "1/1",
+					"tap":          "1/1",
+					"web":          "1/1",
+					"tap-injector": "1/1",
 				},
 			},
 			{
diff --git a/test/integration/uninstall/uninstall_test.go b/test/integration/uninstall/uninstall_test.go
index 1b6b35b43..b8911c2c5 100644
--- a/test/integration/uninstall/uninstall_test.go
+++ b/test/integration/uninstall/uninstall_test.go
@@ -73,7 +73,7 @@ func TestResourcesPostInstall(t *testing.T) {
 
 	expectedDeployments := testutil.LinkerdDeployReplicasEdge
 	if !TestHelper.ExternalPrometheus() {
-		expectedDeployments["linkerd-prometheus"] = testutil.DeploySpec{Namespace: "linkerd-viz", Replicas: 1, Containers: []string{}}
+		expectedDeployments["prometheus"] = testutil.DeploySpec{Namespace: "linkerd-viz", Replicas: 1, Containers: []string{}}
 	}
 	// Upgrade Case
 	if TestHelper.UpgradeHelmFromVersion() != "" {
diff --git a/testutil/test_helper.go b/testutil/test_helper.go
index 5eefd7e9d..1675a281b 100644
--- a/testutil/test_helper.go
+++ b/testutil/test_helper.go
@@ -85,11 +85,11 @@ var LinkerdDeployReplicasStable = map[string]DeploySpec{
 var LinkerdDeployReplicasEdge = map[string]DeploySpec{
 	"linkerd-controller":     {"linkerd", 1, []string{"public-api"}},
 	"linkerd-destination":    {"linkerd", 1, []string{"destination"}},
-	"linkerd-tap":            {"linkerd-viz", 1, []string{"tap"}},
-	"linkerd-grafana":        {"linkerd-viz", 1, []string{}},
+	"tap":                    {"linkerd-viz", 1, []string{"tap"}},
+	"grafana":                {"linkerd-viz", 1, []string{}},
 	"linkerd-identity":       {"linkerd", 1, []string{"identity"}},
 	"linkerd-sp-validator":   {"linkerd", 1, []string{"sp-validator"}},
-	"linkerd-web":            {"linkerd-viz", 1, []string{"web"}},
+	"web":                    {"linkerd-viz", 1, []string{"web"}},
 	"linkerd-proxy-injector": {"linkerd", 1, []string{"proxy-injector"}},
 }
 
diff --git a/viz/cmd/testdata/install_default.golden b/viz/cmd/testdata/install_default.golden
index dffe48edb..342b4eef7 100644
--- a/viz/cmd/testdata/install_default.golden
+++ b/viz/cmd/testdata/install_default.golden
@@ -7,7 +7,7 @@ apiVersion: v1
 metadata:
   name: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
   annotations:
     linkerd.io/inject: enabled
 ---
@@ -19,7 +19,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-metrics-api
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: metrics-api
 rules:
 - apiGroups: ["extensions", "apps"]
@@ -43,7 +43,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-metrics-api
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: metrics-api
 roleRef:
   apiGroup: rbac.authorization.k8s.io
@@ -51,16 +51,16 @@ roleRef:
   name: linkerd-linkerd-viz-metrics-api
 subjects:
 - kind: ServiceAccount
-  name: linkerd-metrics-api
+  name: metrics-api
   namespace: linkerd-viz
 ---
 kind: ServiceAccount
 apiVersion: v1
 metadata:
-  name: linkerd-metrics-api
+  name: metrics-api
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: metrics-api
 ---
 ###
@@ -69,10 +69,10 @@ metadata:
 kind: ServiceAccount
 apiVersion: v1
 metadata:
-  name: linkerd-grafana
+  name: grafana
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: grafana
     namespace: linkerd-viz
 ---
@@ -84,7 +84,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-prometheus
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: prometheus
 rules:
 - apiGroups: [""]
@@ -96,7 +96,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-prometheus
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: prometheus
 roleRef:
   apiGroup: rbac.authorization.k8s.io
@@ -104,16 +104,16 @@ roleRef:
   name: linkerd-linkerd-viz-prometheus
 subjects:
 - kind: ServiceAccount
-  name: linkerd-prometheus
+  name: prometheus
   namespace: linkerd-viz
 ---
 kind: ServiceAccount
 apiVersion: v1
 metadata:
-  name: linkerd-prometheus
+  name: prometheus
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: prometheus
     namespace: linkerd-viz
 ---
@@ -125,7 +125,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-tap
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
 rules:
 - apiGroups: [""]
@@ -143,7 +143,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-tap-admin
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
 rules:
 - apiGroups: ["tap.linkerd.io"]
@@ -155,7 +155,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-tap
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
 roleRef:
   apiGroup: rbac.authorization.k8s.io
@@ -163,7 +163,7 @@ roleRef:
   name: linkerd-linkerd-viz-tap
 subjects:
 - kind: ServiceAccount
-  name: linkerd-tap
+  name: tap
   namespace: linkerd-viz
 ---
 apiVersion: rbac.authorization.k8s.io/v1
@@ -171,7 +171,7 @@ kind: ClusterRoleBinding
 metadata:
   name: linkerd-linkerd-viz-tap-auth-delegator
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
 roleRef:
   apiGroup: rbac.authorization.k8s.io
@@ -179,16 +179,16 @@ roleRef:
   name: system:auth-delegator
 subjects:
 - kind: ServiceAccount
-  name: linkerd-tap
+  name: tap
   namespace: linkerd-viz
 ---
 kind: ServiceAccount
 apiVersion: v1
 metadata:
-  name: linkerd-tap
+  name: tap
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
     namespace: linkerd-viz
 ---
@@ -198,7 +198,7 @@ metadata:
   name: linkerd-linkerd-viz-tap-auth-reader
   namespace: kube-system
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
     namespace: linkerd-viz
 roleRef:
@@ -207,16 +207,16 @@ roleRef:
   name: extension-apiserver-authentication-reader
 subjects:
 - kind: ServiceAccount
-  name: linkerd-tap
+  name: tap
   namespace: linkerd-viz
 ---
 kind: Secret
 apiVersion: v1
 metadata:
-  name: linkerd-tap-k8s-tls
+  name: tap-k8s-tls
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
     namespace: linkerd-viz
   annotations:
@@ -231,7 +231,7 @@ kind: APIService
 metadata:
   name: v1alpha1.tap.linkerd.io
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
 spec:
   group: tap.linkerd.io
@@ -239,7 +239,7 @@ spec:
   groupPriorityMinimum: 1000
   versionPriority: 100
   service:
-    name: linkerd-tap
+    name: tap
     namespace: linkerd-viz
   caBundle: dGVzdC10YXAtY2EtYnVuZGxl
 ---
@@ -249,10 +249,10 @@ spec:
 apiVersion: rbac.authorization.k8s.io/v1
 kind: Role
 metadata:
-  name: linkerd-web
+  name: web
   namespace: linkerd
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
     namespace: linkerd
 rules:
@@ -273,19 +273,19 @@ rules:
 apiVersion: rbac.authorization.k8s.io/v1
 kind: RoleBinding
 metadata:
-  name: linkerd-web
+  name: web
   namespace: linkerd
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
     namespace: linkerd
 roleRef:
   kind: Role
-  name: linkerd-web
+  name: web
   apiGroup: rbac.authorization.k8s.io
 subjects:
 - kind: ServiceAccount
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
 ---
 apiVersion: rbac.authorization.k8s.io/v1
@@ -293,7 +293,7 @@ kind: ClusterRole
 metadata:
   name: linkerd-linkerd-viz-web-check
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
 rules:
 - apiGroups: ["rbac.authorization.k8s.io"]
@@ -320,7 +320,7 @@ kind: ClusterRoleBinding
 metadata:
   name: linkerd-linkerd-viz-web-check
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
 roleRef:
   kind: ClusterRole
@@ -328,7 +328,7 @@ roleRef:
   apiGroup: rbac.authorization.k8s.io
 subjects:
 - kind: ServiceAccount
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
 ---
 kind: ClusterRoleBinding
@@ -336,7 +336,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-web-admin
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
 roleRef:
   apiGroup: rbac.authorization.k8s.io
@@ -344,7 +344,7 @@ roleRef:
   name: linkerd-linkerd-viz-tap-admin
 subjects:
 - kind: ServiceAccount
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
 ---
 apiVersion: rbac.authorization.k8s.io/v1
@@ -352,7 +352,7 @@ kind: ClusterRole
 metadata:
   name: linkerd-linkerd-viz-web-api
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
 rules:
 - apiGroups: [""]
@@ -364,7 +364,7 @@ kind: ClusterRoleBinding
 metadata:
   name: linkerd-linkerd-viz-web-api
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
 roleRef:
   kind: ClusterRole
@@ -372,43 +372,43 @@ roleRef:
   apiGroup: rbac.authorization.k8s.io
 subjects:
 - kind: ServiceAccount
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
 ---
 kind: ServiceAccount
 apiVersion: v1
 metadata:
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
     namespace: linkerd-viz
 ---
 apiVersion: rbac.authorization.k8s.io/v1
 kind: RoleBinding
 metadata:
-  name: linkerd-viz-psp
+  name: viz-psp
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     namespace: linkerd-viz
 roleRef:
   kind: Role
-  name: linkerd-psp
+  name: psp
   apiGroup: rbac.authorization.k8s.io
 subjects:
 - kind: ServiceAccount
-  name: linkerd-tap
+  name: tap
   namespace: linkerd-viz
 - kind: ServiceAccount
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
 - kind: ServiceAccount
-  name: linkerd-grafana
+  name: grafana
   namespace: linkerd-viz
 - kind: ServiceAccount
-  name: linkerd-prometheus
+  name: prometheus
   namespace: linkerd-viz
 ---
 ###
@@ -417,17 +417,17 @@ subjects:
 kind: Service
 apiVersion: v1
 metadata:
-  name: linkerd-metrics-api
+  name: metrics-api
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: metrics-api
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
 spec:
   type: ClusterIP
   selector:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: metrics-api
   ports:
   - name: http
@@ -440,26 +440,26 @@ metadata:
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     app.kubernetes.io/name: metrics-api
     app.kubernetes.io/part-of: Linkerd
     app.kubernetes.io/version: dev-undefined
     component: metrics-api
-  name: linkerd-metrics-api
+  name: metrics-api
   namespace: linkerd-viz
 spec:
   replicas: 1
   selector:
     matchLabels:
-      linkerd.io/extension: linkerd-viz
+      linkerd.io/extension: viz
       component: metrics-api
   template:
     metadata:
       annotations:
-        checksum/config: 6827b2203b1cd90692d9dd6a973a2162e574dc9fd7b5b9e346ceac7e287204a6
+        checksum/config: 0d5b035f4d141dc2c13e1f89046de78fe0fb1208075734c3977400b866f2db51
         linkerd.io/created-by: linkerd/helm dev-undefined
       labels:
-        linkerd.io/extension: linkerd-viz
+        linkerd.io/extension: viz
         component: metrics-api
     spec:
       nodeSelector:
@@ -469,7 +469,7 @@ spec:
         - -controller-namespace=linkerd
         - -log-level=info
         - -cluster-domain=cluster.local
-        - -prometheus-url=http://linkerd-prometheus.linkerd-viz.svc.cluster.local:9090
+        - -prometheus-url=http://prometheus.linkerd-viz.svc.cluster.local:9090
         image: cr.l5d.io/linkerd/metrics-api:dev-undefined
         imagePullPolicy: IfNotPresent
         livenessProbe:
@@ -491,7 +491,7 @@ spec:
         resources:
         securityContext:
           runAsUser: 2103
-      serviceAccountName: linkerd-metrics-api
+      serviceAccountName: metrics-api
 ---
 ###
 ### Grafana
@@ -499,17 +499,17 @@ spec:
 kind: ConfigMap
 apiVersion: v1
 metadata:
-  name: linkerd-grafana-config
+  name: grafana-config
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: grafana
     namespace: linkerd-viz
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
 data:
   grafana.ini: |-
-    instance_name = linkerd-grafana
+    instance_name = grafana
     [server]
     root_url = %(protocol)s://%(domain)s:/grafana/
     [auth]
@@ -530,7 +530,7 @@ data:
       type: prometheus
       access: proxy
       orgId: 1
-      url: http://linkerd-prometheus.linkerd-viz.svc.cluster.local:9090
+      url: http://prometheus.linkerd-viz.svc.cluster.local:9090
       isDefault: true
       jsonData:
         timeInterval: "5s"
@@ -553,10 +553,10 @@ data:
 kind: Service
 apiVersion: v1
 metadata:
-  name: linkerd-grafana
+  name: grafana
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: grafana
     namespace: linkerd-viz
   annotations:
@@ -564,7 +564,7 @@ metadata:
 spec:
   type: ClusterIP
   selector:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: grafana
   ports:
   - name: http
@@ -577,19 +577,19 @@ metadata:
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     app.kubernetes.io/name: grafana
     app.kubernetes.io/part-of: Linkerd
     app.kubernetes.io/version: dev-undefined
     component: grafana
     namespace: linkerd-viz
-  name: linkerd-grafana
+  name: grafana
   namespace: linkerd-viz
 spec:
   replicas: 1
   selector:
     matchLabels:
-      linkerd.io/extension: linkerd-viz
+      linkerd.io/extension: viz
       component: grafana
       namespace: linkerd-viz
   template:
@@ -597,7 +597,7 @@ spec:
       annotations:
         linkerd.io/created-by: linkerd/helm dev-undefined
       labels:
-        linkerd.io/extension: linkerd-viz
+        linkerd.io/extension: viz
         component: grafana
         namespace: linkerd-viz
     spec:
@@ -635,7 +635,7 @@ spec:
         - mountPath: /etc/grafana
           name: grafana-config
           readOnly: true
-      serviceAccountName: linkerd-grafana
+      serviceAccountName: grafana
       volumes:
       - emptyDir: {}
         name: data
@@ -647,7 +647,7 @@ spec:
             path: provisioning/datasources/datasources.yaml
           - key: dashboards.yaml
             path: provisioning/dashboards/dashboards.yaml
-          name: linkerd-grafana-config
+          name: grafana-config
         name: grafana-config
 ---
 ###
@@ -656,10 +656,10 @@ spec:
 kind: ConfigMap
 apiVersion: v1
 metadata:
-  name: linkerd-prometheus-config
+  name: prometheus-config
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: prometheus
     namespace: linkerd-viz
   annotations:
@@ -801,10 +801,10 @@ data:
 kind: Service
 apiVersion: v1
 metadata:
-  name: linkerd-prometheus
+  name: prometheus
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: prometheus
     namespace: linkerd-viz
   annotations:
@@ -812,7 +812,7 @@ metadata:
 spec:
   type: ClusterIP
   selector:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: prometheus
   ports:
   - name: admin-http
@@ -825,19 +825,19 @@ metadata:
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     app.kubernetes.io/name: prometheus
     app.kubernetes.io/part-of: Linkerd
     app.kubernetes.io/version: dev-undefined
     component: prometheus
     namespace: linkerd-viz
-  name: linkerd-prometheus
+  name: prometheus
   namespace: linkerd-viz
 spec:
   replicas: 1
   selector:
     matchLabels:
-      linkerd.io/extension: linkerd-viz
+      linkerd.io/extension: viz
       component: prometheus
       namespace: linkerd-viz
   template:
@@ -845,7 +845,7 @@ spec:
       annotations:
         linkerd.io/created-by: linkerd/helm dev-undefined
       labels:
-        linkerd.io/extension: linkerd-viz
+        linkerd.io/extension: viz
         component: prometheus
         namespace: linkerd-viz
     spec:
@@ -889,12 +889,12 @@ spec:
           name: prometheus-config
           subPath: prometheus.yml
           readOnly: true
-      serviceAccountName: linkerd-prometheus
+      serviceAccountName: prometheus
       volumes:
       - name: data
         emptyDir: {}
       - configMap:
-          name: linkerd-prometheus-config
+          name: prometheus-config
         name: prometheus-config
 ---
 ###
@@ -903,10 +903,10 @@ spec:
 kind: Service
 apiVersion: v1
 metadata:
-  name: linkerd-tap
+  name: tap
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
     namespace: linkerd-viz
   annotations:
@@ -914,7 +914,7 @@ metadata:
 spec:
   type: ClusterIP
   selector:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
   ports:
   - name: grpc
@@ -930,28 +930,28 @@ metadata:
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     app.kubernetes.io/name: tap
     app.kubernetes.io/part-of: Linkerd
     app.kubernetes.io/version: dev-undefined
     component: tap
     namespace: linkerd-viz
-  name: linkerd-tap
+  name: tap
   namespace: linkerd-viz
 spec:
   replicas: 1
   selector:
     matchLabels:
-      linkerd.io/extension: linkerd-viz
+      linkerd.io/extension: viz
       component: tap
       namespace: linkerd-viz
   template:
     metadata:
       annotations:
-        checksum/config: bbc82b03e8c9fdc549e1ef5d3f795c07c21fb3b4c089351186f170b722689d86
+        checksum/config: 7f24ffe166f8d03a8eb039ecc551f3de9ea0ddcf1cf80a69966ce3713f043b23
         linkerd.io/created-by: linkerd/helm dev-undefined
       labels:
-        linkerd.io/extension: linkerd-viz
+        linkerd.io/extension: viz
         component: tap
         namespace: linkerd-viz
     spec:
@@ -990,12 +990,11 @@ spec:
         - mountPath: /var/run/linkerd/tls
           name: tls
           readOnly: true
-      serviceAccountName: linkerd-tap
+      serviceAccountName: tap
       volumes:
       - name: tls
         secret:
-          secretName: linkerd-tap-k8s-tls
-
+          secretName: tap-k8s-tls
 ---
 ###
 ### Tap Injector RBAC
@@ -1005,7 +1004,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-tap-injector
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
 rules:
 - apiGroups: [""]
   resources: ["namespaces"]
@@ -1016,7 +1015,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-tap-injector
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
 subjects:
 - kind: ServiceAccount
   name: tap-injector
@@ -1049,7 +1048,7 @@ kind: MutatingWebhookConfiguration
 metadata:
   name: linkerd-tap-injector-webhook-config
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
 webhooks:
 - name: tap-injector.linkerd.io
   clientConfig:
@@ -1077,7 +1076,7 @@ metadata:
   name: tap-injector
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap-injector
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
@@ -1096,7 +1095,7 @@ metadata:
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     app.kubernetes.io/name: tap-injector
     app.kubernetes.io/part-of: Linkerd
     component: tap-injector
@@ -1110,10 +1109,10 @@ spec:
   template:
     metadata:
       annotations:
-        checksum/config: 0120b5feafdef04a057ab39fd63ed315ebbcc2bfc0b0657e3007fa34ffb8b7e2
+        checksum/config: 5cb033e3116205dd502bee6f822717a8efe049d8ada2f02d1343a2c8b0cd3c93
         linkerd.io/created-by: linkerd/helm dev-undefined
       labels:
-        linkerd.io/extension: linkerd-viz
+        linkerd.io/extension: viz
         component: tap-injector
     spec:
       nodeSelector:
@@ -1121,7 +1120,7 @@ spec:
       containers:
       - args:
         - injector
-        - -tap-service-name=linkerd-tap.linkerd-viz.serviceaccount.identity.$(_l5d_ns).$(_l5d_trustdomain)
+        - -tap-service-name=tap.linkerd-viz.serviceaccount.identity.$(_l5d_ns).$(_l5d_trustdomain)
         - -log-level=info
         image: cr.l5d.io/linkerd/tap:dev-undefined
         imagePullPolicy: IfNotPresent
@@ -1160,10 +1159,10 @@ spec:
 kind: Service
 apiVersion: v1
 metadata:
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
     namespace: linkerd-viz
   annotations:
@@ -1171,7 +1170,7 @@ metadata:
 spec:
   type: ClusterIP
   selector:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
   ports:
   - name: http
@@ -1187,19 +1186,19 @@ metadata:
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     app.kubernetes.io/name: web
     app.kubernetes.io/part-of: Linkerd
     app.kubernetes.io/version: dev-undefined
     component: web
     namespace: linkerd-viz
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
 spec:
   replicas: 1
   selector:
     matchLabels:
-      linkerd.io/extension: linkerd-viz
+      linkerd.io/extension: viz
       component: web
       namespace: linkerd-viz
   template:
@@ -1207,7 +1206,7 @@ spec:
       annotations:
         linkerd.io/created-by: linkerd/helm dev-undefined
       labels:
-        linkerd.io/extension: linkerd-viz
+        linkerd.io/extension: viz
         component: web
         namespace: linkerd-viz
     spec:
@@ -1216,13 +1215,13 @@ spec:
       containers:
       - args:
         - -linkerd-controller-api-addr=linkerd-controller-api.linkerd.svc.cluster.local:8085
-        - -linkerd-metrics-api-addr=linkerd-metrics-api.linkerd-viz.svc.cluster.local:8085
+        - -linkerd-metrics-api-addr=metrics-api.linkerd-viz.svc.cluster.local:8085
         - -cluster-domain=cluster.local
-        - -grafana-addr=linkerd-grafana.linkerd-viz.svc.cluster.local:3000
+        - -grafana-addr=grafana.linkerd-viz.svc.cluster.local:3000
         - -controller-namespace=linkerd
         - -viz-namespace=linkerd-viz
         - -log-level=info
-        - -enforced-host=^(localhost|127\.0\.0\.1|linkerd-web\.linkerd-viz\.svc\.cluster\.local|linkerd-web\.linkerd-viz\.svc|\[::1\])(:\d+)?$
+        - -enforced-host=^(localhost|127\.0\.0\.1|web\.linkerd-viz\.svc\.cluster\.local|web\.linkerd-viz\.svc|\[::1\])(:\d+)?$
         image: cr.l5d.io/linkerd/web:dev-undefined
         imagePullPolicy: IfNotPresent
         livenessProbe:
@@ -1244,4 +1243,4 @@ spec:
         resources:
         securityContext:
           runAsUser: 2103
-      serviceAccountName: linkerd-web
+      serviceAccountName: web
diff --git a/viz/cmd/testdata/install_default_overrides.golden b/viz/cmd/testdata/install_default_overrides.golden
index 9c68d8440..9e91bc88e 100644
--- a/viz/cmd/testdata/install_default_overrides.golden
+++ b/viz/cmd/testdata/install_default_overrides.golden
@@ -7,7 +7,7 @@ apiVersion: v1
 metadata:
   name: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
   annotations:
     linkerd.io/inject: enabled
 ---
@@ -19,7 +19,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-metrics-api
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: metrics-api
 rules:
 - apiGroups: ["extensions", "apps"]
@@ -43,7 +43,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-metrics-api
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: metrics-api
 roleRef:
   apiGroup: rbac.authorization.k8s.io
@@ -51,16 +51,16 @@ roleRef:
   name: linkerd-linkerd-viz-metrics-api
 subjects:
 - kind: ServiceAccount
-  name: linkerd-metrics-api
+  name: metrics-api
   namespace: linkerd-viz
 ---
 kind: ServiceAccount
 apiVersion: v1
 metadata:
-  name: linkerd-metrics-api
+  name: metrics-api
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: metrics-api
 ---
 ###
@@ -69,10 +69,10 @@ metadata:
 kind: ServiceAccount
 apiVersion: v1
 metadata:
-  name: linkerd-grafana
+  name: grafana
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: grafana
     namespace: linkerd-viz
 ---
@@ -84,7 +84,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-prometheus
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: prometheus
 rules:
 - apiGroups: [""]
@@ -96,7 +96,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-prometheus
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: prometheus
 roleRef:
   apiGroup: rbac.authorization.k8s.io
@@ -104,16 +104,16 @@ roleRef:
   name: linkerd-linkerd-viz-prometheus
 subjects:
 - kind: ServiceAccount
-  name: linkerd-prometheus
+  name: prometheus
   namespace: linkerd-viz
 ---
 kind: ServiceAccount
 apiVersion: v1
 metadata:
-  name: linkerd-prometheus
+  name: prometheus
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: prometheus
     namespace: linkerd-viz
 ---
@@ -125,7 +125,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-tap
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
 rules:
 - apiGroups: [""]
@@ -143,7 +143,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-tap-admin
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
 rules:
 - apiGroups: ["tap.linkerd.io"]
@@ -155,7 +155,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-tap
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
 roleRef:
   apiGroup: rbac.authorization.k8s.io
@@ -163,7 +163,7 @@ roleRef:
   name: linkerd-linkerd-viz-tap
 subjects:
 - kind: ServiceAccount
-  name: linkerd-tap
+  name: tap
   namespace: linkerd-viz
 ---
 apiVersion: rbac.authorization.k8s.io/v1
@@ -171,7 +171,7 @@ kind: ClusterRoleBinding
 metadata:
   name: linkerd-linkerd-viz-tap-auth-delegator
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
 roleRef:
   apiGroup: rbac.authorization.k8s.io
@@ -179,16 +179,16 @@ roleRef:
   name: system:auth-delegator
 subjects:
 - kind: ServiceAccount
-  name: linkerd-tap
+  name: tap
   namespace: linkerd-viz
 ---
 kind: ServiceAccount
 apiVersion: v1
 metadata:
-  name: linkerd-tap
+  name: tap
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
     namespace: linkerd-viz
 ---
@@ -198,7 +198,7 @@ metadata:
   name: linkerd-linkerd-viz-tap-auth-reader
   namespace: kube-system
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
     namespace: linkerd-viz
 roleRef:
@@ -207,16 +207,16 @@ roleRef:
   name: extension-apiserver-authentication-reader
 subjects:
 - kind: ServiceAccount
-  name: linkerd-tap
+  name: tap
   namespace: linkerd-viz
 ---
 kind: Secret
 apiVersion: v1
 metadata:
-  name: linkerd-tap-k8s-tls
+  name: tap-k8s-tls
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
     namespace: linkerd-viz
   annotations:
@@ -231,7 +231,7 @@ kind: APIService
 metadata:
   name: v1alpha1.tap.linkerd.io
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
 spec:
   group: tap.linkerd.io
@@ -239,7 +239,7 @@ spec:
   groupPriorityMinimum: 1000
   versionPriority: 100
   service:
-    name: linkerd-tap
+    name: tap
     namespace: linkerd-viz
   caBundle: dGVzdC10YXAtY2EtYnVuZGxl
 ---
@@ -249,10 +249,10 @@ spec:
 apiVersion: rbac.authorization.k8s.io/v1
 kind: Role
 metadata:
-  name: linkerd-web
+  name: web
   namespace: linkerd
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
     namespace: linkerd
 rules:
@@ -273,19 +273,19 @@ rules:
 apiVersion: rbac.authorization.k8s.io/v1
 kind: RoleBinding
 metadata:
-  name: linkerd-web
+  name: web
   namespace: linkerd
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
     namespace: linkerd
 roleRef:
   kind: Role
-  name: linkerd-web
+  name: web
   apiGroup: rbac.authorization.k8s.io
 subjects:
 - kind: ServiceAccount
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
 ---
 apiVersion: rbac.authorization.k8s.io/v1
@@ -293,7 +293,7 @@ kind: ClusterRole
 metadata:
   name: linkerd-linkerd-viz-web-check
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
 rules:
 - apiGroups: ["rbac.authorization.k8s.io"]
@@ -320,7 +320,7 @@ kind: ClusterRoleBinding
 metadata:
   name: linkerd-linkerd-viz-web-check
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
 roleRef:
   kind: ClusterRole
@@ -328,7 +328,7 @@ roleRef:
   apiGroup: rbac.authorization.k8s.io
 subjects:
 - kind: ServiceAccount
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
 ---
 kind: ClusterRoleBinding
@@ -336,7 +336,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-web-admin
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
 roleRef:
   apiGroup: rbac.authorization.k8s.io
@@ -344,7 +344,7 @@ roleRef:
   name: linkerd-linkerd-viz-tap-admin
 subjects:
 - kind: ServiceAccount
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
 ---
 apiVersion: rbac.authorization.k8s.io/v1
@@ -352,7 +352,7 @@ kind: ClusterRole
 metadata:
   name: linkerd-linkerd-viz-web-api
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
 rules:
 - apiGroups: [""]
@@ -364,7 +364,7 @@ kind: ClusterRoleBinding
 metadata:
   name: linkerd-linkerd-viz-web-api
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
 roleRef:
   kind: ClusterRole
@@ -372,43 +372,43 @@ roleRef:
   apiGroup: rbac.authorization.k8s.io
 subjects:
 - kind: ServiceAccount
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
 ---
 kind: ServiceAccount
 apiVersion: v1
 metadata:
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
     namespace: linkerd-viz
 ---
 apiVersion: rbac.authorization.k8s.io/v1
 kind: RoleBinding
 metadata:
-  name: linkerd-viz-psp
+  name: viz-psp
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     namespace: linkerd-viz
 roleRef:
   kind: Role
-  name: linkerd-psp
+  name: psp
   apiGroup: rbac.authorization.k8s.io
 subjects:
 - kind: ServiceAccount
-  name: linkerd-tap
+  name: tap
   namespace: linkerd-viz
 - kind: ServiceAccount
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
 - kind: ServiceAccount
-  name: linkerd-grafana
+  name: grafana
   namespace: linkerd-viz
 - kind: ServiceAccount
-  name: linkerd-prometheus
+  name: prometheus
   namespace: linkerd-viz
 ---
 ###
@@ -417,17 +417,17 @@ subjects:
 kind: Service
 apiVersion: v1
 metadata:
-  name: linkerd-metrics-api
+  name: metrics-api
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: metrics-api
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
 spec:
   type: ClusterIP
   selector:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: metrics-api
   ports:
   - name: http
@@ -440,26 +440,26 @@ metadata:
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     app.kubernetes.io/name: metrics-api
     app.kubernetes.io/part-of: Linkerd
     app.kubernetes.io/version: dev-undefined
     component: metrics-api
-  name: linkerd-metrics-api
+  name: metrics-api
   namespace: linkerd-viz
 spec:
   replicas: 1
   selector:
     matchLabels:
-      linkerd.io/extension: linkerd-viz
+      linkerd.io/extension: viz
       component: metrics-api
   template:
     metadata:
       annotations:
-        checksum/config: 6827b2203b1cd90692d9dd6a973a2162e574dc9fd7b5b9e346ceac7e287204a6
+        checksum/config: 0d5b035f4d141dc2c13e1f89046de78fe0fb1208075734c3977400b866f2db51
         linkerd.io/created-by: linkerd/helm dev-undefined
       labels:
-        linkerd.io/extension: linkerd-viz
+        linkerd.io/extension: viz
         component: metrics-api
     spec:
       nodeSelector:
@@ -469,7 +469,7 @@ spec:
         - -controller-namespace=linkerd
         - -log-level=debug
         - -cluster-domain=cluster.local
-        - -prometheus-url=http://linkerd-prometheus.linkerd-viz.svc.cluster.local:9090
+        - -prometheus-url=http://prometheus.linkerd-viz.svc.cluster.local:9090
         image: gcr.io/linkerd/metrics-api:dev-undefined
         imagePullPolicy: IfNotPresent
         livenessProbe:
@@ -491,7 +491,7 @@ spec:
         resources:
         securityContext:
           runAsUser: 1234
-      serviceAccountName: linkerd-metrics-api
+      serviceAccountName: metrics-api
 ---
 ###
 ### Grafana
@@ -499,17 +499,17 @@ spec:
 kind: ConfigMap
 apiVersion: v1
 metadata:
-  name: linkerd-grafana-config
+  name: grafana-config
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: grafana
     namespace: linkerd-viz
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
 data:
   grafana.ini: |-
-    instance_name = linkerd-grafana
+    instance_name = grafana
     [server]
     root_url = %(protocol)s://%(domain)s:/grafana/
     [auth]
@@ -530,7 +530,7 @@ data:
       type: prometheus
       access: proxy
       orgId: 1
-      url: http://linkerd-prometheus.linkerd-viz.svc.cluster.local:9090
+      url: http://prometheus.linkerd-viz.svc.cluster.local:9090
       isDefault: true
       jsonData:
         timeInterval: "5s"
@@ -553,10 +553,10 @@ data:
 kind: Service
 apiVersion: v1
 metadata:
-  name: linkerd-grafana
+  name: grafana
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: grafana
     namespace: linkerd-viz
   annotations:
@@ -564,7 +564,7 @@ metadata:
 spec:
   type: ClusterIP
   selector:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: grafana
   ports:
   - name: http
@@ -577,19 +577,19 @@ metadata:
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     app.kubernetes.io/name: grafana
     app.kubernetes.io/part-of: Linkerd
     app.kubernetes.io/version: dev-undefined
     component: grafana
     namespace: linkerd-viz
-  name: linkerd-grafana
+  name: grafana
   namespace: linkerd-viz
 spec:
   replicas: 1
   selector:
     matchLabels:
-      linkerd.io/extension: linkerd-viz
+      linkerd.io/extension: viz
       component: grafana
       namespace: linkerd-viz
   template:
@@ -597,7 +597,7 @@ spec:
       annotations:
         linkerd.io/created-by: linkerd/helm dev-undefined
       labels:
-        linkerd.io/extension: linkerd-viz
+        linkerd.io/extension: viz
         component: grafana
         namespace: linkerd-viz
     spec:
@@ -635,7 +635,7 @@ spec:
         - mountPath: /etc/grafana
           name: grafana-config
           readOnly: true
-      serviceAccountName: linkerd-grafana
+      serviceAccountName: grafana
       volumes:
       - emptyDir: {}
         name: data
@@ -647,7 +647,7 @@ spec:
             path: provisioning/datasources/datasources.yaml
           - key: dashboards.yaml
             path: provisioning/dashboards/dashboards.yaml
-          name: linkerd-grafana-config
+          name: grafana-config
         name: grafana-config
 ---
 ###
@@ -656,10 +656,10 @@ spec:
 kind: ConfigMap
 apiVersion: v1
 metadata:
-  name: linkerd-prometheus-config
+  name: prometheus-config
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: prometheus
     namespace: linkerd-viz
   annotations:
@@ -801,10 +801,10 @@ data:
 kind: Service
 apiVersion: v1
 metadata:
-  name: linkerd-prometheus
+  name: prometheus
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: prometheus
     namespace: linkerd-viz
   annotations:
@@ -812,7 +812,7 @@ metadata:
 spec:
   type: ClusterIP
   selector:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: prometheus
   ports:
   - name: admin-http
@@ -825,19 +825,19 @@ metadata:
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     app.kubernetes.io/name: prometheus
     app.kubernetes.io/part-of: Linkerd
     app.kubernetes.io/version: dev-undefined
     component: prometheus
     namespace: linkerd-viz
-  name: linkerd-prometheus
+  name: prometheus
   namespace: linkerd-viz
 spec:
   replicas: 1
   selector:
     matchLabels:
-      linkerd.io/extension: linkerd-viz
+      linkerd.io/extension: viz
       component: prometheus
       namespace: linkerd-viz
   template:
@@ -845,7 +845,7 @@ spec:
       annotations:
         linkerd.io/created-by: linkerd/helm dev-undefined
       labels:
-        linkerd.io/extension: linkerd-viz
+        linkerd.io/extension: viz
         component: prometheus
         namespace: linkerd-viz
     spec:
@@ -889,12 +889,12 @@ spec:
           name: prometheus-config
           subPath: prometheus.yml
           readOnly: true
-      serviceAccountName: linkerd-prometheus
+      serviceAccountName: prometheus
       volumes:
       - name: data
         emptyDir: {}
       - configMap:
-          name: linkerd-prometheus-config
+          name: prometheus-config
         name: prometheus-config
 ---
 ###
@@ -903,10 +903,10 @@ spec:
 kind: Service
 apiVersion: v1
 metadata:
-  name: linkerd-tap
+  name: tap
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
     namespace: linkerd-viz
   annotations:
@@ -914,7 +914,7 @@ metadata:
 spec:
   type: ClusterIP
   selector:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
   ports:
   - name: grpc
@@ -930,28 +930,28 @@ metadata:
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     app.kubernetes.io/name: tap
     app.kubernetes.io/part-of: Linkerd
     app.kubernetes.io/version: dev-undefined
     component: tap
     namespace: linkerd-viz
-  name: linkerd-tap
+  name: tap
   namespace: linkerd-viz
 spec:
   replicas: 1
   selector:
     matchLabels:
-      linkerd.io/extension: linkerd-viz
+      linkerd.io/extension: viz
       component: tap
       namespace: linkerd-viz
   template:
     metadata:
       annotations:
-        checksum/config: bbc82b03e8c9fdc549e1ef5d3f795c07c21fb3b4c089351186f170b722689d86
+        checksum/config: 7f24ffe166f8d03a8eb039ecc551f3de9ea0ddcf1cf80a69966ce3713f043b23
         linkerd.io/created-by: linkerd/helm dev-undefined
       labels:
-        linkerd.io/extension: linkerd-viz
+        linkerd.io/extension: viz
         component: tap
         namespace: linkerd-viz
     spec:
@@ -990,12 +990,11 @@ spec:
         - mountPath: /var/run/linkerd/tls
           name: tls
           readOnly: true
-      serviceAccountName: linkerd-tap
+      serviceAccountName: tap
       volumes:
       - name: tls
         secret:
-          secretName: linkerd-tap-k8s-tls
-
+          secretName: tap-k8s-tls
 ---
 ###
 ### Tap Injector RBAC
@@ -1005,7 +1004,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-tap-injector
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
 rules:
 - apiGroups: [""]
   resources: ["namespaces"]
@@ -1016,7 +1015,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-tap-injector
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
 subjects:
 - kind: ServiceAccount
   name: tap-injector
@@ -1049,7 +1048,7 @@ kind: MutatingWebhookConfiguration
 metadata:
   name: linkerd-tap-injector-webhook-config
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
 webhooks:
 - name: tap-injector.linkerd.io
   clientConfig:
@@ -1077,7 +1076,7 @@ metadata:
   name: tap-injector
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap-injector
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
@@ -1096,7 +1095,7 @@ metadata:
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     app.kubernetes.io/name: tap-injector
     app.kubernetes.io/part-of: Linkerd
     component: tap-injector
@@ -1110,10 +1109,10 @@ spec:
   template:
     metadata:
       annotations:
-        checksum/config: 0120b5feafdef04a057ab39fd63ed315ebbcc2bfc0b0657e3007fa34ffb8b7e2
+        checksum/config: 5cb033e3116205dd502bee6f822717a8efe049d8ada2f02d1343a2c8b0cd3c93
         linkerd.io/created-by: linkerd/helm dev-undefined
       labels:
-        linkerd.io/extension: linkerd-viz
+        linkerd.io/extension: viz
         component: tap-injector
     spec:
       nodeSelector:
@@ -1121,7 +1120,7 @@ spec:
       containers:
       - args:
         - injector
-        - -tap-service-name=linkerd-tap.linkerd-viz.serviceaccount.identity.$(_l5d_ns).$(_l5d_trustdomain)
+        - -tap-service-name=tap.linkerd-viz.serviceaccount.identity.$(_l5d_ns).$(_l5d_trustdomain)
         - -log-level=debug
         image: gcr.io/linkerd/tap:dev-undefined
         imagePullPolicy: IfNotPresent
@@ -1160,10 +1159,10 @@ spec:
 kind: Service
 apiVersion: v1
 metadata:
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
     namespace: linkerd-viz
   annotations:
@@ -1171,7 +1170,7 @@ metadata:
 spec:
   type: ClusterIP
   selector:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
   ports:
   - name: http
@@ -1187,19 +1186,19 @@ metadata:
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     app.kubernetes.io/name: web
     app.kubernetes.io/part-of: Linkerd
     app.kubernetes.io/version: dev-undefined
     component: web
     namespace: linkerd-viz
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
 spec:
   replicas: 1
   selector:
     matchLabels:
-      linkerd.io/extension: linkerd-viz
+      linkerd.io/extension: viz
       component: web
       namespace: linkerd-viz
   template:
@@ -1207,7 +1206,7 @@ spec:
       annotations:
         linkerd.io/created-by: linkerd/helm dev-undefined
       labels:
-        linkerd.io/extension: linkerd-viz
+        linkerd.io/extension: viz
         component: web
         namespace: linkerd-viz
     spec:
@@ -1216,13 +1215,13 @@ spec:
       containers:
       - args:
         - -linkerd-controller-api-addr=linkerd-controller-api.linkerd.svc.cluster.local:8085
-        - -linkerd-metrics-api-addr=linkerd-metrics-api.linkerd-viz.svc.cluster.local:8085
+        - -linkerd-metrics-api-addr=metrics-api.linkerd-viz.svc.cluster.local:8085
         - -cluster-domain=cluster.local
-        - -grafana-addr=linkerd-grafana.linkerd-viz.svc.cluster.local:3000
+        - -grafana-addr=grafana.linkerd-viz.svc.cluster.local:3000
         - -controller-namespace=linkerd
         - -viz-namespace=linkerd-viz
         - -log-level=debug
-        - -enforced-host=^(localhost|127\.0\.0\.1|linkerd-web\.linkerd-viz\.svc\.cluster\.local|linkerd-web\.linkerd-viz\.svc|\[::1\])(:\d+)?$
+        - -enforced-host=^(localhost|127\.0\.0\.1|web\.linkerd-viz\.svc\.cluster\.local|web\.linkerd-viz\.svc|\[::1\])(:\d+)?$
         image: gcr.io/linkerd/web:dev-undefined
         imagePullPolicy: IfNotPresent
         livenessProbe:
@@ -1244,4 +1243,4 @@ spec:
         resources:
         securityContext:
           runAsUser: 1234
-      serviceAccountName: linkerd-web
+      serviceAccountName: web
diff --git a/viz/cmd/testdata/install_grafana_disabled.golden b/viz/cmd/testdata/install_grafana_disabled.golden
index 4b018e03d..0527575d0 100644
--- a/viz/cmd/testdata/install_grafana_disabled.golden
+++ b/viz/cmd/testdata/install_grafana_disabled.golden
@@ -7,7 +7,7 @@ apiVersion: v1
 metadata:
   name: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
   annotations:
     linkerd.io/inject: enabled
 ---
@@ -19,7 +19,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-metrics-api
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: metrics-api
 rules:
 - apiGroups: ["extensions", "apps"]
@@ -43,7 +43,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-metrics-api
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: metrics-api
 roleRef:
   apiGroup: rbac.authorization.k8s.io
@@ -51,16 +51,16 @@ roleRef:
   name: linkerd-linkerd-viz-metrics-api
 subjects:
 - kind: ServiceAccount
-  name: linkerd-metrics-api
+  name: metrics-api
   namespace: linkerd-viz
 ---
 kind: ServiceAccount
 apiVersion: v1
 metadata:
-  name: linkerd-metrics-api
+  name: metrics-api
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: metrics-api
 ---
 ###
@@ -71,7 +71,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-prometheus
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: prometheus
 rules:
 - apiGroups: [""]
@@ -83,7 +83,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-prometheus
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: prometheus
 roleRef:
   apiGroup: rbac.authorization.k8s.io
@@ -91,16 +91,16 @@ roleRef:
   name: linkerd-linkerd-viz-prometheus
 subjects:
 - kind: ServiceAccount
-  name: linkerd-prometheus
+  name: prometheus
   namespace: linkerd-viz
 ---
 kind: ServiceAccount
 apiVersion: v1
 metadata:
-  name: linkerd-prometheus
+  name: prometheus
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: prometheus
     namespace: linkerd-viz
 ---
@@ -112,7 +112,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-tap
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
 rules:
 - apiGroups: [""]
@@ -130,7 +130,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-tap-admin
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
 rules:
 - apiGroups: ["tap.linkerd.io"]
@@ -142,7 +142,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-tap
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
 roleRef:
   apiGroup: rbac.authorization.k8s.io
@@ -150,7 +150,7 @@ roleRef:
   name: linkerd-linkerd-viz-tap
 subjects:
 - kind: ServiceAccount
-  name: linkerd-tap
+  name: tap
   namespace: linkerd-viz
 ---
 apiVersion: rbac.authorization.k8s.io/v1
@@ -158,7 +158,7 @@ kind: ClusterRoleBinding
 metadata:
   name: linkerd-linkerd-viz-tap-auth-delegator
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
 roleRef:
   apiGroup: rbac.authorization.k8s.io
@@ -166,16 +166,16 @@ roleRef:
   name: system:auth-delegator
 subjects:
 - kind: ServiceAccount
-  name: linkerd-tap
+  name: tap
   namespace: linkerd-viz
 ---
 kind: ServiceAccount
 apiVersion: v1
 metadata:
-  name: linkerd-tap
+  name: tap
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
     namespace: linkerd-viz
 ---
@@ -185,7 +185,7 @@ metadata:
   name: linkerd-linkerd-viz-tap-auth-reader
   namespace: kube-system
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
     namespace: linkerd-viz
 roleRef:
@@ -194,16 +194,16 @@ roleRef:
   name: extension-apiserver-authentication-reader
 subjects:
 - kind: ServiceAccount
-  name: linkerd-tap
+  name: tap
   namespace: linkerd-viz
 ---
 kind: Secret
 apiVersion: v1
 metadata:
-  name: linkerd-tap-k8s-tls
+  name: tap-k8s-tls
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
     namespace: linkerd-viz
   annotations:
@@ -218,7 +218,7 @@ kind: APIService
 metadata:
   name: v1alpha1.tap.linkerd.io
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
 spec:
   group: tap.linkerd.io
@@ -226,7 +226,7 @@ spec:
   groupPriorityMinimum: 1000
   versionPriority: 100
   service:
-    name: linkerd-tap
+    name: tap
     namespace: linkerd-viz
   caBundle: dGVzdC10YXAtY2EtYnVuZGxl
 ---
@@ -236,10 +236,10 @@ spec:
 apiVersion: rbac.authorization.k8s.io/v1
 kind: Role
 metadata:
-  name: linkerd-web
+  name: web
   namespace: linkerd
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
     namespace: linkerd
 rules:
@@ -260,19 +260,19 @@ rules:
 apiVersion: rbac.authorization.k8s.io/v1
 kind: RoleBinding
 metadata:
-  name: linkerd-web
+  name: web
   namespace: linkerd
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
     namespace: linkerd
 roleRef:
   kind: Role
-  name: linkerd-web
+  name: web
   apiGroup: rbac.authorization.k8s.io
 subjects:
 - kind: ServiceAccount
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
 ---
 apiVersion: rbac.authorization.k8s.io/v1
@@ -280,7 +280,7 @@ kind: ClusterRole
 metadata:
   name: linkerd-linkerd-viz-web-check
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
 rules:
 - apiGroups: ["rbac.authorization.k8s.io"]
@@ -307,7 +307,7 @@ kind: ClusterRoleBinding
 metadata:
   name: linkerd-linkerd-viz-web-check
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
 roleRef:
   kind: ClusterRole
@@ -315,7 +315,7 @@ roleRef:
   apiGroup: rbac.authorization.k8s.io
 subjects:
 - kind: ServiceAccount
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
 ---
 kind: ClusterRoleBinding
@@ -323,7 +323,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-web-admin
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
 roleRef:
   apiGroup: rbac.authorization.k8s.io
@@ -331,7 +331,7 @@ roleRef:
   name: linkerd-linkerd-viz-tap-admin
 subjects:
 - kind: ServiceAccount
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
 ---
 apiVersion: rbac.authorization.k8s.io/v1
@@ -339,7 +339,7 @@ kind: ClusterRole
 metadata:
   name: linkerd-linkerd-viz-web-api
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
 rules:
 - apiGroups: [""]
@@ -351,7 +351,7 @@ kind: ClusterRoleBinding
 metadata:
   name: linkerd-linkerd-viz-web-api
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
 roleRef:
   kind: ClusterRole
@@ -359,40 +359,40 @@ roleRef:
   apiGroup: rbac.authorization.k8s.io
 subjects:
 - kind: ServiceAccount
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
 ---
 kind: ServiceAccount
 apiVersion: v1
 metadata:
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
     namespace: linkerd-viz
 ---
 apiVersion: rbac.authorization.k8s.io/v1
 kind: RoleBinding
 metadata:
-  name: linkerd-viz-psp
+  name: viz-psp
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     namespace: linkerd-viz
 roleRef:
   kind: Role
-  name: linkerd-psp
+  name: psp
   apiGroup: rbac.authorization.k8s.io
 subjects:
 - kind: ServiceAccount
-  name: linkerd-tap
+  name: tap
   namespace: linkerd-viz
 - kind: ServiceAccount
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
 - kind: ServiceAccount
-  name: linkerd-prometheus
+  name: prometheus
   namespace: linkerd-viz
 ---
 ###
@@ -401,17 +401,17 @@ subjects:
 kind: Service
 apiVersion: v1
 metadata:
-  name: linkerd-metrics-api
+  name: metrics-api
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: metrics-api
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
 spec:
   type: ClusterIP
   selector:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: metrics-api
   ports:
   - name: http
@@ -424,26 +424,26 @@ metadata:
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     app.kubernetes.io/name: metrics-api
     app.kubernetes.io/part-of: Linkerd
     app.kubernetes.io/version: dev-undefined
     component: metrics-api
-  name: linkerd-metrics-api
+  name: metrics-api
   namespace: linkerd-viz
 spec:
   replicas: 1
   selector:
     matchLabels:
-      linkerd.io/extension: linkerd-viz
+      linkerd.io/extension: viz
       component: metrics-api
   template:
     metadata:
       annotations:
-        checksum/config: 6827b2203b1cd90692d9dd6a973a2162e574dc9fd7b5b9e346ceac7e287204a6
+        checksum/config: 0d5b035f4d141dc2c13e1f89046de78fe0fb1208075734c3977400b866f2db51
         linkerd.io/created-by: linkerd/helm dev-undefined
       labels:
-        linkerd.io/extension: linkerd-viz
+        linkerd.io/extension: viz
         component: metrics-api
     spec:
       nodeSelector:
@@ -453,7 +453,7 @@ spec:
         - -controller-namespace=linkerd
         - -log-level=info
         - -cluster-domain=cluster.local
-        - -prometheus-url=http://linkerd-prometheus.linkerd-viz.svc.cluster.local:9090
+        - -prometheus-url=http://prometheus.linkerd-viz.svc.cluster.local:9090
         image: cr.l5d.io/linkerd/metrics-api:dev-undefined
         imagePullPolicy: IfNotPresent
         livenessProbe:
@@ -475,7 +475,7 @@ spec:
         resources:
         securityContext:
           runAsUser: 2103
-      serviceAccountName: linkerd-metrics-api
+      serviceAccountName: metrics-api
 ---
 ###
 ### Prometheus
@@ -483,10 +483,10 @@ spec:
 kind: ConfigMap
 apiVersion: v1
 metadata:
-  name: linkerd-prometheus-config
+  name: prometheus-config
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: prometheus
     namespace: linkerd-viz
   annotations:
@@ -619,10 +619,10 @@ data:
 kind: Service
 apiVersion: v1
 metadata:
-  name: linkerd-prometheus
+  name: prometheus
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: prometheus
     namespace: linkerd-viz
   annotations:
@@ -630,7 +630,7 @@ metadata:
 spec:
   type: ClusterIP
   selector:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: prometheus
   ports:
   - name: admin-http
@@ -643,19 +643,19 @@ metadata:
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     app.kubernetes.io/name: prometheus
     app.kubernetes.io/part-of: Linkerd
     app.kubernetes.io/version: dev-undefined
     component: prometheus
     namespace: linkerd-viz
-  name: linkerd-prometheus
+  name: prometheus
   namespace: linkerd-viz
 spec:
   replicas: 1
   selector:
     matchLabels:
-      linkerd.io/extension: linkerd-viz
+      linkerd.io/extension: viz
       component: prometheus
       namespace: linkerd-viz
   template:
@@ -663,7 +663,7 @@ spec:
       annotations:
         linkerd.io/created-by: linkerd/helm dev-undefined
       labels:
-        linkerd.io/extension: linkerd-viz
+        linkerd.io/extension: viz
         component: prometheus
         namespace: linkerd-viz
     spec:
@@ -707,12 +707,12 @@ spec:
           name: prometheus-config
           subPath: prometheus.yml
           readOnly: true
-      serviceAccountName: linkerd-prometheus
+      serviceAccountName: prometheus
       volumes:
       - name: data
         emptyDir: {}
       - configMap:
-          name: linkerd-prometheus-config
+          name: prometheus-config
         name: prometheus-config
 ---
 ###
@@ -721,10 +721,10 @@ spec:
 kind: Service
 apiVersion: v1
 metadata:
-  name: linkerd-tap
+  name: tap
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
     namespace: linkerd-viz
   annotations:
@@ -732,7 +732,7 @@ metadata:
 spec:
   type: ClusterIP
   selector:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
   ports:
   - name: grpc
@@ -748,28 +748,28 @@ metadata:
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     app.kubernetes.io/name: tap
     app.kubernetes.io/part-of: Linkerd
     app.kubernetes.io/version: dev-undefined
     component: tap
     namespace: linkerd-viz
-  name: linkerd-tap
+  name: tap
   namespace: linkerd-viz
 spec:
   replicas: 1
   selector:
     matchLabels:
-      linkerd.io/extension: linkerd-viz
+      linkerd.io/extension: viz
       component: tap
       namespace: linkerd-viz
   template:
     metadata:
       annotations:
-        checksum/config: bbc82b03e8c9fdc549e1ef5d3f795c07c21fb3b4c089351186f170b722689d86
+        checksum/config: 7f24ffe166f8d03a8eb039ecc551f3de9ea0ddcf1cf80a69966ce3713f043b23
         linkerd.io/created-by: linkerd/helm dev-undefined
       labels:
-        linkerd.io/extension: linkerd-viz
+        linkerd.io/extension: viz
         component: tap
         namespace: linkerd-viz
     spec:
@@ -808,12 +808,11 @@ spec:
         - mountPath: /var/run/linkerd/tls
           name: tls
           readOnly: true
-      serviceAccountName: linkerd-tap
+      serviceAccountName: tap
       volumes:
       - name: tls
         secret:
-          secretName: linkerd-tap-k8s-tls
-
+          secretName: tap-k8s-tls
 ---
 ###
 ### Tap Injector RBAC
@@ -823,7 +822,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-tap-injector
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
 rules:
 - apiGroups: [""]
   resources: ["namespaces"]
@@ -834,7 +833,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-tap-injector
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
 subjects:
 - kind: ServiceAccount
   name: tap-injector
@@ -867,7 +866,7 @@ kind: MutatingWebhookConfiguration
 metadata:
   name: linkerd-tap-injector-webhook-config
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
 webhooks:
 - name: tap-injector.linkerd.io
   clientConfig:
@@ -895,7 +894,7 @@ metadata:
   name: tap-injector
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap-injector
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
@@ -914,7 +913,7 @@ metadata:
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     app.kubernetes.io/name: tap-injector
     app.kubernetes.io/part-of: Linkerd
     component: tap-injector
@@ -928,10 +927,10 @@ spec:
   template:
     metadata:
       annotations:
-        checksum/config: 0120b5feafdef04a057ab39fd63ed315ebbcc2bfc0b0657e3007fa34ffb8b7e2
+        checksum/config: 5cb033e3116205dd502bee6f822717a8efe049d8ada2f02d1343a2c8b0cd3c93
         linkerd.io/created-by: linkerd/helm dev-undefined
       labels:
-        linkerd.io/extension: linkerd-viz
+        linkerd.io/extension: viz
         component: tap-injector
     spec:
       nodeSelector:
@@ -939,7 +938,7 @@ spec:
       containers:
       - args:
         - injector
-        - -tap-service-name=linkerd-tap.linkerd-viz.serviceaccount.identity.$(_l5d_ns).$(_l5d_trustdomain)
+        - -tap-service-name=tap.linkerd-viz.serviceaccount.identity.$(_l5d_ns).$(_l5d_trustdomain)
         - -log-level=info
         image: cr.l5d.io/linkerd/tap:dev-undefined
         imagePullPolicy: IfNotPresent
@@ -978,10 +977,10 @@ spec:
 kind: Service
 apiVersion: v1
 metadata:
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
     namespace: linkerd-viz
   annotations:
@@ -989,7 +988,7 @@ metadata:
 spec:
   type: ClusterIP
   selector:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
   ports:
   - name: http
@@ -1005,19 +1004,19 @@ metadata:
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     app.kubernetes.io/name: web
     app.kubernetes.io/part-of: Linkerd
     app.kubernetes.io/version: dev-undefined
     component: web
     namespace: linkerd-viz
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
 spec:
   replicas: 1
   selector:
     matchLabels:
-      linkerd.io/extension: linkerd-viz
+      linkerd.io/extension: viz
       component: web
       namespace: linkerd-viz
   template:
@@ -1025,7 +1024,7 @@ spec:
       annotations:
         linkerd.io/created-by: linkerd/helm dev-undefined
       labels:
-        linkerd.io/extension: linkerd-viz
+        linkerd.io/extension: viz
         component: web
         namespace: linkerd-viz
     spec:
@@ -1034,13 +1033,13 @@ spec:
       containers:
       - args:
         - -linkerd-controller-api-addr=linkerd-controller-api.linkerd.svc.cluster.local:8085
-        - -linkerd-metrics-api-addr=linkerd-metrics-api.linkerd-viz.svc.cluster.local:8085
+        - -linkerd-metrics-api-addr=metrics-api.linkerd-viz.svc.cluster.local:8085
         - -cluster-domain=cluster.local
         - -grafana-addr=external-grafana.com
         - -controller-namespace=linkerd
         - -viz-namespace=linkerd-viz
         - -log-level=info
-        - -enforced-host=^(localhost|127\.0\.0\.1|linkerd-web\.linkerd-viz\.svc\.cluster\.local|linkerd-web\.linkerd-viz\.svc|\[::1\])(:\d+)?$
+        - -enforced-host=^(localhost|127\.0\.0\.1|web\.linkerd-viz\.svc\.cluster\.local|web\.linkerd-viz\.svc|\[::1\])(:\d+)?$
         image: cr.l5d.io/linkerd/web:dev-undefined
         imagePullPolicy: IfNotPresent
         livenessProbe:
@@ -1062,4 +1061,4 @@ spec:
         resources:
         securityContext:
           runAsUser: 2103
-      serviceAccountName: linkerd-web
+      serviceAccountName: web
diff --git a/viz/cmd/testdata/install_prometheus_disabled.golden b/viz/cmd/testdata/install_prometheus_disabled.golden
index 0c72418ba..ef88872ea 100644
--- a/viz/cmd/testdata/install_prometheus_disabled.golden
+++ b/viz/cmd/testdata/install_prometheus_disabled.golden
@@ -7,7 +7,7 @@ apiVersion: v1
 metadata:
   name: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
   annotations:
     viz.linkerd.io/external-prometheus: external-prom.com
     linkerd.io/inject: enabled
@@ -20,7 +20,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-metrics-api
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: metrics-api
 rules:
 - apiGroups: ["extensions", "apps"]
@@ -44,7 +44,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-metrics-api
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: metrics-api
 roleRef:
   apiGroup: rbac.authorization.k8s.io
@@ -52,16 +52,16 @@ roleRef:
   name: linkerd-linkerd-viz-metrics-api
 subjects:
 - kind: ServiceAccount
-  name: linkerd-metrics-api
+  name: metrics-api
   namespace: linkerd-viz
 ---
 kind: ServiceAccount
 apiVersion: v1
 metadata:
-  name: linkerd-metrics-api
+  name: metrics-api
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: metrics-api
 ---
 ###
@@ -70,10 +70,10 @@ metadata:
 kind: ServiceAccount
 apiVersion: v1
 metadata:
-  name: linkerd-grafana
+  name: grafana
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: grafana
     namespace: linkerd-viz
 ---
@@ -85,7 +85,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-tap
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
 rules:
 - apiGroups: [""]
@@ -103,7 +103,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-tap-admin
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
 rules:
 - apiGroups: ["tap.linkerd.io"]
@@ -115,7 +115,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-tap
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
 roleRef:
   apiGroup: rbac.authorization.k8s.io
@@ -123,7 +123,7 @@ roleRef:
   name: linkerd-linkerd-viz-tap
 subjects:
 - kind: ServiceAccount
-  name: linkerd-tap
+  name: tap
   namespace: linkerd-viz
 ---
 apiVersion: rbac.authorization.k8s.io/v1
@@ -131,7 +131,7 @@ kind: ClusterRoleBinding
 metadata:
   name: linkerd-linkerd-viz-tap-auth-delegator
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
 roleRef:
   apiGroup: rbac.authorization.k8s.io
@@ -139,16 +139,16 @@ roleRef:
   name: system:auth-delegator
 subjects:
 - kind: ServiceAccount
-  name: linkerd-tap
+  name: tap
   namespace: linkerd-viz
 ---
 kind: ServiceAccount
 apiVersion: v1
 metadata:
-  name: linkerd-tap
+  name: tap
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
     namespace: linkerd-viz
 ---
@@ -158,7 +158,7 @@ metadata:
   name: linkerd-linkerd-viz-tap-auth-reader
   namespace: kube-system
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
     namespace: linkerd-viz
 roleRef:
@@ -167,16 +167,16 @@ roleRef:
   name: extension-apiserver-authentication-reader
 subjects:
 - kind: ServiceAccount
-  name: linkerd-tap
+  name: tap
   namespace: linkerd-viz
 ---
 kind: Secret
 apiVersion: v1
 metadata:
-  name: linkerd-tap-k8s-tls
+  name: tap-k8s-tls
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
     namespace: linkerd-viz
   annotations:
@@ -191,7 +191,7 @@ kind: APIService
 metadata:
   name: v1alpha1.tap.linkerd.io
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
 spec:
   group: tap.linkerd.io
@@ -199,7 +199,7 @@ spec:
   groupPriorityMinimum: 1000
   versionPriority: 100
   service:
-    name: linkerd-tap
+    name: tap
     namespace: linkerd-viz
   caBundle: dGVzdC10YXAtY2EtYnVuZGxl
 ---
@@ -209,10 +209,10 @@ spec:
 apiVersion: rbac.authorization.k8s.io/v1
 kind: Role
 metadata:
-  name: linkerd-web
+  name: web
   namespace: linkerd
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
     namespace: linkerd
 rules:
@@ -233,19 +233,19 @@ rules:
 apiVersion: rbac.authorization.k8s.io/v1
 kind: RoleBinding
 metadata:
-  name: linkerd-web
+  name: web
   namespace: linkerd
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
     namespace: linkerd
 roleRef:
   kind: Role
-  name: linkerd-web
+  name: web
   apiGroup: rbac.authorization.k8s.io
 subjects:
 - kind: ServiceAccount
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
 ---
 apiVersion: rbac.authorization.k8s.io/v1
@@ -253,7 +253,7 @@ kind: ClusterRole
 metadata:
   name: linkerd-linkerd-viz-web-check
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
 rules:
 - apiGroups: ["rbac.authorization.k8s.io"]
@@ -280,7 +280,7 @@ kind: ClusterRoleBinding
 metadata:
   name: linkerd-linkerd-viz-web-check
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
 roleRef:
   kind: ClusterRole
@@ -288,7 +288,7 @@ roleRef:
   apiGroup: rbac.authorization.k8s.io
 subjects:
 - kind: ServiceAccount
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
 ---
 kind: ClusterRoleBinding
@@ -296,7 +296,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-web-admin
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
 roleRef:
   apiGroup: rbac.authorization.k8s.io
@@ -304,7 +304,7 @@ roleRef:
   name: linkerd-linkerd-viz-tap-admin
 subjects:
 - kind: ServiceAccount
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
 ---
 apiVersion: rbac.authorization.k8s.io/v1
@@ -312,7 +312,7 @@ kind: ClusterRole
 metadata:
   name: linkerd-linkerd-viz-web-api
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
 rules:
 - apiGroups: [""]
@@ -324,7 +324,7 @@ kind: ClusterRoleBinding
 metadata:
   name: linkerd-linkerd-viz-web-api
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
 roleRef:
   kind: ClusterRole
@@ -332,40 +332,40 @@ roleRef:
   apiGroup: rbac.authorization.k8s.io
 subjects:
 - kind: ServiceAccount
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
 ---
 kind: ServiceAccount
 apiVersion: v1
 metadata:
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
     namespace: linkerd-viz
 ---
 apiVersion: rbac.authorization.k8s.io/v1
 kind: RoleBinding
 metadata:
-  name: linkerd-viz-psp
+  name: viz-psp
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     namespace: linkerd-viz
 roleRef:
   kind: Role
-  name: linkerd-psp
+  name: psp
   apiGroup: rbac.authorization.k8s.io
 subjects:
 - kind: ServiceAccount
-  name: linkerd-tap
+  name: tap
   namespace: linkerd-viz
 - kind: ServiceAccount
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
 - kind: ServiceAccount
-  name: linkerd-grafana
+  name: grafana
   namespace: linkerd-viz
 ---
 ###
@@ -374,17 +374,17 @@ subjects:
 kind: Service
 apiVersion: v1
 metadata:
-  name: linkerd-metrics-api
+  name: metrics-api
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: metrics-api
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
 spec:
   type: ClusterIP
   selector:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: metrics-api
   ports:
   - name: http
@@ -397,26 +397,26 @@ metadata:
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     app.kubernetes.io/name: metrics-api
     app.kubernetes.io/part-of: Linkerd
     app.kubernetes.io/version: dev-undefined
     component: metrics-api
-  name: linkerd-metrics-api
+  name: metrics-api
   namespace: linkerd-viz
 spec:
   replicas: 1
   selector:
     matchLabels:
-      linkerd.io/extension: linkerd-viz
+      linkerd.io/extension: viz
       component: metrics-api
   template:
     metadata:
       annotations:
-        checksum/config: 6827b2203b1cd90692d9dd6a973a2162e574dc9fd7b5b9e346ceac7e287204a6
+        checksum/config: 0d5b035f4d141dc2c13e1f89046de78fe0fb1208075734c3977400b866f2db51
         linkerd.io/created-by: linkerd/helm dev-undefined
       labels:
-        linkerd.io/extension: linkerd-viz
+        linkerd.io/extension: viz
         component: metrics-api
     spec:
       nodeSelector:
@@ -448,7 +448,7 @@ spec:
         resources:
         securityContext:
           runAsUser: 2103
-      serviceAccountName: linkerd-metrics-api
+      serviceAccountName: metrics-api
 ---
 ###
 ### Grafana
@@ -456,17 +456,17 @@ spec:
 kind: ConfigMap
 apiVersion: v1
 metadata:
-  name: linkerd-grafana-config
+  name: grafana-config
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: grafana
     namespace: linkerd-viz
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
 data:
   grafana.ini: |-
-    instance_name = linkerd-grafana
+    instance_name = grafana
     [server]
     root_url = %(protocol)s://%(domain)s:/grafana/
     [auth]
@@ -510,10 +510,10 @@ data:
 kind: Service
 apiVersion: v1
 metadata:
-  name: linkerd-grafana
+  name: grafana
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: grafana
     namespace: linkerd-viz
   annotations:
@@ -521,7 +521,7 @@ metadata:
 spec:
   type: ClusterIP
   selector:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: grafana
   ports:
   - name: http
@@ -534,19 +534,19 @@ metadata:
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     app.kubernetes.io/name: grafana
     app.kubernetes.io/part-of: Linkerd
     app.kubernetes.io/version: dev-undefined
     component: grafana
     namespace: linkerd-viz
-  name: linkerd-grafana
+  name: grafana
   namespace: linkerd-viz
 spec:
   replicas: 1
   selector:
     matchLabels:
-      linkerd.io/extension: linkerd-viz
+      linkerd.io/extension: viz
       component: grafana
       namespace: linkerd-viz
   template:
@@ -554,7 +554,7 @@ spec:
       annotations:
         linkerd.io/created-by: linkerd/helm dev-undefined
       labels:
-        linkerd.io/extension: linkerd-viz
+        linkerd.io/extension: viz
         component: grafana
         namespace: linkerd-viz
     spec:
@@ -592,7 +592,7 @@ spec:
         - mountPath: /etc/grafana
           name: grafana-config
           readOnly: true
-      serviceAccountName: linkerd-grafana
+      serviceAccountName: grafana
       volumes:
       - emptyDir: {}
         name: data
@@ -604,7 +604,7 @@ spec:
             path: provisioning/datasources/datasources.yaml
           - key: dashboards.yaml
             path: provisioning/dashboards/dashboards.yaml
-          name: linkerd-grafana-config
+          name: grafana-config
         name: grafana-config
 ---
 ###
@@ -613,10 +613,10 @@ spec:
 kind: Service
 apiVersion: v1
 metadata:
-  name: linkerd-tap
+  name: tap
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
     namespace: linkerd-viz
   annotations:
@@ -624,7 +624,7 @@ metadata:
 spec:
   type: ClusterIP
   selector:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
   ports:
   - name: grpc
@@ -640,28 +640,28 @@ metadata:
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     app.kubernetes.io/name: tap
     app.kubernetes.io/part-of: Linkerd
     app.kubernetes.io/version: dev-undefined
     component: tap
     namespace: linkerd-viz
-  name: linkerd-tap
+  name: tap
   namespace: linkerd-viz
 spec:
   replicas: 1
   selector:
     matchLabels:
-      linkerd.io/extension: linkerd-viz
+      linkerd.io/extension: viz
       component: tap
       namespace: linkerd-viz
   template:
     metadata:
       annotations:
-        checksum/config: bbc82b03e8c9fdc549e1ef5d3f795c07c21fb3b4c089351186f170b722689d86
+        checksum/config: 7f24ffe166f8d03a8eb039ecc551f3de9ea0ddcf1cf80a69966ce3713f043b23
         linkerd.io/created-by: linkerd/helm dev-undefined
       labels:
-        linkerd.io/extension: linkerd-viz
+        linkerd.io/extension: viz
         component: tap
         namespace: linkerd-viz
     spec:
@@ -700,12 +700,11 @@ spec:
         - mountPath: /var/run/linkerd/tls
           name: tls
           readOnly: true
-      serviceAccountName: linkerd-tap
+      serviceAccountName: tap
       volumes:
       - name: tls
         secret:
-          secretName: linkerd-tap-k8s-tls
-
+          secretName: tap-k8s-tls
 ---
 ###
 ### Tap Injector RBAC
@@ -715,7 +714,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-tap-injector
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
 rules:
 - apiGroups: [""]
   resources: ["namespaces"]
@@ -726,7 +725,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-tap-injector
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
 subjects:
 - kind: ServiceAccount
   name: tap-injector
@@ -759,7 +758,7 @@ kind: MutatingWebhookConfiguration
 metadata:
   name: linkerd-tap-injector-webhook-config
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
 webhooks:
 - name: tap-injector.linkerd.io
   clientConfig:
@@ -787,7 +786,7 @@ metadata:
   name: tap-injector
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap-injector
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
@@ -806,7 +805,7 @@ metadata:
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     app.kubernetes.io/name: tap-injector
     app.kubernetes.io/part-of: Linkerd
     component: tap-injector
@@ -820,10 +819,10 @@ spec:
   template:
     metadata:
       annotations:
-        checksum/config: 0120b5feafdef04a057ab39fd63ed315ebbcc2bfc0b0657e3007fa34ffb8b7e2
+        checksum/config: 5cb033e3116205dd502bee6f822717a8efe049d8ada2f02d1343a2c8b0cd3c93
         linkerd.io/created-by: linkerd/helm dev-undefined
       labels:
-        linkerd.io/extension: linkerd-viz
+        linkerd.io/extension: viz
         component: tap-injector
     spec:
       nodeSelector:
@@ -831,7 +830,7 @@ spec:
       containers:
       - args:
         - injector
-        - -tap-service-name=linkerd-tap.linkerd-viz.serviceaccount.identity.$(_l5d_ns).$(_l5d_trustdomain)
+        - -tap-service-name=tap.linkerd-viz.serviceaccount.identity.$(_l5d_ns).$(_l5d_trustdomain)
         - -log-level=info
         image: cr.l5d.io/linkerd/tap:dev-undefined
         imagePullPolicy: IfNotPresent
@@ -870,10 +869,10 @@ spec:
 kind: Service
 apiVersion: v1
 metadata:
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
     namespace: linkerd-viz
   annotations:
@@ -881,7 +880,7 @@ metadata:
 spec:
   type: ClusterIP
   selector:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
   ports:
   - name: http
@@ -897,19 +896,19 @@ metadata:
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     app.kubernetes.io/name: web
     app.kubernetes.io/part-of: Linkerd
     app.kubernetes.io/version: dev-undefined
     component: web
     namespace: linkerd-viz
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
 spec:
   replicas: 1
   selector:
     matchLabels:
-      linkerd.io/extension: linkerd-viz
+      linkerd.io/extension: viz
       component: web
       namespace: linkerd-viz
   template:
@@ -917,7 +916,7 @@ spec:
       annotations:
         linkerd.io/created-by: linkerd/helm dev-undefined
       labels:
-        linkerd.io/extension: linkerd-viz
+        linkerd.io/extension: viz
         component: web
         namespace: linkerd-viz
     spec:
@@ -926,13 +925,13 @@ spec:
       containers:
       - args:
         - -linkerd-controller-api-addr=linkerd-controller-api.linkerd.svc.cluster.local:8085
-        - -linkerd-metrics-api-addr=linkerd-metrics-api.linkerd-viz.svc.cluster.local:8085
+        - -linkerd-metrics-api-addr=metrics-api.linkerd-viz.svc.cluster.local:8085
         - -cluster-domain=cluster.local
-        - -grafana-addr=linkerd-grafana.linkerd-viz.svc.cluster.local:3000
+        - -grafana-addr=grafana.linkerd-viz.svc.cluster.local:3000
         - -controller-namespace=linkerd
         - -viz-namespace=linkerd-viz
         - -log-level=info
-        - -enforced-host=^(localhost|127\.0\.0\.1|linkerd-web\.linkerd-viz\.svc\.cluster\.local|linkerd-web\.linkerd-viz\.svc|\[::1\])(:\d+)?$
+        - -enforced-host=^(localhost|127\.0\.0\.1|web\.linkerd-viz\.svc\.cluster\.local|web\.linkerd-viz\.svc|\[::1\])(:\d+)?$
         image: cr.l5d.io/linkerd/web:dev-undefined
         imagePullPolicy: IfNotPresent
         livenessProbe:
@@ -954,4 +953,4 @@ spec:
         resources:
         securityContext:
           runAsUser: 2103
-      serviceAccountName: linkerd-web
+      serviceAccountName: web
diff --git a/viz/cmd/testdata/install_proxy_resources.golden b/viz/cmd/testdata/install_proxy_resources.golden
index b65d94a5c..6a8b37b24 100644
--- a/viz/cmd/testdata/install_proxy_resources.golden
+++ b/viz/cmd/testdata/install_proxy_resources.golden
@@ -7,7 +7,7 @@ apiVersion: v1
 metadata:
   name: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
   annotations:
     linkerd.io/inject: enabled
 ---
@@ -19,7 +19,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-metrics-api
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: metrics-api
 rules:
 - apiGroups: ["extensions", "apps"]
@@ -43,7 +43,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-metrics-api
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: metrics-api
 roleRef:
   apiGroup: rbac.authorization.k8s.io
@@ -51,16 +51,16 @@ roleRef:
   name: linkerd-linkerd-viz-metrics-api
 subjects:
 - kind: ServiceAccount
-  name: linkerd-metrics-api
+  name: metrics-api
   namespace: linkerd-viz
 ---
 kind: ServiceAccount
 apiVersion: v1
 metadata:
-  name: linkerd-metrics-api
+  name: metrics-api
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: metrics-api
 ---
 ###
@@ -69,10 +69,10 @@ metadata:
 kind: ServiceAccount
 apiVersion: v1
 metadata:
-  name: linkerd-grafana
+  name: grafana
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: grafana
     namespace: linkerd-viz
 ---
@@ -84,7 +84,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-prometheus
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: prometheus
 rules:
 - apiGroups: [""]
@@ -96,7 +96,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-prometheus
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: prometheus
 roleRef:
   apiGroup: rbac.authorization.k8s.io
@@ -104,16 +104,16 @@ roleRef:
   name: linkerd-linkerd-viz-prometheus
 subjects:
 - kind: ServiceAccount
-  name: linkerd-prometheus
+  name: prometheus
   namespace: linkerd-viz
 ---
 kind: ServiceAccount
 apiVersion: v1
 metadata:
-  name: linkerd-prometheus
+  name: prometheus
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: prometheus
     namespace: linkerd-viz
 ---
@@ -125,7 +125,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-tap
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
 rules:
 - apiGroups: [""]
@@ -143,7 +143,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-tap-admin
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
 rules:
 - apiGroups: ["tap.linkerd.io"]
@@ -155,7 +155,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-tap
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
 roleRef:
   apiGroup: rbac.authorization.k8s.io
@@ -163,7 +163,7 @@ roleRef:
   name: linkerd-linkerd-viz-tap
 subjects:
 - kind: ServiceAccount
-  name: linkerd-tap
+  name: tap
   namespace: linkerd-viz
 ---
 apiVersion: rbac.authorization.k8s.io/v1
@@ -171,7 +171,7 @@ kind: ClusterRoleBinding
 metadata:
   name: linkerd-linkerd-viz-tap-auth-delegator
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
 roleRef:
   apiGroup: rbac.authorization.k8s.io
@@ -179,16 +179,16 @@ roleRef:
   name: system:auth-delegator
 subjects:
 - kind: ServiceAccount
-  name: linkerd-tap
+  name: tap
   namespace: linkerd-viz
 ---
 kind: ServiceAccount
 apiVersion: v1
 metadata:
-  name: linkerd-tap
+  name: tap
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
     namespace: linkerd-viz
 ---
@@ -198,7 +198,7 @@ metadata:
   name: linkerd-linkerd-viz-tap-auth-reader
   namespace: kube-system
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
     namespace: linkerd-viz
 roleRef:
@@ -207,16 +207,16 @@ roleRef:
   name: extension-apiserver-authentication-reader
 subjects:
 - kind: ServiceAccount
-  name: linkerd-tap
+  name: tap
   namespace: linkerd-viz
 ---
 kind: Secret
 apiVersion: v1
 metadata:
-  name: linkerd-tap-k8s-tls
+  name: tap-k8s-tls
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
     namespace: linkerd-viz
   annotations:
@@ -231,7 +231,7 @@ kind: APIService
 metadata:
   name: v1alpha1.tap.linkerd.io
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
 spec:
   group: tap.linkerd.io
@@ -239,7 +239,7 @@ spec:
   groupPriorityMinimum: 1000
   versionPriority: 100
   service:
-    name: linkerd-tap
+    name: tap
     namespace: linkerd-viz
   caBundle: dGVzdC10YXAtY2EtYnVuZGxl
 ---
@@ -249,10 +249,10 @@ spec:
 apiVersion: rbac.authorization.k8s.io/v1
 kind: Role
 metadata:
-  name: linkerd-web
+  name: web
   namespace: linkerd
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
     namespace: linkerd
 rules:
@@ -273,19 +273,19 @@ rules:
 apiVersion: rbac.authorization.k8s.io/v1
 kind: RoleBinding
 metadata:
-  name: linkerd-web
+  name: web
   namespace: linkerd
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
     namespace: linkerd
 roleRef:
   kind: Role
-  name: linkerd-web
+  name: web
   apiGroup: rbac.authorization.k8s.io
 subjects:
 - kind: ServiceAccount
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
 ---
 apiVersion: rbac.authorization.k8s.io/v1
@@ -293,7 +293,7 @@ kind: ClusterRole
 metadata:
   name: linkerd-linkerd-viz-web-check
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
 rules:
 - apiGroups: ["rbac.authorization.k8s.io"]
@@ -320,7 +320,7 @@ kind: ClusterRoleBinding
 metadata:
   name: linkerd-linkerd-viz-web-check
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
 roleRef:
   kind: ClusterRole
@@ -328,7 +328,7 @@ roleRef:
   apiGroup: rbac.authorization.k8s.io
 subjects:
 - kind: ServiceAccount
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
 ---
 kind: ClusterRoleBinding
@@ -336,7 +336,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-linkerd-viz-web-admin
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
 roleRef:
   apiGroup: rbac.authorization.k8s.io
@@ -344,7 +344,7 @@ roleRef:
   name: linkerd-linkerd-viz-tap-admin
 subjects:
 - kind: ServiceAccount
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
 ---
 apiVersion: rbac.authorization.k8s.io/v1
@@ -352,7 +352,7 @@ kind: ClusterRole
 metadata:
   name: linkerd-linkerd-viz-web-api
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
 rules:
 - apiGroups: [""]
@@ -364,7 +364,7 @@ kind: ClusterRoleBinding
 metadata:
   name: linkerd-linkerd-viz-web-api
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
 roleRef:
   kind: ClusterRole
@@ -372,43 +372,43 @@ roleRef:
   apiGroup: rbac.authorization.k8s.io
 subjects:
 - kind: ServiceAccount
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
 ---
 kind: ServiceAccount
 apiVersion: v1
 metadata:
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
     namespace: linkerd-viz
 ---
 apiVersion: rbac.authorization.k8s.io/v1
 kind: RoleBinding
 metadata:
-  name: linkerd-viz-psp
+  name: viz-psp
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     namespace: linkerd-viz
 roleRef:
   kind: Role
-  name: linkerd-psp
+  name: psp
   apiGroup: rbac.authorization.k8s.io
 subjects:
 - kind: ServiceAccount
-  name: linkerd-tap
+  name: tap
   namespace: linkerd-viz
 - kind: ServiceAccount
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
 - kind: ServiceAccount
-  name: linkerd-grafana
+  name: grafana
   namespace: linkerd-viz
 - kind: ServiceAccount
-  name: linkerd-prometheus
+  name: prometheus
   namespace: linkerd-viz
 ---
 ###
@@ -417,17 +417,17 @@ subjects:
 kind: Service
 apiVersion: v1
 metadata:
-  name: linkerd-metrics-api
+  name: metrics-api
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: metrics-api
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
 spec:
   type: ClusterIP
   selector:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: metrics-api
   ports:
   - name: http
@@ -440,26 +440,26 @@ metadata:
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     app.kubernetes.io/name: metrics-api
     app.kubernetes.io/part-of: Linkerd
     app.kubernetes.io/version: dev-undefined
     component: metrics-api
-  name: linkerd-metrics-api
+  name: metrics-api
   namespace: linkerd-viz
 spec:
   replicas: 1
   selector:
     matchLabels:
-      linkerd.io/extension: linkerd-viz
+      linkerd.io/extension: viz
       component: metrics-api
   template:
     metadata:
       annotations:
-        checksum/config: 6827b2203b1cd90692d9dd6a973a2162e574dc9fd7b5b9e346ceac7e287204a6
+        checksum/config: 0d5b035f4d141dc2c13e1f89046de78fe0fb1208075734c3977400b866f2db51
         linkerd.io/created-by: linkerd/helm dev-undefined
       labels:
-        linkerd.io/extension: linkerd-viz
+        linkerd.io/extension: viz
         component: metrics-api
     spec:
       nodeSelector:
@@ -469,7 +469,7 @@ spec:
         - -controller-namespace=linkerd
         - -log-level=info
         - -cluster-domain=cluster.local
-        - -prometheus-url=http://linkerd-prometheus.linkerd-viz.svc.cluster.local:9090
+        - -prometheus-url=http://prometheus.linkerd-viz.svc.cluster.local:9090
         image: cr.l5d.io/linkerd/metrics-api:dev-undefined
         imagePullPolicy: IfNotPresent
         livenessProbe:
@@ -491,7 +491,7 @@ spec:
         resources:
         securityContext:
           runAsUser: 2103
-      serviceAccountName: linkerd-metrics-api
+      serviceAccountName: metrics-api
 ---
 ###
 ### Grafana
@@ -499,17 +499,17 @@ spec:
 kind: ConfigMap
 apiVersion: v1
 metadata:
-  name: linkerd-grafana-config
+  name: grafana-config
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: grafana
     namespace: linkerd-viz
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
 data:
   grafana.ini: |-
-    instance_name = linkerd-grafana
+    instance_name = grafana
     [server]
     root_url = %(protocol)s://%(domain)s:/grafana/
     [auth]
@@ -530,7 +530,7 @@ data:
       type: prometheus
       access: proxy
       orgId: 1
-      url: http://linkerd-prometheus.linkerd-viz.svc.cluster.local:9090
+      url: http://prometheus.linkerd-viz.svc.cluster.local:9090
       isDefault: true
       jsonData:
         timeInterval: "5s"
@@ -553,10 +553,10 @@ data:
 kind: Service
 apiVersion: v1
 metadata:
-  name: linkerd-grafana
+  name: grafana
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: grafana
     namespace: linkerd-viz
   annotations:
@@ -564,7 +564,7 @@ metadata:
 spec:
   type: ClusterIP
   selector:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: grafana
   ports:
   - name: http
@@ -577,19 +577,19 @@ metadata:
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     app.kubernetes.io/name: grafana
     app.kubernetes.io/part-of: Linkerd
     app.kubernetes.io/version: dev-undefined
     component: grafana
     namespace: linkerd-viz
-  name: linkerd-grafana
+  name: grafana
   namespace: linkerd-viz
 spec:
   replicas: 1
   selector:
     matchLabels:
-      linkerd.io/extension: linkerd-viz
+      linkerd.io/extension: viz
       component: grafana
       namespace: linkerd-viz
   template:
@@ -601,7 +601,7 @@ spec:
         config.linkerd.io/proxy-memory-request: "20Mi"
         config.linkerd.io/proxy-memory-limit: "250Mi"
       labels:
-        linkerd.io/extension: linkerd-viz
+        linkerd.io/extension: viz
         component: grafana
         namespace: linkerd-viz
     spec:
@@ -639,7 +639,7 @@ spec:
         - mountPath: /etc/grafana
           name: grafana-config
           readOnly: true
-      serviceAccountName: linkerd-grafana
+      serviceAccountName: grafana
       volumes:
       - emptyDir: {}
         name: data
@@ -651,7 +651,7 @@ spec:
             path: provisioning/datasources/datasources.yaml
           - key: dashboards.yaml
             path: provisioning/dashboards/dashboards.yaml
-          name: linkerd-grafana-config
+          name: grafana-config
         name: grafana-config
 ---
 ###
@@ -660,10 +660,10 @@ spec:
 kind: ConfigMap
 apiVersion: v1
 metadata:
-  name: linkerd-prometheus-config
+  name: prometheus-config
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: prometheus
     namespace: linkerd-viz
   annotations:
@@ -805,10 +805,10 @@ data:
 kind: Service
 apiVersion: v1
 metadata:
-  name: linkerd-prometheus
+  name: prometheus
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: prometheus
     namespace: linkerd-viz
   annotations:
@@ -816,7 +816,7 @@ metadata:
 spec:
   type: ClusterIP
   selector:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: prometheus
   ports:
   - name: admin-http
@@ -829,19 +829,19 @@ metadata:
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     app.kubernetes.io/name: prometheus
     app.kubernetes.io/part-of: Linkerd
     app.kubernetes.io/version: dev-undefined
     component: prometheus
     namespace: linkerd-viz
-  name: linkerd-prometheus
+  name: prometheus
   namespace: linkerd-viz
 spec:
   replicas: 1
   selector:
     matchLabels:
-      linkerd.io/extension: linkerd-viz
+      linkerd.io/extension: viz
       component: prometheus
       namespace: linkerd-viz
   template:
@@ -853,7 +853,7 @@ spec:
         config.linkerd.io/proxy-memory-request: "20Mi"
         config.linkerd.io/proxy-memory-limit: "250Mi"
       labels:
-        linkerd.io/extension: linkerd-viz
+        linkerd.io/extension: viz
         component: prometheus
         namespace: linkerd-viz
     spec:
@@ -897,12 +897,12 @@ spec:
           name: prometheus-config
           subPath: prometheus.yml
           readOnly: true
-      serviceAccountName: linkerd-prometheus
+      serviceAccountName: prometheus
       volumes:
       - name: data
         emptyDir: {}
       - configMap:
-          name: linkerd-prometheus-config
+          name: prometheus-config
         name: prometheus-config
 ---
 ###
@@ -911,10 +911,10 @@ spec:
 kind: Service
 apiVersion: v1
 metadata:
-  name: linkerd-tap
+  name: tap
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
     namespace: linkerd-viz
   annotations:
@@ -922,7 +922,7 @@ metadata:
 spec:
   type: ClusterIP
   selector:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap
   ports:
   - name: grpc
@@ -938,32 +938,32 @@ metadata:
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     app.kubernetes.io/name: tap
     app.kubernetes.io/part-of: Linkerd
     app.kubernetes.io/version: dev-undefined
     component: tap
     namespace: linkerd-viz
-  name: linkerd-tap
+  name: tap
   namespace: linkerd-viz
 spec:
   replicas: 1
   selector:
     matchLabels:
-      linkerd.io/extension: linkerd-viz
+      linkerd.io/extension: viz
       component: tap
       namespace: linkerd-viz
   template:
     metadata:
       annotations:
-        checksum/config: bbc82b03e8c9fdc549e1ef5d3f795c07c21fb3b4c089351186f170b722689d86
+        checksum/config: 7f24ffe166f8d03a8eb039ecc551f3de9ea0ddcf1cf80a69966ce3713f043b23
         linkerd.io/created-by: linkerd/helm dev-undefined
         config.linkerd.io/proxy-cpu-request: "500m"
         config.linkerd.io/proxy-cpu-limit: "100m"
         config.linkerd.io/proxy-memory-request: "20Mi"
         config.linkerd.io/proxy-memory-limit: "250Mi"
       labels:
-        linkerd.io/extension: linkerd-viz
+        linkerd.io/extension: viz
         component: tap
         namespace: linkerd-viz
     spec:
@@ -1002,12 +1002,11 @@ spec:
         - mountPath: /var/run/linkerd/tls
           name: tls
           readOnly: true
-      serviceAccountName: linkerd-tap
+      serviceAccountName: tap
       volumes:
       - name: tls
         secret:
-          secretName: linkerd-tap-k8s-tls
-
+          secretName: tap-k8s-tls
 ---
 ###
 ### Tap Injector RBAC
@@ -1017,7 +1016,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-tap-injector
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
 rules:
 - apiGroups: [""]
   resources: ["namespaces"]
@@ -1028,7 +1027,7 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: linkerd-tap-injector
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
 subjects:
 - kind: ServiceAccount
   name: tap-injector
@@ -1061,7 +1060,7 @@ kind: MutatingWebhookConfiguration
 metadata:
   name: linkerd-tap-injector-webhook-config
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
 webhooks:
 - name: tap-injector.linkerd.io
   clientConfig:
@@ -1089,7 +1088,7 @@ metadata:
   name: tap-injector
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: tap-injector
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
@@ -1108,7 +1107,7 @@ metadata:
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     app.kubernetes.io/name: tap-injector
     app.kubernetes.io/part-of: Linkerd
     component: tap-injector
@@ -1122,10 +1121,10 @@ spec:
   template:
     metadata:
       annotations:
-        checksum/config: 0120b5feafdef04a057ab39fd63ed315ebbcc2bfc0b0657e3007fa34ffb8b7e2
+        checksum/config: 5cb033e3116205dd502bee6f822717a8efe049d8ada2f02d1343a2c8b0cd3c93
         linkerd.io/created-by: linkerd/helm dev-undefined
       labels:
-        linkerd.io/extension: linkerd-viz
+        linkerd.io/extension: viz
         component: tap-injector
     spec:
       nodeSelector:
@@ -1133,7 +1132,7 @@ spec:
       containers:
       - args:
         - injector
-        - -tap-service-name=linkerd-tap.linkerd-viz.serviceaccount.identity.$(_l5d_ns).$(_l5d_trustdomain)
+        - -tap-service-name=tap.linkerd-viz.serviceaccount.identity.$(_l5d_ns).$(_l5d_trustdomain)
         - -log-level=info
         image: cr.l5d.io/linkerd/tap:dev-undefined
         imagePullPolicy: IfNotPresent
@@ -1172,10 +1171,10 @@ spec:
 kind: Service
 apiVersion: v1
 metadata:
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
     namespace: linkerd-viz
   annotations:
@@ -1183,7 +1182,7 @@ metadata:
 spec:
   type: ClusterIP
   selector:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     component: web
   ports:
   - name: http
@@ -1199,19 +1198,19 @@ metadata:
   annotations:
     linkerd.io/created-by: linkerd/helm dev-undefined
   labels:
-    linkerd.io/extension: linkerd-viz
+    linkerd.io/extension: viz
     app.kubernetes.io/name: web
     app.kubernetes.io/part-of: Linkerd
     app.kubernetes.io/version: dev-undefined
     component: web
     namespace: linkerd-viz
-  name: linkerd-web
+  name: web
   namespace: linkerd-viz
 spec:
   replicas: 1
   selector:
     matchLabels:
-      linkerd.io/extension: linkerd-viz
+      linkerd.io/extension: viz
       component: web
       namespace: linkerd-viz
   template:
@@ -1223,7 +1222,7 @@ spec:
         config.linkerd.io/proxy-memory-request: "20Mi"
         config.linkerd.io/proxy-memory-limit: "250Mi"
       labels:
-        linkerd.io/extension: linkerd-viz
+        linkerd.io/extension: viz
         component: web
         namespace: linkerd-viz
     spec:
@@ -1232,13 +1231,13 @@ spec:
       containers:
       - args:
         - -linkerd-controller-api-addr=linkerd-controller-api.linkerd.svc.cluster.local:8085
-        - -linkerd-metrics-api-addr=linkerd-metrics-api.linkerd-viz.svc.cluster.local:8085
+        - -linkerd-metrics-api-addr=metrics-api.linkerd-viz.svc.cluster.local:8085
         - -cluster-domain=cluster.local
-        - -grafana-addr=linkerd-grafana.linkerd-viz.svc.cluster.local:3000
+        - -grafana-addr=grafana.linkerd-viz.svc.cluster.local:3000
         - -controller-namespace=linkerd
         - -viz-namespace=linkerd-viz
         - -log-level=info
-        - -enforced-host=^(localhost|127\.0\.0\.1|linkerd-web\.linkerd-viz\.svc\.cluster\.local|linkerd-web\.linkerd-viz\.svc|\[::1\])(:\d+)?$
+        - -enforced-host=^(localhost|127\.0\.0\.1|web\.linkerd-viz\.svc\.cluster\.local|web\.linkerd-viz\.svc|\[::1\])(:\d+)?$
         image: cr.l5d.io/linkerd/web:dev-undefined
         imagePullPolicy: IfNotPresent
         livenessProbe:
@@ -1260,4 +1259,4 @@ spec:
         resources:
         securityContext:
           runAsUser: 2103
-      serviceAccountName: linkerd-web
+      serviceAccountName: web