diff --git a/README.md b/README.md
deleted file mode 100644
index 9b0ec34..0000000
--- a/README.md
+++ /dev/null
@@ -1,21 +0,0 @@
-# ArgoCD Example Apps
-
-This repository contains example applications for demoing ArgoCD functionality. Feel free
-to register this repository to your ArgoCD instance, or fork this repo and push your own commits
-to explore ArgoCD and GitOps!
-
-| Application | Description |
-|-------------|-------------|
-| [guestbook](guestbook/) | A hello word guestbook app as plain YAML |
-| [ksonnet-guestbook](ksonnet-guestbook/) | The guestbook app as a ksonnet app |
-| [helm-guestbook](helm-guestbook/) | The guestbook app as a Helm chart |
-| [jsonnet-guestbook](jsonnet-guestbook/) | The guestbook app as a raw jsonnet |
-| [jsonnet-guestbook-tla](jsonnet-guestbook-tla/) | The guestbook app as a raw jsonnet with support for top level arguments |
-| [kustomize-guestbook](kustomize-guestbook/) | The guestbook app as a Kustomize 2 app |
-| [pre-post-sync](pre-post-sync/) | Demonstrates Argo CD PreSync and PostSync hooks |
-| [sync-waves](sync-waves/) | Demonstrates Argo CD sync waves with hooks |
-| [helm-dependency](helm-dependency/) | Demonstrates how to customize an OTS (off-the-shelf) helm chart from an upstream repo |
-| [sock-shop](sock-shop/) | A microservices demo app (https://microservices-demo.github.io) |
-| [plugins](plugins/) | Apps which demonstrate config management plugins usage |
-| [blue-green](blue-green/) | Demonstrates how to implement blue-green deployment using [Argo Rollouts](https://github.com/argoproj/argo-rollouts)
-| [apps](apps/) | An app composed of other apps |
diff --git a/application-crds/base/crd.yaml b/application-crds/base/crd.yaml
deleted file mode 100644
index 133342c..0000000
--- a/application-crds/base/crd.yaml
+++ /dev/null
@@ -1,239 +0,0 @@
-apiVersion: apiextensions.k8s.io/v1beta1
-kind: CustomResourceDefinition
-metadata:
- creationTimestamp: null
- name: applications.app.k8s.io
-spec:
- group: app.k8s.io
- names:
- kind: Application
- plural: applications
- scope: Namespaced
- validation:
- openAPIV3Schema:
- properties:
- apiVersion:
- type: string
- kind:
- type: string
- metadata:
- type: object
- spec:
- properties:
- addOwnerRef:
- type: boolean
- assemblyPhase:
- type: string
- componentKinds:
- items:
- type: object
- type: array
- descriptor:
- properties:
- description:
- type: string
- icons:
- items:
- properties:
- size:
- type: string
- src:
- type: string
- type:
- type: string
- required:
- - src
- type: object
- type: array
- keywords:
- items:
- type: string
- type: array
- links:
- items:
- properties:
- description:
- type: string
- url:
- type: string
- type: object
- type: array
- maintainers:
- items:
- properties:
- email:
- type: string
- name:
- type: string
- url:
- type: string
- type: object
- type: array
- notes:
- type: string
- owners:
- items:
- properties:
- email:
- type: string
- name:
- type: string
- url:
- type: string
- type: object
- type: array
- type:
- type: string
- version:
- type: string
- type: object
- info:
- items:
- properties:
- name:
- type: string
- type:
- type: string
- value:
- type: string
- valueFrom:
- properties:
- configMapKeyRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- key:
- type: string
- kind:
- type: string
- name:
- type: string
- namespace:
- type: string
- resourceVersion:
- type: string
- uid:
- type: string
- type: object
- ingressRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- host:
- type: string
- kind:
- type: string
- name:
- type: string
- namespace:
- type: string
- path:
- type: string
- resourceVersion:
- type: string
- uid:
- type: string
- type: object
- secretKeyRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- key:
- type: string
- kind:
- type: string
- name:
- type: string
- namespace:
- type: string
- resourceVersion:
- type: string
- uid:
- type: string
- type: object
- serviceRef:
- properties:
- apiVersion:
- type: string
- fieldPath:
- type: string
- kind:
- type: string
- name:
- type: string
- namespace:
- type: string
- path:
- type: string
- port:
- format: int32
- type: integer
- resourceVersion:
- type: string
- uid:
- type: string
- type: object
- type:
- type: string
- type: object
- type: object
- type: array
- selector:
- type: object
- type: object
- status:
- properties:
- components:
- items:
- properties:
- group:
- type: string
- kind:
- type: string
- link:
- type: string
- name:
- type: string
- status:
- type: string
- type: object
- type: array
- conditions:
- items:
- properties:
- lastTransitionTime:
- format: date-time
- type: string
- lastUpdateTime:
- format: date-time
- type: string
- message:
- type: string
- reason:
- type: string
- status:
- type: string
- type:
- type: string
- required:
- - type
- - status
- type: object
- type: array
- observedGeneration:
- format: int64
- type: integer
- type: object
- version: v1beta1
-status:
- acceptedNames:
- kind: ""
- plural: ""
- conditions: []
- storedVersions: []
diff --git a/application-crds/base/kustomization.yaml b/application-crds/base/kustomization.yaml
deleted file mode 100644
index 6e120e7..0000000
--- a/application-crds/base/kustomization.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- crd.yaml
diff --git a/application/base/cluster-role-binding.yaml b/application/base/cluster-role-binding.yaml
deleted file mode 100644
index f7fe51d..0000000
--- a/application/base/cluster-role-binding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: cluster-role-binding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: cluster-role
-subjects:
-- kind: ServiceAccount
- name: service-account
diff --git a/application/base/cluster-role.yaml b/application/base/cluster-role.yaml
deleted file mode 100644
index 169fc3b..0000000
--- a/application/base/cluster-role.yaml
+++ /dev/null
@@ -1,21 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: cluster-role
-rules:
-- apiGroups:
- - '*'
- resources:
- - '*'
- verbs:
- - get
- - list
- - update
- - patch
- - watch
-- apiGroups:
- - app.k8s.io
- resources:
- - '*'
- verbs:
- - '*'
diff --git a/application/base/kustomization.yaml b/application/base/kustomization.yaml
deleted file mode 100644
index dcc6709..0000000
--- a/application/base/kustomization.yaml
+++ /dev/null
@@ -1,29 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- cluster-role.yaml
-- cluster-role-binding.yaml
-- service-account.yaml
-- service.yaml
-- stateful-set.yaml
-namespace: kubeflow
-nameprefix: application-controller-
-configMapGenerator:
-- name: parameters
- env: params.env
-generatorOptions:
- disableNameSuffixHash: true
-images:
-- name: gcr.io/kubeflow-images-public/kubernetes-sigs/application
- newName: gcr.io/kubeflow-images-public/kubernetes-sigs/application
- newTag: 1.0-beta
-vars:
-- name: project
- objref:
- kind: ConfigMap
- name: parameters
- apiVersion: v1
- fieldref:
- fieldpath: data.project
-configurations:
-- params.yaml
diff --git a/application/base/params.env b/application/base/params.env
deleted file mode 100644
index 8a76300..0000000
--- a/application/base/params.env
+++ /dev/null
@@ -1 +0,0 @@
-project=
diff --git a/application/base/params.yaml b/application/base/params.yaml
deleted file mode 100644
index e544ce9..0000000
--- a/application/base/params.yaml
+++ /dev/null
@@ -1,3 +0,0 @@
-varReference:
-- path: spec/template/spec/containers/image
- kind: StatefulSet
diff --git a/application/base/service-account.yaml b/application/base/service-account.yaml
deleted file mode 100644
index a36cbd8..0000000
--- a/application/base/service-account.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: service-account
diff --git a/application/base/service.yaml b/application/base/service.yaml
deleted file mode 100644
index c7368f9..0000000
--- a/application/base/service.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata:
- name: service
-spec:
- ports:
- - port: 443
diff --git a/application/base/stateful-set.yaml b/application/base/stateful-set.yaml
deleted file mode 100644
index 6c1d74c..0000000
--- a/application/base/stateful-set.yaml
+++ /dev/null
@@ -1,27 +0,0 @@
-apiVersion: apps/v1
-kind: StatefulSet
-metadata:
- name: stateful-set
-spec:
- serviceName: service
- selector:
- matchLabels:
- app: application-controller
- template:
- metadata:
- labels:
- app: application-controller
- annotations:
- sidecar.istio.io/inject: "false"
- spec:
- containers:
- - name: manager
- command:
- - /root/manager
- image: gcr.io/kubeflow-images-public/kubernetes-sigs/application
- imagePullPolicy: Always
- env:
- - name: project
- value: $(project)
- serviceAccountName: service-account
- volumeClaimTemplates: []
diff --git a/application/kustomization.yaml b/application/kustomization.yaml
deleted file mode 100644
index 6bb5836..0000000
--- a/application/kustomization.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-bases:
-- base
-commonLabels:
- app.kubernetes.io/component: kubeflow
- app.kubernetes.io/instance: kubeflow-v0.7.0
- app.kubernetes.io/managed-by: kfctl
- app.kubernetes.io/name: kubeflow
- app.kubernetes.io/part-of: kubeflow
- app.kubernetes.io/version: v0.7.0
-kind: Kustomization
-namespace: kubeflow
-resources:
-- overlays/application/application.yaml
-namePrefix: application1
diff --git a/application/overlays/application/application.yaml b/application/overlays/application/application.yaml
deleted file mode 100644
index 8824962..0000000
--- a/application/overlays/application/application.yaml
+++ /dev/null
@@ -1,34 +0,0 @@
-apiVersion: app.k8s.io/v1beta1
-kind: Application
-metadata:
- name: kubeflow
-spec:
- selector:
- matchLabels:
- app.kubernetes.io/name: kubeflow
- app.kubernetes.io/instance: kubeflow-v0.7.0
- app.kubernetes.io/managed-by: kfctl
- app.kubernetes.io/component: kubeflow
- app.kubernetes.io/part-of: kubeflow
- app.kubernetes.io/version: v0.7.0
- componentKinds:
- - group: app.k8s.io
- kind: Application
- descriptor:
- type: kubeflow
- version: v1beta1
- description: application that aggregates all kubeflow applications
- maintainers:
- - name: Jeremy Lewi
- email: jlewi@google.com
- - name: Kam Kasravi
- email: kam.d.kasravi@intel.com
- owners:
- - name: Jeremy Lewi
- email: jlewi@google.com
- keywords:
- - kubeflow
- links:
- - description: About
- url: "https://kubeflow.org"
- addOwnerRef: true
diff --git a/application/overlays/application/kustomization.yaml b/application/overlays/application/kustomization.yaml
deleted file mode 100644
index efd2eec..0000000
--- a/application/overlays/application/kustomization.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-bases:
-- ../../base
-resources:
-- application.yaml
-commonLabels:
- app.kubernetes.io/name: kubeflow
- app.kubernetes.io/instance: kubeflow-v0.7.0
- app.kubernetes.io/managed-by: kfctl
- app.kubernetes.io/component: kubeflow
- app.kubernetes.io/part-of: kubeflow
- app.kubernetes.io/version: v0.7.0
diff --git a/application/overlays/debug/kustomization.yaml b/application/overlays/debug/kustomization.yaml
deleted file mode 100644
index 93fb76b..0000000
--- a/application/overlays/debug/kustomization.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-bases:
-- ../../base
-patchesStrategicMerge:
-- stateful-set.yaml
-images:
-- name: gcr.io/$(project)/application-controller
- newName: gcr.io/$(project)/application-controller
- newTag: latest
diff --git a/application/overlays/debug/stateful-set.yaml b/application/overlays/debug/stateful-set.yaml
deleted file mode 100644
index 9408dee..0000000
--- a/application/overlays/debug/stateful-set.yaml
+++ /dev/null
@@ -1,25 +0,0 @@
-apiVersion: apps/v1
-kind: StatefulSet
-metadata:
- name: stateful-set
-spec:
- template:
- metadata:
- annotations:
- sidecar.istio.io/inject: "false"
- spec:
- containers:
- - name: manager
- image: gcr.io/$(project)/application-controller:latest
- command:
- - /go/bin/dlv
- args:
- - --listen=:2345
- - --headless=true
- - --api-version=2
- - exec
- - /go/src/github.com/kubernetes-sigs/application/manager
- ports:
- - containerPort: 2345
- securityContext:
- privileged: true
diff --git a/helm-hooks/manifests.yaml b/helm-hooks/manifests.yaml
deleted file mode 100644
index dcd852d..0000000
--- a/helm-hooks/manifests.yaml
+++ /dev/null
@@ -1,82 +0,0 @@
----
-apiVersion: batch/v1
-kind: Job
-metadata:
- generateName: upgrade-sql-schema
- annotations:
- helm.sh/hook: pre-install
- helm.sh/hook-weight: "-2"
-spec:
- template:
- spec:
- containers:
- - name: upgrade-sql-schema
- image: alpine:latest
- command: ["sleep", "5"]
- restartPolicy: Never
----
-apiVersion: batch/v1
-kind: Job
-metadata:
- name: maint-page-up
- annotations:
- helm.sh/hook: pre-install
- helm.sh/hook-delete-policy: before-hook-creation
- helm.sh/hook-weight: "-1"
-spec:
- template:
- spec:
- containers:
- - name: page-up
- image: alpine:latest
- command: ["sleep", "2"]
- restartPolicy: Never
- backoffLimit: 0
----
-apiVersion: apps/v1
-kind: ReplicaSet
-metadata:
- name: frontend
-spec:
- replicas: 1
- selector:
- matchLabels:
- tier: frontend
- template:
- metadata:
- labels:
- tier: frontend
- spec:
- containers:
- - name: main
- image: nginx:latest
----
-apiVersion: v1
-kind: Service
-metadata:
- name: frontend
- annotations:
- helm.sh/hook-weight: "2"
-spec:
- selector:
- tier: frontend
- ports:
- - protocol: TCP
- port: 80
- targetPort: 80
----
-apiVersion: batch/v1
-kind: Job
-metadata:
- name: maint-page-down
- annotations:
- helm.sh/hook: post-install
- helm.sh/hook-delete-policy: before-hook-creation
-spec:
- template:
- spec:
- containers:
- - name: page-down
- image: alpine:latest
- command: ["sleep", "2"]
- restartPolicy: Never
diff --git a/istio-crds/base/crds.yaml b/istio-crds/base/crds.yaml
deleted file mode 100644
index f58a3c2..0000000
--- a/istio-crds/base/crds.yaml
+++ /dev/null
@@ -1,1535 +0,0 @@
----
-apiVersion: apiextensions.k8s.io/v1beta1
-kind: CustomResourceDefinition
-metadata:
- name: virtualservices.networking.istio.io
- labels:
- app: istio-pilot
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: networking.istio.io
- names:
- kind: VirtualService
- listKind: VirtualServiceList
- plural: virtualservices
- singular: virtualservice
- shortNames:
- - vs
- categories:
- - istio-io
- - networking-istio-io
- scope: Namespaced
- version: v1alpha3
- additionalPrinterColumns:
- - JSONPath: .spec.gateways
- description: The names of gateways and sidecars that should apply these routes
- name: Gateways
- type: string
- - JSONPath: .spec.hosts
- description: The destination hosts to which traffic is being sent
- name: Hosts
- type: string
- - JSONPath: .metadata.creationTimestamp
- description: |-
- CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.
-
- Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
- name: Age
- type: date
----
-apiVersion: apiextensions.k8s.io/v1beta1
-kind: CustomResourceDefinition
-metadata:
- name: destinationrules.networking.istio.io
- labels:
- app: istio-pilot
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: networking.istio.io
- names:
- kind: DestinationRule
- listKind: DestinationRuleList
- plural: destinationrules
- singular: destinationrule
- shortNames:
- - dr
- categories:
- - istio-io
- - networking-istio-io
- scope: Namespaced
- version: v1alpha3
- additionalPrinterColumns:
- - JSONPath: .spec.host
- description: The name of a service from the service registry
- name: Host
- type: string
- - JSONPath: .metadata.creationTimestamp
- description: |-
- CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.
-
- Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
- name: Age
- type: date
----
-apiVersion: apiextensions.k8s.io/v1beta1
-kind: CustomResourceDefinition
-metadata:
- name: serviceentries.networking.istio.io
- labels:
- app: istio-pilot
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: networking.istio.io
- names:
- kind: ServiceEntry
- listKind: ServiceEntryList
- plural: serviceentries
- singular: serviceentry
- shortNames:
- - se
- categories:
- - istio-io
- - networking-istio-io
- scope: Namespaced
- version: v1alpha3
- additionalPrinterColumns:
- - JSONPath: .spec.hosts
- description: The hosts associated with the ServiceEntry
- name: Hosts
- type: string
- - JSONPath: .spec.location
- description: Whether the service is external to the mesh or part of the mesh (MESH_EXTERNAL or MESH_INTERNAL)
- name: Location
- type: string
- - JSONPath: .spec.resolution
- description: Service discovery mode for the hosts (NONE, STATIC, or DNS)
- name: Resolution
- type: string
- - JSONPath: .metadata.creationTimestamp
- description: |-
- CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.
-
- Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
- name: Age
- type: date
----
-apiVersion: apiextensions.k8s.io/v1beta1
-kind: CustomResourceDefinition
-metadata:
- name: gateways.networking.istio.io
- labels:
- app: istio-pilot
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: networking.istio.io
- names:
- kind: Gateway
- plural: gateways
- singular: gateway
- shortNames:
- - gw
- categories:
- - istio-io
- - networking-istio-io
- scope: Namespaced
- version: v1alpha3
----
-apiVersion: apiextensions.k8s.io/v1beta1
-kind: CustomResourceDefinition
-metadata:
- name: envoyfilters.networking.istio.io
- labels:
- app: istio-pilot
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: networking.istio.io
- names:
- kind: EnvoyFilter
- plural: envoyfilters
- singular: envoyfilter
- categories:
- - istio-io
- - networking-istio-io
- scope: Namespaced
- version: v1alpha3
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: clusterrbacconfigs.rbac.istio.io
- labels:
- app: istio-pilot
- istio: rbac
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: rbac.istio.io
- names:
- kind: ClusterRbacConfig
- plural: clusterrbacconfigs
- singular: clusterrbacconfig
- categories:
- - istio-io
- - rbac-istio-io
- scope: Cluster
- version: v1alpha1
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: policies.authentication.istio.io
- labels:
- app: istio-citadel
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: authentication.istio.io
- names:
- kind: Policy
- plural: policies
- singular: policy
- categories:
- - istio-io
- - authentication-istio-io
- scope: Namespaced
- version: v1alpha1
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: meshpolicies.authentication.istio.io
- labels:
- app: istio-citadel
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: authentication.istio.io
- names:
- kind: MeshPolicy
- listKind: MeshPolicyList
- plural: meshpolicies
- singular: meshpolicy
- categories:
- - istio-io
- - authentication-istio-io
- scope: Cluster
- version: v1alpha1
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: httpapispecbindings.config.istio.io
- labels:
- app: istio-mixer
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: HTTPAPISpecBinding
- plural: httpapispecbindings
- singular: httpapispecbinding
- categories:
- - istio-io
- - apim-istio-io
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: httpapispecs.config.istio.io
- labels:
- app: istio-mixer
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: HTTPAPISpec
- plural: httpapispecs
- singular: httpapispec
- categories:
- - istio-io
- - apim-istio-io
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: quotaspecbindings.config.istio.io
- labels:
- app: istio-mixer
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: QuotaSpecBinding
- plural: quotaspecbindings
- singular: quotaspecbinding
- categories:
- - istio-io
- - apim-istio-io
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: quotaspecs.config.istio.io
- labels:
- app: istio-mixer
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: QuotaSpec
- plural: quotaspecs
- singular: quotaspec
- categories:
- - istio-io
- - apim-istio-io
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: rules.config.istio.io
- labels:
- app: mixer
- package: istio.io.mixer
- istio: core
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: rule
- plural: rules
- singular: rule
- categories:
- - istio-io
- - policy-istio-io
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: attributemanifests.config.istio.io
- labels:
- app: mixer
- package: istio.io.mixer
- istio: core
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: attributemanifest
- plural: attributemanifests
- singular: attributemanifest
- categories:
- - istio-io
- - policy-istio-io
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: bypasses.config.istio.io
- labels:
- app: mixer
- package: bypass
- istio: mixer-adapter
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: bypass
- plural: bypasses
- singular: bypass
- categories:
- - istio-io
- - policy-istio-io
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: circonuses.config.istio.io
- labels:
- app: mixer
- package: circonus
- istio: mixer-adapter
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: circonus
- plural: circonuses
- singular: circonus
- categories:
- - istio-io
- - policy-istio-io
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: deniers.config.istio.io
- labels:
- app: mixer
- package: denier
- istio: mixer-adapter
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: denier
- plural: deniers
- singular: denier
- categories:
- - istio-io
- - policy-istio-io
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: fluentds.config.istio.io
- labels:
- app: mixer
- package: fluentd
- istio: mixer-adapter
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: fluentd
- plural: fluentds
- singular: fluentd
- categories:
- - istio-io
- - policy-istio-io
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: kubernetesenvs.config.istio.io
- labels:
- app: mixer
- package: kubernetesenv
- istio: mixer-adapter
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: kubernetesenv
- plural: kubernetesenvs
- singular: kubernetesenv
- categories:
- - istio-io
- - policy-istio-io
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: listcheckers.config.istio.io
- labels:
- app: mixer
- package: listchecker
- istio: mixer-adapter
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: listchecker
- plural: listcheckers
- singular: listchecker
- categories:
- - istio-io
- - policy-istio-io
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: memquotas.config.istio.io
- labels:
- app: mixer
- package: memquota
- istio: mixer-adapter
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: memquota
- plural: memquotas
- singular: memquota
- categories:
- - istio-io
- - policy-istio-io
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: noops.config.istio.io
- labels:
- app: mixer
- package: noop
- istio: mixer-adapter
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: noop
- plural: noops
- singular: noop
- categories:
- - istio-io
- - policy-istio-io
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: opas.config.istio.io
- labels:
- app: mixer
- package: opa
- istio: mixer-adapter
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: opa
- plural: opas
- singular: opa
- categories:
- - istio-io
- - policy-istio-io
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: prometheuses.config.istio.io
- labels:
- app: mixer
- package: prometheus
- istio: mixer-adapter
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: prometheus
- plural: prometheuses
- singular: prometheus
- categories:
- - istio-io
- - policy-istio-io
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: rbacs.config.istio.io
- labels:
- app: mixer
- package: rbac
- istio: mixer-adapter
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: rbac
- plural: rbacs
- singular: rbac
- categories:
- - istio-io
- - policy-istio-io
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: redisquotas.config.istio.io
- labels:
- app: mixer
- package: redisquota
- istio: mixer-adapter
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: redisquota
- plural: redisquotas
- singular: redisquota
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: signalfxs.config.istio.io
- labels:
- app: mixer
- package: signalfx
- istio: mixer-adapter
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: signalfx
- plural: signalfxs
- singular: signalfx
- categories:
- - istio-io
- - policy-istio-io
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: solarwindses.config.istio.io
- labels:
- app: mixer
- package: solarwinds
- istio: mixer-adapter
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: solarwinds
- plural: solarwindses
- singular: solarwinds
- categories:
- - istio-io
- - policy-istio-io
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: stackdrivers.config.istio.io
- labels:
- app: mixer
- package: stackdriver
- istio: mixer-adapter
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: stackdriver
- plural: stackdrivers
- singular: stackdriver
- categories:
- - istio-io
- - policy-istio-io
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: statsds.config.istio.io
- labels:
- app: mixer
- package: statsd
- istio: mixer-adapter
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: statsd
- plural: statsds
- singular: statsd
- categories:
- - istio-io
- - policy-istio-io
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: stdios.config.istio.io
- labels:
- app: mixer
- package: stdio
- istio: mixer-adapter
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: stdio
- plural: stdios
- singular: stdio
- categories:
- - istio-io
- - policy-istio-io
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: apikeys.config.istio.io
- labels:
- app: mixer
- package: apikey
- istio: mixer-instance
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: apikey
- plural: apikeys
- singular: apikey
- categories:
- - istio-io
- - policy-istio-io
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: authorizations.config.istio.io
- labels:
- app: mixer
- package: authorization
- istio: mixer-instance
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: authorization
- plural: authorizations
- singular: authorization
- categories:
- - istio-io
- - policy-istio-io
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: checknothings.config.istio.io
- labels:
- app: mixer
- package: checknothing
- istio: mixer-instance
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: checknothing
- plural: checknothings
- singular: checknothing
- categories:
- - istio-io
- - policy-istio-io
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: kuberneteses.config.istio.io
- labels:
- app: mixer
- package: adapter.template.kubernetes
- istio: mixer-instance
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: kubernetes
- plural: kuberneteses
- singular: kubernetes
- categories:
- - istio-io
- - policy-istio-io
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: listentries.config.istio.io
- labels:
- app: mixer
- package: listentry
- istio: mixer-instance
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: listentry
- plural: listentries
- singular: listentry
- categories:
- - istio-io
- - policy-istio-io
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: logentries.config.istio.io
- labels:
- app: mixer
- package: logentry
- istio: mixer-instance
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: logentry
- plural: logentries
- singular: logentry
- categories:
- - istio-io
- - policy-istio-io
- scope: Namespaced
- version: v1alpha2
- additionalPrinterColumns:
- - JSONPath: .spec.severity
- description: The importance of the log entry
- name: Severity
- type: string
- - JSONPath: .spec.timestamp
- description: The time value for the log entry
- name: Timestamp
- type: string
- - JSONPath: .spec.monitored_resource_type
- description: Optional expression to compute the type of the monitored resource this log entry is being recorded on
- name: Res Type
- type: string
- - JSONPath: .metadata.creationTimestamp
- description: |-
- CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.
-
- Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
- name: Age
- type: date
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: edges.config.istio.io
- labels:
- app: mixer
- package: edge
- istio: mixer-instance
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: edge
- plural: edges
- singular: edge
- categories:
- - istio-io
- - policy-istio-io
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: metrics.config.istio.io
- labels:
- app: mixer
- package: metric
- istio: mixer-instance
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: metric
- plural: metrics
- singular: metric
- categories:
- - istio-io
- - policy-istio-io
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: quotas.config.istio.io
- labels:
- app: mixer
- package: quota
- istio: mixer-instance
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: quota
- plural: quotas
- singular: quota
- categories:
- - istio-io
- - policy-istio-io
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: reportnothings.config.istio.io
- labels:
- app: mixer
- package: reportnothing
- istio: mixer-instance
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: reportnothing
- plural: reportnothings
- singular: reportnothing
- categories:
- - istio-io
- - policy-istio-io
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: tracespans.config.istio.io
- labels:
- app: mixer
- package: tracespan
- istio: mixer-instance
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: tracespan
- plural: tracespans
- singular: tracespan
- categories:
- - istio-io
- - policy-istio-io
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: rbacconfigs.rbac.istio.io
- labels:
- app: mixer
- package: istio.io.mixer
- istio: rbac
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: rbac.istio.io
- names:
- kind: RbacConfig
- plural: rbacconfigs
- singular: rbacconfig
- categories:
- - istio-io
- - rbac-istio-io
- scope: Namespaced
- version: v1alpha1
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: serviceroles.rbac.istio.io
- labels:
- app: mixer
- package: istio.io.mixer
- istio: rbac
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: rbac.istio.io
- names:
- kind: ServiceRole
- plural: serviceroles
- singular: servicerole
- categories:
- - istio-io
- - rbac-istio-io
- scope: Namespaced
- version: v1alpha1
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: servicerolebindings.rbac.istio.io
- labels:
- app: mixer
- package: istio.io.mixer
- istio: rbac
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: rbac.istio.io
- names:
- kind: ServiceRoleBinding
- plural: servicerolebindings
- singular: servicerolebinding
- categories:
- - istio-io
- - rbac-istio-io
- scope: Namespaced
- version: v1alpha1
- additionalPrinterColumns:
- - JSONPath: .spec.roleRef.name
- description: The name of the ServiceRole object being referenced
- name: Reference
- type: string
- - JSONPath: .metadata.creationTimestamp
- description: |-
- CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.
-
- Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
- name: Age
- type: date
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: adapters.config.istio.io
- labels:
- app: mixer
- package: adapter
- istio: mixer-adapter
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: adapter
- plural: adapters
- singular: adapter
- categories:
- - istio-io
- - policy-istio-io
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: instances.config.istio.io
- labels:
- app: mixer
- package: instance
- istio: mixer-instance
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: instance
- plural: instances
- singular: instance
- categories:
- - istio-io
- - policy-istio-io
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: templates.config.istio.io
- labels:
- app: mixer
- package: template
- istio: mixer-template
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: template
- plural: templates
- singular: template
- categories:
- - istio-io
- - policy-istio-io
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: handlers.config.istio.io
- labels:
- app: mixer
- package: handler
- istio: mixer-handler
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: handler
- plural: handlers
- singular: handler
- categories:
- - istio-io
- - policy-istio-io
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: cloudwatches.config.istio.io
- labels:
- app: mixer
- package: cloudwatch
- istio: mixer-adapter
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: cloudwatch
- plural: cloudwatches
- singular: cloudwatch
- categories:
- - istio-io
- - policy-istio-io
- scope: Namespaced
- version: v1alpha2
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: dogstatsds.config.istio.io
- labels:
- app: mixer
- package: dogstatsd
- istio: mixer-adapter
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: dogstatsd
- plural: dogstatsds
- singular: dogstatsd
- categories:
- - istio-io
- - policy-istio-io
- scope: Namespaced
- version: v1alpha2
----
-apiVersion: apiextensions.k8s.io/v1beta1
-kind: CustomResourceDefinition
-metadata:
- name: sidecars.networking.istio.io
- labels:
- app: istio-pilot
- chart: istio
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: networking.istio.io
- names:
- kind: Sidecar
- plural: sidecars
- singular: sidecar
- categories:
- - istio-io
- - networking-istio-io
- scope: Namespaced
- version: v1alpha3
----
-kind: CustomResourceDefinition
-apiVersion: apiextensions.k8s.io/v1beta1
-metadata:
- name: zipkins.config.istio.io
- labels:
- app: mixer
- package: zipkin
- istio: mixer-adapter
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: config.istio.io
- names:
- kind: zipkin
- plural: zipkins
- singular: zipkin
- categories:
- - istio-io
- - policy-istio-io
- scope: Namespaced
- version: v1alpha2
----
-apiVersion: apiextensions.k8s.io/v1beta1
-kind: CustomResourceDefinition
-metadata:
- name: clusterissuers.certmanager.k8s.io
- labels:
- app: certmanager
- chart: certmanager
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: certmanager.k8s.io
- version: v1alpha1
- names:
- kind: ClusterIssuer
- plural: clusterissuers
- scope: Cluster
----
-apiVersion: apiextensions.k8s.io/v1beta1
-kind: CustomResourceDefinition
-metadata:
- name: issuers.certmanager.k8s.io
- labels:
- app: certmanager
- chart: certmanager
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- group: certmanager.k8s.io
- version: v1alpha1
- names:
- kind: Issuer
- plural: issuers
- scope: Namespaced
----
-apiVersion: apiextensions.k8s.io/v1beta1
-kind: CustomResourceDefinition
-metadata:
- name: certificates.certmanager.k8s.io
- labels:
- app: certmanager
- chart: certmanager
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- additionalPrinterColumns:
- - JSONPath: .status.conditions[?(@.type=="Ready")].status
- name: Ready
- type: string
- - JSONPath: .spec.secretName
- name: Secret
- type: string
- - JSONPath: .spec.issuerRef.name
- name: Issuer
- type: string
- priority: 1
- - JSONPath: .status.conditions[?(@.type=="Ready")].message
- name: Status
- type: string
- priority: 1
- - JSONPath: .metadata.creationTimestamp
- description: |-
- CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.
-
- Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
- name: Age
- type: date
- group: certmanager.k8s.io
- version: v1alpha1
- scope: Namespaced
- names:
- kind: Certificate
- plural: certificates
- shortNames:
- - cert
- - certs
----
-apiVersion: apiextensions.k8s.io/v1beta1
-kind: CustomResourceDefinition
-metadata:
- name: orders.certmanager.k8s.io
- labels:
- app: certmanager
- chart: certmanager
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- additionalPrinterColumns:
- - JSONPath: .status.state
- name: State
- type: string
- - JSONPath: .spec.issuerRef.name
- name: Issuer
- type: string
- priority: 1
- - JSONPath: .status.reason
- name: Reason
- type: string
- priority: 1
- - JSONPath: .metadata.creationTimestamp
- description: |-
- CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.
-
- Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
- name: Age
- type: date
- group: certmanager.k8s.io
- version: v1alpha1
- names:
- kind: Order
- plural: orders
- scope: Namespaced
----
-apiVersion: apiextensions.k8s.io/v1beta1
-kind: CustomResourceDefinition
-metadata:
- name: challenges.certmanager.k8s.io
- labels:
- app: certmanager
- chart: certmanager
- heritage: Tiller
- release: istio
- annotations:
- "helm.sh/resource-policy": keep
-spec:
- additionalPrinterColumns:
- - JSONPath: .status.state
- name: State
- type: string
- - JSONPath: .spec.dnsName
- name: Domain
- type: string
- - JSONPath: .status.reason
- name: Reason
- type: string
- - JSONPath: .metadata.creationTimestamp
- description: |-
- CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.
-
- Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
- name: Age
- type: date
- group: certmanager.k8s.io
- version: v1alpha1
- names:
- kind: Challenge
- plural: challenges
- scope: Namespaced
diff --git a/istio-crds/base/kustomization.yaml b/istio-crds/base/kustomization.yaml
deleted file mode 100644
index ca49cac..0000000
--- a/istio-crds/base/kustomization.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- crds.yaml
-namespace: kubeflow
diff --git a/istio-install/base/istio-noauth.yaml b/istio-install/base/istio-noauth.yaml
deleted file mode 100644
index 518d955..0000000
--- a/istio-install/base/istio-noauth.yaml
+++ /dev/null
@@ -1,17385 +0,0 @@
-apiVersion: v1
-kind: Namespace
-metadata:
- name: istio-system
- labels:
- istio-injection: disabled
----
-# Source: istio/charts/kiali/templates/demosecret.yaml
-
-apiVersion: v1
-kind: Secret
-metadata:
- name: kiali
- labels:
- app: kiali
- chart: kiali
- heritage: Tiller
- release: istio
-type: Opaque
-data:
- username: YWRtaW4= # admin
- passphrase: YWRtaW4= # admin
-
----
-# Source: istio/charts/galley/templates/configmap.yaml
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: istio-galley-configuration
- labels:
- app: galley
- chart: galley
- heritage: Tiller
- release: istio
- istio: galley
-data:
- validatingwebhookconfiguration.yaml: |-
- apiVersion: admissionregistration.k8s.io/v1beta1
- kind: ValidatingWebhookConfiguration
- metadata:
- name: istio-galley
- namespace: istio-system
- labels:
- app: galley
- chart: galley
- heritage: Tiller
- release: istio
- istio: galley
- webhooks:
- - name: pilot.validation.istio.io
- clientConfig:
- service:
- name: istio-galley
- namespace: istio-system
- path: "/admitpilot"
- caBundle: ""
- rules:
- - operations:
- - CREATE
- - UPDATE
- apiGroups:
- - config.istio.io
- apiVersions:
- - v1alpha2
- resources:
- - httpapispecs
- - httpapispecbindings
- - quotaspecs
- - quotaspecbindings
- - operations:
- - CREATE
- - UPDATE
- apiGroups:
- - rbac.istio.io
- apiVersions:
- - "*"
- resources:
- - "*"
- - operations:
- - CREATE
- - UPDATE
- apiGroups:
- - authentication.istio.io
- apiVersions:
- - "*"
- resources:
- - "*"
- - operations:
- - CREATE
- - UPDATE
- apiGroups:
- - networking.istio.io
- apiVersions:
- - "*"
- resources:
- - destinationrules
- - envoyfilters
- - gateways
- - serviceentries
- - sidecars
- - virtualservices
- failurePolicy: Fail
- - name: mixer.validation.istio.io
- clientConfig:
- service:
- name: istio-galley
- namespace: istio-system
- path: "/admitmixer"
- caBundle: ""
- rules:
- - operations:
- - CREATE
- - UPDATE
- apiGroups:
- - config.istio.io
- apiVersions:
- - v1alpha2
- resources:
- - rules
- - attributemanifests
- - circonuses
- - deniers
- - fluentds
- - kubernetesenvs
- - listcheckers
- - memquotas
- - noops
- - opas
- - prometheuses
- - rbacs
- - solarwindses
- - stackdrivers
- - cloudwatches
- - dogstatsds
- - statsds
- - stdios
- - apikeys
- - authorizations
- - checknothings
- # - kuberneteses
- - listentries
- - logentries
- - metrics
- - quotas
- - reportnothings
- - tracespans
- failurePolicy: Fail
----
-# Source: istio/charts/grafana/templates/configmap-custom-resources.yaml
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: istio-grafana-custom-resources
- labels:
- app: grafana
- chart: grafana
- heritage: Tiller
- release: istio
- istio: grafana
-data:
- custom-resources.yaml: |-
- apiVersion: authentication.istio.io/v1alpha1
- kind: Policy
- metadata:
- name: grafana-ports-mtls-disabled
- namespace: istio-system
- labels:
- app: grafana
- chart: grafana
- heritage: Tiller
- release: istio
- spec:
- targets:
- - name: grafana
- ports:
- - number: 3000
- run.sh: |-
- #!/bin/sh
-
- set -x
-
- if [ "$#" -ne "1" ]; then
- echo "first argument should be path to custom resource yaml"
- exit 1
- fi
-
- pathToResourceYAML=${1}
-
- kubectl get validatingwebhookconfiguration istio-galley 2>/dev/null
- if [ "$?" -eq 0 ]; then
- echo "istio-galley validatingwebhookconfiguration found - waiting for istio-galley deployment to be ready"
- while true; do
- kubectl -n istio-system get deployment istio-galley 2>/dev/null
- if [ "$?" -eq 0 ]; then
- break
- fi
- sleep 1
- done
- kubectl -n istio-system rollout status deployment istio-galley
- if [ "$?" -ne 0 ]; then
- echo "istio-galley deployment rollout status check failed"
- exit 1
- fi
- echo "istio-galley deployment ready for configuration validation"
- fi
- sleep 5
- kubectl apply -f ${pathToResourceYAML}
-
-
----
-# Source: istio/charts/grafana/templates/configmap-dashboards.yaml
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: istio-grafana-configuration-dashboards-galley-dashboard
- labels:
- app: grafana
- chart: grafana
- heritage: Tiller
- release: istio
- istio: grafana
-data:
- galley-dashboard.json: '{
- "__inputs": [
- {
- "name": "DS_PROMETHEUS",
- "label": "Prometheus",
- "description": "",
- "type": "datasource",
- "pluginId": "prometheus",
- "pluginName": "Prometheus"
- }
- ],
- "annotations": {
- "list": [
- {
- "builtIn": 1,
- "datasource": "-- Grafana --",
- "enable": true,
- "hide": true,
- "iconColor": "rgba(0, 211, 255, 1)",
- "name": "Annotations & Alerts",
- "type": "dashboard"
- }
- ]
- },
- "editable": false,
- "gnetId": null,
- "graphTooltip": 0,
- "links": [],
- "panels": [
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 5,
- "w": 24,
- "x": 0,
- "y": 0
- },
- "id": 46,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "sum(istio_build{component=\"galley\"}) by (tag)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{ tag }}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "Galley Versions",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "collapsed": false,
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 5
- },
- "id": 40,
- "panels": [],
- "title": "Resource Usage",
- "type": "row"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 8,
- "w": 6,
- "x": 0,
- "y": 6
- },
- "id": 36,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "process_virtual_memory_bytes{job=\"galley\"}",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "Virtual Memory",
- "refId": "A"
- },
- {
- "expr": "process_resident_memory_bytes{job=\"galley\"}",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "Resident Memory",
- "refId": "B"
- },
- {
- "expr": "go_memstats_heap_sys_bytes{job=\"galley\"}",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "heap sys",
- "refId": "C"
- },
- {
- "expr": "go_memstats_heap_alloc_bytes{job=\"galley\"}",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "heap alloc",
- "refId": "D"
- },
- {
- "expr": "go_memstats_alloc_bytes{job=\"galley\"}",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "Alloc",
- "refId": "F"
- },
- {
- "expr": "go_memstats_heap_inuse_bytes{job=\"galley\"}",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "Heap in-use",
- "refId": "G"
- },
- {
- "expr": "go_memstats_stack_inuse_bytes{job=\"galley\"}",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "Stack in-use",
- "refId": "H"
- },
- {
- "expr": "sum(container_memory_usage_bytes{container_name=~\"galley\", pod_name=~\"istio-galley-.*\"})",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "Total (kis)",
- "refId": "E"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "Memory",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 8,
- "w": 6,
- "x": 6,
- "y": 6
- },
- "id": 38,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "sum(rate(container_cpu_usage_seconds_total{container_name=~\"galley\", pod_name=~\"istio-galley-.*\"}[1m]))",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "Total (k8s)",
- "refId": "A"
- },
- {
- "expr": "sum(rate(container_cpu_usage_seconds_total{container_name=~\"galley\", pod_name=~\"istio-galley-.*\"}[1m])) by (container_name)",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "{{ container_name }} (k8s)",
- "refId": "B"
- },
- {
- "expr": "irate(process_cpu_seconds_total{job=\"galley\"}[1m])",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "galley (self-reported)",
- "refId": "C"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "CPU",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 8,
- "w": 6,
- "x": 12,
- "y": 6
- },
- "id": 42,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "process_open_fds{job=\"galley\"}",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "Open FDs (galley)",
- "refId": "A"
- },
- {
- "expr": "container_fs_usage_bytes{container_name=~\"galley\", pod_name=~\"istio-galley-.*\"}",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "{{ container_name }} ",
- "refId": "B"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "Disk",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 8,
- "w": 6,
- "x": 18,
- "y": 6
- },
- "id": 44,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "go_goroutines{job=\"galley\"}",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "goroutines_total",
- "refId": "A"
- },
- {
- "expr": "galley_mcp_source_clients_total",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "clients_total",
- "refId": "B"
- },
- {
- "expr": "go_goroutines{job=\"galley\"}/galley_mcp_source_clients_total",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "avg_goroutines_per_client",
- "refId": "C"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "Goroutines",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "collapsed": false,
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 14
- },
- "id": 10,
- "panels": [],
- "title": "Runtime",
- "type": "row"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 8,
- "x": 0,
- "y": 15
- },
- "id": 2,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "sum(rate(galley_runtime_strategy_on_change_total[1m])) * 60",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "Strategy Change Events",
- "refId": "A"
- },
- {
- "expr": "sum(rate(galley_runtime_processor_events_processed_total[1m])) * 60",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "Processed Events",
- "refId": "B"
- },
- {
- "expr": "sum(rate(galley_runtime_processor_snapshots_published_total[1m])) * 60",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "Snapshot Published",
- "refId": "C"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "Event Rates",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": "Events/min",
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": "",
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 8,
- "x": 8,
- "y": 15
- },
- "id": 4,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "sum(rate(galley_runtime_strategy_timer_max_time_reached_total[1m])) * 60",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "Max Time Reached",
- "refId": "A"
- },
- {
- "expr": "sum(rate(galley_runtime_strategy_timer_quiesce_reached_total[1m])) * 60",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "Quiesce Reached",
- "refId": "B"
- },
- {
- "expr": "sum(rate(galley_runtime_strategy_timer_resets_total[1m])) * 60",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "Timer Resets",
- "refId": "C"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "Timer Rates",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": "Events/min",
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 8,
- "x": 16,
- "y": 15
- },
- "id": 8,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 3,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": true,
- "steppedLine": false,
- "targets": [
- {
- "expr": "histogram_quantile(0.50, sum by (le) (galley_runtime_processor_snapshot_events_total_bucket))",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "P50",
- "refId": "A"
- },
- {
- "expr": "histogram_quantile(0.90, sum by (le) (galley_runtime_processor_snapshot_events_total_bucket))",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "P90",
- "refId": "B"
- },
- {
- "expr": "histogram_quantile(0.95, sum by (le) (galley_runtime_processor_snapshot_events_total_bucket))",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "P95",
- "refId": "C"
- },
- {
- "expr": "histogram_quantile(0.99, sum by (le) (galley_runtime_processor_snapshot_events_total_bucket))",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "P99",
- "refId": "D"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "Events Per Snapshot",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 8,
- "x": 8,
- "y": 21
- },
- "id": 6,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "sum by (typeURL) (galley_runtime_state_type_instances_total)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{ typeURL }}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "State Type Instances",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": "Count",
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "collapsed": false,
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 27
- },
- "id": 34,
- "panels": [],
- "title": "Validation",
- "type": "row"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 8,
- "x": 0,
- "y": 28
- },
- "id": 28,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "galley_validation_cert_key_updates{job=\"galley\"}",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "Key Updates",
- "refId": "A"
- },
- {
- "expr": "galley_validation_cert_key_update_errors{job=\"galley\"}",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "Key Update Errors: {{ error }}",
- "refId": "B"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "Validation Webhook Certificate",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 8,
- "x": 8,
- "y": 28
- },
- "id": 30,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "sum(galley_validation_passed{job=\"galley\"}) by (group, version, resource)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "Passed: {{ group }}/{{ version }}/{{resource}}",
- "refId": "A"
- },
- {
- "expr": "sum(galley_validation_failed{job=\"galley\"}) by (group, version, resource, reason)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "Failed: {{ group }}/{{ version }}/{{resource}} ({{ reason}})",
- "refId": "B"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "Resource Validation",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 8,
- "x": 16,
- "y": 28
- },
- "id": 32,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "sum(galley_validation_http_error{job=\"galley\"}) by (status)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{ status }}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "Validation HTTP Errors",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "collapsed": false,
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 34
- },
- "id": 12,
- "panels": [],
- "title": "Kubernetes Source",
- "type": "row"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 8,
- "x": 0,
- "y": 35
- },
- "id": 14,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "rate(galley_source_kube_event_success_total[1m]) * 60",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "Success",
- "refId": "A"
- },
- {
- "expr": "rate(galley_source_kube_event_error_total[1m]) * 60",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "Error",
- "refId": "B"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "Source Event Rate",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": "Events/min",
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 8,
- "x": 8,
- "y": 35
- },
- "id": 16,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "rate(galley_source_kube_dynamic_converter_success_total[1m]) * 60",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{apiVersion=\"{{apiVersion}}\",group=\"{{group}}\",kind=\"{{kind}}\"}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "Kubernetes Object Conversion Successes",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": "Conversions/min",
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 8,
- "x": 16,
- "y": 35
- },
- "id": 24,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "rate(galley_source_kube_dynamic_converter_failure_total[1m]) * 60",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "Error",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "Kubernetes Object Conversion Failures",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": "Failures/min",
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "collapsed": false,
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 41
- },
- "id": 18,
- "panels": [],
- "title": "Mesh Configuration Protocol",
- "type": "row"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 8,
- "x": 0,
- "y": 42
- },
- "id": 20,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "sum(galley_mcp_source_clients_total)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "Clients",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "Connected Clients",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 8,
- "x": 8,
- "y": 42
- },
- "id": 22,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "sum by(collection)(irate(galley_mcp_source_request_acks_total[1m]) * 60)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "Request ACKs",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": "ACKs/min",
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 8,
- "x": 16,
- "y": 42
- },
- "id": 26,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "rate(galley_mcp_source_request_nacks_total[1m]) * 60",
- "format": "time_series",
- "intervalFactor": 1,
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeRegions": [],
- "timeShift": null,
- "title": "Request NACKs",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": "NACKs/min",
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- }
- ],
- "refresh": "5s",
- "schemaVersion": 16,
- "style": "dark",
- "tags": [],
- "templating": {
- "list": []
- },
- "time": {
- "from": "now-5m",
- "to": "now"
- },
- "timepicker": {
- "refresh_intervals": [
- "5s",
- "10s",
- "30s",
- "1m",
- "5m",
- "15m",
- "30m",
- "1h",
- "2h",
- "1d"
- ],
- "time_options": [
- "5m",
- "15m",
- "1h",
- "6h",
- "12h",
- "24h",
- "2d",
- "7d",
- "30d"
- ]
- },
- "timezone": "",
- "title": "Istio Galley Dashboard",
- "uid": "TSEY6jLmk",
- "version": 1
-}
-'
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: istio-grafana-configuration-dashboards-istio-mesh-dashboard
- labels:
- app: grafana
- chart: grafana
- heritage: Tiller
- release: istio
- istio: grafana
-data:
- istio-mesh-dashboard.json: '{
- "__inputs": [
- {
- "name": "DS_PROMETHEUS",
- "label": "Prometheus",
- "description": "",
- "type": "datasource",
- "pluginId": "prometheus",
- "pluginName": "Prometheus"
- }
- ],
- "__requires": [
- {
- "type": "grafana",
- "id": "grafana",
- "name": "Grafana",
- "version": "5.2.3"
- },
- {
- "type": "panel",
- "id": "graph",
- "name": "Graph",
- "version": "5.0.0"
- },
- {
- "type": "datasource",
- "id": "prometheus",
- "name": "Prometheus",
- "version": "5.0.0"
- },
- {
- "type": "panel",
- "id": "singlestat",
- "name": "Singlestat",
- "version": "5.0.0"
- },
- {
- "type": "panel",
- "id": "table",
- "name": "Table",
- "version": "5.0.0"
- },
- {
- "type": "panel",
- "id": "text",
- "name": "Text",
- "version": "5.0.0"
- }
- ],
- "annotations": {
- "list": [
- {
- "builtIn": 1,
- "datasource": "-- Grafana --",
- "enable": true,
- "hide": true,
- "iconColor": "rgba(0, 211, 255, 1)",
- "name": "Annotations & Alerts",
- "type": "dashboard"
- }
- ]
- },
- "editable": false,
- "gnetId": null,
- "graphTooltip": 0,
- "id": null,
- "links": [],
- "panels": [
- {
- "content": "
",
- "gridPos": {
- "h": 3,
- "w": 24,
- "x": 0,
- "y": 0
- },
- "height": "50px",
- "id": 13,
- "links": [],
- "mode": "html",
- "style": {
- "font-size": "18pt"
- },
- "title": "",
- "transparent": true,
- "type": "text"
- },
- {
- "cacheTimeout": null,
- "colorBackground": false,
- "colorValue": false,
- "colors": [
- "rgba(245, 54, 54, 0.9)",
- "rgba(237, 129, 40, 0.89)",
- "rgba(50, 172, 45, 0.97)"
- ],
- "datasource": "Prometheus",
- "format": "ops",
- "gauge": {
- "maxValue": 100,
- "minValue": 0,
- "show": false,
- "thresholdLabels": false,
- "thresholdMarkers": true
- },
- "gridPos": {
- "h": 3,
- "w": 6,
- "x": 0,
- "y": 3
- },
- "id": 20,
- "interval": null,
- "links": [],
- "mappingType": 1,
- "mappingTypes": [
- {
- "name": "value to text",
- "value": 1
- },
- {
- "name": "range to text",
- "value": 2
- }
- ],
- "maxDataPoints": 100,
- "nullPointMode": "connected",
- "nullText": null,
- "postfix": "",
- "postfixFontSize": "50%",
- "prefix": "",
- "prefixFontSize": "50%",
- "rangeMaps": [
- {
- "from": "null",
- "text": "N/A",
- "to": "null"
- }
- ],
- "sparkline": {
- "fillColor": "rgba(31, 118, 189, 0.18)",
- "full": true,
- "lineColor": "rgb(31, 120, 193)",
- "show": true
- },
- "tableColumn": "",
- "targets": [
- {
- "expr": "round(sum(irate(istio_requests_total{reporter=\"destination\"}[1m])), 0.001)",
- "intervalFactor": 1,
- "refId": "A",
- "step": 4
- }
- ],
- "thresholds": "",
- "title": "Global Request Volume",
- "transparent": false,
- "type": "singlestat",
- "valueFontSize": "80%",
- "valueMaps": [
- {
- "op": "=",
- "text": "N/A",
- "value": "null"
- }
- ],
- "valueName": "avg"
- },
- {
- "cacheTimeout": null,
- "colorBackground": false,
- "colorValue": false,
- "colors": [
- "rgba(245, 54, 54, 0.9)",
- "rgba(237, 129, 40, 0.89)",
- "rgba(50, 172, 45, 0.97)"
- ],
- "datasource": "Prometheus",
- "format": "percentunit",
- "gauge": {
- "maxValue": 100,
- "minValue": 80,
- "show": false,
- "thresholdLabels": false,
- "thresholdMarkers": false
- },
- "gridPos": {
- "h": 3,
- "w": 6,
- "x": 6,
- "y": 3
- },
- "id": 21,
- "interval": null,
- "links": [],
- "mappingType": 1,
- "mappingTypes": [
- {
- "name": "value to text",
- "value": 1
- },
- {
- "name": "range to text",
- "value": 2
- }
- ],
- "maxDataPoints": 100,
- "nullPointMode": "connected",
- "nullText": null,
- "postfix": "",
- "postfixFontSize": "50%",
- "prefix": "",
- "prefixFontSize": "50%",
- "rangeMaps": [
- {
- "from": "null",
- "text": "N/A",
- "to": "null"
- }
- ],
- "sparkline": {
- "fillColor": "rgba(31, 118, 189, 0.18)",
- "full": true,
- "lineColor": "rgb(31, 120, 193)",
- "show": true
- },
- "tableColumn": "",
- "targets": [
- {
- "expr": "sum(rate(istio_requests_total{reporter=\"destination\", response_code!~\"5.*\"}[1m])) / sum(rate(istio_requests_total{reporter=\"destination\"}[1m]))",
- "format": "time_series",
- "intervalFactor": 1,
- "refId": "A",
- "step": 4
- }
- ],
- "thresholds": "95, 99, 99.5",
- "title": "Global Success Rate (non-5xx responses)",
- "transparent": false,
- "type": "singlestat",
- "valueFontSize": "80%",
- "valueMaps": [
- {
- "op": "=",
- "text": "N/A",
- "value": "null"
- }
- ],
- "valueName": "avg"
- },
- {
- "cacheTimeout": null,
- "colorBackground": false,
- "colorValue": false,
- "colors": [
- "rgba(245, 54, 54, 0.9)",
- "rgba(237, 129, 40, 0.89)",
- "rgba(50, 172, 45, 0.97)"
- ],
- "datasource": "Prometheus",
- "format": "ops",
- "gauge": {
- "maxValue": 100,
- "minValue": 0,
- "show": false,
- "thresholdLabels": false,
- "thresholdMarkers": true
- },
- "gridPos": {
- "h": 3,
- "w": 6,
- "x": 12,
- "y": 3
- },
- "id": 22,
- "interval": null,
- "links": [],
- "mappingType": 1,
- "mappingTypes": [
- {
- "name": "value to text",
- "value": 1
- },
- {
- "name": "range to text",
- "value": 2
- }
- ],
- "maxDataPoints": 100,
- "nullPointMode": "connected",
- "nullText": null,
- "postfix": "",
- "postfixFontSize": "50%",
- "prefix": "",
- "prefixFontSize": "50%",
- "rangeMaps": [
- {
- "from": "null",
- "text": "N/A",
- "to": "null"
- }
- ],
- "sparkline": {
- "fillColor": "rgba(31, 118, 189, 0.18)",
- "full": true,
- "lineColor": "rgb(31, 120, 193)",
- "show": true
- },
- "tableColumn": "",
- "targets": [
- {
- "expr": "sum(irate(istio_requests_total{reporter=\"destination\", response_code=~\"4.*\"}[1m])) ",
- "format": "time_series",
- "intervalFactor": 1,
- "refId": "A",
- "step": 4
- }
- ],
- "thresholds": "",
- "title": "4xxs",
- "transparent": false,
- "type": "singlestat",
- "valueFontSize": "80%",
- "valueMaps": [
- {
- "op": "=",
- "text": "N/A",
- "value": "null"
- }
- ],
- "valueName": "avg"
- },
- {
- "cacheTimeout": null,
- "colorBackground": false,
- "colorValue": false,
- "colors": [
- "rgba(245, 54, 54, 0.9)",
- "rgba(237, 129, 40, 0.89)",
- "rgba(50, 172, 45, 0.97)"
- ],
- "datasource": "Prometheus",
- "format": "ops",
- "gauge": {
- "maxValue": 100,
- "minValue": 0,
- "show": false,
- "thresholdLabels": false,
- "thresholdMarkers": true
- },
- "gridPos": {
- "h": 3,
- "w": 6,
- "x": 18,
- "y": 3
- },
- "id": 23,
- "interval": null,
- "links": [],
- "mappingType": 1,
- "mappingTypes": [
- {
- "name": "value to text",
- "value": 1
- },
- {
- "name": "range to text",
- "value": 2
- }
- ],
- "maxDataPoints": 100,
- "nullPointMode": "connected",
- "nullText": null,
- "postfix": "",
- "postfixFontSize": "50%",
- "prefix": "",
- "prefixFontSize": "50%",
- "rangeMaps": [
- {
- "from": "null",
- "text": "N/A",
- "to": "null"
- }
- ],
- "sparkline": {
- "fillColor": "rgba(31, 118, 189, 0.18)",
- "full": true,
- "lineColor": "rgb(31, 120, 193)",
- "show": true
- },
- "tableColumn": "",
- "targets": [
- {
- "expr": "sum(irate(istio_requests_total{reporter=\"destination\", response_code=~\"5.*\"}[1m])) ",
- "format": "time_series",
- "intervalFactor": 1,
- "refId": "A",
- "step": 4
- }
- ],
- "thresholds": "",
- "title": "5xxs",
- "transparent": false,
- "type": "singlestat",
- "valueFontSize": "80%",
- "valueMaps": [
- {
- "op": "=",
- "text": "N/A",
- "value": "null"
- }
- ],
- "valueName": "avg"
- },
- {
- "columns": [],
- "datasource": "Prometheus",
- "fontSize": "100%",
- "gridPos": {
- "h": 21,
- "w": 24,
- "x": 0,
- "y": 6
- },
- "hideTimeOverride": false,
- "id": 73,
- "links": [],
- "pageSize": null,
- "repeat": null,
- "repeatDirection": "v",
- "scroll": true,
- "showHeader": true,
- "sort": {
- "col": 4,
- "desc": true
- },
- "styles": [
- {
- "alias": "Workload",
- "colorMode": null,
- "colors": [
- "rgba(245, 54, 54, 0.9)",
- "rgba(237, 129, 40, 0.89)",
- "rgba(50, 172, 45, 0.97)"
- ],
- "dateFormat": "YYYY-MM-DD HH:mm:ss",
- "decimals": 2,
- "link": false,
- "linkTargetBlank": false,
- "linkTooltip": "Workload dashboard",
- "linkUrl": "/dashboard/db/istio-workload-dashboard?var-namespace=$__cell_2&var-workload=$__cell_",
- "pattern": "destination_workload",
- "preserveFormat": false,
- "sanitize": false,
- "thresholds": [],
- "type": "hidden",
- "unit": "short"
- },
- {
- "alias": "",
- "colorMode": null,
- "colors": [
- "rgba(245, 54, 54, 0.9)",
- "rgba(237, 129, 40, 0.89)",
- "rgba(50, 172, 45, 0.97)"
- ],
- "dateFormat": "YYYY-MM-DD HH:mm:ss",
- "decimals": 2,
- "pattern": "Time",
- "thresholds": [],
- "type": "hidden",
- "unit": "short"
- },
- {
- "alias": "Requests",
- "colorMode": null,
- "colors": [
- "rgba(245, 54, 54, 0.9)",
- "rgba(237, 129, 40, 0.89)",
- "rgba(50, 172, 45, 0.97)"
- ],
- "dateFormat": "YYYY-MM-DD HH:mm:ss",
- "decimals": 2,
- "pattern": "Value #A",
- "thresholds": [],
- "type": "number",
- "unit": "ops"
- },
- {
- "alias": "P50 Latency",
- "colorMode": null,
- "colors": [
- "rgba(245, 54, 54, 0.9)",
- "rgba(237, 129, 40, 0.89)",
- "rgba(50, 172, 45, 0.97)"
- ],
- "dateFormat": "YYYY-MM-DD HH:mm:ss",
- "decimals": 2,
- "pattern": "Value #B",
- "thresholds": [],
- "type": "number",
- "unit": "s"
- },
- {
- "alias": "P90 Latency",
- "colorMode": null,
- "colors": [
- "rgba(245, 54, 54, 0.9)",
- "rgba(237, 129, 40, 0.89)",
- "rgba(50, 172, 45, 0.97)"
- ],
- "dateFormat": "YYYY-MM-DD HH:mm:ss",
- "decimals": 2,
- "pattern": "Value #D",
- "thresholds": [],
- "type": "number",
- "unit": "s"
- },
- {
- "alias": "P99 Latency",
- "colorMode": null,
- "colors": [
- "rgba(245, 54, 54, 0.9)",
- "rgba(237, 129, 40, 0.89)",
- "rgba(50, 172, 45, 0.97)"
- ],
- "dateFormat": "YYYY-MM-DD HH:mm:ss",
- "decimals": 2,
- "pattern": "Value #E",
- "thresholds": [],
- "type": "number",
- "unit": "s"
- },
- {
- "alias": "Success Rate",
- "colorMode": "cell",
- "colors": [
- "rgba(245, 54, 54, 0.9)",
- "rgba(237, 129, 40, 0.89)",
- "rgba(50, 172, 45, 0.97)"
- ],
- "dateFormat": "YYYY-MM-DD HH:mm:ss",
- "decimals": 2,
- "pattern": "Value #F",
- "thresholds": [
- ".95",
- " 1.00"
- ],
- "type": "number",
- "unit": "percentunit"
- },
- {
- "alias": "Workload",
- "colorMode": null,
- "colors": [
- "rgba(245, 54, 54, 0.9)",
- "rgba(237, 129, 40, 0.89)",
- "rgba(50, 172, 45, 0.97)"
- ],
- "dateFormat": "YYYY-MM-DD HH:mm:ss",
- "decimals": 2,
- "link": true,
- "linkTooltip": "$__cell dashboard",
- "linkUrl": "/dashboard/db/istio-workload-dashboard?var-workload=$__cell_2&var-namespace=$__cell_3",
- "pattern": "destination_workload_var",
- "thresholds": [],
- "type": "number",
- "unit": "short"
- },
- {
- "alias": "Service",
- "colorMode": null,
- "colors": [
- "rgba(245, 54, 54, 0.9)",
- "rgba(237, 129, 40, 0.89)",
- "rgba(50, 172, 45, 0.97)"
- ],
- "dateFormat": "YYYY-MM-DD HH:mm:ss",
- "decimals": 2,
- "link": true,
- "linkTooltip": "$__cell dashboard",
- "linkUrl": "/dashboard/db/istio-service-dashboard?var-service=$__cell",
- "pattern": "destination_service",
- "thresholds": [],
- "type": "string",
- "unit": "short"
- },
- {
- "alias": "",
- "colorMode": null,
- "colors": [
- "rgba(245, 54, 54, 0.9)",
- "rgba(237, 129, 40, 0.89)",
- "rgba(50, 172, 45, 0.97)"
- ],
- "dateFormat": "YYYY-MM-DD HH:mm:ss",
- "decimals": 2,
- "pattern": "destination_workload_namespace",
- "thresholds": [],
- "type": "hidden",
- "unit": "short"
- }
- ],
- "targets": [
- {
- "expr": "label_join(sum(rate(istio_requests_total{reporter=\"destination\", response_code=\"200\"}[1m])) by (destination_workload, destination_workload_namespace, destination_service), \"destination_workload_var\", \".\", \"destination_workload\", \"destination_workload_namespace\")",
- "format": "table",
- "hide": false,
- "instant": true,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload}}.{{ destination_workload_namespace }}",
- "refId": "A"
- },
- {
- "expr": "label_join(histogram_quantile(0.50, sum(rate(istio_request_duration_seconds_bucket{reporter=\"destination\"}[1m])) by (le, destination_workload, destination_workload_namespace)), \"destination_workload_var\", \".\", \"destination_workload\", \"destination_workload_namespace\")",
- "format": "table",
- "hide": false,
- "instant": true,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload}}.{{ destination_workload_namespace }}",
- "refId": "B"
- },
- {
- "expr": "label_join(histogram_quantile(0.90, sum(rate(istio_request_duration_seconds_bucket{reporter=\"destination\"}[1m])) by (le, destination_workload, destination_workload_namespace)), \"destination_workload_var\", \".\", \"destination_workload\", \"destination_workload_namespace\")",
- "format": "table",
- "hide": false,
- "instant": true,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }}",
- "refId": "D"
- },
- {
- "expr": "label_join(histogram_quantile(0.99, sum(rate(istio_request_duration_seconds_bucket{reporter=\"destination\"}[1m])) by (le, destination_workload, destination_workload_namespace)), \"destination_workload_var\", \".\", \"destination_workload\", \"destination_workload_namespace\")",
- "format": "table",
- "hide": false,
- "instant": true,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }}",
- "refId": "E"
- },
- {
- "expr": "label_join((sum(rate(istio_requests_total{reporter=\"destination\", response_code!~\"5.*\"}[1m])) by (destination_workload, destination_workload_namespace) / sum(rate(istio_requests_total{reporter=\"destination\"}[1m])) by (destination_workload, destination_workload_namespace)), \"destination_workload_var\", \".\", \"destination_workload\", \"destination_workload_namespace\")",
- "format": "table",
- "hide": false,
- "instant": true,
- "interval": "",
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }}",
- "refId": "F"
- }
- ],
- "timeFrom": null,
- "title": "HTTP/GRPC Workloads",
- "transform": "table",
- "transparent": false,
- "type": "table"
- },
- {
- "columns": [],
- "datasource": "Prometheus",
- "fontSize": "100%",
- "gridPos": {
- "h": 18,
- "w": 24,
- "x": 0,
- "y": 27
- },
- "hideTimeOverride": false,
- "id": 109,
- "links": [],
- "pageSize": null,
- "repeatDirection": "v",
- "scroll": true,
- "showHeader": true,
- "sort": {
- "col": 2,
- "desc": true
- },
- "styles": [
- {
- "alias": "Workload",
- "colorMode": null,
- "colors": [
- "rgba(245, 54, 54, 0.9)",
- "rgba(237, 129, 40, 0.89)",
- "rgba(50, 172, 45, 0.97)"
- ],
- "dateFormat": "YYYY-MM-DD HH:mm:ss",
- "decimals": 2,
- "link": false,
- "linkTargetBlank": false,
- "linkTooltip": "$__cell dashboard",
- "linkUrl": "/dashboard/db/istio-tcp-workload-dashboard?var-namespace=$__cell_2&&var-workload=$__cell",
- "pattern": "destination_workload",
- "preserveFormat": false,
- "sanitize": false,
- "thresholds": [],
- "type": "hidden",
- "unit": "short"
- },
- {
- "alias": "Bytes Sent",
- "colorMode": null,
- "colors": [
- "rgba(245, 54, 54, 0.9)",
- "rgba(237, 129, 40, 0.89)",
- "rgba(50, 172, 45, 0.97)"
- ],
- "dateFormat": "YYYY-MM-DD HH:mm:ss",
- "decimals": 2,
- "pattern": "Value #A",
- "thresholds": [
- ""
- ],
- "type": "number",
- "unit": "Bps"
- },
- {
- "alias": "Bytes Received",
- "colorMode": null,
- "colors": [
- "rgba(245, 54, 54, 0.9)",
- "rgba(237, 129, 40, 0.89)",
- "rgba(50, 172, 45, 0.97)"
- ],
- "dateFormat": "YYYY-MM-DD HH:mm:ss",
- "decimals": 2,
- "pattern": "Value #C",
- "thresholds": [],
- "type": "number",
- "unit": "Bps"
- },
- {
- "alias": "",
- "colorMode": null,
- "colors": [
- "rgba(245, 54, 54, 0.9)",
- "rgba(237, 129, 40, 0.89)",
- "rgba(50, 172, 45, 0.97)"
- ],
- "dateFormat": "YYYY-MM-DD HH:mm:ss",
- "decimals": 2,
- "pattern": "Time",
- "thresholds": [],
- "type": "hidden",
- "unit": "short"
- },
- {
- "alias": "Workload",
- "colorMode": null,
- "colors": [
- "rgba(245, 54, 54, 0.9)",
- "rgba(237, 129, 40, 0.89)",
- "rgba(50, 172, 45, 0.97)"
- ],
- "dateFormat": "YYYY-MM-DD HH:mm:ss",
- "decimals": 2,
- "link": true,
- "linkTooltip": "$__cell dashboard",
- "linkUrl": "/dashboard/db/istio-workload-dashboard?var-namespace=$__cell_3&var-workload=$__cell_2",
- "pattern": "destination_workload_var",
- "thresholds": [],
- "type": "string",
- "unit": "short"
- },
- {
- "alias": "",
- "colorMode": null,
- "colors": [
- "rgba(245, 54, 54, 0.9)",
- "rgba(237, 129, 40, 0.89)",
- "rgba(50, 172, 45, 0.97)"
- ],
- "dateFormat": "YYYY-MM-DD HH:mm:ss",
- "decimals": 2,
- "pattern": "destination_workload_namespace",
- "thresholds": [],
- "type": "hidden",
- "unit": "short"
- },
- {
- "alias": "Service",
- "colorMode": null,
- "colors": [
- "rgba(245, 54, 54, 0.9)",
- "rgba(237, 129, 40, 0.89)",
- "rgba(50, 172, 45, 0.97)"
- ],
- "dateFormat": "YYYY-MM-DD HH:mm:ss",
- "decimals": 2,
- "link": true,
- "linkTooltip": "$__cell dashboard",
- "linkUrl": "/dashboard/db/istio-service-dashboard?var-service=$__cell",
- "pattern": "destination_service",
- "thresholds": [],
- "type": "number",
- "unit": "short"
- }
- ],
- "targets": [
- {
- "expr": "label_join(sum(rate(istio_tcp_received_bytes_total{reporter=\"source\"}[1m])) by (destination_workload, destination_workload_namespace, destination_service), \"destination_workload_var\", \".\", \"destination_workload\", \"destination_workload_namespace\")",
- "format": "table",
- "hide": false,
- "instant": true,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload }}",
- "refId": "C"
- },
- {
- "expr": "label_join(sum(rate(istio_tcp_sent_bytes_total{reporter=\"source\"}[1m])) by (destination_workload, destination_workload_namespace, destination_service), \"destination_workload_var\", \".\", \"destination_workload\", \"destination_workload_namespace\")",
- "format": "table",
- "hide": false,
- "instant": true,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload }}",
- "refId": "A"
- }
- ],
- "timeFrom": null,
- "title": "TCP Workloads",
- "transform": "table",
- "transparent": false,
- "type": "table"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 9,
- "w": 24,
- "x": 0,
- "y": 45
- },
- "id": 111,
- "legend": {
- "alignAsTable": false,
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "rightSide": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "sum(istio_build) by (component, tag)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{ component }}: {{ tag }}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Istio Components by Version",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "transparent": false,
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- }
- ],
- "refresh": "5s",
- "schemaVersion": 16,
- "style": "dark",
- "tags": [],
- "templating": {
- "list": []
- },
- "time": {
- "from": "now-5m",
- "to": "now"
- },
- "timepicker": {
- "refresh_intervals": [
- "5s",
- "10s",
- "30s",
- "1m",
- "5m",
- "15m",
- "30m",
- "1h",
- "2h",
- "1d"
- ],
- "time_options": [
- "5m",
- "15m",
- "1h",
- "6h",
- "12h",
- "24h",
- "2d",
- "7d",
- "30d"
- ]
- },
- "timezone": "browser",
- "title": "Istio Mesh Dashboard",
- "version": 4
-}
-'
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: istio-grafana-configuration-dashboards-istio-performance-dashboard
- labels:
- app: grafana
- chart: grafana
- heritage: Tiller
- release: istio
- istio: grafana
-data:
- istio-performance-dashboard.json: '{
- "__inputs": [
- {
- "name": "DS_PROMETHEUS",
- "label": "Prometheus",
- "description": "",
- "type": "datasource",
- "pluginId": "prometheus",
- "pluginName": "Prometheus"
- }
- ],
- "__requires": [
- {
- "type": "grafana",
- "id": "grafana",
- "name": "Grafana",
- "version": "5.2.3"
- },
- {
- "type": "panel",
- "id": "graph",
- "name": "Graph",
- "version": "5.0.0"
- },
- {
- "type": "datasource",
- "id": "prometheus",
- "name": "Prometheus",
- "version": "5.0.0"
- },
- {
- "type": "panel",
- "id": "text",
- "name": "Text",
- "version": "5.0.0"
- }
- ],
- "annotations": {
- "list": [
- {
- "builtIn": 1,
- "datasource": "-- Grafana --",
- "enable": true,
- "hide": true,
- "iconColor": "rgba(0, 211, 255, 1)",
- "name": "Annotations & Alerts",
- "type": "dashboard"
- }
- ]
- },
- "editable": false,
- "gnetId": null,
- "graphTooltip": 0,
- "id": null,
- "links": [],
- "panels": [
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 9,
- "w": 12,
- "x": 0,
- "y": 0
- },
- "id": 2,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "(sum(rate(container_cpu_usage_seconds_total{pod_name=~\"istio-telemetry-.*\",container_name=~\"mixer|istio-proxy\"}[1m]))/ (round(sum(irate(istio_requests_total[1m])), 0.001)/1000))/ (sum(irate(istio_requests_total{source_workload=\"istio-ingressgateway\"}[1m])) >bool 10)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "istio-telemetry",
- "refId": "A"
- },
- {
- "expr": "sum(rate(container_cpu_usage_seconds_total{pod_name=~\"istio-ingressgateway-.*\",container_name=\"istio-proxy\"}[1m])) / (round(sum(irate(istio_requests_total{source_workload=\"istio-ingressgateway\", reporter=\"source\"}[1m])), 0.001)/1000)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "istio-ingressgateway",
- "refId": "B"
- },
- {
- "expr": "(sum(rate(container_cpu_usage_seconds_total{namespace!=\"istio-system\",container_name=\"istio-proxy\"}[1m]))/ (round(sum(irate(istio_requests_total[1m])), 0.001)/1000))/ (sum(irate(istio_requests_total{source_workload=\"istio-ingressgateway\"}[1m])) >bool 10)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "istio-proxy",
- "refId": "C"
- },
- {
- "expr": "(sum(rate(container_cpu_usage_seconds_total{pod_name=~\"istio-policy-.*\",container_name=~\"mixer|istio-proxy\"}[1m]))/ (round(sum(irate(istio_requests_total[1m])), 0.001)/1000)) / (sum(irate(istio_requests_total{source_workload=\"istio-ingressgateway\"}[1m])) >bool 10)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "istio-policy",
- "refId": "D"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "vCPU / 1k rps",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 9,
- "w": 12,
- "x": 12,
- "y": 0
- },
- "id": 6,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "sum(rate(container_cpu_usage_seconds_total{pod_name=~\"istio-telemetry-.*\",container_name=~\"mixer|istio-proxy\"}[1m]))",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "istio-telemetry",
- "refId": "A"
- },
- {
- "expr": "sum(rate(container_cpu_usage_seconds_total{pod_name=~\"istio-ingressgateway-.*\",container_name=\"istio-proxy\"}[1m]))",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "istio-ingressgateway",
- "refId": "B"
- },
- {
- "expr": "sum(rate(container_cpu_usage_seconds_total{namespace!=\"istio-system\",container_name=\"istio-proxy\"}[1m]))",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "istio-proxy",
- "refId": "C"
- },
- {
- "expr": "sum(rate(container_cpu_usage_seconds_total{pod_name=~\"istio-policy-.*\",container_name=~\"mixer|istio-proxy\"}[1m]))",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "istio-policy",
- "refId": "D"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "vCPU",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 9,
- "w": 12,
- "x": 0,
- "y": 9
- },
- "id": 4,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "(sum(container_memory_usage_bytes{pod_name=~\"istio-telemetry-.*\"}) / (sum(irate(istio_requests_total[1m])) / 1000)) / (sum(irate(istio_requests_total{source_workload=\"istio-ingressgateway\"}[1m])) >bool 10)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "istio-telemetry / 1k rps",
- "refId": "A"
- },
- {
- "expr": "sum(container_memory_usage_bytes{pod_name=~\"istio-ingressgateway-.*\"}) / count(container_memory_usage_bytes{pod_name=~\"istio-ingressgateway-.*\",container_name!=\"POD\"})",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "per istio-ingressgateway",
- "refId": "C"
- },
- {
- "expr": "sum(container_memory_usage_bytes{namespace!=\"istio-system\",container_name=\"istio-proxy\"}) / count(container_memory_usage_bytes{namespace!=\"istio-system\",container_name=\"istio-proxy\"})",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "per istio-proxy",
- "refId": "B"
- },
- {
- "expr": "(sum(container_memory_usage_bytes{pod_name=~\"istio-policy-.*\"}) / (sum(irate(istio_requests_total[1m])) / 1000))/ (sum(irate(istio_requests_total{source_workload=\"istio-ingressgateway\"}[1m])) >bool 10)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "istio-policy / 1k rps",
- "refId": "D"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Memory",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "decbytes",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 9,
- "w": 12,
- "x": 12,
- "y": 9
- },
- "id": 5,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "sum(irate(istio_response_bytes_sum{destination_workload=\"istio-telemetry\"}[1m])) + sum(irate(istio_request_bytes_sum{destination_workload=\"istio-telemetry\"}[1m]))",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "istio-telemetry",
- "refId": "A"
- },
- {
- "expr": "sum(irate(istio_response_bytes_sum{source_workload=\"istio-ingressgateway\", reporter=\"source\"}[1m]))",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "istio-ingressgateway",
- "refId": "C"
- },
- {
- "expr": "sum(irate(istio_response_bytes_sum{source_workload_namespace!=\"istio-system\", reporter=\"source\"}[1m])) + sum(irate(istio_response_bytes_sum{destination_workload_namespace!=\"istio-system\", reporter=\"destination\"}[1m])) + sum(irate(istio_request_bytes_sum{source_workload_namespace!=\"istio-system\", reporter=\"source\"}[1m])) + sum(irate(istio_request_bytes_sum{destination_workload_namespace!=\"istio-system\", reporter=\"destination\"}[1m]))",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "istio-proxy",
- "refId": "D"
- },
- {
- "expr": "sum(irate(istio_response_bytes_sum{destination_workload=\"istio-policy\"}[1m])) + sum(irate(istio_request_bytes_sum{destination_workload=\"istio-policy\"}[1m]))",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "istio-policy",
- "refId": "E"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Bytes transferred / sec",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "bytes",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 9,
- "w": 24,
- "x": 0,
- "y": 18
- },
- "id": 8,
- "legend": {
- "alignAsTable": false,
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "rightSide": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "sum(istio_build) by (component, tag)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{ component }}: {{ tag }}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Istio Components by Version",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "transparent": false,
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "content": "The charts on this dashboard are intended to show Istio main components cost in terms resources utilization under steady load.\n\n- **vCPU/1k rps:** shows vCPU utilization by the main Istio components normalized by 1000 requests/second. When idle or low traffic, this chart will be blank. The curve for istio-proxy refers to the services sidecars only. \n- **vCPU:** vCPU utilization by Istio components, not normalized.\n- **Memory:** memory footprint for the components. Telemetry and policy are normalized by 1k rps, and no data is shown when there is no traffic. For ingress and istio-proxy, the data is per instance. \n- **Bytes transferred/ sec:** shows the number of bytes flowing through each Istio component.",
- "gridPos": {
- "h": 4,
- "w": 24,
- "x": 0,
- "y": 18
- },
- "id": 11,
- "links": [],
- "mode": "markdown",
- "title": "Istio Performance Dashboard Readme",
- "type": "text"
- }
- ],
- "schemaVersion": 16,
- "style": "dark",
- "tags": [],
- "templating": {
- "list": []
- },
- "time": {
- "from": "now-5m",
- "to": "now"
- },
- "timepicker": {
- "refresh_intervals": [
- "5s",
- "10s",
- "30s",
- "1m",
- "5m",
- "15m",
- "30m",
- "1h",
- "2h",
- "1d"
- ],
- "time_options": [
- "5m",
- "15m",
- "1h",
- "6h",
- "12h",
- "24h",
- "2d",
- "7d",
- "30d"
- ]
- },
- "timezone": "",
- "title": "Istio Performance Dashboard",
- "version": 4
-}
-'
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: istio-grafana-configuration-dashboards-istio-service-dashboard
- labels:
- app: grafana
- chart: grafana
- heritage: Tiller
- release: istio
- istio: grafana
-data:
- istio-service-dashboard.json: '{
- "annotations": {
- "list": [
- {
- "builtIn": 1,
- "datasource": "-- Grafana --",
- "enable": true,
- "hide": true,
- "iconColor": "rgba(0, 211, 255, 1)",
- "name": "Annotations & Alerts",
- "type": "dashboard"
- }
- ]
- },
- "editable": false,
- "gnetId": null,
- "graphTooltip": 0,
- "iteration": 1536442501501,
- "links": [],
- "panels": [
- {
- "content": "",
- "gridPos": {
- "h": 3,
- "w": 24,
- "x": 0,
- "y": 0
- },
- "id": 89,
- "links": [],
- "mode": "html",
- "title": "",
- "transparent": true,
- "type": "text"
- },
- {
- "cacheTimeout": null,
- "colorBackground": false,
- "colorValue": false,
- "colors": [
- "rgba(245, 54, 54, 0.9)",
- "rgba(237, 129, 40, 0.89)",
- "rgba(50, 172, 45, 0.97)"
- ],
- "datasource": "Prometheus",
- "format": "ops",
- "gauge": {
- "maxValue": 100,
- "minValue": 0,
- "show": false,
- "thresholdLabels": false,
- "thresholdMarkers": true
- },
- "gridPos": {
- "h": 4,
- "w": 6,
- "x": 0,
- "y": 3
- },
- "id": 12,
- "interval": null,
- "links": [],
- "mappingType": 1,
- "mappingTypes": [
- {
- "name": "value to text",
- "value": 1
- },
- {
- "name": "range to text",
- "value": 2
- }
- ],
- "maxDataPoints": 100,
- "nullPointMode": "connected",
- "nullText": null,
- "postfix": "",
- "postfixFontSize": "50%",
- "prefix": "",
- "prefixFontSize": "50%",
- "rangeMaps": [
- {
- "from": "null",
- "text": "N/A",
- "to": "null"
- }
- ],
- "sparkline": {
- "fillColor": "rgba(31, 118, 189, 0.18)",
- "full": true,
- "lineColor": "rgb(31, 120, 193)",
- "show": true
- },
- "tableColumn": "",
- "targets": [
- {
- "expr": "round(sum(irate(istio_requests_total{reporter=\"source\",destination_service=~\"$service\"}[5m])), 0.001)",
- "format": "time_series",
- "intervalFactor": 1,
- "refId": "A",
- "step": 4
- }
- ],
- "thresholds": "",
- "title": "Client Request Volume",
- "transparent": false,
- "type": "singlestat",
- "valueFontSize": "80%",
- "valueMaps": [
- {
- "op": "=",
- "text": "N/A",
- "value": "null"
- }
- ],
- "valueName": "current"
- },
- {
- "cacheTimeout": null,
- "colorBackground": false,
- "colorValue": false,
- "colors": [
- "rgba(50, 172, 45, 0.97)",
- "rgba(237, 129, 40, 0.89)",
- "rgba(245, 54, 54, 0.9)"
- ],
- "datasource": "Prometheus",
- "decimals": null,
- "format": "percentunit",
- "gauge": {
- "maxValue": 100,
- "minValue": 80,
- "show": false,
- "thresholdLabels": false,
- "thresholdMarkers": false
- },
- "gridPos": {
- "h": 4,
- "w": 6,
- "x": 6,
- "y": 3
- },
- "id": 14,
- "interval": null,
- "links": [],
- "mappingType": 1,
- "mappingTypes": [
- {
- "name": "value to text",
- "value": 1
- },
- {
- "name": "range to text",
- "value": 2
- }
- ],
- "maxDataPoints": 100,
- "nullPointMode": "connected",
- "nullText": null,
- "postfix": "",
- "postfixFontSize": "50%",
- "prefix": "",
- "prefixFontSize": "50%",
- "rangeMaps": [
- {
- "from": "null",
- "text": "N/A",
- "to": "null"
- }
- ],
- "sparkline": {
- "fillColor": "rgba(31, 118, 189, 0.18)",
- "full": true,
- "lineColor": "rgb(31, 120, 193)",
- "show": true
- },
- "tableColumn": "",
- "targets": [
- {
- "expr": "sum(irate(istio_requests_total{reporter=\"source\",destination_service=~\"$service\",response_code!~\"5.*\"}[5m])) / sum(irate(istio_requests_total{reporter=\"source\",destination_service=~\"$service\"}[5m]))",
- "format": "time_series",
- "intervalFactor": 1,
- "refId": "B"
- }
- ],
- "thresholds": "95, 99, 99.5",
- "title": "Client Success Rate (non-5xx responses)",
- "transparent": false,
- "type": "singlestat",
- "valueFontSize": "80%",
- "valueMaps": [
- {
- "op": "=",
- "text": "N/A",
- "value": "null"
- }
- ],
- "valueName": "avg"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 4,
- "w": 6,
- "x": 12,
- "y": 3
- },
- "id": 87,
- "legend": {
- "alignAsTable": false,
- "avg": false,
- "current": false,
- "hideEmpty": false,
- "hideZero": false,
- "max": false,
- "min": false,
- "rightSide": true,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "histogram_quantile(0.50, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\",destination_service=~\"$service\"}[1m])) by (le))",
- "format": "time_series",
- "interval": "",
- "intervalFactor": 1,
- "legendFormat": "P50",
- "refId": "A"
- },
- {
- "expr": "histogram_quantile(0.90, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\",destination_service=~\"$service\"}[1m])) by (le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "P90",
- "refId": "B"
- },
- {
- "expr": "histogram_quantile(0.99, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\",destination_service=~\"$service\"}[1m])) by (le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "P99",
- "refId": "C"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Client Request Duration",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "s",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "cacheTimeout": null,
- "colorBackground": false,
- "colorValue": false,
- "colors": [
- "#299c46",
- "rgba(237, 129, 40, 0.89)",
- "#d44a3a"
- ],
- "datasource": "Prometheus",
- "format": "Bps",
- "gauge": {
- "maxValue": 100,
- "minValue": 0,
- "show": false,
- "thresholdLabels": false,
- "thresholdMarkers": true
- },
- "gridPos": {
- "h": 4,
- "w": 6,
- "x": 18,
- "y": 3
- },
- "id": 84,
- "interval": null,
- "links": [],
- "mappingType": 1,
- "mappingTypes": [
- {
- "name": "value to text",
- "value": 1
- },
- {
- "name": "range to text",
- "value": 2
- }
- ],
- "maxDataPoints": 100,
- "nullPointMode": "connected",
- "nullText": null,
- "postfix": "",
- "postfixFontSize": "50%",
- "prefix": "",
- "prefixFontSize": "50%",
- "rangeMaps": [
- {
- "from": "null",
- "text": "N/A",
- "to": "null"
- }
- ],
- "sparkline": {
- "fillColor": "rgba(31, 118, 189, 0.18)",
- "full": true,
- "lineColor": "rgb(31, 120, 193)",
- "show": true
- },
- "tableColumn": "",
- "targets": [
- {
- "expr": "sum(irate(istio_tcp_received_bytes_total{reporter=\"source\", destination_service=~\"$service\"}[1m]))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "thresholds": "",
- "title": "TCP Received Bytes",
- "transparent": false,
- "type": "singlestat",
- "valueFontSize": "80%",
- "valueMaps": [
- {
- "op": "=",
- "text": "N/A",
- "value": "null"
- }
- ],
- "valueName": "avg"
- },
- {
- "cacheTimeout": null,
- "colorBackground": false,
- "colorValue": false,
- "colors": [
- "rgba(245, 54, 54, 0.9)",
- "rgba(237, 129, 40, 0.89)",
- "rgba(50, 172, 45, 0.97)"
- ],
- "datasource": "Prometheus",
- "format": "ops",
- "gauge": {
- "maxValue": 100,
- "minValue": 0,
- "show": false,
- "thresholdLabels": false,
- "thresholdMarkers": true
- },
- "gridPos": {
- "h": 4,
- "w": 6,
- "x": 0,
- "y": 7
- },
- "id": 97,
- "interval": null,
- "links": [],
- "mappingType": 1,
- "mappingTypes": [
- {
- "name": "value to text",
- "value": 1
- },
- {
- "name": "range to text",
- "value": 2
- }
- ],
- "maxDataPoints": 100,
- "nullPointMode": "connected",
- "nullText": null,
- "postfix": "",
- "postfixFontSize": "50%",
- "prefix": "",
- "prefixFontSize": "50%",
- "rangeMaps": [
- {
- "from": "null",
- "text": "N/A",
- "to": "null"
- }
- ],
- "sparkline": {
- "fillColor": "rgba(31, 118, 189, 0.18)",
- "full": true,
- "lineColor": "rgb(31, 120, 193)",
- "show": true
- },
- "tableColumn": "",
- "targets": [
- {
- "expr": "round(sum(irate(istio_requests_total{reporter=\"destination\",destination_service=~\"$service\"}[5m])), 0.001)",
- "format": "time_series",
- "intervalFactor": 1,
- "refId": "A",
- "step": 4
- }
- ],
- "thresholds": "",
- "title": "Server Request Volume",
- "transparent": false,
- "type": "singlestat",
- "valueFontSize": "80%",
- "valueMaps": [
- {
- "op": "=",
- "text": "N/A",
- "value": "null"
- }
- ],
- "valueName": "current"
- },
- {
- "cacheTimeout": null,
- "colorBackground": false,
- "colorValue": false,
- "colors": [
- "rgba(50, 172, 45, 0.97)",
- "rgba(237, 129, 40, 0.89)",
- "rgba(245, 54, 54, 0.9)"
- ],
- "datasource": "Prometheus",
- "decimals": null,
- "format": "percentunit",
- "gauge": {
- "maxValue": 100,
- "minValue": 80,
- "show": false,
- "thresholdLabels": false,
- "thresholdMarkers": false
- },
- "gridPos": {
- "h": 4,
- "w": 6,
- "x": 6,
- "y": 7
- },
- "id": 98,
- "interval": null,
- "links": [],
- "mappingType": 1,
- "mappingTypes": [
- {
- "name": "value to text",
- "value": 1
- },
- {
- "name": "range to text",
- "value": 2
- }
- ],
- "maxDataPoints": 100,
- "nullPointMode": "connected",
- "nullText": null,
- "postfix": "",
- "postfixFontSize": "50%",
- "prefix": "",
- "prefixFontSize": "50%",
- "rangeMaps": [
- {
- "from": "null",
- "text": "N/A",
- "to": "null"
- }
- ],
- "sparkline": {
- "fillColor": "rgba(31, 118, 189, 0.18)",
- "full": true,
- "lineColor": "rgb(31, 120, 193)",
- "show": true
- },
- "tableColumn": "",
- "targets": [
- {
- "expr": "sum(irate(istio_requests_total{reporter=\"destination\",destination_service=~\"$service\",response_code!~\"5.*\"}[5m])) / sum(irate(istio_requests_total{reporter=\"destination\",destination_service=~\"$service\"}[5m]))",
- "format": "time_series",
- "intervalFactor": 1,
- "refId": "B"
- }
- ],
- "thresholds": "95, 99, 99.5",
- "title": "Server Success Rate (non-5xx responses)",
- "transparent": false,
- "type": "singlestat",
- "valueFontSize": "80%",
- "valueMaps": [
- {
- "op": "=",
- "text": "N/A",
- "value": "null"
- }
- ],
- "valueName": "avg"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 4,
- "w": 6,
- "x": 12,
- "y": 7
- },
- "id": 99,
- "legend": {
- "alignAsTable": false,
- "avg": false,
- "current": false,
- "hideEmpty": false,
- "hideZero": false,
- "max": false,
- "min": false,
- "rightSide": true,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "histogram_quantile(0.50, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\",destination_service=~\"$service\"}[1m])) by (le))",
- "format": "time_series",
- "interval": "",
- "intervalFactor": 1,
- "legendFormat": "P50",
- "refId": "A"
- },
- {
- "expr": "histogram_quantile(0.90, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\",destination_service=~\"$service\"}[1m])) by (le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "P90",
- "refId": "B"
- },
- {
- "expr": "histogram_quantile(0.99, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\",destination_service=~\"$service\"}[1m])) by (le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "P99",
- "refId": "C"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Server Request Duration",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "s",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "cacheTimeout": null,
- "colorBackground": false,
- "colorValue": false,
- "colors": [
- "#299c46",
- "rgba(237, 129, 40, 0.89)",
- "#d44a3a"
- ],
- "datasource": "Prometheus",
- "format": "Bps",
- "gauge": {
- "maxValue": 100,
- "minValue": 0,
- "show": false,
- "thresholdLabels": false,
- "thresholdMarkers": true
- },
- "gridPos": {
- "h": 4,
- "w": 6,
- "x": 18,
- "y": 7
- },
- "id": 100,
- "interval": null,
- "links": [],
- "mappingType": 1,
- "mappingTypes": [
- {
- "name": "value to text",
- "value": 1
- },
- {
- "name": "range to text",
- "value": 2
- }
- ],
- "maxDataPoints": 100,
- "nullPointMode": "connected",
- "nullText": null,
- "postfix": "",
- "postfixFontSize": "50%",
- "prefix": "",
- "prefixFontSize": "50%",
- "rangeMaps": [
- {
- "from": "null",
- "text": "N/A",
- "to": "null"
- }
- ],
- "sparkline": {
- "fillColor": "rgba(31, 118, 189, 0.18)",
- "full": true,
- "lineColor": "rgb(31, 120, 193)",
- "show": true
- },
- "tableColumn": "",
- "targets": [
- {
- "expr": "sum(irate(istio_tcp_sent_bytes_total{reporter=\"source\", destination_service=~\"$service\"}[1m])) ",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "thresholds": "",
- "title": "TCP Sent Bytes",
- "transparent": false,
- "type": "singlestat",
- "valueFontSize": "80%",
- "valueMaps": [
- {
- "op": "=",
- "text": "N/A",
- "value": "null"
- }
- ],
- "valueName": "avg"
- },
- {
- "content": "",
- "gridPos": {
- "h": 3,
- "w": 24,
- "x": 0,
- "y": 11
- },
- "id": 45,
- "links": [],
- "mode": "html",
- "title": "",
- "transparent": true,
- "type": "text"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 0,
- "gridPos": {
- "h": 6,
- "w": 12,
- "x": 0,
- "y": 14
- },
- "id": 25,
- "legend": {
- "avg": false,
- "current": false,
- "hideEmpty": true,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null as zero",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "round(sum(irate(istio_requests_total{connection_security_policy=\"mutual_tls\",destination_service=~\"$service\",reporter=\"source\",source_workload=~\"$srcwl\",source_workload_namespace=~\"$srcns\"}[5m])) by (source_workload, source_workload_namespace, response_code), 0.001)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{ source_workload }}.{{ source_workload_namespace }} : {{ response_code }} (🔐mTLS)",
- "refId": "B",
- "step": 2
- },
- {
- "expr": "round(sum(irate(istio_requests_total{connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", reporter=\"source\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[5m])) by (source_workload, source_workload_namespace, response_code), 0.001)",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ source_workload }}.{{ source_workload_namespace }} : {{ response_code }}",
- "refId": "A",
- "step": 2
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Incoming Requests by Source And Response Code",
- "tooltip": {
- "shared": false,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": [
- "total"
- ]
- },
- "yaxes": [
- {
- "format": "ops",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": "0",
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 12,
- "x": 12,
- "y": 14
- },
- "id": 26,
- "legend": {
- "avg": false,
- "current": false,
- "hideEmpty": true,
- "hideZero": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "sum(irate(istio_requests_total{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\",response_code!~\"5.*\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[5m])) by (source_workload, source_workload_namespace) / sum(irate(istio_requests_total{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[5m])) by (source_workload, source_workload_namespace)",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ source_workload }}.{{ source_workload_namespace }} (🔐mTLS)",
- "refId": "A",
- "step": 2
- },
- {
- "expr": "sum(irate(istio_requests_total{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\",response_code!~\"5.*\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[5m])) by (source_workload, source_workload_namespace) / sum(irate(istio_requests_total{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[5m])) by (source_workload, source_workload_namespace)",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ source_workload }}.{{ source_workload_namespace }}",
- "refId": "B",
- "step": 2
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Incoming Success Rate (non-5xx responses) By Source",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "percentunit",
- "label": null,
- "logBase": 1,
- "max": "1.01",
- "min": "0",
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "description": "",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 8,
- "x": 0,
- "y": 20
- },
- "id": 27,
- "legend": {
- "alignAsTable": false,
- "avg": false,
- "current": false,
- "hideEmpty": true,
- "hideZero": false,
- "max": false,
- "min": false,
- "rightSide": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "histogram_quantile(0.50, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50 (🔐mTLS)",
- "refId": "D",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.90, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90 (🔐mTLS)",
- "refId": "A",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.95, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95 (🔐mTLS)",
- "refId": "B",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.99, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99 (🔐mTLS)",
- "refId": "C",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.50, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50",
- "refId": "E",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.90, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90",
- "refId": "F",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.95, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95",
- "refId": "G",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.99, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99",
- "refId": "H",
- "step": 2
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Incoming Request Duration by Source",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "s",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": "0",
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 8,
- "x": 8,
- "y": 20
- },
- "id": 28,
- "legend": {
- "alignAsTable": false,
- "avg": false,
- "current": false,
- "hideEmpty": true,
- "max": false,
- "min": false,
- "rightSide": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "histogram_quantile(0.50, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50 (🔐mTLS)",
- "refId": "D",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.90, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90 (🔐mTLS)",
- "refId": "A",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.95, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95 (🔐mTLS)",
- "refId": "B",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.99, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99 (🔐mTLS)",
- "refId": "C",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.50, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50",
- "refId": "E",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.90, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90",
- "refId": "F",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.95, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95",
- "refId": "G",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.99, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99",
- "refId": "H",
- "step": 2
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Incoming Request Size By Source",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "decbytes",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": "0",
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 8,
- "x": 16,
- "y": 20
- },
- "id": 68,
- "legend": {
- "alignAsTable": false,
- "avg": false,
- "current": false,
- "hideEmpty": true,
- "max": false,
- "min": false,
- "rightSide": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "histogram_quantile(0.50, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50 (🔐mTLS)",
- "refId": "D",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.90, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90 (🔐mTLS)",
- "refId": "A",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.95, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95 (🔐mTLS)",
- "refId": "B",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.99, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99 (🔐mTLS)",
- "refId": "C",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.50, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50",
- "refId": "E",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.90, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90",
- "refId": "F",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.95, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95",
- "refId": "G",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.99, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99",
- "refId": "H",
- "step": 2
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Response Size By Source",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "decbytes",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": "0",
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 12,
- "x": 0,
- "y": 26
- },
- "id": 80,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "round(sum(irate(istio_tcp_received_bytes_total{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace), 0.001)",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ source_workload }}.{{ source_workload_namespace}} (🔐mTLS)",
- "refId": "A",
- "step": 2
- },
- {
- "expr": "round(sum(irate(istio_tcp_received_bytes_total{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace), 0.001)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{ source_workload }}.{{ source_workload_namespace}}",
- "refId": "B",
- "step": 2
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Bytes Received from Incoming TCP Connection",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "Bps",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": "0",
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 12,
- "x": 12,
- "y": 26
- },
- "id": 82,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "round(sum(irate(istio_tcp_sent_bytes_total{connection_security_policy=\"mutual_tls\", reporter=\"source\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace), 0.001)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{ source_workload }}.{{ source_workload_namespace}} (🔐mTLS)",
- "refId": "A",
- "step": 2
- },
- {
- "expr": "round(sum(irate(istio_tcp_sent_bytes_total{connection_security_policy!=\"mutual_tls\", reporter=\"source\", destination_service=~\"$service\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace), 0.001)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{ source_workload }}.{{ source_workload_namespace}}",
- "refId": "B",
- "step": 2
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Bytes Sent to Incoming TCP Connection",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "Bps",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": "0",
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "content": "",
- "gridPos": {
- "h": 3,
- "w": 24,
- "x": 0,
- "y": 32
- },
- "id": 69,
- "links": [],
- "mode": "html",
- "title": "",
- "transparent": true,
- "type": "text"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 0,
- "gridPos": {
- "h": 6,
- "w": 12,
- "x": 0,
- "y": 35
- },
- "id": 90,
- "legend": {
- "avg": false,
- "current": false,
- "hideEmpty": true,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null as zero",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "round(sum(irate(istio_requests_total{connection_security_policy=\"mutual_tls\",destination_service=~\"$service\",reporter=\"destination\",destination_workload=~\"$dstwl\",destination_workload_namespace=~\"$dstns\"}[5m])) by (destination_workload, destination_workload_namespace, response_code), 0.001)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} : {{ response_code }} (🔐mTLS)",
- "refId": "B",
- "step": 2
- },
- {
- "expr": "round(sum(irate(istio_requests_total{connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", reporter=\"destination\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[5m])) by (destination_workload, destination_workload_namespace, response_code), 0.001)",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} : {{ response_code }}",
- "refId": "A",
- "step": 2
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Incoming Requests by Destination And Response Code",
- "tooltip": {
- "shared": false,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": [
- "total"
- ]
- },
- "yaxes": [
- {
- "format": "ops",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": "0",
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 12,
- "x": 12,
- "y": 35
- },
- "id": 91,
- "legend": {
- "avg": false,
- "current": false,
- "hideEmpty": true,
- "hideZero": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "sum(irate(istio_requests_total{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\",response_code!~\"5.*\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[5m])) by (destination_workload, destination_workload_namespace) / sum(rate(istio_requests_total{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[5m])) by (destination_workload, destination_workload_namespace)",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} (🔐mTLS)",
- "refId": "A",
- "step": 2
- },
- {
- "expr": "sum(irate(istio_requests_total{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\",response_code!~\"5.*\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[5m])) by (destination_workload, destination_workload_namespace) / sum(rate(istio_requests_total{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[5m])) by (destination_workload, destination_workload_namespace)",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }}",
- "refId": "B",
- "step": 2
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Incoming Success Rate (non-5xx responses) By Source",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "percentunit",
- "label": null,
- "logBase": 1,
- "max": "1.01",
- "min": "0",
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "description": "",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 8,
- "x": 0,
- "y": 41
- },
- "id": 94,
- "legend": {
- "alignAsTable": false,
- "avg": false,
- "current": false,
- "hideEmpty": true,
- "hideZero": false,
- "max": false,
- "min": false,
- "rightSide": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "histogram_quantile(0.50, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P50 (🔐mTLS)",
- "refId": "D",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.90, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P90 (🔐mTLS)",
- "refId": "A",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.95, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P95 (🔐mTLS)",
- "refId": "B",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.99, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P99 (🔐mTLS)",
- "refId": "C",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.50, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P50",
- "refId": "E",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.90, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P90",
- "refId": "F",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.95, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P95",
- "refId": "G",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.99, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P99",
- "refId": "H",
- "step": 2
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Incoming Request Duration by Source",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "s",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": "0",
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 8,
- "x": 8,
- "y": 41
- },
- "id": 95,
- "legend": {
- "alignAsTable": false,
- "avg": false,
- "current": false,
- "hideEmpty": true,
- "max": false,
- "min": false,
- "rightSide": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "histogram_quantile(0.50, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P50 (🔐mTLS)",
- "refId": "D",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.90, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P90 (🔐mTLS)",
- "refId": "A",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.95, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P95 (🔐mTLS)",
- "refId": "B",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.99, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P99 (🔐mTLS)",
- "refId": "C",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.50, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P50",
- "refId": "E",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.90, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P90",
- "refId": "F",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.95, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P95",
- "refId": "G",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.99, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P99",
- "refId": "H",
- "step": 2
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Incoming Request Size By Source",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "decbytes",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": "0",
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 8,
- "x": 16,
- "y": 41
- },
- "id": 96,
- "legend": {
- "alignAsTable": false,
- "avg": false,
- "current": false,
- "hideEmpty": true,
- "max": false,
- "min": false,
- "rightSide": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "histogram_quantile(0.50, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P50 (🔐mTLS)",
- "refId": "D",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.90, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P90 (🔐mTLS)",
- "refId": "A",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.95, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P95 (🔐mTLS)",
- "refId": "B",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.99, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P99 (🔐mTLS)",
- "refId": "C",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.50, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P50",
- "refId": "E",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.90, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P90",
- "refId": "F",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.95, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P95",
- "refId": "G",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.99, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P99",
- "refId": "H",
- "step": 2
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Response Size By Source",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "decbytes",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": "0",
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 12,
- "x": 0,
- "y": 47
- },
- "id": 92,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "round(sum(irate(istio_tcp_received_bytes_total{reporter=\"source\", connection_security_policy=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace), 0.001)",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace}} (🔐mTLS)",
- "refId": "A",
- "step": 2
- },
- {
- "expr": "round(sum(irate(istio_tcp_received_bytes_total{reporter=\"source\", connection_security_policy!=\"mutual_tls\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace), 0.001)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace}}",
- "refId": "B",
- "step": 2
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Bytes Received from Incoming TCP Connection",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "Bps",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": "0",
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 12,
- "x": 12,
- "y": 47
- },
- "id": 93,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "round(sum(irate(istio_tcp_sent_bytes_total{connection_security_policy=\"mutual_tls\", reporter=\"source\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace), 0.001)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload }}.{{destination_workload_namespace }} (🔐mTLS)",
- "refId": "A",
- "step": 2
- },
- {
- "expr": "round(sum(irate(istio_tcp_sent_bytes_total{connection_security_policy!=\"mutual_tls\", reporter=\"source\", destination_service=~\"$service\", destination_workload=~\"$dstwl\", destination_workload_namespace=~\"$dstns\"}[1m])) by (destination_workload, destination_workload_namespace), 0.001)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{ destination_workload }}.{{destination_workload_namespace }}",
- "refId": "B",
- "step": 2
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Bytes Sent to Incoming TCP Connection",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "Bps",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": "0",
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- }
- ],
- "refresh": "10s",
- "schemaVersion": 16,
- "style": "dark",
- "tags": [],
- "templating": {
- "list": [
- {
- "allValue": null,
- "datasource": "Prometheus",
- "hide": 0,
- "includeAll": false,
- "label": "Service",
- "multi": false,
- "name": "service",
- "options": [],
- "query": "label_values(destination_service)",
- "refresh": 1,
- "regex": "",
- "sort": 0,
- "tagValuesQuery": "",
- "tags": [],
- "tagsQuery": "",
- "type": "query",
- "useTags": false
- },
- {
- "allValue": null,
- "current": {
- "text": "All",
- "value": "$__all"
- },
- "datasource": "Prometheus",
- "hide": 0,
- "includeAll": true,
- "label": "Client Workload Namespace",
- "multi": true,
- "name": "srcns",
- "options": [],
- "query": "query_result( sum(istio_requests_total{reporter=\"destination\", destination_service=\"$service\"}) by (source_workload_namespace) or sum(istio_tcp_sent_bytes_total{reporter=\"destination\", destination_service=~\"$service\"}) by (source_workload_namespace))",
- "refresh": 1,
- "regex": "/.*namespace=\"([^\"]*).*/",
- "sort": 2,
- "tagValuesQuery": "",
- "tags": [],
- "tagsQuery": "",
- "type": "query",
- "useTags": false
- },
- {
- "allValue": null,
- "current": {
- "text": "All",
- "value": "$__all"
- },
- "datasource": "Prometheus",
- "hide": 0,
- "includeAll": true,
- "label": "Client Workload",
- "multi": true,
- "name": "srcwl",
- "options": [],
- "query": "query_result( sum(istio_requests_total{reporter=\"destination\", destination_service=~\"$service\", source_workload_namespace=~\"$srcns\"}) by (source_workload) or sum(istio_tcp_sent_bytes_total{reporter=\"destination\", destination_service=~\"$service\", source_workload_namespace=~\"$srcns\"}) by (source_workload))",
- "refresh": 1,
- "regex": "/.*workload=\"([^\"]*).*/",
- "sort": 3,
- "tagValuesQuery": "",
- "tags": [],
- "tagsQuery": "",
- "type": "query",
- "useTags": false
- },
- {
- "allValue": null,
- "current": {
- "text": "All",
- "value": "$__all"
- },
- "datasource": "Prometheus",
- "hide": 0,
- "includeAll": true,
- "label": "Service Workload Namespace",
- "multi": true,
- "name": "dstns",
- "options": [],
- "query": "query_result( sum(istio_requests_total{reporter=\"destination\", destination_service=\"$service\"}) by (destination_workload_namespace) or sum(istio_tcp_sent_bytes_total{reporter=\"destination\", destination_service=~\"$service\"}) by (destination_workload_namespace))",
- "refresh": 1,
- "regex": "/.*namespace=\"([^\"]*).*/",
- "sort": 2,
- "tagValuesQuery": "",
- "tags": [],
- "tagsQuery": "",
- "type": "query",
- "useTags": false
- },
- {
- "allValue": null,
- "current": {
- "text": "All",
- "value": "$__all"
- },
- "datasource": "Prometheus",
- "hide": 0,
- "includeAll": true,
- "label": "Service Workload",
- "multi": true,
- "name": "dstwl",
- "options": [],
- "query": "query_result( sum(istio_requests_total{reporter=\"destination\", destination_service=~\"$service\", destination_workload_namespace=~\"$dstns\"}) by (destination_workload) or sum(istio_tcp_sent_bytes_total{reporter=\"destination\", destination_service=~\"$service\", destination_workload_namespace=~\"$dstns\"}) by (destination_workload))",
- "refresh": 1,
- "regex": "/.*workload=\"([^\"]*).*/",
- "sort": 3,
- "tagValuesQuery": "",
- "tags": [],
- "tagsQuery": "",
- "type": "query",
- "useTags": false
- }
- ]
- },
- "time": {
- "from": "now-5m",
- "to": "now"
- },
- "timepicker": {
- "refresh_intervals": [
- "5s",
- "10s",
- "30s",
- "1m",
- "5m",
- "15m",
- "30m",
- "1h",
- "2h",
- "1d"
- ],
- "time_options": [
- "5m",
- "15m",
- "1h",
- "6h",
- "12h",
- "24h",
- "2d",
- "7d",
- "30d"
- ]
- },
- "timezone": "",
- "title": "Istio Service Dashboard",
- "uid": "LJ_uJAvmk",
- "version": 1
-}
-'
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: istio-grafana-configuration-dashboards-istio-workload-dashboard
- labels:
- app: grafana
- chart: grafana
- heritage: Tiller
- release: istio
- istio: grafana
-data:
- istio-workload-dashboard.json: '{
- "__inputs": [
- {
- "name": "DS_PROMETHEUS",
- "label": "Prometheus",
- "description": "",
- "type": "datasource",
- "pluginId": "prometheus",
- "pluginName": "Prometheus"
- }
- ],
- "__requires": [
- {
- "type": "grafana",
- "id": "grafana",
- "name": "Grafana",
- "version": "5.0.4"
- },
- {
- "type": "panel",
- "id": "graph",
- "name": "Graph",
- "version": "5.0.0"
- },
- {
- "type": "datasource",
- "id": "prometheus",
- "name": "Prometheus",
- "version": "5.0.0"
- },
- {
- "type": "panel",
- "id": "singlestat",
- "name": "Singlestat",
- "version": "5.0.0"
- },
- {
- "type": "panel",
- "id": "text",
- "name": "Text",
- "version": "5.0.0"
- }
- ],
- "annotations": {
- "list": [
- {
- "builtIn": 1,
- "datasource": "-- Grafana --",
- "enable": true,
- "hide": true,
- "iconColor": "rgba(0, 211, 255, 1)",
- "name": "Annotations & Alerts",
- "type": "dashboard"
- }
- ]
- },
- "editable": false,
- "gnetId": null,
- "graphTooltip": 0,
- "id": null,
- "iteration": 1531345461465,
- "links": [],
- "panels": [
- {
- "content": "",
- "gridPos": {
- "h": 3,
- "w": 24,
- "x": 0,
- "y": 0
- },
- "id": 89,
- "links": [],
- "mode": "html",
- "title": "",
- "transparent": true,
- "type": "text"
- },
- {
- "cacheTimeout": null,
- "colorBackground": false,
- "colorValue": false,
- "colors": [
- "rgba(245, 54, 54, 0.9)",
- "rgba(237, 129, 40, 0.89)",
- "rgba(50, 172, 45, 0.97)"
- ],
- "datasource": "Prometheus",
- "format": "ops",
- "gauge": {
- "maxValue": 100,
- "minValue": 0,
- "show": false,
- "thresholdLabels": false,
- "thresholdMarkers": true
- },
- "gridPos": {
- "h": 4,
- "w": 8,
- "x": 0,
- "y": 3
- },
- "id": 12,
- "interval": null,
- "links": [],
- "mappingType": 1,
- "mappingTypes": [
- {
- "name": "value to text",
- "value": 1
- },
- {
- "name": "range to text",
- "value": 2
- }
- ],
- "maxDataPoints": 100,
- "nullPointMode": "connected",
- "nullText": null,
- "postfix": "",
- "postfixFontSize": "50%",
- "prefix": "",
- "prefixFontSize": "50%",
- "rangeMaps": [
- {
- "from": "null",
- "text": "N/A",
- "to": "null"
- }
- ],
- "sparkline": {
- "fillColor": "rgba(31, 118, 189, 0.18)",
- "full": true,
- "lineColor": "rgb(31, 120, 193)",
- "show": true
- },
- "tableColumn": "",
- "targets": [
- {
- "expr": "round(sum(irate(istio_requests_total{reporter=\"destination\",destination_workload_namespace=~\"$namespace\",destination_workload=~\"$workload\"}[5m])), 0.001)",
- "format": "time_series",
- "intervalFactor": 1,
- "refId": "A",
- "step": 4
- }
- ],
- "thresholds": "",
- "title": "Incoming Request Volume",
- "transparent": false,
- "type": "singlestat",
- "valueFontSize": "80%",
- "valueMaps": [
- {
- "op": "=",
- "text": "N/A",
- "value": "null"
- }
- ],
- "valueName": "current"
- },
- {
- "cacheTimeout": null,
- "colorBackground": false,
- "colorValue": false,
- "colors": [
- "rgba(50, 172, 45, 0.97)",
- "rgba(237, 129, 40, 0.89)",
- "rgba(245, 54, 54, 0.9)"
- ],
- "datasource": "Prometheus",
- "decimals": null,
- "format": "percentunit",
- "gauge": {
- "maxValue": 100,
- "minValue": 80,
- "show": false,
- "thresholdLabels": false,
- "thresholdMarkers": false
- },
- "gridPos": {
- "h": 4,
- "w": 8,
- "x": 8,
- "y": 3
- },
- "id": 14,
- "interval": null,
- "links": [],
- "mappingType": 1,
- "mappingTypes": [
- {
- "name": "value to text",
- "value": 1
- },
- {
- "name": "range to text",
- "value": 2
- }
- ],
- "maxDataPoints": 100,
- "nullPointMode": "connected",
- "nullText": null,
- "postfix": "",
- "postfixFontSize": "50%",
- "prefix": "",
- "prefixFontSize": "50%",
- "rangeMaps": [
- {
- "from": "null",
- "text": "N/A",
- "to": "null"
- }
- ],
- "sparkline": {
- "fillColor": "rgba(31, 118, 189, 0.18)",
- "full": true,
- "lineColor": "rgb(31, 120, 193)",
- "show": true
- },
- "tableColumn": "",
- "targets": [
- {
- "expr": "sum(irate(istio_requests_total{reporter=\"destination\",destination_workload_namespace=~\"$namespace\",destination_workload=~\"$workload\",response_code!~\"5.*\"}[5m])) / sum(irate(istio_requests_total{reporter=\"destination\",destination_workload_namespace=~\"$namespace\",destination_workload=~\"$workload\"}[5m]))",
- "format": "time_series",
- "intervalFactor": 1,
- "refId": "B"
- }
- ],
- "thresholds": "95, 99, 99.5",
- "title": "Incoming Success Rate (non-5xx responses)",
- "transparent": false,
- "type": "singlestat",
- "valueFontSize": "80%",
- "valueMaps": [
- {
- "op": "=",
- "text": "N/A",
- "value": "null"
- }
- ],
- "valueName": "avg"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 4,
- "w": 8,
- "x": 16,
- "y": 3
- },
- "id": 87,
- "legend": {
- "alignAsTable": false,
- "avg": false,
- "current": false,
- "hideEmpty": false,
- "hideZero": false,
- "max": false,
- "min": false,
- "rightSide": true,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "histogram_quantile(0.50, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\",destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\"}[1m])) by (le))",
- "format": "time_series",
- "interval": "",
- "intervalFactor": 1,
- "legendFormat": "P50",
- "refId": "A"
- },
- {
- "expr": "histogram_quantile(0.90, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\",destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\"}[1m])) by (le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "P90",
- "refId": "B"
- },
- {
- "expr": "histogram_quantile(0.99, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\",destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\"}[1m])) by (le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "P99",
- "refId": "C"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Request Duration",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "s",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ]
- },
- {
- "cacheTimeout": null,
- "colorBackground": false,
- "colorValue": false,
- "colors": [
- "#299c46",
- "rgba(237, 129, 40, 0.89)",
- "#d44a3a"
- ],
- "datasource": "Prometheus",
- "format": "Bps",
- "gauge": {
- "maxValue": 100,
- "minValue": 0,
- "show": false,
- "thresholdLabels": false,
- "thresholdMarkers": true
- },
- "gridPos": {
- "h": 4,
- "w": 12,
- "x": 0,
- "y": 7
- },
- "id": 84,
- "interval": null,
- "links": [],
- "mappingType": 1,
- "mappingTypes": [
- {
- "name": "value to text",
- "value": 1
- },
- {
- "name": "range to text",
- "value": 2
- }
- ],
- "maxDataPoints": 100,
- "nullPointMode": "connected",
- "nullText": null,
- "postfix": "",
- "postfixFontSize": "50%",
- "prefix": "",
- "prefixFontSize": "50%",
- "rangeMaps": [
- {
- "from": "null",
- "text": "N/A",
- "to": "null"
- }
- ],
- "sparkline": {
- "fillColor": "rgba(31, 118, 189, 0.18)",
- "full": true,
- "lineColor": "rgb(31, 120, 193)",
- "show": true
- },
- "tableColumn": "",
- "targets": [
- {
- "expr": "sum(irate(istio_tcp_sent_bytes_total{reporter=\"destination\", destination_workload_namespace=~\"$namespace\", destination_workload=~\"$workload\"}[1m])) + sum(irate(istio_tcp_received_bytes_total{reporter=\"destination\", destination_workload_namespace=~\"$namespace\", destination_workload=~\"$workload\"}[1m]))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "thresholds": "",
- "title": "TCP Server Traffic",
- "transparent": false,
- "type": "singlestat",
- "valueFontSize": "80%",
- "valueMaps": [
- {
- "op": "=",
- "text": "N/A",
- "value": "null"
- }
- ],
- "valueName": "avg"
- },
- {
- "cacheTimeout": null,
- "colorBackground": false,
- "colorValue": false,
- "colors": [
- "#299c46",
- "rgba(237, 129, 40, 0.89)",
- "#d44a3a"
- ],
- "datasource": "Prometheus",
- "format": "Bps",
- "gauge": {
- "maxValue": 100,
- "minValue": 0,
- "show": false,
- "thresholdLabels": false,
- "thresholdMarkers": true
- },
- "gridPos": {
- "h": 4,
- "w": 12,
- "x": 12,
- "y": 7
- },
- "id": 85,
- "interval": null,
- "links": [],
- "mappingType": 1,
- "mappingTypes": [
- {
- "name": "value to text",
- "value": 1
- },
- {
- "name": "range to text",
- "value": 2
- }
- ],
- "maxDataPoints": 100,
- "nullPointMode": "connected",
- "nullText": null,
- "postfix": "",
- "postfixFontSize": "50%",
- "prefix": "",
- "prefixFontSize": "50%",
- "rangeMaps": [
- {
- "from": "null",
- "text": "N/A",
- "to": "null"
- }
- ],
- "sparkline": {
- "fillColor": "rgba(31, 118, 189, 0.18)",
- "full": true,
- "lineColor": "rgb(31, 120, 193)",
- "show": true
- },
- "tableColumn": "",
- "targets": [
- {
- "expr": "sum(irate(istio_tcp_sent_bytes_total{reporter=\"source\", source_workload_namespace=~\"$namespace\", source_workload=~\"$workload\"}[1m])) + sum(irate(istio_tcp_received_bytes_total{reporter=\"source\", source_workload_namespace=~\"$namespace\", source_workload=~\"$workload\"}[1m]))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "thresholds": "",
- "title": "TCP Client Traffic",
- "transparent": false,
- "type": "singlestat",
- "valueFontSize": "80%",
- "valueMaps": [
- {
- "op": "=",
- "text": "N/A",
- "value": "null"
- }
- ],
- "valueName": "avg"
- },
- {
- "content": "",
- "gridPos": {
- "h": 3,
- "w": 24,
- "x": 0,
- "y": 11
- },
- "id": 45,
- "links": [],
- "mode": "html",
- "title": "",
- "transparent": true,
- "type": "text"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 0,
- "gridPos": {
- "h": 6,
- "w": 12,
- "x": 0,
- "y": 14
- },
- "id": 25,
- "legend": {
- "avg": false,
- "current": false,
- "hideEmpty": true,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null as zero",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "round(sum(irate(istio_requests_total{connection_security_policy=\"mutual_tls\", destination_workload_namespace=~\"$namespace\", destination_workload=~\"$workload\", reporter=\"destination\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[5m])) by (source_workload, source_workload_namespace, response_code), 0.001)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{ source_workload }}.{{ source_workload_namespace }} : {{ response_code }} (🔐mTLS)",
- "refId": "B",
- "step": 2
- },
- {
- "expr": "round(sum(irate(istio_requests_total{connection_security_policy!=\"mutual_tls\", destination_workload_namespace=~\"$namespace\", destination_workload=~\"$workload\", reporter=\"destination\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[5m])) by (source_workload, source_workload_namespace, response_code), 0.001)",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ source_workload }}.{{ source_workload_namespace }} : {{ response_code }}",
- "refId": "A",
- "step": 2
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Incoming Requests by Source And Response Code",
- "tooltip": {
- "shared": false,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": [
- "total"
- ]
- },
- "yaxes": [
- {
- "format": "ops",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": "0",
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ]
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 12,
- "x": 12,
- "y": 14
- },
- "id": 26,
- "legend": {
- "avg": false,
- "current": false,
- "hideEmpty": true,
- "hideZero": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "sum(irate(istio_requests_total{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_workload_namespace=~\"$namespace\", destination_workload=~\"$workload\",response_code!~\"5.*\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[5m])) by (source_workload, source_workload_namespace) / sum(rate(istio_requests_total{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_workload_namespace=~\"$namespace\", destination_workload=~\"$workload\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[5m])) by (source_workload, source_workload_namespace)",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ source_workload }}.{{ source_workload_namespace }} (🔐mTLS)",
- "refId": "A",
- "step": 2
- },
- {
- "expr": "sum(irate(istio_requests_total{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_workload_namespace=~\"$namespace\", destination_workload=~\"$workload\",response_code!~\"5.*\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[5m])) by (source_workload, source_workload_namespace) / sum(rate(istio_requests_total{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_workload_namespace=~\"$namespace\", destination_workload=~\"$workload\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[5m])) by (source_workload, source_workload_namespace)",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ source_workload }}.{{ source_workload_namespace }}",
- "refId": "B",
- "step": 2
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Incoming Success Rate (non-5xx responses) By Source",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "percentunit",
- "label": null,
- "logBase": 1,
- "max": "1.01",
- "min": "0",
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ]
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "description": "",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 8,
- "x": 0,
- "y": 20
- },
- "id": 27,
- "legend": {
- "alignAsTable": false,
- "avg": false,
- "current": false,
- "hideEmpty": true,
- "hideZero": false,
- "max": false,
- "min": false,
- "rightSide": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "histogram_quantile(0.50, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50 (🔐mTLS)",
- "refId": "D",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.90, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90 (🔐mTLS)",
- "refId": "A",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.95, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95 (🔐mTLS)",
- "refId": "B",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.99, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99 (🔐mTLS)",
- "refId": "C",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.50, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50",
- "refId": "E",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.90, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90",
- "refId": "F",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.95, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95",
- "refId": "G",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.99, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99",
- "refId": "H",
- "step": 2
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Incoming Request Duration by Source",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "s",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": "0",
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ]
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 8,
- "x": 8,
- "y": 20
- },
- "id": 28,
- "legend": {
- "alignAsTable": false,
- "avg": false,
- "current": false,
- "hideEmpty": true,
- "max": false,
- "min": false,
- "rightSide": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "histogram_quantile(0.50, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50 (🔐mTLS)",
- "refId": "D",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.90, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90 (🔐mTLS)",
- "refId": "A",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.95, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95 (🔐mTLS)",
- "refId": "B",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.99, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99 (🔐mTLS)",
- "refId": "C",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.50, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50",
- "refId": "E",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.90, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90",
- "refId": "F",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.95, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95",
- "refId": "G",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.99, sum(irate(istio_request_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99",
- "refId": "H",
- "step": 2
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Incoming Request Size By Source",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "decbytes",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": "0",
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ]
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 8,
- "x": 16,
- "y": 20
- },
- "id": 68,
- "legend": {
- "alignAsTable": false,
- "avg": false,
- "current": false,
- "hideEmpty": true,
- "max": false,
- "min": false,
- "rightSide": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "histogram_quantile(0.50, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50 (🔐mTLS)",
- "refId": "D",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.90, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90 (🔐mTLS)",
- "refId": "A",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.95, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95 (🔐mTLS)",
- "refId": "B",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.99, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99 (🔐mTLS)",
- "refId": "C",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.50, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50",
- "refId": "E",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.90, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90",
- "refId": "F",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.95, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95",
- "refId": "G",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.99, sum(irate(istio_response_bytes_bucket{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99",
- "refId": "H",
- "step": 2
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Response Size By Source",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "decbytes",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": "0",
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ]
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 12,
- "x": 0,
- "y": 26
- },
- "id": 80,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "round(sum(irate(istio_tcp_received_bytes_total{reporter=\"destination\", connection_security_policy=\"mutual_tls\", destination_workload_namespace=~\"$namespace\", destination_workload=~\"$workload\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace), 0.001)",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ source_workload }}.{{ source_workload_namespace}} (🔐mTLS)",
- "refId": "A",
- "step": 2
- },
- {
- "expr": "round(sum(irate(istio_tcp_received_bytes_total{reporter=\"destination\", connection_security_policy!=\"mutual_tls\", destination_workload_namespace=~\"$namespace\", destination_workload=~\"$workload\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace), 0.001)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{ source_workload }}.{{ source_workload_namespace}}",
- "refId": "B",
- "step": 2
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Bytes Received from Incoming TCP Connection",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "Bps",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": "0",
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ]
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 12,
- "x": 12,
- "y": 26
- },
- "id": 82,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "round(sum(irate(istio_tcp_sent_bytes_total{connection_security_policy=\"mutual_tls\", reporter=\"destination\", destination_workload_namespace=~\"$namespace\", destination_workload=~\"$workload\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace), 0.001)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{ source_workload }}.{{ source_workload_namespace}} (🔐mTLS)",
- "refId": "A",
- "step": 2
- },
- {
- "expr": "round(sum(irate(istio_tcp_sent_bytes_total{connection_security_policy!=\"mutual_tls\", reporter=\"destination\", destination_workload_namespace=~\"$namespace\", destination_workload=~\"$workload\", source_workload=~\"$srcwl\", source_workload_namespace=~\"$srcns\"}[1m])) by (source_workload, source_workload_namespace), 0.001)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{ source_workload }}.{{ source_workload_namespace}}",
- "refId": "B",
- "step": 2
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Bytes Sent to Incoming TCP Connection",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "Bps",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": "0",
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ]
- },
- {
- "content": "",
- "gridPos": {
- "h": 3,
- "w": 24,
- "x": 0,
- "y": 32
- },
- "id": 69,
- "links": [],
- "mode": "html",
- "title": "",
- "transparent": true,
- "type": "text"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 0,
- "gridPos": {
- "h": 6,
- "w": 12,
- "x": 0,
- "y": 35
- },
- "id": 70,
- "legend": {
- "avg": false,
- "current": false,
- "hideEmpty": true,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null as zero",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "round(sum(irate(istio_requests_total{connection_security_policy=\"mutual_tls\", source_workload_namespace=~\"$namespace\", source_workload=~\"$workload\", reporter=\"source\", destination_service=~\"$dstsvc\"}[5m])) by (destination_service, response_code), 0.001)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{ destination_service }} : {{ response_code }} (🔐mTLS)",
- "refId": "B",
- "step": 2
- },
- {
- "expr": "round(sum(irate(istio_requests_total{connection_security_policy!=\"mutual_tls\", source_workload_namespace=~\"$namespace\", source_workload=~\"$workload\", reporter=\"source\", destination_service=~\"$dstsvc\"}[5m])) by (destination_service, response_code), 0.001)",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_service }} : {{ response_code }}",
- "refId": "A",
- "step": 2
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Outgoing Requests by Destination And Response Code",
- "tooltip": {
- "shared": false,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": [
- "total"
- ]
- },
- "yaxes": [
- {
- "format": "ops",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": "0",
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ]
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 12,
- "x": 12,
- "y": 35
- },
- "id": 71,
- "legend": {
- "avg": false,
- "current": false,
- "hideEmpty": true,
- "hideZero": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "sum(irate(istio_requests_total{reporter=\"source\", connection_security_policy=\"mutual_tls\", source_workload_namespace=~\"$namespace\", source_workload=~\"$workload\",response_code!~\"5.*\", destination_service=~\"$dstsvc\"}[5m])) by (destination_service) / sum(irate(istio_requests_total{reporter=\"source\", connection_security_policy=\"mutual_tls\", source_workload_namespace=~\"$namespace\", source_workload=~\"$workload\", destination_service=~\"$dstsvc\"}[5m])) by (destination_service)",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_service }} (🔐mTLS)",
- "refId": "A",
- "step": 2
- },
- {
- "expr": "sum(irate(istio_requests_total{reporter=\"source\", connection_security_policy!=\"mutual_tls\", source_workload_namespace=~\"$namespace\", source_workload=~\"$workload\",response_code!~\"5.*\", destination_service=~\"$dstsvc\"}[5m])) by (destination_service) / sum(irate(istio_requests_total{reporter=\"source\", connection_security_policy!=\"mutual_tls\", source_workload_namespace=~\"$namespace\", source_workload=~\"$workload\", destination_service=~\"$dstsvc\"}[5m])) by (destination_service)",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{destination_service }}",
- "refId": "B",
- "step": 2
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Outgoing Success Rate (non-5xx responses) By Destination",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "percentunit",
- "label": null,
- "logBase": 1,
- "max": "1.01",
- "min": "0",
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ]
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "description": "",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 8,
- "x": 0,
- "y": 41
- },
- "id": 72,
- "legend": {
- "alignAsTable": false,
- "avg": false,
- "current": false,
- "hideEmpty": true,
- "hideZero": false,
- "max": false,
- "min": false,
- "rightSide": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "histogram_quantile(0.50, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_service }} P50 (🔐mTLS)",
- "refId": "D",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.90, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_service }} P90 (🔐mTLS)",
- "refId": "A",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.95, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_service }} P95 (🔐mTLS)",
- "refId": "B",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.99, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_service }} P99 (🔐mTLS)",
- "refId": "C",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.50, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_service }} P50",
- "refId": "E",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.90, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_service }} P90",
- "refId": "F",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.95, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_service }} P95",
- "refId": "G",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.99, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_service }} P99",
- "refId": "H",
- "step": 2
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Outgoing Request Duration by Destination",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "s",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": "0",
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ]
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 8,
- "x": 8,
- "y": 41
- },
- "id": 73,
- "legend": {
- "alignAsTable": false,
- "avg": false,
- "current": false,
- "hideEmpty": true,
- "max": false,
- "min": false,
- "rightSide": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "histogram_quantile(0.50, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_service }} P50 (🔐mTLS)",
- "refId": "D",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.90, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_service }} P90 (🔐mTLS)",
- "refId": "A",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.95, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_service }} P95 (🔐mTLS)",
- "refId": "B",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.99, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_service }} P99 (🔐mTLS)",
- "refId": "C",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.50, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_service }} P50",
- "refId": "E",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.90, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_service }} P90",
- "refId": "F",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.95, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_service }} P95",
- "refId": "G",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.99, sum(irate(istio_request_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_service }} P99",
- "refId": "H",
- "step": 2
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Outgoing Request Size By Destination",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "decbytes",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": "0",
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ]
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 8,
- "x": 16,
- "y": 41
- },
- "id": 74,
- "legend": {
- "alignAsTable": false,
- "avg": false,
- "current": false,
- "hideEmpty": true,
- "max": false,
- "min": false,
- "rightSide": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "histogram_quantile(0.50, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_service }} P50 (🔐mTLS)",
- "refId": "D",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.90, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_service }} P90 (🔐mTLS)",
- "refId": "A",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.95, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_service }} P95 (🔐mTLS)",
- "refId": "B",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.99, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_service }} P99 (🔐mTLS)",
- "refId": "C",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.50, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_service }} P50",
- "refId": "E",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.90, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_service }} P90",
- "refId": "F",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.95, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_service }} P95",
- "refId": "G",
- "step": 2
- },
- {
- "expr": "histogram_quantile(0.99, sum(irate(istio_response_bytes_bucket{reporter=\"source\", connection_security_policy!=\"mutual_tls\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service, le))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "{{ destination_service }} P99",
- "refId": "H",
- "step": 2
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Response Size By Destination",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "decbytes",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": "0",
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ]
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 12,
- "x": 0,
- "y": 47
- },
- "id": 76,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "round(sum(irate(istio_tcp_sent_bytes_total{connection_security_policy=\"mutual_tls\", reporter=\"source\", source_workload_namespace=~\"$namespace\", source_workload=~\"$workload\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service), 0.001)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{ destination_service }} (🔐mTLS)",
- "refId": "A",
- "step": 2
- },
- {
- "expr": "round(sum(irate(istio_tcp_sent_bytes_total{connection_security_policy!=\"mutual_tls\", reporter=\"source\", source_workload_namespace=~\"$namespace\", source_workload=~\"$workload\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service), 0.001)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{ destination_service }}",
- "refId": "B",
- "step": 2
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Bytes Sent on Outgoing TCP Connection",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "Bps",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": "0",
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ]
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 12,
- "x": 12,
- "y": 47
- },
- "id": 78,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "round(sum(irate(istio_tcp_received_bytes_total{reporter=\"source\", connection_security_policy=\"mutual_tls\", source_workload_namespace=~\"$namespace\", source_workload=~\"$workload\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service), 0.001)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{ destination_service }} (🔐mTLS)",
- "refId": "A",
- "step": 2
- },
- {
- "expr": "round(sum(irate(istio_tcp_received_bytes_total{reporter=\"source\", connection_security_policy!=\"mutual_tls\", source_workload_namespace=~\"$namespace\", source_workload=~\"$workload\", destination_service=~\"$dstsvc\"}[1m])) by (destination_service), 0.001)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{ destination_service }}",
- "refId": "B",
- "step": 2
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Bytes Received from Outgoing TCP Connection",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "Bps",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": "0",
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ]
- }
- ],
- "refresh": "10s",
- "schemaVersion": 16,
- "style": "dark",
- "tags": [],
- "templating": {
- "list": [
- {
- "allValue": null,
- "current": {},
- "datasource": "Prometheus",
- "hide": 0,
- "includeAll": false,
- "label": "Namespace",
- "multi": false,
- "name": "namespace",
- "options": [],
- "query": "query_result(sum(istio_requests_total) by (destination_workload_namespace) or sum(istio_tcp_sent_bytes_total) by (destination_workload_namespace))",
- "refresh": 1,
- "regex": "/.*_namespace=\"([^\"]*).*/",
- "sort": 0,
- "tagValuesQuery": "",
- "tags": [],
- "tagsQuery": "",
- "type": "query",
- "useTags": false
- },
- {
- "allValue": null,
- "current": {},
- "datasource": "Prometheus",
- "hide": 0,
- "includeAll": false,
- "label": "Workload",
- "multi": false,
- "name": "workload",
- "options": [],
- "query": "query_result((sum(istio_requests_total{destination_workload_namespace=~\"$namespace\"}) by (destination_workload) or sum(istio_requests_total{source_workload_namespace=~\"$namespace\"}) by (source_workload)) or (sum(istio_tcp_sent_bytes_total{destination_workload_namespace=~\"$namespace\"}) by (destination_workload) or sum(istio_tcp_sent_bytes_total{source_workload_namespace=~\"$namespace\"}) by (source_workload)))",
- "refresh": 1,
- "regex": "/.*workload=\"([^\"]*).*/",
- "sort": 1,
- "tagValuesQuery": "",
- "tags": [],
- "tagsQuery": "",
- "type": "query",
- "useTags": false
- },
- {
- "allValue": null,
- "current": {},
- "datasource": "Prometheus",
- "hide": 0,
- "includeAll": true,
- "label": "Inbound Workload Namespace",
- "multi": true,
- "name": "srcns",
- "options": [],
- "query": "query_result( sum(istio_requests_total{reporter=\"destination\", destination_workload=\"$workload\", destination_workload_namespace=~\"$namespace\"}) by (source_workload_namespace) or sum(istio_tcp_sent_bytes_total{reporter=\"destination\", destination_workload=\"$workload\", destination_workload_namespace=~\"$namespace\"}) by (source_workload_namespace))",
- "refresh": 1,
- "regex": "/.*namespace=\"([^\"]*).*/",
- "sort": 2,
- "tagValuesQuery": "",
- "tags": [],
- "tagsQuery": "",
- "type": "query",
- "useTags": false
- },
- {
- "allValue": null,
- "current": {},
- "datasource": "Prometheus",
- "hide": 0,
- "includeAll": true,
- "label": "Inbound Workload",
- "multi": true,
- "name": "srcwl",
- "options": [],
- "query": "query_result( sum(istio_requests_total{reporter=\"destination\", destination_workload=\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload_namespace=~\"$srcns\"}) by (source_workload) or sum(istio_tcp_sent_bytes_total{reporter=\"destination\", destination_workload=\"$workload\", destination_workload_namespace=~\"$namespace\", source_workload_namespace=~\"$srcns\"}) by (source_workload))",
- "refresh": 1,
- "regex": "/.*workload=\"([^\"]*).*/",
- "sort": 3,
- "tagValuesQuery": "",
- "tags": [],
- "tagsQuery": "",
- "type": "query",
- "useTags": false
- },
- {
- "allValue": null,
- "current": {},
- "datasource": "Prometheus",
- "hide": 0,
- "includeAll": true,
- "label": "Destination Service",
- "multi": true,
- "name": "dstsvc",
- "options": [],
- "query": "query_result( sum(istio_requests_total{reporter=\"source\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\"}) by (destination_service) or sum(istio_tcp_sent_bytes_total{reporter=\"source\", source_workload=~\"$workload\", source_workload_namespace=~\"$namespace\"}) by (destination_service))",
- "refresh": 1,
- "regex": "/.*destination_service=\"([^\"]*).*/",
- "sort": 4,
- "tagValuesQuery": "",
- "tags": [],
- "tagsQuery": "",
- "type": "query",
- "useTags": false
- }
- ]
- },
- "time": {
- "from": "now-5m",
- "to": "now"
- },
- "timepicker": {
- "refresh_intervals": [
- "5s",
- "10s",
- "30s",
- "1m",
- "5m",
- "15m",
- "30m",
- "1h",
- "2h",
- "1d"
- ],
- "time_options": [
- "5m",
- "15m",
- "1h",
- "6h",
- "12h",
- "24h",
- "2d",
- "7d",
- "30d"
- ]
- },
- "timezone": "",
- "title": "Istio Workload Dashboard",
- "uid": "UbsSZTDik",
- "version": 1
-}
-'
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: istio-grafana-configuration-dashboards-mixer-dashboard
- labels:
- app: grafana
- chart: grafana
- heritage: Tiller
- release: istio
- istio: grafana
-data:
- mixer-dashboard.json: '{
- "__inputs": [
- {
- "name": "DS_PROMETHEUS",
- "label": "Prometheus",
- "description": "",
- "type": "datasource",
- "pluginId": "prometheus",
- "pluginName": "Prometheus"
- }
- ],
- "__requires": [
- {
- "type": "grafana",
- "id": "grafana",
- "name": "Grafana",
- "version": "5.2.3"
- },
- {
- "type": "panel",
- "id": "graph",
- "name": "Graph",
- "version": "5.0.0"
- },
- {
- "type": "datasource",
- "id": "prometheus",
- "name": "Prometheus",
- "version": "5.0.0"
- },
- {
- "type": "panel",
- "id": "text",
- "name": "Text",
- "version": "5.0.0"
- }
- ],
- "annotations": {
- "list": [
- {
- "builtIn": 1,
- "datasource": "-- Grafana --",
- "enable": true,
- "hide": true,
- "iconColor": "rgba(0, 211, 255, 1)",
- "limit": 100,
- "name": "Annotations & Alerts",
- "showIn": 0,
- "type": "dashboard"
- }
- ]
- },
- "editable": false,
- "gnetId": null,
- "graphTooltip": 1,
- "id": null,
- "iteration": 1543881232533,
- "links": [],
- "panels": [
- {
- "content": "Deployed Versions
",
- "gridPos": {
- "h": 3,
- "w": 24,
- "x": 0,
- "y": 0
- },
- "height": "40",
- "id": 62,
- "links": [],
- "mode": "html",
- "title": "",
- "transparent": true,
- "type": "text"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 5,
- "w": 24,
- "x": 0,
- "y": 3
- },
- "id": 64,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "sum(istio_build{component=\"mixer\"}) by (tag)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{ tag }}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Mixer Versions",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "content": "Resource Usage
",
- "gridPos": {
- "h": 3,
- "w": 24,
- "x": 0,
- "y": 8
- },
- "height": "40",
- "id": 29,
- "links": [],
- "mode": "html",
- "title": "",
- "transparent": true,
- "type": "text"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 7,
- "w": 6,
- "x": 0,
- "y": 11
- },
- "id": 5,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "sum(process_virtual_memory_bytes{job=~\"istio-telemetry|istio-policy\"}) by (job)",
- "format": "time_series",
- "instant": false,
- "intervalFactor": 2,
- "legendFormat": "Virtual Memory ({{ job }})",
- "refId": "I"
- },
- {
- "expr": "sum(process_resident_memory_bytes{job=~\"istio-telemetry|istio-policy\"}) by (job)",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "Resident Memory ({{ job }})",
- "refId": "H"
- },
- {
- "expr": "sum(go_memstats_heap_sys_bytes{job=~\"istio-telemetry|istio-policy\"}) by (job)",
- "format": "time_series",
- "hide": true,
- "intervalFactor": 2,
- "legendFormat": "heap sys ({{ job }})",
- "refId": "A"
- },
- {
- "expr": "sum(go_memstats_heap_alloc_bytes{job=~\"istio-telemetry|istio-policy\"}) by (job)",
- "format": "time_series",
- "hide": true,
- "intervalFactor": 2,
- "legendFormat": "heap alloc ({{ job }})",
- "refId": "D"
- },
- {
- "expr": "sum(go_memstats_alloc_bytes{job=~\"istio-telemetry|istio-policy\"}) by (job)",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "Alloc ({{ job }})",
- "refId": "F"
- },
- {
- "expr": "sum(go_memstats_heap_inuse_bytes{job=~\"istio-telemetry|istio-policy\"}) by (job)",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 2,
- "legendFormat": "Heap in-use ({{ job }})",
- "refId": "E"
- },
- {
- "expr": "sum(go_memstats_stack_inuse_bytes{job=~\"istio-telemetry|istio-policy\"}) by (job)",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "Stack in-use ({{ job }})",
- "refId": "G"
- },
- {
- "expr": "sum(label_replace(container_memory_usage_bytes{container_name=~\"mixer|istio-proxy\", pod_name=~\"istio-telemetry-.*|istio-policy-.*\"}, \"service\", \"$1\" , \"pod_name\", \"(istio-telemetry|istio-policy)-.*\")) by (service)",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 2,
- "legendFormat": "{{ service }} total (k8s)",
- "refId": "C"
- },
- {
- "expr": "sum(label_replace(container_memory_usage_bytes{container_name=~\"mixer|istio-proxy\", pod_name=~\"istio-telemetry-.*|istio-policy-.*\"}, \"service\", \"$1\" , \"pod_name\", \"(istio-telemetry|istio-policy)-.*\")) by (container_name, service)",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 2,
- "legendFormat": "{{ service }} - {{ container_name }} (k8s)",
- "refId": "B"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Memory",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "bytes",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 7,
- "w": 6,
- "x": 6,
- "y": 11
- },
- "id": 6,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "label_replace(sum(rate(container_cpu_usage_seconds_total{container_name=~\"mixer|istio-proxy\", pod_name=~\"istio-telemetry-.*|istio-policy-.*\"}[1m])) by (pod_name), \"service\", \"$1\" , \"pod_name\", \"(istio-telemetry|istio-policy)-.*\")",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 2,
- "legendFormat": "{{ service }} total (k8s)",
- "refId": "A"
- },
- {
- "expr": "label_replace(sum(rate(container_cpu_usage_seconds_total{container_name=~\"mixer|istio-proxy\", pod_name=~\"istio-telemetry-.*|istio-policy-.*\"}[1m])) by (container_name, pod_name), \"service\", \"$1\" , \"pod_name\", \"(istio-telemetry|istio-policy)-.*\")",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 2,
- "legendFormat": "{{ service }} - {{ container_name }} (k8s)",
- "refId": "B"
- },
- {
- "expr": "sum(irate(process_cpu_seconds_total{job=~\"istio-telemetry|istio-policy\"}[1m])) by (job)",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 2,
- "legendFormat": "{{ job }} (self-reported)",
- "refId": "C"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "CPU",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 7,
- "w": 6,
- "x": 12,
- "y": 11
- },
- "id": 7,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "sum(process_open_fds{job=~\"istio-telemetry|istio-policy\"}) by (job)",
- "format": "time_series",
- "hide": true,
- "instant": false,
- "interval": "",
- "intervalFactor": 2,
- "legendFormat": "Open FDs ({{ job }})",
- "refId": "A"
- },
- {
- "expr": "sum(label_replace(container_fs_usage_bytes{container_name=~\"mixer|istio-proxy\", pod_name=~\"istio-telemetry-.*|istio-policy-.*\"}, \"service\", \"$1\" , \"pod_name\", \"(istio-telemetry|istio-policy)-.*\")) by (container_name, service)",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "{{ service }} - {{ container_name }}",
- "refId": "B"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Disk",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "bytes",
- "label": "",
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "decimals": null,
- "format": "none",
- "label": "",
- "logBase": 1024,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 7,
- "w": 6,
- "x": 18,
- "y": 11
- },
- "id": 4,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": false,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "sum(go_goroutines{job=~\"istio-telemetry|istio-policy\"}) by (job)",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "Number of Goroutines ({{ job }})",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Goroutines",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": "",
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "content": "Mixer Overview
",
- "gridPos": {
- "h": 3,
- "w": 24,
- "x": 0,
- "y": 18
- },
- "height": "40px",
- "id": 30,
- "links": [],
- "mode": "html",
- "title": "",
- "transparent": true,
- "type": "text"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 6,
- "x": 0,
- "y": 21
- },
- "id": 9,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "sum(rate(grpc_io_server_completed_rpcs[1m]))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 2,
- "legendFormat": "mixer (Total)",
- "refId": "B"
- },
- {
- "expr": "sum(rate(grpc_io_server_completed_rpcs[1m])) by (grpc_server_method)",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "mixer ({{ grpc_server_method }})",
- "refId": "C"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Incoming Requests",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "ops",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 6,
- "x": 6,
- "y": 21
- },
- "id": 8,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [
- {
- "alias": "{}",
- "yaxis": 1
- }
- ],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "histogram_quantile(0.5, sum(rate(grpc_io_server_server_latency_bucket{}[1m])) by (grpc_server_method, le))",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "{{ grpc_server_method }} 0.5",
- "refId": "B"
- },
- {
- "expr": "histogram_quantile(0.9, sum(rate(grpc_io_server_server_latency_bucket{}[1m])) by (grpc_server_method, le))",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "{{ grpc_server_method }} 0.9",
- "refId": "C"
- },
- {
- "expr": "histogram_quantile(0.99, sum(rate(grpc_io_server_server_latency_bucket{}[1m])) by (grpc_server_method, le))",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "{{ grpc_server_method }} 0.99",
- "refId": "D"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Response Durations",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "ms",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 6,
- "x": 12,
- "y": 21
- },
- "id": 11,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "sum(rate(grpc_server_handled_total{grpc_code=~\"Unknown|Unimplemented|Internal|DataLoss\"}[1m])) by (grpc_method)",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "Mixer {{ grpc_method }}",
- "refId": "B"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Server Error Rate (5xx responses)",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 6,
- "x": 18,
- "y": 21
- },
- "id": 12,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "sum(irate(grpc_server_handled_total{grpc_code!=\"OK\",grpc_service=~\".*Mixer\"}[1m])) by (grpc_method)",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "Mixer {{ grpc_method }}",
- "refId": "B"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Non-successes (4xxs)",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "content": "Adapters and Config
",
- "gridPos": {
- "h": 3,
- "w": 24,
- "x": 0,
- "y": 27
- },
- "id": 28,
- "links": [],
- "mode": "html",
- "title": "",
- "transparent": true,
- "type": "text"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 7,
- "w": 12,
- "x": 0,
- "y": 30
- },
- "id": 13,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "sum(irate(mixer_runtime_dispatches_total{adapter=~\"$adapter\"}[1m])) by (adapter)",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "{{ adapter }}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Adapter Dispatch Count",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 7,
- "w": 12,
- "x": 12,
- "y": 30
- },
- "id": 14,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "histogram_quantile(0.5, sum(irate(mixer_runtime_dispatch_duration_seconds_bucket{adapter=~\"$adapter\"}[1m])) by (adapter, le))",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "{{ adapter }} - p50",
- "refId": "A"
- },
- {
- "expr": "histogram_quantile(0.9, sum(irate(mixer_runtime_dispatch_duration_seconds_bucket{adapter=~\"$adapter\"}[1m])) by (adapter, le))",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "{{ adapter }} - p90 ",
- "refId": "B"
- },
- {
- "expr": "histogram_quantile(0.99, sum(irate(mixer_runtime_dispatch_duration_seconds_bucket{adapter=~\"$adapter\"}[1m])) by (adapter, le))",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "{{ adapter }} - p99",
- "refId": "C"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Adapter Dispatch Duration",
- "tooltip": {
- "shared": true,
- "sort": 1,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "s",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 7,
- "w": 6,
- "x": 0,
- "y": 37
- },
- "id": 60,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "scalar(topk(1, max(mixer_config_rule_config_count) by (configID)))",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "Rules",
- "refId": "A"
- },
- {
- "expr": "scalar(topk(1, max(mixer_config_rule_config_error_count) by (configID)))",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "Config Errors",
- "refId": "B"
- },
- {
- "expr": "scalar(topk(1, max(mixer_config_rule_config_match_error_count) by (configID)))",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "Match Errors",
- "refId": "C"
- },
- {
- "expr": "scalar(topk(1, max(mixer_config_unsatisfied_action_handler_count) by (configID)))",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "Unsatisfied Actions",
- "refId": "D"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Rules",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 7,
- "w": 6,
- "x": 6,
- "y": 37
- },
- "id": 56,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "scalar(topk(1, max(mixer_config_instance_config_count) by (configID)))",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "Instances",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Instances in Latest Config",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 7,
- "w": 6,
- "x": 12,
- "y": 37
- },
- "id": 54,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "scalar(topk(1, max(mixer_config_handler_config_count) by (configID)))",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "Handlers",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Handlers in Latest Config",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 7,
- "w": 6,
- "x": 18,
- "y": 37
- },
- "id": 58,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "scalar(topk(1, max(mixer_config_attribute_count) by (configID)))",
- "format": "time_series",
- "instant": false,
- "intervalFactor": 1,
- "legendFormat": "Attributes",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Attributes in Latest Config",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "content": "Individual Adapters
",
- "gridPos": {
- "h": 3,
- "w": 24,
- "x": 0,
- "y": 44
- },
- "id": 23,
- "links": [],
- "mode": "html",
- "title": "",
- "transparent": true,
- "type": "text"
- },
- {
- "collapsed": false,
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 47
- },
- "id": 46,
- "panels": [],
- "repeat": "adapter",
- "title": "$adapter Adapter",
- "type": "row"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 7,
- "w": 12,
- "x": 0,
- "y": 48
- },
- "id": 17,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "label_replace(irate(mixer_runtime_dispatches_total{adapter=\"$adapter\"}[1m]),\"handler\", \"$1 ($3)\", \"handler\", \"(.*)\\\\.(.*)\\\\.(.*)\")",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "{{ handler }} (error: {{ error }})",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Dispatch Count By Handler",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 7,
- "w": 12,
- "x": 12,
- "y": 48
- },
- "id": 18,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "label_replace(histogram_quantile(0.5, sum(rate(mixer_runtime_dispatch_duration_seconds_bucket{adapter=\"$adapter\"}[1m])) by (handler, error, le)), \"handler_short\", \"$1 ($3)\", \"handler\", \"(.*)\\\\.(.*)\\\\.(.*)\")",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "p50 - {{ handler_short }} (error: {{ error }})",
- "refId": "A"
- },
- {
- "expr": "label_replace(histogram_quantile(0.9, sum(irate(mixer_runtime_dispatch_duration_seconds_bucket{adapter=\"$adapter\"}[1m])) by (handler, error, le)), \"handler_short\", \"$1 ($3)\", \"handler\", \"(.*)\\\\.(.*)\\\\.(.*)\")",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "p90 - {{ handler_short }} (error: {{ error }})",
- "refId": "D"
- },
- {
- "expr": "label_replace(histogram_quantile(0.99, sum(irate(mixer_runtime_dispatch_duration_seconds_bucket{adapter=\"$adapter\"}[1m])) by (handler, error, le)), \"handler_short\", \"$1 ($3)\", \"handler\", \"(.*)\\\\.(.*)\\\\.(.*)\")",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "p99 - {{ handler_short }} (error: {{ error }})",
- "refId": "E"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Dispatch Duration By Handler",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "s",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- }
- ],
- "refresh": "5s",
- "schemaVersion": 16,
- "style": "dark",
- "tags": [],
- "templating": {
- "list": [
- {
- "allValue": null,
- "current": {},
- "datasource": "Prometheus",
- "hide": 0,
- "includeAll": true,
- "label": "Adapter",
- "multi": true,
- "name": "adapter",
- "options": [],
- "query": "label_values(adapter)",
- "refresh": 2,
- "regex": "",
- "sort": 1,
- "tagValuesQuery": "",
- "tags": [],
- "tagsQuery": "",
- "type": "query",
- "useTags": false
- }
- ]
- },
- "time": {
- "from": "now-5m",
- "to": "now"
- },
- "timepicker": {
- "refresh_intervals": [
- "5s",
- "10s",
- "30s",
- "1m",
- "5m",
- "15m",
- "30m",
- "1h",
- "2h",
- "1d"
- ],
- "time_options": [
- "5m",
- "15m",
- "1h",
- "6h",
- "12h",
- "24h",
- "2d",
- "7d",
- "30d"
- ]
- },
- "timezone": "",
- "title": "Istio Mixer Dashboard",
- "version": 4
-}
-'
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: istio-grafana-configuration-dashboards-pilot-dashboard
- labels:
- app: grafana
- chart: grafana
- heritage: Tiller
- release: istio
- istio: grafana
-data:
- pilot-dashboard.json: '{
- "__inputs": [
- {
- "name": "DS_PROMETHEUS",
- "label": "Prometheus",
- "description": "",
- "type": "datasource",
- "pluginId": "prometheus",
- "pluginName": "Prometheus"
- }
- ],
- "__requires": [
- {
- "type": "grafana",
- "id": "grafana",
- "name": "Grafana",
- "version": "5.2.3"
- },
- {
- "type": "panel",
- "id": "graph",
- "name": "Graph",
- "version": "5.0.0"
- },
- {
- "type": "datasource",
- "id": "prometheus",
- "name": "Prometheus",
- "version": "5.0.0"
- },
- {
- "type": "panel",
- "id": "text",
- "name": "Text",
- "version": "5.0.0"
- }
- ],
- "annotations": {
- "list": [
- {
- "builtIn": 1,
- "datasource": "-- Grafana --",
- "enable": true,
- "hide": true,
- "iconColor": "rgba(0, 211, 255, 1)",
- "name": "Annotations & Alerts",
- "type": "dashboard"
- }
- ]
- },
- "editable": false,
- "gnetId": null,
- "graphTooltip": 1,
- "id": null,
- "links": [],
- "panels": [
- {
- "content": "Deployed Versions
",
- "gridPos": {
- "h": 3,
- "w": 24,
- "x": 0,
- "y": 0
- },
- "height": "40",
- "id": 58,
- "links": [],
- "mode": "html",
- "title": "",
- "transparent": true,
- "type": "text"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 5,
- "w": 24,
- "x": 0,
- "y": 3
- },
- "id": 56,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "sum(istio_build{component=\"pilot\"}) by (tag)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{ tag }}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Pilot Versions",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "content": "Resource Usage
",
- "gridPos": {
- "h": 3,
- "w": 24,
- "x": 0,
- "y": 8
- },
- "height": "40",
- "id": 29,
- "links": [],
- "mode": "html",
- "title": "",
- "transparent": true,
- "type": "text"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 7,
- "w": 6,
- "x": 0,
- "y": 11
- },
- "id": 5,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "process_virtual_memory_bytes{job=\"pilot\"}",
- "format": "time_series",
- "instant": false,
- "intervalFactor": 2,
- "legendFormat": "Virtual Memory",
- "refId": "I",
- "step": 2
- },
- {
- "expr": "process_resident_memory_bytes{job=\"pilot\"}",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "Resident Memory",
- "refId": "H",
- "step": 2
- },
- {
- "expr": "go_memstats_heap_sys_bytes{job=\"pilot\"}",
- "format": "time_series",
- "hide": true,
- "intervalFactor": 2,
- "legendFormat": "heap sys",
- "refId": "A"
- },
- {
- "expr": "go_memstats_heap_alloc_bytes{job=\"pilot\"}",
- "format": "time_series",
- "hide": true,
- "intervalFactor": 2,
- "legendFormat": "heap alloc",
- "refId": "D"
- },
- {
- "expr": "go_memstats_alloc_bytes{job=\"pilot\"}",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "Alloc",
- "refId": "F",
- "step": 2
- },
- {
- "expr": "go_memstats_heap_inuse_bytes{job=\"pilot\"}",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 2,
- "legendFormat": "Heap in-use",
- "refId": "E",
- "step": 2
- },
- {
- "expr": "go_memstats_stack_inuse_bytes{job=\"pilot\"}",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "Stack in-use",
- "refId": "G",
- "step": 2
- },
- {
- "expr": "sum(container_memory_usage_bytes{container_name=~\"discovery|istio-proxy\", pod_name=~\"istio-pilot-.*\"})",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 2,
- "legendFormat": "Total (k8s)",
- "refId": "C",
- "step": 2
- },
- {
- "expr": "container_memory_usage_bytes{container_name=~\"discovery|istio-proxy\", pod_name=~\"istio-pilot-.*\"}",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 2,
- "legendFormat": "{{ container_name }} (k8s)",
- "refId": "B",
- "step": 2
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Memory",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "bytes",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 7,
- "w": 6,
- "x": 6,
- "y": 11
- },
- "id": 6,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "sum(rate(container_cpu_usage_seconds_total{container_name=~\"discovery|istio-proxy\", pod_name=~\"istio-pilot-.*\"}[1m]))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 2,
- "legendFormat": "Total (k8s)",
- "refId": "A",
- "step": 2
- },
- {
- "expr": "sum(rate(container_cpu_usage_seconds_total{container_name=~\"discovery|istio-proxy\", pod_name=~\"istio-pilot-.*\"}[1m])) by (container_name)",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 2,
- "legendFormat": "{{ container_name }} (k8s)",
- "refId": "B",
- "step": 2
- },
- {
- "expr": "irate(process_cpu_seconds_total{job=\"pilot\"}[1m])",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 2,
- "legendFormat": "pilot (self-reported)",
- "refId": "C",
- "step": 2
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "CPU",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 7,
- "w": 6,
- "x": 12,
- "y": 11
- },
- "id": 7,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "process_open_fds{job=\"pilot\"}",
- "format": "time_series",
- "hide": true,
- "instant": false,
- "interval": "",
- "intervalFactor": 2,
- "legendFormat": "Open FDs (pilot)",
- "refId": "A"
- },
- {
- "expr": "container_fs_usage_bytes{container_name=~\"discovery|istio-proxy\", pod_name=~\"istio-pilot-.*\"}",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "{{ container_name }}",
- "refId": "B",
- "step": 2
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Disk",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "bytes",
- "label": "",
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "decimals": null,
- "format": "none",
- "label": "",
- "logBase": 1024,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 7,
- "w": 6,
- "x": 18,
- "y": 11
- },
- "id": 4,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": false,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "go_goroutines{job=\"pilot\"}",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "Number of Goroutines",
- "refId": "A",
- "step": 2
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Goroutines",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": "",
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "content": "xDS
",
- "gridPos": {
- "h": 3,
- "w": 24,
- "x": 0,
- "y": 18
- },
- "id": 28,
- "links": [],
- "mode": "html",
- "title": "",
- "transparent": true,
- "type": "text"
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 8,
- "x": 0,
- "y": 21
- },
- "id": 40,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "sum(irate(envoy_cluster_update_success{cluster_name=\"xds-grpc\"}[1m]))",
- "format": "time_series",
- "hide": false,
- "intervalFactor": 1,
- "legendFormat": "XDS GRPC Successes",
- "refId": "C"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Updates",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "ops",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "ops",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 8,
- "x": 8,
- "y": 21
- },
- "id": 42,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "round(sum(rate(envoy_cluster_update_attempt{cluster_name=\"xds-grpc\"}[1m])) - sum(rate(envoy_cluster_update_success{cluster_name=\"xds-grpc\"}[1m])))",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "XDS GRPC ",
- "refId": "A",
- "step": 2
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Failures",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "ops",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": false
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 6,
- "w": 8,
- "x": 16,
- "y": 21
- },
- "id": 41,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "sum(envoy_cluster_upstream_cx_active{cluster_name=\"xds-grpc\"})",
- "format": "time_series",
- "intervalFactor": 2,
- "legendFormat": "Pilot (XDS GRPC)",
- "refId": "C",
- "step": 2
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Active Connections",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 8,
- "w": 8,
- "x": 0,
- "y": 27
- },
- "id": 45,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "pilot_conflict_inbound_listener{job=\"pilot\"}",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "Inbound Listeners",
- "refId": "B"
- },
- {
- "expr": "pilot_conflict_outbound_listener_http_over_current_tcp{job=\"pilot\"}",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "Outbound Listeners (http over current tcp)",
- "refId": "A"
- },
- {
- "expr": "pilot_conflict_outbound_listener_tcp_over_current_tcp{job=\"pilot\"}",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "Outbound Listeners (tcp over current tcp)",
- "refId": "C"
- },
- {
- "expr": "pilot_conflict_outbound_listener_tcp_over_current_http{job=\"pilot\"}",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "Outbound Listeners (tcp over current http)",
- "refId": "D"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Conflicts",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 8,
- "w": 8,
- "x": 8,
- "y": 27
- },
- "id": 47,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "pilot_virt_services{job=\"pilot\"}",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "Virtual Services",
- "refId": "A"
- },
- {
- "expr": "pilot_services{job=\"pilot\"}",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "Services",
- "refId": "B"
- },
- {
- "expr": "label_replace(sum(pilot_xds_cds_reject{job=\"pilot\"}) by (node, err), \"node\", \"$1\", \"node\", \".*~.*~(.*)~.*\")",
- "format": "time_series",
- "hide": true,
- "intervalFactor": 1,
- "legendFormat": "Rejected CDS Configs - {{ node }}: {{ err }}",
- "refId": "C"
- },
- {
- "expr": "pilot_xds_eds_reject{job=\"pilot\"}",
- "format": "time_series",
- "hide": true,
- "intervalFactor": 1,
- "legendFormat": "Rejected EDS Configs",
- "refId": "D"
- },
- {
- "expr": "pilot_xds{job=\"pilot\"}",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "Connected Endpoints",
- "refId": "E"
- },
- {
- "expr": "rate(pilot_xds_write_timeout{job=\"pilot\"}[1m])",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "Write Timeouts",
- "refId": "F"
- },
- {
- "expr": "rate(pilot_xds_push_timeout{job=\"pilot\"}[1m])",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "Push Timeouts",
- "refId": "G"
- },
- {
- "expr": "rate(pilot_xds_pushes{job=\"pilot\"}[1m])",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "Pushes ({{ type }})",
- "refId": "H"
- },
- {
- "expr": "rate(pilot_xds_push_errors{job=\"pilot\"}[1m])",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "Push Errors ({{ type }})",
- "refId": "I"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "ADS Monitoring",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 8,
- "w": 8,
- "x": 16,
- "y": 27
- },
- "id": 49,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "label_replace(sum(pilot_xds_cds_reject{job=\"pilot\"}) by (node, err), \"node\", \"$1\", \"node\", \".*~.*~(.*)~.*\")",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{ node }} ({{ err }})",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Rejected CDS Configs",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 7,
- "w": 8,
- "x": 0,
- "y": 35
- },
- "id": 52,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "label_replace(sum(pilot_xds_eds_reject{job=\"pilot\"}) by (node, err), \"node\", \"$1\", \"node\", \".*~.*~(.*)~.*\")",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{ node }} ({{err}})",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Rejected EDS Configs",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 7,
- "w": 8,
- "x": 8,
- "y": 35
- },
- "id": 54,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "label_replace(sum(pilot_xds_lds_reject{job=\"pilot\"}) by (node, err), \"node\", \"$1\", \"node\", \".*~.*~(.*)~.*\")",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{ node }} ({{err}})",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Rejected LDS Configs",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {},
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 7,
- "w": 8,
- "x": 16,
- "y": 35
- },
- "id": 53,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "label_replace(sum(pilot_xds_rds_reject{job=\"pilot\"}) by (node, err), \"node\", \"$1\", \"node\", \".*~.*~(.*)~.*\")",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{ node }} ({{err}})",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "Rejected RDS Configs",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- },
- {
- "aliasColors": {
- "outbound|80||default-http-backend.kube-system.svc.cluster.local": "rgba(255, 255, 255, 0.97)"
- },
- "bars": false,
- "dashLength": 10,
- "dashes": false,
- "datasource": "Prometheus",
- "fill": 1,
- "gridPos": {
- "h": 7,
- "w": 8,
- "x": 0,
- "y": 42
- },
- "id": 51,
- "legend": {
- "avg": false,
- "current": false,
- "max": false,
- "min": false,
- "show": true,
- "total": false,
- "values": false
- },
- "lines": true,
- "linewidth": 1,
- "links": [],
- "nullPointMode": "null",
- "percentage": false,
- "pointradius": 5,
- "points": false,
- "renderer": "flot",
- "seriesOverrides": [
- {
- "alias": "outbound|80||default-http-backend.kube-system.svc.cluster.local",
- "yaxis": 1
- }
- ],
- "spaceLength": 10,
- "stack": false,
- "steppedLine": false,
- "targets": [
- {
- "expr": "sum(pilot_xds_eds_instances{job=\"pilot\"}) by (cluster)",
- "format": "time_series",
- "intervalFactor": 1,
- "legendFormat": "{{ cluster }}",
- "refId": "A"
- }
- ],
- "thresholds": [],
- "timeFrom": null,
- "timeShift": null,
- "title": "EDS Instances",
- "tooltip": {
- "shared": true,
- "sort": 0,
- "value_type": "individual"
- },
- "type": "graph",
- "xaxis": {
- "buckets": null,
- "mode": "time",
- "name": null,
- "show": true,
- "values": []
- },
- "yaxes": [
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- },
- {
- "format": "short",
- "label": null,
- "logBase": 1,
- "max": null,
- "min": null,
- "show": true
- }
- ],
- "yaxis": {
- "align": false,
- "alignLevel": null
- }
- }
- ],
- "refresh": "5s",
- "schemaVersion": 16,
- "style": "dark",
- "tags": [],
- "templating": {
- "list": []
- },
- "time": {
- "from": "now-5m",
- "to": "now"
- },
- "timepicker": {
- "refresh_intervals": [
- "5s",
- "10s",
- "30s",
- "1m",
- "5m",
- "15m",
- "30m",
- "1h",
- "2h",
- "1d"
- ],
- "time_options": [
- "5m",
- "15m",
- "1h",
- "6h",
- "12h",
- "24h",
- "2d",
- "7d",
- "30d"
- ]
- },
- "timezone": "browser",
- "title": "Istio Pilot Dashboard",
- "version": 4
-}
-'
----
-
----
-# Source: istio/charts/grafana/templates/configmap.yaml
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: istio-grafana
- labels:
- app: grafana
- chart: grafana
- heritage: Tiller
- release: istio
- istio: grafana
-data:
- datasources.yaml: |
- apiVersion: 1
- datasources:
- - access: proxy
- editable: true
- isDefault: true
- jsonData:
- timeInterval: 5s
- name: Prometheus
- orgId: 1
- type: prometheus
- url: http://prometheus:9090
-
- dashboardproviders.yaml: |
- apiVersion: 1
- providers:
- - disableDeletion: false
- folder: istio
- name: istio
- options:
- path: /var/lib/grafana/dashboards/istio
- orgId: 1
- type: file
-
----
-# Source: istio/charts/kiali/templates/configmap.yaml
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: kiali
- labels:
- app: kiali
- chart: kiali
- heritage: Tiller
- release: istio
-data:
- config.yaml: |
- istio_namespace: istio-system
- server:
- port: 20001
- external_services:
- istio:
- url_service_version: http://istio-pilot:8080/version
- jaeger:
- url:
- grafana:
- url:
-
----
-# Source: istio/charts/prometheus/templates/configmap.yaml
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: prometheus
- labels:
- app: prometheus
- chart: prometheus
- heritage: Tiller
- release: istio
-data:
- prometheus.yml: |-
- global:
- scrape_interval: 15s
- scrape_configs:
-
- - job_name: 'istio-mesh'
- kubernetes_sd_configs:
- - role: endpoints
- namespaces:
- names:
- - istio-system
-
- relabel_configs:
- - source_labels: [__meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name]
- action: keep
- regex: istio-telemetry;prometheus
-
- # Scrape config for envoy stats
- - job_name: 'envoy-stats'
- metrics_path: /stats/prometheus
- kubernetes_sd_configs:
- - role: pod
-
- relabel_configs:
- - source_labels: [__meta_kubernetes_pod_container_port_name]
- action: keep
- regex: '.*-envoy-prom'
- - source_labels: [__address__, __meta_kubernetes_pod_annotation_prometheus_io_port]
- action: replace
- regex: ([^:]+)(?::\d+)?;(\d+)
- replacement: $1:15090
- target_label: __address__
- - action: labelmap
- regex: __meta_kubernetes_pod_label_(.+)
- - source_labels: [__meta_kubernetes_namespace]
- action: replace
- target_label: namespace
- - source_labels: [__meta_kubernetes_pod_name]
- action: replace
- target_label: pod_name
-
- metric_relabel_configs:
- # Exclude some of the envoy metrics that have massive cardinality
- # This list may need to be pruned further moving forward, as informed
- # by performance and scalability testing.
- - source_labels: [ cluster_name ]
- regex: '(outbound|inbound|prometheus_stats).*'
- action: drop
- - source_labels: [ tcp_prefix ]
- regex: '(outbound|inbound|prometheus_stats).*'
- action: drop
- - source_labels: [ listener_address ]
- regex: '(.+)'
- action: drop
- - source_labels: [ http_conn_manager_listener_prefix ]
- regex: '(.+)'
- action: drop
- - source_labels: [ http_conn_manager_prefix ]
- regex: '(.+)'
- action: drop
- - source_labels: [ __name__ ]
- regex: 'envoy_tls.*'
- action: drop
- - source_labels: [ __name__ ]
- regex: 'envoy_tcp_downstream.*'
- action: drop
- - source_labels: [ __name__ ]
- regex: 'envoy_http_(stats|admin).*'
- action: drop
- - source_labels: [ __name__ ]
- regex: 'envoy_cluster_(lb|retry|bind|internal|max|original).*'
- action: drop
-
- - job_name: 'istio-policy'
- kubernetes_sd_configs:
- - role: endpoints
- namespaces:
- names:
- - istio-system
-
-
- relabel_configs:
- - source_labels: [__meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name]
- action: keep
- regex: istio-policy;http-monitoring
-
- - job_name: 'istio-telemetry'
- kubernetes_sd_configs:
- - role: endpoints
- namespaces:
- names:
- - istio-system
-
- relabel_configs:
- - source_labels: [__meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name]
- action: keep
- regex: istio-telemetry;http-monitoring
-
- - job_name: 'pilot'
- kubernetes_sd_configs:
- - role: endpoints
- namespaces:
- names:
- - istio-system
-
- relabel_configs:
- - source_labels: [__meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name]
- action: keep
- regex: istio-pilot;http-monitoring
-
- - job_name: 'galley'
- kubernetes_sd_configs:
- - role: endpoints
- namespaces:
- names:
- - istio-system
-
- relabel_configs:
- - source_labels: [__meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name]
- action: keep
- regex: istio-galley;http-monitoring
-
- - job_name: 'citadel'
- kubernetes_sd_configs:
- - role: endpoints
- namespaces:
- names:
- - istio-system
-
- relabel_configs:
- - source_labels: [__meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name]
- action: keep
- regex: istio-citadel;http-monitoring
-
- # scrape config for API servers
- - job_name: 'kubernetes-apiservers'
- kubernetes_sd_configs:
- - role: endpoints
- namespaces:
- names:
- - default
- scheme: https
- tls_config:
- ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
- bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
- relabel_configs:
- - source_labels: [__meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name]
- action: keep
- regex: kubernetes;https
-
- # scrape config for nodes (kubelet)
- - job_name: 'kubernetes-nodes'
- scheme: https
- tls_config:
- ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
- bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
- kubernetes_sd_configs:
- - role: node
- relabel_configs:
- - action: labelmap
- regex: __meta_kubernetes_node_label_(.+)
- - target_label: __address__
- replacement: kubernetes.default.svc:443
- - source_labels: [__meta_kubernetes_node_name]
- regex: (.+)
- target_label: __metrics_path__
- replacement: /api/v1/nodes/${1}/proxy/metrics
-
- # Scrape config for Kubelet cAdvisor.
- #
- # This is required for Kubernetes 1.7.3 and later, where cAdvisor metrics
- # (those whose names begin with 'container_') have been removed from the
- # Kubelet metrics endpoint. This job scrapes the cAdvisor endpoint to
- # retrieve those metrics.
- #
- # In Kubernetes 1.7.0-1.7.2, these metrics are only exposed on the cAdvisor
- # HTTP endpoint; use "replacement: /api/v1/nodes/${1}:4194/proxy/metrics"
- # in that case (and ensure cAdvisor's HTTP server hasn't been disabled with
- # the --cadvisor-port=0 Kubelet flag).
- #
- # This job is not necessary and should be removed in Kubernetes 1.6 and
- # earlier versions, or it will cause the metrics to be scraped twice.
- - job_name: 'kubernetes-cadvisor'
- scheme: https
- tls_config:
- ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
- bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
- kubernetes_sd_configs:
- - role: node
- relabel_configs:
- - action: labelmap
- regex: __meta_kubernetes_node_label_(.+)
- - target_label: __address__
- replacement: kubernetes.default.svc:443
- - source_labels: [__meta_kubernetes_node_name]
- regex: (.+)
- target_label: __metrics_path__
- replacement: /api/v1/nodes/${1}/proxy/metrics/cadvisor
-
- # scrape config for service endpoints.
- - job_name: 'kubernetes-service-endpoints'
- kubernetes_sd_configs:
- - role: endpoints
- relabel_configs:
- - source_labels: [__meta_kubernetes_service_annotation_prometheus_io_scrape]
- action: keep
- regex: true
- - source_labels: [__meta_kubernetes_service_annotation_prometheus_io_scheme]
- action: replace
- target_label: __scheme__
- regex: (https?)
- - source_labels: [__meta_kubernetes_service_annotation_prometheus_io_path]
- action: replace
- target_label: __metrics_path__
- regex: (.+)
- - source_labels: [__address__, __meta_kubernetes_service_annotation_prometheus_io_port]
- action: replace
- target_label: __address__
- regex: ([^:]+)(?::\d+)?;(\d+)
- replacement: $1:$2
- - action: labelmap
- regex: __meta_kubernetes_service_label_(.+)
- - source_labels: [__meta_kubernetes_namespace]
- action: replace
- target_label: kubernetes_namespace
- - source_labels: [__meta_kubernetes_service_name]
- action: replace
- target_label: kubernetes_name
-
- - job_name: 'kubernetes-pods'
- kubernetes_sd_configs:
- - role: pod
- relabel_configs: # If first two labels are present, pod should be scraped by the istio-secure job.
- - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_scrape]
- action: keep
- regex: true
- # Keep target if there's no sidecar or if prometheus.io/scheme is explicitly set to "http"
- - source_labels: [__meta_kubernetes_pod_annotation_sidecar_istio_io_status, __meta_kubernetes_pod_annotation_prometheus_io_scheme]
- action: keep
- regex: ((;.*)|(.*;http))
- - source_labels: [__meta_kubernetes_pod_annotation_istio_mtls]
- action: drop
- regex: (true)
- - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_path]
- action: replace
- target_label: __metrics_path__
- regex: (.+)
- - source_labels: [__address__, __meta_kubernetes_pod_annotation_prometheus_io_port]
- action: replace
- regex: ([^:]+)(?::\d+)?;(\d+)
- replacement: $1:$2
- target_label: __address__
- - action: labelmap
- regex: __meta_kubernetes_pod_label_(.+)
- - source_labels: [__meta_kubernetes_namespace]
- action: replace
- target_label: namespace
- - source_labels: [__meta_kubernetes_pod_name]
- action: replace
- target_label: pod_name
-
- - job_name: 'kubernetes-pods-istio-secure'
- scheme: https
- tls_config:
- ca_file: /etc/istio-certs/root-cert.pem
- cert_file: /etc/istio-certs/cert-chain.pem
- key_file: /etc/istio-certs/key.pem
- insecure_skip_verify: true # prometheus does not support secure naming.
- kubernetes_sd_configs:
- - role: pod
- relabel_configs:
- - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_scrape]
- action: keep
- regex: true
- # sidecar status annotation is added by sidecar injector and
- # istio_workload_mtls_ability can be specifically placed on a pod to indicate its ability to receive mtls traffic.
- - source_labels: [__meta_kubernetes_pod_annotation_sidecar_istio_io_status, __meta_kubernetes_pod_annotation_istio_mtls]
- action: keep
- regex: (([^;]+);([^;]*))|(([^;]*);(true))
- - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_scheme]
- action: drop
- regex: (http)
- - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_path]
- action: replace
- target_label: __metrics_path__
- regex: (.+)
- - source_labels: [__address__] # Only keep address that is host:port
- action: keep # otherwise an extra target with ':443' is added for https scheme
- regex: ([^:]+):(\d+)
- - source_labels: [__address__, __meta_kubernetes_pod_annotation_prometheus_io_port]
- action: replace
- regex: ([^:]+)(?::\d+)?;(\d+)
- replacement: $1:$2
- target_label: __address__
- - action: labelmap
- regex: __meta_kubernetes_pod_label_(.+)
- - source_labels: [__meta_kubernetes_namespace]
- action: replace
- target_label: namespace
- - source_labels: [__meta_kubernetes_pod_name]
- action: replace
- target_label: pod_name
----
-# Source: istio/charts/security/templates/configmap.yaml
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: istio-security-custom-resources
- labels:
- app: security
- chart: security
- heritage: Tiller
- release: istio
- istio: citadel
-data:
- custom-resources.yaml: |-
- # Authentication policy to enable permissive mode for all services (that have sidecar) in the mesh.
- apiVersion: "authentication.istio.io/v1alpha1"
- kind: "MeshPolicy"
- metadata:
- name: "default"
- labels:
- app: security
- chart: security
- heritage: Tiller
- release: istio
- spec:
- peers:
- - mtls:
- mode: PERMISSIVE
- run.sh: |-
- #!/bin/sh
-
- set -x
-
- if [ "$#" -ne "1" ]; then
- echo "first argument should be path to custom resource yaml"
- exit 1
- fi
-
- pathToResourceYAML=${1}
-
- kubectl get validatingwebhookconfiguration istio-galley 2>/dev/null
- if [ "$?" -eq 0 ]; then
- echo "istio-galley validatingwebhookconfiguration found - waiting for istio-galley deployment to be ready"
- while true; do
- kubectl -n istio-system get deployment istio-galley 2>/dev/null
- if [ "$?" -eq 0 ]; then
- break
- fi
- sleep 1
- done
- kubectl -n istio-system rollout status deployment istio-galley
- if [ "$?" -ne 0 ]; then
- echo "istio-galley deployment rollout status check failed"
- exit 1
- fi
- echo "istio-galley deployment ready for configuration validation"
- fi
- sleep 5
- kubectl apply -f ${pathToResourceYAML}
-
-
----
-# Source: istio/templates/configmap.yaml
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: istio
- labels:
- app: istio
- chart: istio
- heritage: Tiller
- release: istio
-data:
- mesh: |-
- # Set the following variable to true to disable policy checks by the Mixer.
- # Note that metrics will still be reported to the Mixer.
- disablePolicyChecks: false
-
- # Set enableTracing to false to disable request tracing.
- enableTracing: true
-
- # Set accessLogFile to empty string to disable access log.
- accessLogFile: "/dev/stdout"
-
- # If accessLogEncoding is TEXT, value will be used directly as the log format
- # example: "[%START_TIME%] %REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\n"
- # If AccessLogEncoding is JSON, value will be parsed as map[string]string
- # example: '{"start_time": "%START_TIME%", "req_method": "%REQ(:METHOD)%"}'
- # Leave empty to use default log format
- accessLogFormat: ""
-
- # Set accessLogEncoding to JSON or TEXT to configure sidecar access log
- accessLogEncoding: 'TEXT'
- mixerCheckServer: istio-policy.istio-system.svc.cluster.local:9091
- mixerReportServer: istio-telemetry.istio-system.svc.cluster.local:9091
- # policyCheckFailOpen allows traffic in cases when the mixer policy service cannot be reached.
- # Default is false which means the traffic is denied when the client is unable to connect to Mixer.
- policyCheckFailOpen: false
- # Let Pilot give ingresses the public IP of the Istio ingressgateway
- ingressService: istio-ingressgateway
-
- # Default connect timeout for dynamic clusters generated by Pilot and returned via XDS
- connectTimeout: 10s
-
- # DNS refresh rate for Envoy clusters of type STRICT_DNS
- dnsRefreshRate: 5s
-
- # Unix Domain Socket through which envoy communicates with NodeAgent SDS to get
- # key/cert for mTLS. Use secret-mount files instead of SDS if set to empty.
- sdsUdsPath:
-
- # This flag is used by secret discovery service(SDS).
- # If set to true(prerequisite: https://kubernetes.io/docs/concepts/storage/volumes/#projected), Istio will inject volumes mount
- # for k8s service account JWT, so that K8s API server mounts k8s service account JWT to envoy container, which
- # will be used to generate key/cert eventually. This isn't supported for non-k8s case.
- enableSdsTokenMount: false
-
- # This flag is used by secret discovery service(SDS).
- # If set to true, envoy will fetch normal k8s service account JWT from '/var/run/secrets/kubernetes.io/serviceaccount/token'
- # (https://kubernetes.io/docs/tasks/access-application-cluster/access-cluster/#accessing-the-api-from-a-pod)
- # and pass to sds server, which will be used to request key/cert eventually.
- # this flag is ignored if enableSdsTokenMount is set.
- # This isn't supported for non-k8s case.
- sdsUseK8sSaJwt: false
-
- # The trust domain corresponds to the trust root of a system.
- # Refer to https://github.com/spiffe/spiffe/blob/master/standards/SPIFFE-ID.md#21-trust-domain
- trustDomain:
-
- # Set the default behavior of the sidecar for handling outbound traffic from the application:
- # ALLOW_ANY - outbound traffic to unknown destinations will be allowed, in case there are no
- # services or ServiceEntries for the destination port
- # REGISTRY_ONLY - restrict outbound traffic to services defined in the service registry as well
- # as those defined through ServiceEntries
- outboundTrafficPolicy:
- mode: ALLOW_ANY
-
- localityLbSetting:
- {}
-
-
- # The namespace to treat as the administrative root namespace for istio
- # configuration.
- rootNamespace: istio-system
- configSources:
- - address: istio-galley.istio-system.svc:9901
-
- defaultConfig:
- #
- # TCP connection timeout between Envoy & the application, and between Envoys. Used for static clusters
- # defined in Envoy's configuration file
- connectTimeout: 10s
- #
- ### ADVANCED SETTINGS #############
- # Where should envoy's configuration be stored in the istio-proxy container
- configPath: "/etc/istio/proxy"
- binaryPath: "/usr/local/bin/envoy"
- # The pseudo service name used for Envoy.
- serviceCluster: istio-proxy
- # These settings that determine how long an old Envoy
- # process should be kept alive after an occasional reload.
- drainDuration: 45s
- parentShutdownDuration: 1m0s
- #
- # The mode used to redirect inbound connections to Envoy. This setting
- # has no effect on outbound traffic: iptables REDIRECT is always used for
- # outbound connections.
- # If "REDIRECT", use iptables REDIRECT to NAT and redirect to Envoy.
- # The "REDIRECT" mode loses source addresses during redirection.
- # If "TPROXY", use iptables TPROXY to redirect to Envoy.
- # The "TPROXY" mode preserves both the source and destination IP
- # addresses and ports, so that they can be used for advanced filtering
- # and manipulation.
- # The "TPROXY" mode also configures the sidecar to run with the
- # CAP_NET_ADMIN capability, which is required to use TPROXY.
- #interceptionMode: REDIRECT
- #
- # Port where Envoy listens (on local host) for admin commands
- # You can exec into the istio-proxy container in a pod and
- # curl the admin port (curl http://localhost:15000/) to obtain
- # diagnostic information from Envoy. See
- # https://lyft.github.io/envoy/docs/operations/admin.html
- # for more details
- proxyAdminPort: 15000
- #
- # Set concurrency to a specific number to control the number of Proxy worker threads.
- # If set to 0 (default), then start worker thread for each CPU thread/core.
- concurrency: 2
- #
- tracing:
- zipkin:
- # Address of the Zipkin collector
- address: zipkin.istio-system:9411
- #
- # Mutual TLS authentication between sidecars and istio control plane.
- controlPlaneAuthPolicy: NONE
- #
- # Address where istio Pilot service is running
- discoveryAddress: istio-pilot.istio-system:15010
-
- # Configuration file for the mesh networks to be used by the Split Horizon EDS.
- meshNetworks: |-
- networks: {}
-
----
-# Source: istio/templates/sidecar-injector-configmap.yaml
-
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: istio-sidecar-injector
- labels:
- app: istio
- chart: istio
- heritage: Tiller
- release: istio
- istio: sidecar-injector
-data:
- config: |-
- policy: enabled
- template: |-
- rewriteAppHTTPProbe: false
- initContainers:
- [[ if ne (annotation .ObjectMeta `sidecar.istio.io/interceptionMode` .ProxyConfig.InterceptionMode) "NONE" ]]
- - name: istio-init
- image: "docker.io/istio/proxy_init:1.1.6"
- args:
- - "-p"
- - [[ .MeshConfig.ProxyListenPort ]]
- - "-u"
- - 1337
- - "-m"
- - [[ annotation .ObjectMeta `sidecar.istio.io/interceptionMode` .ProxyConfig.InterceptionMode ]]
- - "-i"
- - "[[ annotation .ObjectMeta `traffic.sidecar.istio.io/includeOutboundIPRanges` "*" ]]"
- - "-x"
- - "[[ annotation .ObjectMeta `traffic.sidecar.istio.io/excludeOutboundIPRanges` "" ]]"
- - "-b"
- - "[[ annotation .ObjectMeta `traffic.sidecar.istio.io/includeInboundPorts` (includeInboundPorts .Spec.Containers) ]]"
- - "-d"
- - "[[ excludeInboundPort (annotation .ObjectMeta `status.sidecar.istio.io/port` 15020 ) (annotation .ObjectMeta `traffic.sidecar.istio.io/excludeInboundPorts` "" ) ]]"
- [[ if (isset .ObjectMeta.Annotations `traffic.sidecar.istio.io/kubevirtInterfaces`) -]]
- - "-k"
- - "[[ index .ObjectMeta.Annotations `traffic.sidecar.istio.io/kubevirtInterfaces` ]]"
- [[ end -]]
- imagePullPolicy: IfNotPresent
- resources:
- requests:
- cpu: 10m
- memory: 10Mi
- limits:
- cpu: 100m
- memory: 50Mi
- securityContext:
- runAsUser: 0
- runAsNonRoot: false
- capabilities:
- add:
- - NET_ADMIN
- restartPolicy: Always
- [[ end -]]
- containers:
- - name: istio-proxy
- image: [[ annotation .ObjectMeta `sidecar.istio.io/proxyImage` "docker.io/istio/proxyv2:1.1.6" ]]
- ports:
- - containerPort: 15090
- protocol: TCP
- name: http-envoy-prom
- args:
- - proxy
- - sidecar
- - --domain
- - $(POD_NAMESPACE).svc.cluster.local
- - --configPath
- - [[ .ProxyConfig.ConfigPath ]]
- - --binaryPath
- - [[ .ProxyConfig.BinaryPath ]]
- - --serviceCluster
- [[ if ne "" (index .ObjectMeta.Labels "app") -]]
- - [[ index .ObjectMeta.Labels "app" ]].$(POD_NAMESPACE)
- [[ else -]]
- - [[ valueOrDefault .DeploymentMeta.Name "istio-proxy" ]].[[ valueOrDefault .DeploymentMeta.Namespace "default" ]]
- [[ end -]]
- - --drainDuration
- - [[ formatDuration .ProxyConfig.DrainDuration ]]
- - --parentShutdownDuration
- - [[ formatDuration .ProxyConfig.ParentShutdownDuration ]]
- - --discoveryAddress
- - [[ annotation .ObjectMeta `sidecar.istio.io/discoveryAddress` .ProxyConfig.DiscoveryAddress ]]
- - --zipkinAddress
- - [[ .ProxyConfig.GetTracing.GetZipkin.GetAddress ]]
- - --connectTimeout
- - [[ formatDuration .ProxyConfig.ConnectTimeout ]]
- - --proxyAdminPort
- - [[ .ProxyConfig.ProxyAdminPort ]]
- [[ if gt .ProxyConfig.Concurrency 0 -]]
- - --concurrency
- - [[ .ProxyConfig.Concurrency ]]
- [[ end -]]
- - --controlPlaneAuthPolicy
- - [[ annotation .ObjectMeta `sidecar.istio.io/controlPlaneAuthPolicy` .ProxyConfig.ControlPlaneAuthPolicy ]]
- [[- if (ne (annotation .ObjectMeta `status.sidecar.istio.io/port` 15020 ) "0") ]]
- - --statusPort
- - [[ annotation .ObjectMeta `status.sidecar.istio.io/port` 15020 ]]
- - --applicationPorts
- - "[[ annotation .ObjectMeta `readiness.status.sidecar.istio.io/applicationPorts` (applicationPorts .Spec.Containers) ]]"
- [[- end ]]
- env:
- - name: POD_NAME
- valueFrom:
- fieldRef:
- fieldPath: metadata.name
- - name: POD_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- - name: INSTANCE_IP
- valueFrom:
- fieldRef:
- fieldPath: status.podIP
-
- - name: ISTIO_META_POD_NAME
- valueFrom:
- fieldRef:
- fieldPath: metadata.name
- - name: ISTIO_META_CONFIG_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- - name: ISTIO_META_INTERCEPTION_MODE
- value: [[ or (index .ObjectMeta.Annotations "sidecar.istio.io/interceptionMode") .ProxyConfig.InterceptionMode.String ]]
- [[ if .ObjectMeta.Annotations ]]
- - name: ISTIO_METAJSON_ANNOTATIONS
- value: |
- [[ toJSON .ObjectMeta.Annotations ]]
- [[ end ]]
- [[ if .ObjectMeta.Labels ]]
- - name: ISTIO_METAJSON_LABELS
- value: |
- [[ toJSON .ObjectMeta.Labels ]]
- [[ end ]]
- [[- if (isset .ObjectMeta.Annotations `sidecar.istio.io/bootstrapOverride`) ]]
- - name: ISTIO_BOOTSTRAP_OVERRIDE
- value: "/etc/istio/custom-bootstrap/custom_bootstrap.json"
- [[- end ]]
- imagePullPolicy: IfNotPresent
- [[ if (ne (annotation .ObjectMeta `status.sidecar.istio.io/port` 15020 ) "0") ]]
- readinessProbe:
- httpGet:
- path: /healthz/ready
- port: [[ annotation .ObjectMeta `status.sidecar.istio.io/port` 15020 ]]
- initialDelaySeconds: [[ annotation .ObjectMeta `readiness.status.sidecar.istio.io/initialDelaySeconds` 1 ]]
- periodSeconds: [[ annotation .ObjectMeta `readiness.status.sidecar.istio.io/periodSeconds` 2 ]]
- failureThreshold: [[ annotation .ObjectMeta `readiness.status.sidecar.istio.io/failureThreshold` 30 ]]
- [[ end -]]securityContext:
- readOnlyRootFilesystem: true
- [[ if eq (annotation .ObjectMeta `sidecar.istio.io/interceptionMode` .ProxyConfig.InterceptionMode) "TPROXY" -]]
- capabilities:
- add:
- - NET_ADMIN
- runAsGroup: 1337
- [[ else -]]
-
- runAsUser: 1337
- [[- end ]]
- resources:
- [[ if or (isset .ObjectMeta.Annotations `sidecar.istio.io/proxyCPU`) (isset .ObjectMeta.Annotations `sidecar.istio.io/proxyMemory`) -]]
- requests:
- [[ if (isset .ObjectMeta.Annotations `sidecar.istio.io/proxyCPU`) -]]
- cpu: "[[ index .ObjectMeta.Annotations `sidecar.istio.io/proxyCPU` ]]"
- [[ end ]]
- [[ if (isset .ObjectMeta.Annotations `sidecar.istio.io/proxyMemory`) -]]
- memory: "[[ index .ObjectMeta.Annotations `sidecar.istio.io/proxyMemory` ]]"
- [[ end ]]
- [[ else -]]
- limits:
- cpu: 2000m
- memory: 128Mi
- requests:
- cpu: 10m
- memory: 40Mi
-
- [[ end -]]
- volumeMounts:
- [[- if (isset .ObjectMeta.Annotations `sidecar.istio.io/bootstrapOverride`) ]]
- - mountPath: /etc/istio/custom-bootstrap
- name: custom-bootstrap-volume
- [[- end ]]
- - mountPath: /etc/istio/proxy
- name: istio-envoy
- - mountPath: /etc/certs/
- name: istio-certs
- readOnly: true
- [[- if isset .ObjectMeta.Annotations `sidecar.istio.io/userVolumeMount` ]]
- [[ range $index, $value := fromJSON (index .ObjectMeta.Annotations `sidecar.istio.io/userVolumeMount`) ]]
- - name: "[[ $index ]]"
- [[ toYaml $value | indent 4 ]]
- [[ end ]]
- [[- end ]]
- volumes:
- [[- if (isset .ObjectMeta.Annotations `sidecar.istio.io/bootstrapOverride`) ]]
- - name: custom-bootstrap-volume
- configMap:
- name: [[ annotation .ObjectMeta `sidecar.istio.io/bootstrapOverride` `` ]]
- [[- end ]]
- - emptyDir:
- medium: Memory
- name: istio-envoy
- - name: istio-certs
- secret:
- optional: true
- [[ if eq .Spec.ServiceAccountName "" -]]
- secretName: istio.default
- [[ else -]]
- secretName: [[ printf "istio.%s" .Spec.ServiceAccountName ]]
- [[ end -]]
- [[- if isset .ObjectMeta.Annotations `sidecar.istio.io/userVolume` ]]
- [[ range $index, $value := fromJSON (index .ObjectMeta.Annotations `sidecar.istio.io/userVolume`) ]]
- - name: "[[ $index ]]"
- [[ toYaml $value | indent 2 ]]
- [[ end ]]
- [[ end ]]
-
----
-# Source: istio/charts/galley/templates/serviceaccount.yaml
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: istio-galley-service-account
- labels:
- app: galley
- chart: galley
- heritage: Tiller
- release: istio
-
----
-# Source: istio/charts/gateways/templates/serviceaccount.yaml
-
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: istio-egressgateway-service-account
- labels:
- app: istio-egressgateway
- chart: gateways
- heritage: Tiller
- release: istio
----
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: istio-ingressgateway-service-account
- labels:
- app: istio-ingressgateway
- chart: gateways
- heritage: Tiller
- release: istio
----
-
-
----
-# Source: istio/charts/grafana/templates/create-custom-resources-job.yaml
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: istio-grafana-post-install-account
- labels:
- app: grafana
- chart: grafana
- heritage: Tiller
- release: istio
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: istio-grafana-post-install-istio-system
- labels:
- app: grafana
- chart: grafana
- heritage: Tiller
- release: istio
-rules:
-- apiGroups: ["authentication.istio.io"] # needed to create default authn policy
- resources: ["*"]
- verbs: ["*"]
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: istio-grafana-post-install-role-binding-istio-system
- labels:
- app: grafana
- chart: grafana
- heritage: Tiller
- release: istio
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: istio-grafana-post-install-istio-system
-subjects:
- - kind: ServiceAccount
- name: istio-grafana-post-install-account
- namespace: istio-system
----
-apiVersion: batch/v1
-kind: Job
-metadata:
- name: istio-grafana-post-install-1.1.6
- annotations:
- "helm.sh/hook": post-install
- "helm.sh/hook-delete-policy": hook-succeeded
- labels:
- app: grafana
- chart: grafana
- heritage: Tiller
- release: istio
-spec:
- template:
- metadata:
- name: istio-grafana-post-install
- labels:
- app: istio-grafana
- chart: grafana
- heritage: Tiller
- release: istio
- spec:
- serviceAccountName: istio-grafana-post-install-account
- containers:
- - name: kubectl
- image: "docker.io/istio/kubectl:1.1.6"
- command: [ "/bin/bash", "/tmp/grafana/run.sh", "/tmp/grafana/custom-resources.yaml" ]
- volumeMounts:
- - mountPath: "/tmp/grafana"
- name: tmp-configmap-grafana
- volumes:
- - name: tmp-configmap-grafana
- configMap:
- name: istio-grafana-custom-resources
- restartPolicy: OnFailure
- affinity:
- nodeAffinity:
- requiredDuringSchedulingIgnoredDuringExecution:
- nodeSelectorTerms:
- - matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - amd64
- - ppc64le
- - s390x
- preferredDuringSchedulingIgnoredDuringExecution:
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - amd64
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - ppc64le
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - s390x
-
----
-# Source: istio/charts/kiali/templates/serviceaccount.yaml
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: kiali-service-account
- labels:
- app: kiali
- chart: kiali
- heritage: Tiller
- release: istio
-
----
-# Source: istio/charts/mixer/templates/serviceaccount.yaml
-
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: istio-mixer-service-account
- labels:
- app: mixer
- chart: mixer
- heritage: Tiller
- release: istio
-
----
-# Source: istio/charts/pilot/templates/serviceaccount.yaml
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: istio-pilot-service-account
- labels:
- app: pilot
- chart: pilot
- heritage: Tiller
- release: istio
-
----
-# Source: istio/charts/prometheus/templates/serviceaccount.yaml
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: prometheus
- labels:
- app: prometheus
- chart: prometheus
- heritage: Tiller
- release: istio
-
----
-# Source: istio/charts/security/templates/cleanup-secrets.yaml
-# The reason for creating a ServiceAccount and ClusterRole specifically for this
-# post-delete hooked job is because the citadel ServiceAccount is being deleted
-# before this hook is launched. On the other hand, running this hook before the
-# deletion of the citadel (e.g. pre-delete) won't delete the secrets because they
-# will be re-created immediately by the to-be-deleted citadel.
-#
-# It's also important that the ServiceAccount, ClusterRole and ClusterRoleBinding
-# will be ready before running the hooked Job therefore the hook weights.
-
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: istio-cleanup-secrets-service-account
- annotations:
- "helm.sh/hook": post-delete
- "helm.sh/hook-delete-policy": hook-succeeded
- "helm.sh/hook-weight": "1"
- labels:
- app: security
- chart: security
- heritage: Tiller
- release: istio
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: istio-cleanup-secrets-istio-system
- annotations:
- "helm.sh/hook": post-delete
- "helm.sh/hook-delete-policy": hook-succeeded
- "helm.sh/hook-weight": "1"
- labels:
- app: security
- chart: security
- heritage: Tiller
- release: istio
-rules:
-- apiGroups: [""]
- resources: ["secrets"]
- verbs: ["list", "delete"]
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: istio-cleanup-secrets-istio-system
- annotations:
- "helm.sh/hook": post-delete
- "helm.sh/hook-delete-policy": hook-succeeded
- "helm.sh/hook-weight": "2"
- labels:
- app: security
- chart: security
- heritage: Tiller
- release: istio
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: istio-cleanup-secrets-istio-system
-subjects:
- - kind: ServiceAccount
- name: istio-cleanup-secrets-service-account
- namespace: istio-system
----
-apiVersion: batch/v1
-kind: Job
-metadata:
- name: istio-cleanup-secrets-1.1.6
- annotations:
- "helm.sh/hook": post-delete
- "helm.sh/hook-delete-policy": hook-succeeded
- "helm.sh/hook-weight": "3"
- labels:
- app: security
- chart: security
- heritage: Tiller
- release: istio
-spec:
- template:
- metadata:
- name: istio-cleanup-secrets
- labels:
- app: security
- chart: security
- heritage: Tiller
- release: istio
- spec:
- serviceAccountName: istio-cleanup-secrets-service-account
- containers:
- - name: kubectl
- image: "docker.io/istio/kubectl:1.1.6"
- imagePullPolicy: IfNotPresent
- command:
- - /bin/bash
- - -c
- - >
- kubectl get secret --all-namespaces | grep "istio.io/key-and-cert" | while read -r entry; do
- ns=$(echo $entry | awk '{print $1}');
- name=$(echo $entry | awk '{print $2}');
- kubectl delete secret $name -n $ns;
- done
- restartPolicy: OnFailure
- affinity:
- nodeAffinity:
- requiredDuringSchedulingIgnoredDuringExecution:
- nodeSelectorTerms:
- - matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - amd64
- - ppc64le
- - s390x
- preferredDuringSchedulingIgnoredDuringExecution:
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - amd64
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - ppc64le
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - s390x
-
----
-# Source: istio/charts/security/templates/create-custom-resources-job.yaml
-
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: istio-security-post-install-account
- labels:
- app: security
- chart: security
- heritage: Tiller
- release: istio
----
-apiVersion: rbac.authorization.k8s.io/v1beta1
-kind: ClusterRole
-metadata:
- name: istio-security-post-install-istio-system
- labels:
- app: security
- chart: security
- heritage: Tiller
- release: istio
-rules:
-- apiGroups: ["authentication.istio.io"] # needed to create default authn policy
- resources: ["*"]
- verbs: ["*"]
-- apiGroups: ["networking.istio.io"] # needed to create security destination rules
- resources: ["*"]
- verbs: ["*"]
-- apiGroups: ["admissionregistration.k8s.io"]
- resources: ["validatingwebhookconfigurations"]
- verbs: ["get"]
-- apiGroups: ["extensions", "apps"]
- resources: ["deployments", "replicasets"]
- verbs: ["get", "list", "watch"]
----
-apiVersion: rbac.authorization.k8s.io/v1beta1
-kind: ClusterRoleBinding
-metadata:
- name: istio-security-post-install-role-binding-istio-system
- labels:
- app: security
- chart: security
- heritage: Tiller
- release: istio
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: istio-security-post-install-istio-system
-subjects:
- - kind: ServiceAccount
- name: istio-security-post-install-account
- namespace: istio-system
----
-apiVersion: batch/v1
-kind: Job
-metadata:
- name: istio-security-post-install-1.1.6
- annotations:
- "helm.sh/hook": post-install
- "helm.sh/hook-delete-policy": hook-succeeded
- labels:
- app: security
- chart: security
- heritage: Tiller
- release: istio
-spec:
- template:
- metadata:
- name: istio-security-post-install
- labels:
- app: security
- chart: security
- heritage: Tiller
- release: istio
- spec:
- serviceAccountName: istio-security-post-install-account
- containers:
- - name: kubectl
- image: "docker.io/istio/kubectl:1.1.6"
- imagePullPolicy: IfNotPresent
- command: [ "/bin/bash", "/tmp/security/run.sh", "/tmp/security/custom-resources.yaml" ]
- volumeMounts:
- - mountPath: "/tmp/security"
- name: tmp-configmap-security
- volumes:
- - name: tmp-configmap-security
- configMap:
- name: istio-security-custom-resources
- restartPolicy: OnFailure
- affinity:
- nodeAffinity:
- requiredDuringSchedulingIgnoredDuringExecution:
- nodeSelectorTerms:
- - matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - amd64
- - ppc64le
- - s390x
- preferredDuringSchedulingIgnoredDuringExecution:
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - amd64
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - ppc64le
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - s390x
-
----
-# Source: istio/charts/security/templates/serviceaccount.yaml
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: istio-citadel-service-account
- labels:
- app: security
- chart: security
- heritage: Tiller
- release: istio
-
----
-# Source: istio/charts/sidecarInjectorWebhook/templates/serviceaccount.yaml
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: istio-sidecar-injector-service-account
- labels:
- app: sidecarInjectorWebhook
- chart: sidecarInjectorWebhook
- heritage: Tiller
- release: istio
- istio: sidecar-injector
-
----
-# Source: istio/templates/serviceaccount.yaml
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: istio-multi
-
----
-# Source: istio/charts/galley/templates/clusterrole.yaml
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: istio-galley-istio-system
- labels:
- app: galley
- chart: galley
- heritage: Tiller
- release: istio
-rules:
-- apiGroups: ["admissionregistration.k8s.io"]
- resources: ["validatingwebhookconfigurations"]
- verbs: ["*"]
-- apiGroups: ["config.istio.io"] # istio mixer CRD watcher
- resources: ["*"]
- verbs: ["get", "list", "watch"]
-- apiGroups: ["networking.istio.io"]
- resources: ["*"]
- verbs: ["get", "list", "watch"]
-- apiGroups: ["authentication.istio.io"]
- resources: ["*"]
- verbs: ["get", "list", "watch"]
-- apiGroups: ["rbac.istio.io"]
- resources: ["*"]
- verbs: ["get", "list", "watch"]
-- apiGroups: ["extensions","apps"]
- resources: ["deployments"]
- resourceNames: ["istio-galley"]
- verbs: ["get"]
-- apiGroups: [""]
- resources: ["pods", "nodes", "services", "endpoints"]
- verbs: ["get", "list", "watch"]
-- apiGroups: ["extensions"]
- resources: ["ingresses"]
- verbs: ["get", "list", "watch"]
-- apiGroups: ["extensions", "apps"]
- resources: ["deployments/finalizers"]
- resourceNames: ["istio-galley"]
- verbs: ["update"]
-
----
-# Source: istio/charts/gateways/templates/clusterrole.yaml
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: istio-egressgateway-istio-system
- labels:
- app: egressgateway
- chart: gateways
- heritage: Tiller
- release: istio
-rules:
-- apiGroups: ["networking.istio.io"]
- resources: ["virtualservices", "destinationrules", "gateways"]
- verbs: ["get", "watch", "list", "update"]
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: istio-ingressgateway-istio-system
- labels:
- app: ingressgateway
- chart: gateways
- heritage: Tiller
- release: istio
-rules:
-- apiGroups: ["networking.istio.io"]
- resources: ["virtualservices", "destinationrules", "gateways"]
- verbs: ["get", "watch", "list", "update"]
----
-
----
-# Source: istio/charts/kiali/templates/clusterrole.yaml
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: kiali
- labels:
- app: kiali
- chart: kiali
- heritage: Tiller
- release: istio
-rules:
-- apiGroups: [""]
- resources:
- - configmaps
- - endpoints
- - namespaces
- - nodes
- - pods
- - services
- - replicationcontrollers
- verbs:
- - get
- - list
- - watch
-- apiGroups: ["extensions", "apps"]
- resources:
- - deployments
- - statefulsets
- - replicasets
- verbs:
- - get
- - list
- - watch
-- apiGroups: ["autoscaling"]
- resources:
- - horizontalpodautoscalers
- verbs:
- - get
- - list
- - watch
-- apiGroups: ["batch"]
- resources:
- - cronjobs
- - jobs
- verbs:
- - get
- - list
- - watch
-- apiGroups: ["config.istio.io"]
- resources:
- - apikeys
- - authorizations
- - checknothings
- - circonuses
- - deniers
- - fluentds
- - handlers
- - kubernetesenvs
- - kuberneteses
- - listcheckers
- - listentries
- - logentries
- - memquotas
- - metrics
- - opas
- - prometheuses
- - quotas
- - quotaspecbindings
- - quotaspecs
- - rbacs
- - reportnothings
- - rules
- - solarwindses
- - stackdrivers
- - statsds
- - stdios
- verbs:
- - create
- - delete
- - get
- - list
- - patch
- - watch
-- apiGroups: ["networking.istio.io"]
- resources:
- - destinationrules
- - gateways
- - serviceentries
- - virtualservices
- verbs:
- - create
- - delete
- - get
- - list
- - patch
- - watch
-- apiGroups: ["authentication.istio.io"]
- resources:
- - policies
- - meshpolicies
- verbs:
- - create
- - delete
- - get
- - list
- - patch
- - watch
-- apiGroups: ["rbac.istio.io"]
- resources:
- - clusterrbacconfigs
- - rbacconfigs
- - serviceroles
- - servicerolebindings
- verbs:
- - create
- - delete
- - get
- - list
- - patch
- - watch
-- apiGroups: ["monitoring.kiali.io"]
- resources:
- - monitoringdashboards
- verbs:
- - get
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: kiali-viewer
- labels:
- app: kiali
- chart: kiali
- heritage: Tiller
- release: istio
-rules:
-- apiGroups: [""]
- resources:
- - configmaps
- - endpoints
- - namespaces
- - nodes
- - pods
- - services
- - replicationcontrollers
- verbs:
- - get
- - list
- - watch
-- apiGroups: ["extensions", "apps"]
- resources:
- - deployments
- - statefulsets
- - replicasets
- verbs:
- - get
- - list
- - watch
-- apiGroups: ["autoscaling"]
- resources:
- - horizontalpodautoscalers
- verbs:
- - get
- - list
- - watch
-- apiGroups: ["batch"]
- resources:
- - cronjobs
- - jobs
- verbs:
- - get
- - list
- - watch
-- apiGroups: ["config.istio.io"]
- resources:
- - apikeys
- - authorizations
- - checknothings
- - circonuses
- - deniers
- - fluentds
- - handlers
- - kubernetesenvs
- - kuberneteses
- - listcheckers
- - listentries
- - logentries
- - memquotas
- - metrics
- - opas
- - prometheuses
- - quotas
- - quotaspecbindings
- - quotaspecs
- - rbacs
- - reportnothings
- - rules
- - servicecontrolreports
- - servicecontrols
- - solarwindses
- - stackdrivers
- - statsds
- - stdios
- verbs:
- - get
- - list
- - watch
-- apiGroups: ["networking.istio.io"]
- resources:
- - destinationrules
- - gateways
- - serviceentries
- - virtualservices
- verbs:
- - get
- - list
- - watch
-- apiGroups: ["authentication.istio.io"]
- resources:
- - policies
- - meshpolicies
- verbs:
- - get
- - list
- - watch
-- apiGroups: ["rbac.istio.io"]
- resources:
- - clusterrbacconfigs
- - rbacconfigs
- - serviceroles
- - servicerolebindings
- verbs:
- - get
- - list
- - watch
-- apiGroups: ["monitoring.kiali.io"]
- resources:
- - monitoringdashboards
- verbs:
- - get
-
----
-# Source: istio/charts/mixer/templates/clusterrole.yaml
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: istio-mixer-istio-system
- labels:
- app: mixer
- chart: mixer
- heritage: Tiller
- release: istio
-rules:
-- apiGroups: ["config.istio.io"] # istio CRD watcher
- resources: ["*"]
- verbs: ["create", "get", "list", "watch", "patch"]
-- apiGroups: ["apiextensions.k8s.io"]
- resources: ["customresourcedefinitions"]
- verbs: ["get", "list", "watch"]
-- apiGroups: [""]
- resources: ["configmaps", "endpoints", "pods", "services", "namespaces", "secrets", "replicationcontrollers"]
- verbs: ["get", "list", "watch"]
-- apiGroups: ["extensions", "apps"]
- resources: ["replicasets"]
- verbs: ["get", "list", "watch"]
-
----
-# Source: istio/charts/pilot/templates/clusterrole.yaml
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: istio-pilot-istio-system
- labels:
- app: pilot
- chart: pilot
- heritage: Tiller
- release: istio
-rules:
-- apiGroups: ["config.istio.io"]
- resources: ["*"]
- verbs: ["*"]
-- apiGroups: ["rbac.istio.io"]
- resources: ["*"]
- verbs: ["get", "watch", "list"]
-- apiGroups: ["networking.istio.io"]
- resources: ["*"]
- verbs: ["*"]
-- apiGroups: ["authentication.istio.io"]
- resources: ["*"]
- verbs: ["*"]
-- apiGroups: ["apiextensions.k8s.io"]
- resources: ["customresourcedefinitions"]
- verbs: ["*"]
-- apiGroups: ["extensions", "networking.k8s.io"]
- resources: ["ingresses", "ingresses/status"]
- verbs: ["*"]
-- apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["create", "get", "list", "watch", "update"]
-- apiGroups: [""]
- resources: ["endpoints", "pods", "services", "namespaces", "nodes", "secrets"]
- verbs: ["get", "list", "watch"]
-
----
-# Source: istio/charts/prometheus/templates/clusterrole.yaml
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: prometheus-istio-system
- labels:
- app: prometheus
- chart: prometheus
- heritage: Tiller
- release: istio
-rules:
-- apiGroups: [""]
- resources:
- - nodes
- - services
- - endpoints
- - pods
- - nodes/proxy
- verbs: ["get", "list", "watch"]
-- apiGroups: [""]
- resources:
- - configmaps
- verbs: ["get"]
-- nonResourceURLs: ["/metrics"]
- verbs: ["get"]
-
----
-# Source: istio/charts/security/templates/clusterrole.yaml
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: istio-citadel-istio-system
- labels:
- app: security
- chart: security
- heritage: Tiller
- release: istio
-rules:
-- apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["create", "get", "update"]
-- apiGroups: [""]
- resources: ["secrets"]
- verbs: ["create", "get", "watch", "list", "update", "delete"]
-- apiGroups: [""]
- resources: ["serviceaccounts", "services"]
- verbs: ["get", "watch", "list"]
-- apiGroups: ["authentication.k8s.io"]
- resources: ["tokenreviews"]
- verbs: ["create"]
-
----
-# Source: istio/charts/sidecarInjectorWebhook/templates/clusterrole.yaml
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: istio-sidecar-injector-istio-system
- labels:
- app: sidecarInjectorWebhook
- chart: sidecarInjectorWebhook
- heritage: Tiller
- release: istio
- istio: sidecar-injector
-rules:
-- apiGroups: [""]
- resources: ["configmaps"]
- verbs: ["get", "list", "watch"]
-- apiGroups: ["admissionregistration.k8s.io"]
- resources: ["mutatingwebhookconfigurations"]
- verbs: ["get", "list", "watch", "patch"]
-
----
-# Source: istio/templates/clusterrole.yaml
-kind: ClusterRole
-apiVersion: rbac.authorization.k8s.io/v1
-metadata:
- name: istio-reader
-rules:
- - apiGroups: ['']
- resources: ['nodes', 'pods', 'services', 'endpoints', "replicationcontrollers"]
- verbs: ['get', 'watch', 'list']
- - apiGroups: ["extensions", "apps"]
- resources: ["replicasets"]
- verbs: ["get", "list", "watch"]
-
----
-# Source: istio/charts/galley/templates/clusterrolebinding.yaml
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: istio-galley-admin-role-binding-istio-system
- labels:
- app: galley
- chart: galley
- heritage: Tiller
- release: istio
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: istio-galley-istio-system
-subjects:
- - kind: ServiceAccount
- name: istio-galley-service-account
- namespace: istio-system
-
----
-# Source: istio/charts/gateways/templates/clusterrolebindings.yaml
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: istio-egressgateway-istio-system
- labels:
- app: egressgateway
- chart: gateways
- heritage: Tiller
- release: istio
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: istio-egressgateway-istio-system
-subjects:
-- kind: ServiceAccount
- name: istio-egressgateway-service-account
----
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: istio-ingressgateway-istio-system
- labels:
- app: ingressgateway
- chart: gateways
- heritage: Tiller
- release: istio
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: istio-ingressgateway-istio-system
-subjects:
-- kind: ServiceAccount
- name: istio-ingressgateway-service-account
----
-
----
-# Source: istio/charts/kiali/templates/clusterrolebinding.yaml
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: istio-kiali-admin-role-binding-istio-system
- labels:
- app: kiali
- chart: kiali
- heritage: Tiller
- release: istio
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: kiali
-subjects:
-- kind: ServiceAccount
- name: kiali-service-account
-
----
-# Source: istio/charts/mixer/templates/clusterrolebinding.yaml
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: istio-mixer-admin-role-binding-istio-system
- labels:
- app: mixer
- chart: mixer
- heritage: Tiller
- release: istio
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: istio-mixer-istio-system
-subjects:
- - kind: ServiceAccount
- name: istio-mixer-service-account
- namespace: istio-system
-
----
-# Source: istio/charts/pilot/templates/clusterrolebinding.yaml
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: istio-pilot-istio-system
- labels:
- app: pilot
- chart: pilot
- heritage: Tiller
- release: istio
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: istio-pilot-istio-system
-subjects:
- - kind: ServiceAccount
- name: istio-pilot-service-account
- namespace: istio-system
-
----
-# Source: istio/charts/prometheus/templates/clusterrolebindings.yaml
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: prometheus-istio-system
- labels:
- app: prometheus
- chart: prometheus
- heritage: Tiller
- release: istio
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: prometheus-istio-system
-subjects:
-- kind: ServiceAccount
- name: prometheus
-
----
-# Source: istio/charts/security/templates/clusterrolebinding.yaml
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: istio-citadel-istio-system
- labels:
- app: security
- chart: security
- heritage: Tiller
- release: istio
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: istio-citadel-istio-system
-subjects:
- - kind: ServiceAccount
- name: istio-citadel-service-account
- namespace: istio-system
-
----
-# Source: istio/charts/sidecarInjectorWebhook/templates/clusterrolebinding.yaml
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: istio-sidecar-injector-admin-role-binding-istio-system
- labels:
- app: sidecarInjectorWebhook
- chart: sidecarInjectorWebhook
- heritage: Tiller
- release: istio
- istio: sidecar-injector
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: istio-sidecar-injector-istio-system
-subjects:
- - kind: ServiceAccount
- name: istio-sidecar-injector-service-account
- namespace: istio-system
-
----
-# Source: istio/templates/clusterrolebinding.yaml
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: istio-multi
- labels:
- chart: istio-1.1.0
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: istio-reader
-subjects:
-- kind: ServiceAccount
- name: istio-multi
-
----
-# Source: istio/charts/gateways/templates/role.yaml
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: Role
-metadata:
- name: istio-ingressgateway-sds
-rules:
-- apiGroups: [""]
- resources: ["secrets"]
- verbs: ["get", "watch", "list"]
----
-
----
-# Source: istio/charts/gateways/templates/rolebindings.yaml
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: RoleBinding
-metadata:
- name: istio-ingressgateway-sds
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: istio-ingressgateway-sds
-subjects:
-- kind: ServiceAccount
- name: istio-ingressgateway-service-account
----
-
----
-# Source: istio/charts/galley/templates/service.yaml
-apiVersion: v1
-kind: Service
-metadata:
- name: istio-galley
- labels:
- app: galley
- chart: galley
- heritage: Tiller
- release: istio
- istio: galley
-spec:
- ports:
- - port: 443
- name: https-validation
- - port: 15014
- name: http-monitoring
- - port: 9901
- name: grpc-mcp
- selector:
- istio: galley
-
----
-# Source: istio/charts/gateways/templates/service.yaml
-
-apiVersion: v1
-kind: Service
-metadata:
- name: istio-egressgateway
- labels:
- chart: gateways
- heritage: Tiller
- release: istio
- app: istio-egressgateway
- istio: egressgateway
-spec:
- type: ClusterIP
- selector:
- release: istio
- app: istio-egressgateway
- istio: egressgateway
- ports:
- -
- name: http2
- port: 80
- -
- name: https
- port: 443
- -
- name: tls
- port: 15443
- targetPort: 15443
----
-apiVersion: v1
-kind: Service
-metadata:
- name: istio-ingressgateway
- annotations:
- beta.cloud.google.com/backend-config: '{"ports": {"http2":"iap-backendconfig"}}'
- labels:
- chart: gateways
- heritage: Tiller
- release: istio
- app: istio-ingressgateway
- istio: ingressgateway
-spec:
- type: NodePort
- selector:
- release: istio
- app: istio-ingressgateway
- istio: ingressgateway
- ports:
- -
- name: status-port
- port: 15020
- targetPort: 15020
- -
- name: http2
- nodePort: 31380
- port: 80
- targetPort: 80
- -
- name: https
- nodePort: 31390
- port: 443
- -
- name: tcp
- nodePort: 31400
- port: 31400
- -
- name: https-kiali
- port: 15029
- targetPort: 15029
- -
- name: https-prometheus
- port: 15030
- targetPort: 15030
- -
- name: https-grafana
- port: 15031
- targetPort: 15031
- -
- name: https-tracing
- port: 15032
- targetPort: 15032
- -
- name: tls
- port: 15443
- targetPort: 15443
----
-
----
-# Source: istio/charts/grafana/templates/service.yaml
-apiVersion: v1
-kind: Service
-metadata:
- name: grafana
- labels:
- app: grafana
- chart: grafana
- heritage: Tiller
- release: istio
-spec:
- type: ClusterIP
- ports:
- - port: 3000
- targetPort: 3000
- protocol: TCP
- name: http
- selector:
- app: grafana
-
----
-# Source: istio/charts/kiali/templates/service.yaml
-apiVersion: v1
-kind: Service
-metadata:
- name: kiali
- labels:
- app: kiali
- chart: kiali
- heritage: Tiller
- release: istio
-spec:
- ports:
- - name: http-kiali
- protocol: TCP
- port: 20001
- selector:
- app: kiali
-
----
-# Source: istio/charts/mixer/templates/service.yaml
-
-apiVersion: v1
-kind: Service
-metadata:
- name: istio-policy
- annotations:
- networking.istio.io/exportTo: "*"
- labels:
- app: mixer
- chart: mixer
- heritage: Tiller
- release: istio
- istio: mixer
-spec:
- ports:
- - name: grpc-mixer
- port: 9091
- - name: grpc-mixer-mtls
- port: 15004
- - name: http-monitoring
- port: 15014
- selector:
- istio: mixer
- istio-mixer-type: policy
----
-apiVersion: v1
-kind: Service
-metadata:
- name: istio-telemetry
- annotations:
- networking.istio.io/exportTo: "*"
- labels:
- app: mixer
- chart: mixer
- heritage: Tiller
- release: istio
- istio: mixer
-spec:
- ports:
- - name: grpc-mixer
- port: 9091
- - name: grpc-mixer-mtls
- port: 15004
- - name: http-monitoring
- port: 15014
- - name: prometheus
- port: 42422
- selector:
- istio: mixer
- istio-mixer-type: telemetry
----
-
-
----
-# Source: istio/charts/pilot/templates/service.yaml
-apiVersion: v1
-kind: Service
-metadata:
- name: istio-pilot
- labels:
- app: pilot
- chart: pilot
- heritage: Tiller
- release: istio
- istio: pilot
-spec:
- ports:
- - port: 15010
- name: grpc-xds # direct
- - port: 15011
- name: https-xds # mTLS
- - port: 8080
- name: http-legacy-discovery # direct
- - port: 15014
- name: http-monitoring
- selector:
- istio: pilot
-
----
-# Source: istio/charts/prometheus/templates/service.yaml
-apiVersion: v1
-kind: Service
-metadata:
- name: prometheus
- annotations:
- prometheus.io/scrape: 'true'
- labels:
- app: prometheus
- chart: prometheus
- heritage: Tiller
- release: istio
-spec:
- selector:
- app: prometheus
- ports:
- - name: http-prometheus
- protocol: TCP
- port: 9090
-
----
-# Source: istio/charts/security/templates/service.yaml
-apiVersion: v1
-kind: Service
-metadata:
- # we use the normal name here (e.g. 'prometheus')
- # as grafana is configured to use this as a data source
- name: istio-citadel
- labels:
- app: security
- chart: security
- heritage: Tiller
- release: istio
- istio: citadel
-spec:
- ports:
- - name: grpc-citadel
- port: 8060
- targetPort: 8060
- protocol: TCP
- - name: http-monitoring
- port: 15014
- selector:
- istio: citadel
-
----
-# Source: istio/charts/sidecarInjectorWebhook/templates/service.yaml
-apiVersion: v1
-kind: Service
-metadata:
- name: istio-sidecar-injector
- labels:
- app: sidecarInjectorWebhook
- chart: sidecarInjectorWebhook
- heritage: Tiller
- release: istio
- istio: sidecar-injector
-spec:
- ports:
- - port: 443
- selector:
- istio: sidecar-injector
-
----
-# Source: istio/charts/galley/templates/deployment.yaml
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: istio-galley
- labels:
- app: galley
- chart: galley
- heritage: Tiller
- release: istio
- istio: galley
-spec:
- replicas: 1
- strategy:
- rollingUpdate:
- maxSurge: 1
- maxUnavailable: 0
- selector:
- matchLabels:
- app: galley
- chart: galley
- heritage: Tiller
- release: istio
- istio: galley
- template:
- metadata:
- labels:
- app: galley
- chart: galley
- heritage: Tiller
- release: istio
- istio: galley
- annotations:
- sidecar.istio.io/inject: "false"
- spec:
- serviceAccountName: istio-galley-service-account
- containers:
- - name: galley
- image: "docker.io/istio/galley:1.1.6"
- imagePullPolicy: IfNotPresent
- ports:
- - containerPort: 443
- - containerPort: 15014
- - containerPort: 9901
- command:
- - /usr/local/bin/galley
- - server
- - --meshConfigFile=/etc/mesh-config/mesh
- - --livenessProbeInterval=1s
- - --livenessProbePath=/healthliveness
- - --readinessProbePath=/healthready
- - --readinessProbeInterval=1s
- - --deployment-namespace=istio-system
- - --insecure=true
- - --validation-webhook-config-file
- - /etc/config/validatingwebhookconfiguration.yaml
- - --monitoringPort=15014
- - --log_output_level=default:info
- # see https://github.com/istio/istio/issues/15352
- - --enable-validation=true
- volumeMounts:
- - name: certs
- mountPath: /etc/certs
- readOnly: true
- - name: config
- mountPath: /etc/config
- readOnly: true
- - name: mesh-config
- mountPath: /etc/mesh-config
- readOnly: true
- livenessProbe:
- exec:
- command:
- - /usr/local/bin/galley
- - probe
- - --probe-path=/healthliveness
- - --interval=10s
- initialDelaySeconds: 5
- periodSeconds: 5
- readinessProbe:
- exec:
- command:
- - /usr/local/bin/galley
- - probe
- - --probe-path=/healthready
- - --interval=10s
- initialDelaySeconds: 5
- periodSeconds: 5
- resources:
- requests:
- cpu: 10m
-
- volumes:
- - name: certs
- secret:
- secretName: istio.istio-galley-service-account
- - name: config
- configMap:
- name: istio-galley-configuration
- - name: mesh-config
- configMap:
- name: istio
- affinity:
- nodeAffinity:
- requiredDuringSchedulingIgnoredDuringExecution:
- nodeSelectorTerms:
- - matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - amd64
- - ppc64le
- - s390x
- preferredDuringSchedulingIgnoredDuringExecution:
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - amd64
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - ppc64le
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - s390x
-
----
-# Source: istio/charts/gateways/templates/deployment.yaml
-
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: istio-egressgateway
- labels:
- chart: gateways
- heritage: Tiller
- release: istio
- app: istio-egressgateway
- istio: egressgateway
-spec:
- selector:
- matchLabels:
- chart: gateways
- heritage: Tiller
- release: istio
- app: istio-egressgateway
- istio: egressgateway
- template:
- metadata:
- labels:
- chart: gateways
- heritage: Tiller
- release: istio
- app: istio-egressgateway
- istio: egressgateway
- annotations:
- sidecar.istio.io/inject: "false"
- spec:
- serviceAccountName: istio-egressgateway-service-account
- containers:
- - name: istio-proxy
- image: "docker.io/istio/proxyv2:1.1.6"
- imagePullPolicy: IfNotPresent
- ports:
- - containerPort: 80
- - containerPort: 443
- - containerPort: 15443
- - containerPort: 15090
- protocol: TCP
- name: http-envoy-prom
- args:
- - proxy
- - router
- - --domain
- - $(POD_NAMESPACE).svc.cluster.local
- - --log_output_level=default:info
- - --drainDuration
- - '45s' #drainDuration
- - --parentShutdownDuration
- - '1m0s' #parentShutdownDuration
- - --connectTimeout
- - '10s' #connectTimeout
- - --serviceCluster
- - istio-egressgateway
- - --zipkinAddress
- - zipkin:9411
- - --proxyAdminPort
- - "15000"
- - --statusPort
- - "15020"
- - --controlPlaneAuthPolicy
- - NONE
- - --discoveryAddress
- - istio-pilot:15010
- readinessProbe:
- failureThreshold: 30
- httpGet:
- path: /healthz/ready
- port: 15020
- scheme: HTTP
- initialDelaySeconds: 1
- periodSeconds: 2
- successThreshold: 1
- timeoutSeconds: 1
- resources:
- limits:
- cpu: 100m
- memory: 128Mi
- requests:
- cpu: 10m
- memory: 40Mi
-
- env:
- - name: POD_NAME
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.name
- - name: POD_NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- - name: INSTANCE_IP
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: status.podIP
- - name: HOST_IP
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: status.hostIP
- - name: ISTIO_META_POD_NAME
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.name
- - name: ISTIO_META_CONFIG_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- - name: ISTIO_META_ROUTER_MODE
- value: sni-dnat
- volumeMounts:
- - name: istio-certs
- mountPath: /etc/certs
- readOnly: true
- - name: egressgateway-certs
- mountPath: "/etc/istio/egressgateway-certs"
- readOnly: true
- - name: egressgateway-ca-certs
- mountPath: "/etc/istio/egressgateway-ca-certs"
- readOnly: true
- volumes:
- - name: istio-certs
- secret:
- secretName: istio.istio-egressgateway-service-account
- optional: true
- - name: egressgateway-certs
- secret:
- secretName: "istio-egressgateway-certs"
- optional: true
- - name: egressgateway-ca-certs
- secret:
- secretName: "istio-egressgateway-ca-certs"
- optional: true
- affinity:
- nodeAffinity:
- requiredDuringSchedulingIgnoredDuringExecution:
- nodeSelectorTerms:
- - matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - amd64
- - ppc64le
- - s390x
- preferredDuringSchedulingIgnoredDuringExecution:
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - amd64
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - ppc64le
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - s390x
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: istio-ingressgateway
- labels:
- chart: gateways
- heritage: Tiller
- release: istio
- app: istio-ingressgateway
- istio: ingressgateway
-spec:
- selector:
- matchLabels:
- chart: gateways
- heritage: Tiller
- release: istio
- app: istio-ingressgateway
- istio: ingressgateway
- template:
- metadata:
- labels:
- chart: gateways
- heritage: Tiller
- release: istio
- app: istio-ingressgateway
- istio: ingressgateway
- annotations:
- sidecar.istio.io/inject: "false"
- spec:
- serviceAccountName: istio-ingressgateway-service-account
- containers:
- - name: istio-proxy
- image: "docker.io/istio/proxyv2:1.1.6"
- imagePullPolicy: IfNotPresent
- ports:
- - containerPort: 15020
- - containerPort: 80
- - containerPort: 443
- - containerPort: 31400
- - containerPort: 15029
- - containerPort: 15030
- - containerPort: 15031
- - containerPort: 15032
- - containerPort: 15443
- - containerPort: 15090
- protocol: TCP
- name: http-envoy-prom
- args:
- - proxy
- - router
- - --domain
- - $(POD_NAMESPACE).svc.cluster.local
- - --log_output_level=default:info
- - --drainDuration
- - '45s' #drainDuration
- - --parentShutdownDuration
- - '1m0s' #parentShutdownDuration
- - --connectTimeout
- - '10s' #connectTimeout
- - --serviceCluster
- - istio-ingressgateway
- - --zipkinAddress
- - zipkin:9411
- - --proxyAdminPort
- - "15000"
- - --statusPort
- - "15020"
- - --controlPlaneAuthPolicy
- - NONE
- - --discoveryAddress
- - istio-pilot:15010
- readinessProbe:
- failureThreshold: 30
- httpGet:
- path: /healthz/ready
- port: 15020
- scheme: HTTP
- initialDelaySeconds: 1
- periodSeconds: 2
- successThreshold: 1
- timeoutSeconds: 1
- resources:
- limits:
- cpu: 100m
- memory: 128Mi
- requests:
- cpu: 10m
- memory: 40Mi
-
- env:
- - name: POD_NAME
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.name
- - name: POD_NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- - name: INSTANCE_IP
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: status.podIP
- - name: HOST_IP
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: status.hostIP
- - name: ISTIO_META_POD_NAME
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.name
- - name: ISTIO_META_CONFIG_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- - name: ISTIO_META_ROUTER_MODE
- value: sni-dnat
- volumeMounts:
- - name: istio-certs
- mountPath: /etc/certs
- readOnly: true
- - name: ingressgateway-certs
- mountPath: "/etc/istio/ingressgateway-certs"
- readOnly: true
- - name: ingressgateway-ca-certs
- mountPath: "/etc/istio/ingressgateway-ca-certs"
- readOnly: true
- volumes:
- - name: istio-certs
- secret:
- secretName: istio.istio-ingressgateway-service-account
- optional: true
- - name: ingressgateway-certs
- secret:
- secretName: "istio-ingressgateway-certs"
- optional: true
- - name: ingressgateway-ca-certs
- secret:
- secretName: "istio-ingressgateway-ca-certs"
- optional: true
- affinity:
- nodeAffinity:
- requiredDuringSchedulingIgnoredDuringExecution:
- nodeSelectorTerms:
- - matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - amd64
- - ppc64le
- - s390x
- preferredDuringSchedulingIgnoredDuringExecution:
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - amd64
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - ppc64le
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - s390x
----
-
----
-# Source: istio/charts/grafana/templates/deployment.yaml
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: grafana
- labels:
- app: grafana
- chart: grafana
- heritage: Tiller
- release: istio
-spec:
- replicas: 1
- selector:
- matchLabels:
- app: grafana
- chart: grafana
- heritage: Tiller
- release: istio
- template:
- metadata:
- labels:
- app: grafana
- chart: grafana
- heritage: Tiller
- release: istio
- annotations:
- sidecar.istio.io/inject: "false"
- spec:
- securityContext:
- runAsUser: 472
- fsGroup: 472
- containers:
- - name: grafana
- image: "grafana/grafana:6.0.2"
- imagePullPolicy: IfNotPresent
- ports:
- - containerPort: 3000
- readinessProbe:
- httpGet:
- path: /login
- port: 3000
- env:
- - name: GRAFANA_PORT
- value: "3000"
- - name: GF_AUTH_BASIC_ENABLED
- value: "false"
- - name: GF_AUTH_ANONYMOUS_ENABLED
- value: "true"
- - name: GF_AUTH_ANONYMOUS_ORG_ROLE
- value: Admin
- - name: GF_PATHS_DATA
- value: /data/grafana
- resources:
- requests:
- cpu: 10m
-
- volumeMounts:
- - name: data
- mountPath: /data/grafana
- - name: dashboards-istio-galley-dashboard
- mountPath: "/var/lib/grafana/dashboards/istio/galley-dashboard.json"
- subPath: galley-dashboard.json
- readOnly: true
- - name: dashboards-istio-istio-mesh-dashboard
- mountPath: "/var/lib/grafana/dashboards/istio/istio-mesh-dashboard.json"
- subPath: istio-mesh-dashboard.json
- readOnly: true
- - name: dashboards-istio-istio-performance-dashboard
- mountPath: "/var/lib/grafana/dashboards/istio/istio-performance-dashboard.json"
- subPath: istio-performance-dashboard.json
- readOnly: true
- - name: dashboards-istio-istio-service-dashboard
- mountPath: "/var/lib/grafana/dashboards/istio/istio-service-dashboard.json"
- subPath: istio-service-dashboard.json
- readOnly: true
- - name: dashboards-istio-istio-workload-dashboard
- mountPath: "/var/lib/grafana/dashboards/istio/istio-workload-dashboard.json"
- subPath: istio-workload-dashboard.json
- readOnly: true
- - name: dashboards-istio-mixer-dashboard
- mountPath: "/var/lib/grafana/dashboards/istio/mixer-dashboard.json"
- subPath: mixer-dashboard.json
- readOnly: true
- - name: dashboards-istio-pilot-dashboard
- mountPath: "/var/lib/grafana/dashboards/istio/pilot-dashboard.json"
- subPath: pilot-dashboard.json
- readOnly: true
- - name: config
- mountPath: "/etc/grafana/provisioning/datasources/datasources.yaml"
- subPath: datasources.yaml
- - name: config
- mountPath: "/etc/grafana/provisioning/dashboards/dashboardproviders.yaml"
- subPath: dashboardproviders.yaml
- affinity:
- nodeAffinity:
- requiredDuringSchedulingIgnoredDuringExecution:
- nodeSelectorTerms:
- - matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - amd64
- - ppc64le
- - s390x
- preferredDuringSchedulingIgnoredDuringExecution:
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - amd64
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - ppc64le
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - s390x
- volumes:
- - name: config
- configMap:
- name: istio-grafana
- - name: data
- emptyDir: {}
- - name: dashboards-istio-galley-dashboard
- configMap:
- name: istio-grafana-configuration-dashboards-galley-dashboard
- - name: dashboards-istio-istio-mesh-dashboard
- configMap:
- name: istio-grafana-configuration-dashboards-istio-mesh-dashboard
- - name: dashboards-istio-istio-performance-dashboard
- configMap:
- name: istio-grafana-configuration-dashboards-istio-performance-dashboard
- - name: dashboards-istio-istio-service-dashboard
- configMap:
- name: istio-grafana-configuration-dashboards-istio-service-dashboard
- - name: dashboards-istio-istio-workload-dashboard
- configMap:
- name: istio-grafana-configuration-dashboards-istio-workload-dashboard
- - name: dashboards-istio-mixer-dashboard
- configMap:
- name: istio-grafana-configuration-dashboards-mixer-dashboard
- - name: dashboards-istio-pilot-dashboard
- configMap:
- name: istio-grafana-configuration-dashboards-pilot-dashboard
-
----
-# Source: istio/charts/kiali/templates/deployment.yaml
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: kiali
- labels:
- app: kiali
- chart: kiali
- heritage: Tiller
- release: istio
-spec:
- replicas: 1
- selector:
- matchLabels:
- app: kiali
- template:
- metadata:
- name: kiali
- labels:
- app: kiali
- chart: kiali
- heritage: Tiller
- release: istio
- annotations:
- sidecar.istio.io/inject: "false"
- scheduler.alpha.kubernetes.io/critical-pod: ""
- prometheus.io/scrape: "true"
- prometheus.io/port: "9090"
- spec:
- serviceAccountName: kiali-service-account
- containers:
- - image: "docker.io/kiali/kiali:v0.16"
- name: kiali
- command:
- - "/opt/kiali/kiali"
- - "-config"
- - "/kiali-configuration/config.yaml"
- - "-v"
- - "4"
- env:
- - name: ACTIVE_NAMESPACE
- valueFrom:
- fieldRef:
- fieldPath: metadata.namespace
- - name: PROMETHEUS_SERVICE_URL
- value: http://prometheus:9090
- - name: SERVER_WEB_ROOT
- value: /kiali
- volumeMounts:
- - name: kiali-configuration
- mountPath: "/kiali-configuration"
- - name: kiali-secret
- mountPath: "/kiali-secret"
- resources:
- requests:
- cpu: 10m
-
- volumes:
- - name: kiali-configuration
- configMap:
- name: kiali
- - name: kiali-secret
- secret:
- secretName: kiali
- optional: true
- affinity:
- nodeAffinity:
- requiredDuringSchedulingIgnoredDuringExecution:
- nodeSelectorTerms:
- - matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - amd64
- - ppc64le
- - s390x
- preferredDuringSchedulingIgnoredDuringExecution:
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - amd64
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - ppc64le
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - s390x
-
----
-# Source: istio/charts/mixer/templates/deployment.yaml
-
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: istio-policy
- labels:
- app: istio-mixer
- chart: mixer
- heritage: Tiller
- release: istio
- istio: mixer
-spec:
- strategy:
- rollingUpdate:
- maxSurge: 1
- maxUnavailable: 0
- selector:
- matchLabels:
- istio: mixer
- istio-mixer-type: policy
- template:
- metadata:
- labels:
- app: policy
- chart: mixer
- heritage: Tiller
- release: istio
- istio: mixer
- istio-mixer-type: policy
- annotations:
- sidecar.istio.io/inject: "false"
- spec:
- serviceAccountName: istio-mixer-service-account
- volumes:
- - name: istio-certs
- secret:
- secretName: istio.istio-mixer-service-account
- optional: true
- - name: uds-socket
- emptyDir: {}
- - name: policy-adapter-secret
- secret:
- secretName: policy-adapter-secret
- optional: true
- affinity:
- nodeAffinity:
- requiredDuringSchedulingIgnoredDuringExecution:
- nodeSelectorTerms:
- - matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - amd64
- - ppc64le
- - s390x
- preferredDuringSchedulingIgnoredDuringExecution:
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - amd64
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - ppc64le
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - s390x
- containers:
- - name: mixer
- image: "docker.io/istio/mixer:1.1.6"
- imagePullPolicy: IfNotPresent
- ports:
- - containerPort: 15014
- - containerPort: 42422
- args:
- - --monitoringPort=15014
- - --address
- - unix:///sock/mixer.socket
- - --log_output_level=default:info
- - --configStoreURL=mcp://istio-galley.istio-system.svc:9901
- - --configDefaultNamespace=istio-system
- - --useAdapterCRDs=true
- - --trace_zipkin_url=http://zipkin:9411/api/v1/spans
- env:
- - name: GODEBUG
- value: "gctrace=1"
- - name: GOMAXPROCS
- value: "6"
- resources:
- limits:
- cpu: 100m
- memory: 100Mi
- requests:
- cpu: 10m
- memory: 100Mi
-
- volumeMounts:
- - name: istio-certs
- mountPath: /etc/certs
- readOnly: true
- - name: uds-socket
- mountPath: /sock
- livenessProbe:
- httpGet:
- path: /version
- port: 15014
- initialDelaySeconds: 5
- periodSeconds: 5
- - name: istio-proxy
- image: "docker.io/istio/proxyv2:1.1.6"
- imagePullPolicy: IfNotPresent
- ports:
- - containerPort: 9091
- - containerPort: 15004
- - containerPort: 15090
- protocol: TCP
- name: http-envoy-prom
- args:
- - proxy
- - --domain
- - $(POD_NAMESPACE).svc.cluster.local
- - --serviceCluster
- - istio-policy
- - --templateFile
- - /etc/istio/proxy/envoy_policy.yaml.tmpl
- - --controlPlaneAuthPolicy
- - NONE
- env:
- - name: POD_NAME
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.name
- - name: POD_NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- - name: INSTANCE_IP
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: status.podIP
- resources:
- limits:
- cpu: 2000m
- memory: 128Mi
- requests:
- cpu: 10m
- memory: 40Mi
-
- volumeMounts:
- - name: istio-certs
- mountPath: /etc/certs
- readOnly: true
- - name: uds-socket
- mountPath: /sock
- - name: policy-adapter-secret
- mountPath: /var/run/secrets/istio.io/policy/adapter
- readOnly: true
-
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: istio-telemetry
- labels:
- app: istio-mixer
- chart: mixer
- heritage: Tiller
- release: istio
- istio: mixer
-spec:
- strategy:
- rollingUpdate:
- maxSurge: 1
- maxUnavailable: 0
- selector:
- matchLabels:
- istio: mixer
- istio-mixer-type: telemetry
- template:
- metadata:
- labels:
- app: telemetry
- chart: mixer
- heritage: Tiller
- release: istio
- istio: mixer
- istio-mixer-type: telemetry
- annotations:
- sidecar.istio.io/inject: "false"
- spec:
- serviceAccountName: istio-mixer-service-account
- volumes:
- - name: istio-certs
- secret:
- secretName: istio.istio-mixer-service-account
- optional: true
- - name: uds-socket
- emptyDir: {}
- - name: telemetry-adapter-secret
- secret:
- secretName: telemetry-adapter-secret
- optional: true
- affinity:
- nodeAffinity:
- requiredDuringSchedulingIgnoredDuringExecution:
- nodeSelectorTerms:
- - matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - amd64
- - ppc64le
- - s390x
- preferredDuringSchedulingIgnoredDuringExecution:
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - amd64
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - ppc64le
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - s390x
- containers:
- - name: mixer
- image: "docker.io/istio/mixer:1.1.6"
- imagePullPolicy: IfNotPresent
- ports:
- - containerPort: 15014
- - containerPort: 42422
- args:
- - --monitoringPort=15014
- - --address
- - unix:///sock/mixer.socket
- - --log_output_level=default:info
- - --configStoreURL=mcp://istio-galley.istio-system.svc:9901
- - --configDefaultNamespace=istio-system
- - --useAdapterCRDs=true
- - --trace_zipkin_url=http://zipkin:9411/api/v1/spans
- - --averageLatencyThreshold
- - 100ms
- - --loadsheddingMode
- - enforce
- env:
- - name: GODEBUG
- value: "gctrace=1"
- - name: GOMAXPROCS
- value: "6"
- resources:
- limits:
- cpu: 100m
- memory: 100Mi
- requests:
- cpu: 50m
- memory: 100Mi
-
- volumeMounts:
- - name: istio-certs
- mountPath: /etc/certs
- readOnly: true
- - name: telemetry-adapter-secret
- mountPath: /var/run/secrets/istio.io/telemetry/adapter
- readOnly: true
- - name: uds-socket
- mountPath: /sock
- livenessProbe:
- httpGet:
- path: /version
- port: 15014
- initialDelaySeconds: 5
- periodSeconds: 5
- - name: istio-proxy
- image: "docker.io/istio/proxyv2:1.1.6"
- imagePullPolicy: IfNotPresent
- ports:
- - containerPort: 9091
- - containerPort: 15004
- - containerPort: 15090
- protocol: TCP
- name: http-envoy-prom
- args:
- - proxy
- - --domain
- - $(POD_NAMESPACE).svc.cluster.local
- - --serviceCluster
- - istio-telemetry
- - --templateFile
- - /etc/istio/proxy/envoy_telemetry.yaml.tmpl
- - --controlPlaneAuthPolicy
- - NONE
- env:
- - name: POD_NAME
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.name
- - name: POD_NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- - name: INSTANCE_IP
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: status.podIP
- resources:
- limits:
- cpu: 2000m
- memory: 128Mi
- requests:
- cpu: 10m
- memory: 40Mi
-
- volumeMounts:
- - name: istio-certs
- mountPath: /etc/certs
- readOnly: true
- - name: uds-socket
- mountPath: /sock
-
----
-
----
-# Source: istio/charts/pilot/templates/deployment.yaml
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: istio-pilot
- # TODO: default template doesn't have this, which one is right ?
- labels:
- app: pilot
- chart: pilot
- heritage: Tiller
- release: istio
- istio: pilot
- annotations:
- checksum/config-volume: f8da08b6b8c170dde721efd680270b2901e750d4aa186ebb6c22bef5b78a43f9
-spec:
- strategy:
- rollingUpdate:
- maxSurge: 1
- maxUnavailable: 0
- selector:
- matchLabels:
- istio: pilot
- template:
- metadata:
- labels:
- app: pilot
- chart: pilot
- heritage: Tiller
- release: istio
- istio: pilot
- annotations:
- sidecar.istio.io/inject: "false"
- spec:
- serviceAccountName: istio-pilot-service-account
- containers:
- - name: discovery
- image: "docker.io/istio/pilot:1.1.6"
- imagePullPolicy: IfNotPresent
- args:
- - "discovery"
- - --monitoringAddr=:15014
- - --log_output_level=default:info
- - --domain
- - cluster.local
- - --secureGrpcAddr
- - ""
- - --keepaliveMaxServerConnectionAge
- - "30m"
- ports:
- - containerPort: 8080
- - containerPort: 15010
- readinessProbe:
- httpGet:
- path: /ready
- port: 8080
- initialDelaySeconds: 5
- periodSeconds: 30
- timeoutSeconds: 5
- env:
- - name: POD_NAME
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.name
- - name: POD_NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- - name: GODEBUG
- value: "gctrace=1"
- - name: PILOT_PUSH_THROTTLE
- value: "100"
- - name: PILOT_TRACE_SAMPLING
- value: "100"
- - name: PILOT_DISABLE_XDS_MARSHALING_TO_ANY
- value: "1"
- resources:
- limits:
- cpu: 100m
- memory: 200Mi
- requests:
- cpu: 10m
- memory: 100Mi
-
- volumeMounts:
- - name: config-volume
- mountPath: /etc/istio/config
- - name: istio-certs
- mountPath: /etc/certs
- readOnly: true
- - name: istio-proxy
- image: "docker.io/istio/proxyv2:1.1.6"
- imagePullPolicy: IfNotPresent
- ports:
- - containerPort: 15003
- - containerPort: 15005
- - containerPort: 15007
- - containerPort: 15011
- args:
- - proxy
- - --domain
- - $(POD_NAMESPACE).svc.cluster.local
- - --serviceCluster
- - istio-pilot
- - --templateFile
- - /etc/istio/proxy/envoy_pilot.yaml.tmpl
- - --controlPlaneAuthPolicy
- - NONE
- env:
- - name: POD_NAME
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.name
- - name: POD_NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- - name: INSTANCE_IP
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: status.podIP
- resources:
- limits:
- cpu: 2000m
- memory: 128Mi
- requests:
- cpu: 10m
- memory: 40Mi
-
- volumeMounts:
- - name: istio-certs
- mountPath: /etc/certs
- readOnly: true
- volumes:
- - name: config-volume
- configMap:
- name: istio
- - name: istio-certs
- secret:
- secretName: istio.istio-pilot-service-account
- optional: true
- affinity:
- nodeAffinity:
- requiredDuringSchedulingIgnoredDuringExecution:
- nodeSelectorTerms:
- - matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - amd64
- - ppc64le
- - s390x
- preferredDuringSchedulingIgnoredDuringExecution:
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - amd64
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - ppc64le
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - s390x
-
----
-# Source: istio/charts/prometheus/templates/deployment.yaml
-# TODO: the original template has service account, roles, etc
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: prometheus
- labels:
- app: prometheus
- chart: prometheus
- heritage: Tiller
- release: istio
-spec:
- replicas: 1
- selector:
- matchLabels:
- app: prometheus
- template:
- metadata:
- labels:
- app: prometheus
- chart: prometheus
- heritage: Tiller
- release: istio
- annotations:
- sidecar.istio.io/inject: "false"
- spec:
- serviceAccountName: prometheus
- containers:
- - name: prometheus
- image: "docker.io/prom/prometheus:v2.3.1"
- imagePullPolicy: IfNotPresent
- args:
- - '--storage.tsdb.retention=6h'
- - '--config.file=/etc/prometheus/prometheus.yml'
- ports:
- - containerPort: 9090
- name: http
- livenessProbe:
- httpGet:
- path: /-/healthy
- port: 9090
- readinessProbe:
- httpGet:
- path: /-/ready
- port: 9090
- resources:
- requests:
- cpu: 10m
-
- volumeMounts:
- - name: config-volume
- mountPath: /etc/prometheus
- - mountPath: /etc/istio-certs
- name: istio-certs
- volumes:
- - name: config-volume
- configMap:
- name: prometheus
- - name: istio-certs
- secret:
- defaultMode: 420
- secretName: istio.default
- affinity:
- nodeAffinity:
- requiredDuringSchedulingIgnoredDuringExecution:
- nodeSelectorTerms:
- - matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - amd64
- - ppc64le
- - s390x
- preferredDuringSchedulingIgnoredDuringExecution:
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - amd64
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - ppc64le
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - s390x
-
----
-# Source: istio/charts/security/templates/deployment.yaml
-# istio CA watching all namespaces
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: istio-citadel
- labels:
- app: security
- chart: security
- heritage: Tiller
- release: istio
- istio: citadel
-spec:
- replicas: 1
- strategy:
- rollingUpdate:
- maxSurge: 1
- maxUnavailable: 0
- selector:
- matchLabels:
- app: security
- chart: security
- heritage: Tiller
- release: istio
- istio: citadel
- template:
- metadata:
- labels:
- app: security
- chart: security
- heritage: Tiller
- release: istio
- istio: citadel
- annotations:
- sidecar.istio.io/inject: "false"
- spec:
- serviceAccountName: istio-citadel-service-account
- containers:
- - name: citadel
- image: "docker.io/istio/citadel:1.1.6"
- imagePullPolicy: IfNotPresent
- args:
- - --append-dns-names=true
- - --grpc-port=8060
- - --grpc-hostname=citadel
- - --citadel-storage-namespace=istio-system
- - --custom-dns-names=istio-pilot-service-account.istio-system:istio-pilot.istio-system
- - --monitoring-port=15014
- - --self-signed-ca=true
- livenessProbe:
- httpGet:
- path: /version
- port: 15014
- initialDelaySeconds: 5
- periodSeconds: 5
- resources:
- requests:
- cpu: 10m
-
- affinity:
- nodeAffinity:
- requiredDuringSchedulingIgnoredDuringExecution:
- nodeSelectorTerms:
- - matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - amd64
- - ppc64le
- - s390x
- preferredDuringSchedulingIgnoredDuringExecution:
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - amd64
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - ppc64le
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - s390x
-
----
-# Source: istio/charts/sidecarInjectorWebhook/templates/deployment.yaml
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: istio-sidecar-injector
- labels:
- app: sidecarInjectorWebhook
- chart: sidecarInjectorWebhook
- heritage: Tiller
- release: istio
- istio: sidecar-injector
-spec:
- replicas: 1
- strategy:
- rollingUpdate:
- maxSurge: 1
- maxUnavailable: 0
- selector:
- matchLabels:
- app: sidecarInjectorWebhook
- chart: sidecarInjectorWebhook
- heritage: Tiller
- release: istio
- istio: sidecar-injector
- template:
- metadata:
- labels:
- app: sidecarInjectorWebhook
- chart: sidecarInjectorWebhook
- heritage: Tiller
- release: istio
- istio: sidecar-injector
- annotations:
- sidecar.istio.io/inject: "false"
- spec:
- serviceAccountName: istio-sidecar-injector-service-account
- containers:
- - name: sidecar-injector-webhook
- image: "docker.io/istio/sidecar_injector:1.1.6"
- imagePullPolicy: IfNotPresent
- args:
- - --caCertFile=/etc/istio/certs/root-cert.pem
- - --tlsCertFile=/etc/istio/certs/cert-chain.pem
- - --tlsKeyFile=/etc/istio/certs/key.pem
- - --injectConfig=/etc/istio/inject/config
- - --meshConfig=/etc/istio/config/mesh
- - --healthCheckInterval=2s
- - --healthCheckFile=/health
- volumeMounts:
- - name: config-volume
- mountPath: /etc/istio/config
- readOnly: true
- - name: certs
- mountPath: /etc/istio/certs
- readOnly: true
- - name: inject-config
- mountPath: /etc/istio/inject
- readOnly: true
- livenessProbe:
- exec:
- command:
- - /usr/local/bin/sidecar-injector
- - probe
- - --probe-path=/health
- - --interval=4s
- initialDelaySeconds: 4
- periodSeconds: 4
- readinessProbe:
- exec:
- command:
- - /usr/local/bin/sidecar-injector
- - probe
- - --probe-path=/health
- - --interval=4s
- initialDelaySeconds: 4
- periodSeconds: 4
- resources:
- requests:
- cpu: 10m
-
- volumes:
- - name: config-volume
- configMap:
- name: istio
- - name: certs
- secret:
- secretName: istio.istio-sidecar-injector-service-account
- - name: inject-config
- configMap:
- name: istio-sidecar-injector
- items:
- - key: config
- path: config
- affinity:
- nodeAffinity:
- requiredDuringSchedulingIgnoredDuringExecution:
- nodeSelectorTerms:
- - matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - amd64
- - ppc64le
- - s390x
- preferredDuringSchedulingIgnoredDuringExecution:
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - amd64
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - ppc64le
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - s390x
-
----
-# Source: istio/charts/tracing/templates/deployment-jaeger.yaml
-
-
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: istio-tracing
- labels:
- app: jaeger
- chart: tracing
- heritage: Tiller
- release: istio
-spec:
- selector:
- matchLabels:
- app: jaeger
- chart: tracing
- heritage: Tiller
- release: istio
- template:
- metadata:
- labels:
- app: jaeger
- chart: tracing
- heritage: Tiller
- release: istio
- annotations:
- sidecar.istio.io/inject: "false"
- prometheus.io/scrape: "true"
- prometheus.io/port: "16686"
- prometheus.io/path: "/jaeger/metrics"
- spec:
- containers:
- - name: jaeger
- image: "docker.io/jaegertracing/all-in-one:1.9"
- imagePullPolicy: IfNotPresent
- ports:
- - containerPort: 9411
- - containerPort: 16686
- - containerPort: 5775
- protocol: UDP
- - containerPort: 6831
- protocol: UDP
- - containerPort: 6832
- protocol: UDP
- env:
- - name: POD_NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- - name: COLLECTOR_ZIPKIN_HTTP_PORT
- value: "9411"
- - name: MEMORY_MAX_TRACES
- value: "50000"
- - name: QUERY_BASE_PATH
- value: /jaeger
- livenessProbe:
- httpGet:
- path: /
- port: 16686
- readinessProbe:
- httpGet:
- path: /
- port: 16686
- resources:
- requests:
- cpu: 10m
-
- affinity:
- nodeAffinity:
- requiredDuringSchedulingIgnoredDuringExecution:
- nodeSelectorTerms:
- - matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - amd64
- - ppc64le
- - s390x
- preferredDuringSchedulingIgnoredDuringExecution:
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - amd64
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - ppc64le
- - weight: 2
- preference:
- matchExpressions:
- - key: beta.kubernetes.io/arch
- operator: In
- values:
- - s390x
-
-
----
-# Source: istio/charts/gateways/templates/autoscale.yaml
-
-apiVersion: autoscaling/v2beta1
-kind: HorizontalPodAutoscaler
-metadata:
- name: istio-egressgateway
- labels:
- app: egressgateway
- chart: gateways
- heritage: Tiller
- release: istio
-spec:
- maxReplicas: 5
- minReplicas: 1
- scaleTargetRef:
- apiVersion: apps/v1
- kind: Deployment
- name: istio-egressgateway
- metrics:
- - type: Resource
- resource:
- name: cpu
- targetAverageUtilization: 80
----
-apiVersion: autoscaling/v2beta1
-kind: HorizontalPodAutoscaler
-metadata:
- name: istio-ingressgateway
- labels:
- app: ingressgateway
- chart: gateways
- heritage: Tiller
- release: istio
-spec:
- maxReplicas: 5
- minReplicas: 1
- scaleTargetRef:
- apiVersion: apps/v1
- kind: Deployment
- name: istio-ingressgateway
- metrics:
- - type: Resource
- resource:
- name: cpu
- targetAverageUtilization: 80
----
-
----
-# Source: istio/charts/mixer/templates/autoscale.yaml
-
-apiVersion: autoscaling/v2beta1
-kind: HorizontalPodAutoscaler
-metadata:
- name: istio-policy
- labels:
- app: mixer
- chart: mixer
- heritage: Tiller
- release: istio
-spec:
- maxReplicas: 5
- minReplicas: 1
- scaleTargetRef:
- apiVersion: apps/v1
- kind: Deployment
- name: istio-policy
- metrics:
- - type: Resource
- resource:
- name: cpu
- targetAverageUtilization: 80
----
-apiVersion: autoscaling/v2beta1
-kind: HorizontalPodAutoscaler
-metadata:
- name: istio-telemetry
- labels:
- app: mixer
- chart: mixer
- heritage: Tiller
- release: istio
-spec:
- maxReplicas: 5
- minReplicas: 1
- scaleTargetRef:
- apiVersion: apps/v1
- kind: Deployment
- name: istio-telemetry
- metrics:
- - type: Resource
- resource:
- name: cpu
- targetAverageUtilization: 80
----
-
----
-# Source: istio/charts/pilot/templates/autoscale.yaml
-
-apiVersion: autoscaling/v2beta1
-kind: HorizontalPodAutoscaler
-metadata:
- name: istio-pilot
- labels:
- app: pilot
- chart: pilot
- heritage: Tiller
- release: istio
-spec:
- maxReplicas: 5
- minReplicas: 1
- scaleTargetRef:
- apiVersion: apps/v1
- kind: Deployment
- name: istio-pilot
- metrics:
- - type: Resource
- resource:
- name: cpu
- targetAverageUtilization: 80
----
-
----
-# Source: istio/charts/tracing/templates/service-jaeger.yaml
-
-apiVersion: v1
-kind: Service
-metadata:
- name: jaeger-query
- annotations:
- labels:
- app: jaeger
- jaeger-infra: jaeger-service
- chart: tracing
- heritage: Tiller
- release: istio
-spec:
- ports:
- - name: query-http
- port: 16686
- protocol: TCP
- targetPort: 16686
- selector:
- app: jaeger
-
----
-
-apiVersion: v1
-kind: Service
-metadata:
- name: jaeger-collector
- labels:
- app: jaeger
- jaeger-infra: collector-service
- chart: tracing
- heritage: Tiller
- release: istio
-spec:
- ports:
- - name: jaeger-collector-tchannel
- port: 14267
- protocol: TCP
- targetPort: 14267
- - name: jaeger-collector-http
- port: 14268
- targetPort: 14268
- protocol: TCP
- selector:
- app: jaeger
- type: ClusterIP
----
-apiVersion: v1
-kind: Service
-metadata:
- name: jaeger-agent
- labels:
- app: jaeger
- jaeger-infra: agent-service
- chart: tracing
- heritage: Tiller
- release: istio
-spec:
- ports:
- - name: agent-zipkin-thrift
- port: 5775
- protocol: UDP
- targetPort: 5775
- - name: agent-compact
- port: 6831
- protocol: UDP
- targetPort: 6831
- - name: agent-binary
- port: 6832
- protocol: UDP
- targetPort: 6832
- clusterIP: None
- selector:
- app: jaeger
-
-
-
----
-# Source: istio/charts/tracing/templates/service.yaml
-apiVersion: v1
-kind: Service
-metadata:
- name: zipkin
- labels:
- app: jaeger
- chart: tracing
- heritage: Tiller
- release: istio
-spec:
- type: ClusterIP
- ports:
- - port: 9411
- targetPort: 9411
- protocol: TCP
- name: http
- selector:
- app: jaeger
----
-apiVersion: v1
-kind: Service
-metadata:
- name: tracing
- annotations:
- labels:
- app: jaeger
- chart: tracing
- heritage: Tiller
- release: istio
-spec:
- ports:
- - name: http-query
- port: 80
- protocol: TCP
-
- targetPort: 16686
-
- selector:
- app: jaeger
-
----
-# Source: istio/charts/sidecarInjectorWebhook/templates/mutatingwebhook.yaml
-apiVersion: admissionregistration.k8s.io/v1beta1
-kind: MutatingWebhookConfiguration
-metadata:
- name: istio-sidecar-injector
- labels:
- app: sidecarInjectorWebhook
- chart: sidecarInjectorWebhook
- heritage: Tiller
- release: istio
-webhooks:
- - name: sidecar-injector.istio.io
- clientConfig:
- service:
- name: istio-sidecar-injector
- namespace: istio-system
- path: "/inject"
- caBundle: ""
- rules:
- - operations: [ "CREATE" ]
- apiGroups: [""]
- apiVersions: ["v1"]
- resources: ["pods"]
- failurePolicy: Fail
- namespaceSelector:
- matchLabels:
- istio-injection: enabled
-
-
----
-# Source: istio/charts/galley/templates/poddisruptionbudget.yaml
-
-apiVersion: policy/v1beta1
-kind: PodDisruptionBudget
-metadata:
- name: istio-galley
- labels:
- app: galley
- chart: galley
- heritage: Tiller
- release: istio
- istio: galley
-spec:
-
- minAvailable: 1
- selector:
- matchLabels:
- app: galley
- release: istio
- istio: galley
-
----
-# Source: istio/charts/gateways/templates/poddisruptionbudget.yaml
-
-apiVersion: policy/v1beta1
-kind: PodDisruptionBudget
-metadata:
- name: istio-egressgateway
- labels:
- chart: gateways
- heritage: Tiller
- release: istio
- app: istio-egressgateway
- istio: egressgateway
-spec:
-
- minAvailable: 1
- selector:
- matchLabels:
- release: istio
- app: istio-egressgateway
- istio: egressgateway
----
-apiVersion: policy/v1beta1
-kind: PodDisruptionBudget
-metadata:
- name: istio-ingressgateway
- labels:
- chart: gateways
- heritage: Tiller
- release: istio
- app: istio-ingressgateway
- istio: ingressgateway
-spec:
-
- minAvailable: 1
- selector:
- matchLabels:
- release: istio
- app: istio-ingressgateway
- istio: ingressgateway
----
-
----
-# Source: istio/charts/mixer/templates/poddisruptionbudget.yaml
-
-apiVersion: policy/v1beta1
-kind: PodDisruptionBudget
-metadata:
- name: istio-policy
- labels:
- app: policy
- chart: mixer
- heritage: Tiller
- release: istio
- version: 1.1.0
- istio: mixer
- istio-mixer-type: policy
-spec:
-
- minAvailable: 1
- selector:
- matchLabels:
- app: policy
- release: istio
- istio: mixer
- istio-mixer-type: policy
----
-apiVersion: policy/v1beta1
-kind: PodDisruptionBudget
-metadata:
- name: istio-telemetry
- labels:
- app: telemetry
- chart: mixer
- heritage: Tiller
- release: istio
- version: 1.1.0
- istio: mixer
- istio-mixer-type: telemetry
-spec:
-
- minAvailable: 1
- selector:
- matchLabels:
- app: telemetry
- release: istio
- istio: mixer
- istio-mixer-type: telemetry
----
-# Source: istio/charts/pilot/templates/poddisruptionbudget.yaml
-
-apiVersion: policy/v1beta1
-kind: PodDisruptionBudget
-metadata:
- name: istio-pilot
- labels:
- app: pilot
- chart: pilot
- heritage: Tiller
- release: istio
- istio: pilot
-spec:
-
- minAvailable: 1
- selector:
- matchLabels:
- app: pilot
- release: istio
- istio: pilot
-
----
-apiVersion: "config.istio.io/v1alpha2"
-kind: attributemanifest
-metadata:
- name: istioproxy
- labels:
- app: mixer
- chart: mixer
- heritage: Tiller
- release: istio
-spec:
- attributes:
- origin.ip:
- valueType: IP_ADDRESS
- origin.uid:
- valueType: STRING
- origin.user:
- valueType: STRING
- request.headers:
- valueType: STRING_MAP
- request.id:
- valueType: STRING
- request.host:
- valueType: STRING
- request.method:
- valueType: STRING
- request.path:
- valueType: STRING
- request.url_path:
- valueType: STRING
- request.query_params:
- valueType: STRING_MAP
- request.reason:
- valueType: STRING
- request.referer:
- valueType: STRING
- request.scheme:
- valueType: STRING
- request.total_size:
- valueType: INT64
- request.size:
- valueType: INT64
- request.time:
- valueType: TIMESTAMP
- request.useragent:
- valueType: STRING
- response.code:
- valueType: INT64
- response.duration:
- valueType: DURATION
- response.headers:
- valueType: STRING_MAP
- response.total_size:
- valueType: INT64
- response.size:
- valueType: INT64
- response.time:
- valueType: TIMESTAMP
- response.grpc_status:
- valueType: STRING
- response.grpc_message:
- valueType: STRING
- source.uid:
- valueType: STRING
- source.user: # DEPRECATED
- valueType: STRING
- source.principal:
- valueType: STRING
- destination.uid:
- valueType: STRING
- destination.principal:
- valueType: STRING
- destination.port:
- valueType: INT64
- connection.event:
- valueType: STRING
- connection.id:
- valueType: STRING
- connection.received.bytes:
- valueType: INT64
- connection.received.bytes_total:
- valueType: INT64
- connection.sent.bytes:
- valueType: INT64
- connection.sent.bytes_total:
- valueType: INT64
- connection.duration:
- valueType: DURATION
- connection.mtls:
- valueType: BOOL
- connection.requested_server_name:
- valueType: STRING
- context.protocol:
- valueType: STRING
- context.proxy_error_code:
- valueType: STRING
- context.timestamp:
- valueType: TIMESTAMP
- context.time:
- valueType: TIMESTAMP
- # Deprecated, kept for compatibility
- context.reporter.local:
- valueType: BOOL
- context.reporter.kind:
- valueType: STRING
- context.reporter.uid:
- valueType: STRING
- api.service:
- valueType: STRING
- api.version:
- valueType: STRING
- api.operation:
- valueType: STRING
- api.protocol:
- valueType: STRING
- request.auth.principal:
- valueType: STRING
- request.auth.audiences:
- valueType: STRING
- request.auth.presenter:
- valueType: STRING
- request.auth.claims:
- valueType: STRING_MAP
- request.auth.raw_claims:
- valueType: STRING
- request.api_key:
- valueType: STRING
- rbac.permissive.response_code:
- valueType: STRING
- rbac.permissive.effective_policy_id:
- valueType: STRING
- check.error_code:
- valueType: INT64
- check.error_message:
- valueType: STRING
- check.cache_hit:
- valueType: BOOL
- quota.cache_hit:
- valueType: BOOL
-
----
-apiVersion: "config.istio.io/v1alpha2"
-kind: attributemanifest
-metadata:
- name: kubernetes
- labels:
- app: mixer
- chart: mixer
- heritage: Tiller
- release: istio
-spec:
- attributes:
- source.ip:
- valueType: IP_ADDRESS
- source.labels:
- valueType: STRING_MAP
- source.metadata:
- valueType: STRING_MAP
- source.name:
- valueType: STRING
- source.namespace:
- valueType: STRING
- source.owner:
- valueType: STRING
- source.serviceAccount:
- valueType: STRING
- source.services:
- valueType: STRING
- source.workload.uid:
- valueType: STRING
- source.workload.name:
- valueType: STRING
- source.workload.namespace:
- valueType: STRING
- destination.ip:
- valueType: IP_ADDRESS
- destination.labels:
- valueType: STRING_MAP
- destination.metadata:
- valueType: STRING_MAP
- destination.owner:
- valueType: STRING
- destination.name:
- valueType: STRING
- destination.container.name:
- valueType: STRING
- destination.namespace:
- valueType: STRING
- destination.service.uid:
- valueType: STRING
- destination.service.name:
- valueType: STRING
- destination.service.namespace:
- valueType: STRING
- destination.service.host:
- valueType: STRING
- destination.serviceAccount:
- valueType: STRING
- destination.workload.uid:
- valueType: STRING
- destination.workload.name:
- valueType: STRING
- destination.workload.namespace:
- valueType: STRING
----
-apiVersion: "config.istio.io/v1alpha2"
-kind: handler
-metadata:
- name: stdio
- labels:
- app: mixer
- chart: mixer
- heritage: Tiller
- release: istio
-spec:
- compiledAdapter: stdio
- params:
- outputAsJson: true
----
-apiVersion: "config.istio.io/v1alpha2"
-kind: logentry
-metadata:
- name: accesslog
- labels:
- app: mixer
- chart: mixer
- heritage: Tiller
- release: istio
-spec:
- severity: '"Info"'
- timestamp: request.time
- variables:
- sourceIp: source.ip | ip("0.0.0.0")
- sourceApp: source.labels["app"] | ""
- sourcePrincipal: source.principal | ""
- sourceName: source.name | ""
- sourceWorkload: source.workload.name | ""
- sourceNamespace: source.namespace | ""
- sourceOwner: source.owner | ""
- destinationApp: destination.labels["app"] | ""
- destinationIp: destination.ip | ip("0.0.0.0")
- destinationServiceHost: destination.service.host | ""
- destinationWorkload: destination.workload.name | ""
- destinationName: destination.name | ""
- destinationNamespace: destination.namespace | ""
- destinationOwner: destination.owner | ""
- destinationPrincipal: destination.principal | ""
- apiClaims: request.auth.raw_claims | ""
- apiKey: request.api_key | request.headers["x-api-key"] | ""
- protocol: request.scheme | context.protocol | "http"
- method: request.method | ""
- url: request.path | ""
- responseCode: response.code | 0
- responseFlags: context.proxy_error_code | ""
- responseSize: response.size | 0
- permissiveResponseCode: rbac.permissive.response_code | "none"
- permissiveResponsePolicyID: rbac.permissive.effective_policy_id | "none"
- requestSize: request.size | 0
- requestId: request.headers["x-request-id"] | ""
- clientTraceId: request.headers["x-client-trace-id"] | ""
- latency: response.duration | "0ms"
- connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none"))
- requestedServerName: connection.requested_server_name | ""
- userAgent: request.useragent | ""
- responseTimestamp: response.time
- receivedBytes: request.total_size | 0
- sentBytes: response.total_size | 0
- referer: request.referer | ""
- httpAuthority: request.headers[":authority"] | request.host | ""
- xForwardedFor: request.headers["x-forwarded-for"] | "0.0.0.0"
- reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination")
- grpcStatus: response.grpc_status | ""
- grpcMessage: response.grpc_message | ""
- monitored_resource_type: '"global"'
----
-apiVersion: "config.istio.io/v1alpha2"
-kind: logentry
-metadata:
- name: tcpaccesslog
- labels:
- app: mixer
- chart: mixer
- heritage: Tiller
- release: istio
-spec:
- severity: '"Info"'
- timestamp: context.time | timestamp("2017-01-01T00:00:00Z")
- variables:
- connectionEvent: connection.event | ""
- sourceIp: source.ip | ip("0.0.0.0")
- sourceApp: source.labels["app"] | ""
- sourcePrincipal: source.principal | ""
- sourceName: source.name | ""
- sourceWorkload: source.workload.name | ""
- sourceNamespace: source.namespace | ""
- sourceOwner: source.owner | ""
- destinationApp: destination.labels["app"] | ""
- destinationIp: destination.ip | ip("0.0.0.0")
- destinationServiceHost: destination.service.host | ""
- destinationWorkload: destination.workload.name | ""
- destinationName: destination.name | ""
- destinationNamespace: destination.namespace | ""
- destinationOwner: destination.owner | ""
- destinationPrincipal: destination.principal | ""
- protocol: context.protocol | "tcp"
- connectionDuration: connection.duration | "0ms"
- connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none"))
- requestedServerName: connection.requested_server_name | ""
- receivedBytes: connection.received.bytes | 0
- sentBytes: connection.sent.bytes | 0
- totalReceivedBytes: connection.received.bytes_total | 0
- totalSentBytes: connection.sent.bytes_total | 0
- reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination")
- responseFlags: context.proxy_error_code | ""
- monitored_resource_type: '"global"'
----
-apiVersion: "config.istio.io/v1alpha2"
-kind: rule
-metadata:
- name: stdio
- labels:
- app: mixer
- chart: mixer
- heritage: Tiller
- release: istio
-spec:
- match: context.protocol == "http" || context.protocol == "grpc"
- actions:
- - handler: stdio
- instances:
- - accesslog.logentry
----
-apiVersion: "config.istio.io/v1alpha2"
-kind: rule
-metadata:
- name: stdiotcp
- labels:
- app: mixer
- chart: mixer
- heritage: Tiller
- release: istio
-spec:
- match: context.protocol == "tcp"
- actions:
- - handler: stdio
- instances:
- - tcpaccesslog.logentry
----
-apiVersion: "config.istio.io/v1alpha2"
-kind: metric
-metadata:
- name: requestcount
- labels:
- app: mixer
- chart: mixer
- heritage: Tiller
- release: istio
-spec:
- value: "1"
- dimensions:
- reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination")
- source_workload: source.workload.name | "unknown"
- source_workload_namespace: source.workload.namespace | "unknown"
- source_principal: source.principal | "unknown"
- source_app: source.labels["app"] | "unknown"
- source_version: source.labels["version"] | "unknown"
- destination_workload: destination.workload.name | "unknown"
- destination_workload_namespace: destination.workload.namespace | "unknown"
- destination_principal: destination.principal | "unknown"
- destination_app: destination.labels["app"] | "unknown"
- destination_version: destination.labels["version"] | "unknown"
- destination_service: destination.service.host | "unknown"
- destination_service_name: destination.service.name | "unknown"
- destination_service_namespace: destination.service.namespace | "unknown"
- request_protocol: api.protocol | context.protocol | "unknown"
- response_code: response.code | 200
- response_flags: context.proxy_error_code | "-"
- permissive_response_code: rbac.permissive.response_code | "none"
- permissive_response_policyid: rbac.permissive.effective_policy_id | "none"
- connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none"))
- monitored_resource_type: '"UNSPECIFIED"'
----
-apiVersion: "config.istio.io/v1alpha2"
-kind: metric
-metadata:
- name: requestduration
- labels:
- app: mixer
- chart: mixer
- heritage: Tiller
- release: istio
-spec:
- value: response.duration | "0ms"
- dimensions:
- reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination")
- source_workload: source.workload.name | "unknown"
- source_workload_namespace: source.workload.namespace | "unknown"
- source_principal: source.principal | "unknown"
- source_app: source.labels["app"] | "unknown"
- source_version: source.labels["version"] | "unknown"
- destination_workload: destination.workload.name | "unknown"
- destination_workload_namespace: destination.workload.namespace | "unknown"
- destination_principal: destination.principal | "unknown"
- destination_app: destination.labels["app"] | "unknown"
- destination_version: destination.labels["version"] | "unknown"
- destination_service: destination.service.host | "unknown"
- destination_service_name: destination.service.name | "unknown"
- destination_service_namespace: destination.service.namespace | "unknown"
- request_protocol: api.protocol | context.protocol | "unknown"
- response_code: response.code | 200
- response_flags: context.proxy_error_code | "-"
- permissive_response_code: rbac.permissive.response_code | "none"
- permissive_response_policyid: rbac.permissive.effective_policy_id | "none"
- connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none"))
- monitored_resource_type: '"UNSPECIFIED"'
----
-apiVersion: "config.istio.io/v1alpha2"
-kind: metric
-metadata:
- name: requestsize
- labels:
- app: mixer
- chart: mixer
- heritage: Tiller
- release: istio
-spec:
- value: request.size | 0
- dimensions:
- reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination")
- source_workload: source.workload.name | "unknown"
- source_workload_namespace: source.workload.namespace | "unknown"
- source_principal: source.principal | "unknown"
- source_app: source.labels["app"] | "unknown"
- source_version: source.labels["version"] | "unknown"
- destination_workload: destination.workload.name | "unknown"
- destination_workload_namespace: destination.workload.namespace | "unknown"
- destination_principal: destination.principal | "unknown"
- destination_app: destination.labels["app"] | "unknown"
- destination_version: destination.labels["version"] | "unknown"
- destination_service: destination.service.host | "unknown"
- destination_service_name: destination.service.name | "unknown"
- destination_service_namespace: destination.service.namespace | "unknown"
- request_protocol: api.protocol | context.protocol | "unknown"
- response_code: response.code | 200
- response_flags: context.proxy_error_code | "-"
- permissive_response_code: rbac.permissive.response_code | "none"
- permissive_response_policyid: rbac.permissive.effective_policy_id | "none"
- connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none"))
- monitored_resource_type: '"UNSPECIFIED"'
----
-apiVersion: "config.istio.io/v1alpha2"
-kind: metric
-metadata:
- name: responsesize
- labels:
- app: mixer
- chart: mixer
- heritage: Tiller
- release: istio
-spec:
- value: response.size | 0
- dimensions:
- reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination")
- source_workload: source.workload.name | "unknown"
- source_workload_namespace: source.workload.namespace | "unknown"
- source_principal: source.principal | "unknown"
- source_app: source.labels["app"] | "unknown"
- source_version: source.labels["version"] | "unknown"
- destination_workload: destination.workload.name | "unknown"
- destination_workload_namespace: destination.workload.namespace | "unknown"
- destination_principal: destination.principal | "unknown"
- destination_app: destination.labels["app"] | "unknown"
- destination_version: destination.labels["version"] | "unknown"
- destination_service: destination.service.host | "unknown"
- destination_service_name: destination.service.name | "unknown"
- destination_service_namespace: destination.service.namespace | "unknown"
- request_protocol: api.protocol | context.protocol | "unknown"
- response_code: response.code | 200
- response_flags: context.proxy_error_code | "-"
- permissive_response_code: rbac.permissive.response_code | "none"
- permissive_response_policyid: rbac.permissive.effective_policy_id | "none"
- connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none"))
- monitored_resource_type: '"UNSPECIFIED"'
----
-apiVersion: "config.istio.io/v1alpha2"
-kind: metric
-metadata:
- name: tcpbytesent
- labels:
- app: mixer
- chart: mixer
- heritage: Tiller
- release: istio
-spec:
- value: connection.sent.bytes | 0
- dimensions:
- reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination")
- source_workload: source.workload.name | "unknown"
- source_workload_namespace: source.workload.namespace | "unknown"
- source_principal: source.principal | "unknown"
- source_app: source.labels["app"] | "unknown"
- source_version: source.labels["version"] | "unknown"
- destination_workload: destination.workload.name | "unknown"
- destination_workload_namespace: destination.workload.namespace | "unknown"
- destination_principal: destination.principal | "unknown"
- destination_app: destination.labels["app"] | "unknown"
- destination_version: destination.labels["version"] | "unknown"
- destination_service: destination.service.host | "unknown"
- destination_service_name: destination.service.name | "unknown"
- destination_service_namespace: destination.service.namespace | "unknown"
- connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none"))
- response_flags: context.proxy_error_code | "-"
- monitored_resource_type: '"UNSPECIFIED"'
----
-apiVersion: "config.istio.io/v1alpha2"
-kind: metric
-metadata:
- name: tcpbytereceived
- labels:
- app: mixer
- chart: mixer
- heritage: Tiller
- release: istio
-spec:
- value: connection.received.bytes | 0
- dimensions:
- reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination")
- source_workload: source.workload.name | "unknown"
- source_workload_namespace: source.workload.namespace | "unknown"
- source_principal: source.principal | "unknown"
- source_app: source.labels["app"] | "unknown"
- source_version: source.labels["version"] | "unknown"
- destination_workload: destination.workload.name | "unknown"
- destination_workload_namespace: destination.workload.namespace | "unknown"
- destination_principal: destination.principal | "unknown"
- destination_app: destination.labels["app"] | "unknown"
- destination_version: destination.labels["version"] | "unknown"
- destination_service: destination.service.host | "unknown"
- destination_service_name: destination.service.name | "unknown"
- destination_service_namespace: destination.service.namespace | "unknown"
- connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none"))
- response_flags: context.proxy_error_code | "-"
- monitored_resource_type: '"UNSPECIFIED"'
----
-apiVersion: "config.istio.io/v1alpha2"
-kind: metric
-metadata:
- name: tcpconnectionsopened
- labels:
- app: mixer
- chart: mixer
- heritage: Tiller
- release: istio
-spec:
- value: "1"
- dimensions:
- reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination")
- source_workload: source.workload.name | "unknown"
- source_workload_namespace: source.workload.namespace | "unknown"
- source_principal: source.principal | "unknown"
- source_app: source.labels["app"] | "unknown"
- source_version: source.labels["version"] | "unknown"
- destination_workload: destination.workload.name | "unknown"
- destination_workload_namespace: destination.workload.namespace | "unknown"
- destination_principal: destination.principal | "unknown"
- destination_app: destination.labels["app"] | "unknown"
- destination_version: destination.labels["version"] | "unknown"
- destination_service: destination.service.name | "unknown"
- destination_service_name: destination.service.name | "unknown"
- destination_service_namespace: destination.service.namespace | "unknown"
- connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none"))
- response_flags: context.proxy_error_code | "-"
- monitored_resource_type: '"UNSPECIFIED"'
----
-apiVersion: "config.istio.io/v1alpha2"
-kind: metric
-metadata:
- name: tcpconnectionsclosed
- labels:
- app: mixer
- chart: mixer
- heritage: Tiller
- release: istio
-spec:
- value: "1"
- dimensions:
- reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination")
- source_workload: source.workload.name | "unknown"
- source_workload_namespace: source.workload.namespace | "unknown"
- source_principal: source.principal | "unknown"
- source_app: source.labels["app"] | "unknown"
- source_version: source.labels["version"] | "unknown"
- destination_workload: destination.workload.name | "unknown"
- destination_workload_namespace: destination.workload.namespace | "unknown"
- destination_principal: destination.principal | "unknown"
- destination_app: destination.labels["app"] | "unknown"
- destination_version: destination.labels["version"] | "unknown"
- destination_service: destination.service.name | "unknown"
- destination_service_name: destination.service.name | "unknown"
- destination_service_namespace: destination.service.namespace | "unknown"
- connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none"))
- response_flags: context.proxy_error_code | "-"
- monitored_resource_type: '"UNSPECIFIED"'
----
-apiVersion: "config.istio.io/v1alpha2"
-kind: handler
-metadata:
- name: prometheus
- labels:
- app: mixer
- chart: mixer
- heritage: Tiller
- release: istio
-spec:
- compiledAdapter: prometheus
- params:
- metricsExpirationPolicy:
- metricsExpiryDuration: "10m"
- metrics:
- - name: requests_total
- instance_name: requestcount.metric.istio-system
- kind: COUNTER
- label_names:
- - reporter
- - source_app
- - source_principal
- - source_workload
- - source_workload_namespace
- - source_version
- - destination_app
- - destination_principal
- - destination_workload
- - destination_workload_namespace
- - destination_version
- - destination_service
- - destination_service_name
- - destination_service_namespace
- - request_protocol
- - response_code
- - response_flags
- - permissive_response_code
- - permissive_response_policyid
- - connection_security_policy
- - name: request_duration_seconds
- instance_name: requestduration.metric.istio-system
- kind: DISTRIBUTION
- label_names:
- - reporter
- - source_app
- - source_principal
- - source_workload
- - source_workload_namespace
- - source_version
- - destination_app
- - destination_principal
- - destination_workload
- - destination_workload_namespace
- - destination_version
- - destination_service
- - destination_service_name
- - destination_service_namespace
- - request_protocol
- - response_code
- - response_flags
- - permissive_response_code
- - permissive_response_policyid
- - connection_security_policy
- buckets:
- explicit_buckets:
- bounds: [0.005, 0.01, 0.025, 0.05, 0.1, 0.25, 0.5, 1, 2.5, 5, 10]
- - name: request_bytes
- instance_name: requestsize.metric.istio-system
- kind: DISTRIBUTION
- label_names:
- - reporter
- - source_app
- - source_principal
- - source_workload
- - source_workload_namespace
- - source_version
- - destination_app
- - destination_principal
- - destination_workload
- - destination_workload_namespace
- - destination_version
- - destination_service
- - destination_service_name
- - destination_service_namespace
- - request_protocol
- - response_code
- - response_flags
- - permissive_response_code
- - permissive_response_policyid
- - connection_security_policy
- buckets:
- exponentialBuckets:
- numFiniteBuckets: 8
- scale: 1
- growthFactor: 10
- - name: response_bytes
- instance_name: responsesize.metric.istio-system
- kind: DISTRIBUTION
- label_names:
- - reporter
- - source_app
- - source_principal
- - source_workload
- - source_workload_namespace
- - source_version
- - destination_app
- - destination_principal
- - destination_workload
- - destination_workload_namespace
- - destination_version
- - destination_service
- - destination_service_name
- - destination_service_namespace
- - request_protocol
- - response_code
- - response_flags
- - permissive_response_code
- - permissive_response_policyid
- - connection_security_policy
- buckets:
- exponentialBuckets:
- numFiniteBuckets: 8
- scale: 1
- growthFactor: 10
- - name: tcp_sent_bytes_total
- instance_name: tcpbytesent.metric.istio-system
- kind: COUNTER
- label_names:
- - reporter
- - source_app
- - source_principal
- - source_workload
- - source_workload_namespace
- - source_version
- - destination_app
- - destination_principal
- - destination_workload
- - destination_workload_namespace
- - destination_version
- - destination_service
- - destination_service_name
- - destination_service_namespace
- - connection_security_policy
- - response_flags
- - name: tcp_received_bytes_total
- instance_name: tcpbytereceived.metric.istio-system
- kind: COUNTER
- label_names:
- - reporter
- - source_app
- - source_principal
- - source_workload
- - source_workload_namespace
- - source_version
- - destination_app
- - destination_principal
- - destination_workload
- - destination_workload_namespace
- - destination_version
- - destination_service
- - destination_service_name
- - destination_service_namespace
- - connection_security_policy
- - response_flags
- - name: tcp_connections_opened_total
- instance_name: tcpconnectionsopened.metric.istio-system
- kind: COUNTER
- label_names:
- - reporter
- - source_app
- - source_principal
- - source_workload
- - source_workload_namespace
- - source_version
- - destination_app
- - destination_principal
- - destination_workload
- - destination_workload_namespace
- - destination_version
- - destination_service
- - destination_service_name
- - destination_service_namespace
- - connection_security_policy
- - response_flags
- - name: tcp_connections_closed_total
- instance_name: tcpconnectionsclosed.metric.istio-system
- kind: COUNTER
- label_names:
- - reporter
- - source_app
- - source_principal
- - source_workload
- - source_workload_namespace
- - source_version
- - destination_app
- - destination_principal
- - destination_workload
- - destination_workload_namespace
- - destination_version
- - destination_service
- - destination_service_name
- - destination_service_namespace
- - connection_security_policy
- - response_flags
----
-apiVersion: "config.istio.io/v1alpha2"
-kind: rule
-metadata:
- name: promhttp
- labels:
- app: mixer
- chart: mixer
- heritage: Tiller
- release: istio
-spec:
- match: (context.protocol == "http" || context.protocol == "grpc") && (match((request.useragent | "-"), "kube-probe*") == false)
- actions:
- - handler: prometheus
- instances:
- - requestcount.metric
- - requestduration.metric
- - requestsize.metric
- - responsesize.metric
----
-apiVersion: "config.istio.io/v1alpha2"
-kind: rule
-metadata:
- name: promtcp
- labels:
- app: mixer
- chart: mixer
- heritage: Tiller
- release: istio
-spec:
- match: context.protocol == "tcp"
- actions:
- - handler: prometheus
- instances:
- - tcpbytesent.metric
- - tcpbytereceived.metric
----
-apiVersion: "config.istio.io/v1alpha2"
-kind: rule
-metadata:
- name: promtcpconnectionopen
- labels:
- app: mixer
- chart: mixer
- heritage: Tiller
- release: istio
-spec:
- match: context.protocol == "tcp" && ((connection.event | "na") == "open")
- actions:
- - handler: prometheus
- instances:
- - tcpconnectionsopened.metric
----
-apiVersion: "config.istio.io/v1alpha2"
-kind: rule
-metadata:
- name: promtcpconnectionclosed
- labels:
- app: mixer
- chart: mixer
- heritage: Tiller
- release: istio
-spec:
- match: context.protocol == "tcp" && ((connection.event | "na") == "close")
- actions:
- - handler: prometheus
- instances:
- - tcpconnectionsclosed.metric
----
-apiVersion: "config.istio.io/v1alpha2"
-kind: handler
-metadata:
- name: kubernetesenv
- labels:
- app: mixer
- chart: mixer
- heritage: Tiller
- release: istio
-spec:
- compiledAdapter: kubernetesenv
- params:
- # when running from mixer root, use the following config after adding a
- # symbolic link to a kubernetes config file via:
- #
- # $ ln -s ~/.kube/config mixer/adapter/kubernetes/kubeconfig
- #
- # kubeconfig_path: "mixer/adapter/kubernetes/kubeconfig"
-
----
-apiVersion: "config.istio.io/v1alpha2"
-kind: rule
-metadata:
- name: kubeattrgenrulerule
- labels:
- app: mixer
- chart: mixer
- heritage: Tiller
- release: istio
-spec:
- actions:
- - handler: kubernetesenv
- instances:
- - attributes.kubernetes
----
-apiVersion: "config.istio.io/v1alpha2"
-kind: rule
-metadata:
- name: tcpkubeattrgenrulerule
- labels:
- app: mixer
- chart: mixer
- heritage: Tiller
- release: istio
-spec:
- match: context.protocol == "tcp"
- actions:
- - handler: kubernetesenv
- instances:
- - attributes.kubernetes
----
-apiVersion: "config.istio.io/v1alpha2"
-kind: kubernetes
-metadata:
- name: attributes
- labels:
- app: mixer
- chart: mixer
- heritage: Tiller
- release: istio
-spec:
- # Pass the required attribute data to the adapter
- source_uid: source.uid | ""
- source_ip: source.ip | ip("0.0.0.0") # default to unspecified ip addr
- destination_uid: destination.uid | ""
- destination_port: destination.port | 0
- attribute_bindings:
- # Fill the new attributes from the adapter produced output.
- # $out refers to an instance of OutputTemplate message
- source.ip: $out.source_pod_ip | ip("0.0.0.0")
- source.uid: $out.source_pod_uid | "unknown"
- source.labels: $out.source_labels | emptyStringMap()
- source.name: $out.source_pod_name | "unknown"
- source.namespace: $out.source_namespace | "default"
- source.owner: $out.source_owner | "unknown"
- source.serviceAccount: $out.source_service_account_name | "unknown"
- source.workload.uid: $out.source_workload_uid | "unknown"
- source.workload.name: $out.source_workload_name | "unknown"
- source.workload.namespace: $out.source_workload_namespace | "unknown"
- destination.ip: $out.destination_pod_ip | ip("0.0.0.0")
- destination.uid: $out.destination_pod_uid | "unknown"
- destination.labels: $out.destination_labels | emptyStringMap()
- destination.name: $out.destination_pod_name | "unknown"
- destination.container.name: $out.destination_container_name | "unknown"
- destination.namespace: $out.destination_namespace | "default"
- destination.owner: $out.destination_owner | "unknown"
- destination.serviceAccount: $out.destination_service_account_name | "unknown"
- destination.workload.uid: $out.destination_workload_uid | "unknown"
- destination.workload.name: $out.destination_workload_name | "unknown"
- destination.workload.namespace: $out.destination_workload_namespace | "unknown"
----
-# Configuration needed by Mixer.
-# Mixer cluster is delivered via CDS
-# Specify mixer cluster settings
-apiVersion: networking.istio.io/v1alpha3
-kind: DestinationRule
-metadata:
- name: istio-policy
- labels:
- app: mixer
- chart: mixer
- heritage: Tiller
- release: istio
-spec:
- host: istio-policy.istio-system.svc.cluster.local
- trafficPolicy:
- connectionPool:
- http:
- http2MaxRequests: 10000
- maxRequestsPerConnection: 10000
----
-apiVersion: networking.istio.io/v1alpha3
-kind: DestinationRule
-metadata:
- name: istio-telemetry
- labels:
- app: mixer
- chart: mixer
- heritage: Tiller
- release: istio
-spec:
- host: istio-telemetry.istio-system.svc.cluster.local
- trafficPolicy:
- connectionPool:
- http:
- http2MaxRequests: 10000
- maxRequestsPerConnection: 10000
----
diff --git a/istio-install/base/kustomization.yaml b/istio-install/base/kustomization.yaml
deleted file mode 100644
index 0073dc8..0000000
--- a/istio-install/base/kustomization.yaml
+++ /dev/null
@@ -1,39 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- istio-noauth.yaml
-namespace: kubeflow
-images:
-- name: docker.io/istio/kubectl
- newName: docker.io/istio/kubectl
- newTag: 1.1.6
-- name: docker.io/istio/galley
- newName: docker.io/istio/galley
- newTag: 1.1.6
-- name: docker.io/istio/proxyv2
- newName: docker.io/istio/proxyv2
- newTag: 1.1.6
-- name: grafana/grafana
- newName: grafana/grafana
- newTag: 6.0.2
-- name: docker.io/kiali/kiali
- newName: docker.io/kiali/kiali
- newTag: v0.16
-- name: docker.io/istio/mixer
- newName: docker.io/istio/mixer
- newTag: 1.1.6
-- name: docker.io/istio/pilot
- newName: docker.io/istio/pilot
- newTag: 1.1.6
-- name: docker.io/prom/prometheus
- newName: docker.io/prom/prometheus
- newTag: v2.3.1
-- name: docker.io/istio/citadel
- newName: docker.io/istio/citadel
- newTag: 1.1.6
-- name: docker.io/istio/sidecar_injector
- newName: docker.io/istio/sidecar_injector
- newTag: 1.1.6
-- name: docker.io/jaegertracing/all-in-one
- newName: docker.io/jaegertracing/all-in-one
- newTag: '1.9'
diff --git a/istio/base/README.md b/istio/base/README.md
deleted file mode 100644
index 861a387..0000000
--- a/istio/base/README.md
+++ /dev/null
@@ -1,7 +0,0 @@
-# Manifest for Istio in Kubeflow
-
-- `install` dir contains the manifest to install Istio
-- kf-istio-resources.yaml has
- - Gateway for routing
- - VirtualService for Grafana
- - ServiceEntry and VirtualService for egress traffic
diff --git a/istio/base/cluster-roles.yaml b/istio/base/cluster-roles.yaml
deleted file mode 100644
index 14fedfc..0000000
--- a/istio/base/cluster-roles.yaml
+++ /dev/null
@@ -1,51 +0,0 @@
----
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: kubeflow-istio-admin
- labels:
- rbac.authorization.kubeflow.org/aggregate-to-kubeflow-admin: "true"
-aggregationRule:
- clusterRoleSelectors:
- - matchLabels:
- rbac.authorization.kubeflow.org/aggregate-to-kubeflow-istio-admin: "true"
-rules: []
-
----
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: kubeflow-istio-edit
- labels:
- rbac.authorization.kubeflow.org/aggregate-to-kubeflow-edit: "true"
- rbac.authorization.kubeflow.org/aggregate-to-kubeflow-istio-admin: "true"
-rules:
-- apiGroups: ["istio.io"]
- resources: ["*"]
- verbs:
- - get
- - list
- - watch
- - create
- - delete
- - deletecollection
- - patch
- - update
-
----
-
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: kubeflow-istio-view
- labels:
- rbac.authorization.kubeflow.org/aggregate-to-kubeflow-view: "true"
-rules:
-- apiGroups: ["istio.io"]
- resources: ["*"]
- verbs:
- - get
- - list
- - watch
diff --git a/istio/base/kf-istio-resources.yaml b/istio/base/kf-istio-resources.yaml
deleted file mode 100644
index a89372c..0000000
--- a/istio/base/kf-istio-resources.yaml
+++ /dev/null
@@ -1,110 +0,0 @@
-apiVersion: networking.istio.io/v1alpha3
-kind: Gateway
-metadata:
- name: kubeflow-gateway
-spec:
- selector:
- istio: $(gatewaySelector)
- servers:
- - port:
- number: 80
- name: http
- protocol: HTTP
- hosts:
- - "*"
----
-apiVersion: networking.istio.io/v1alpha3
-kind: VirtualService
-metadata:
- name: grafana-vs
-spec:
- hosts:
- - "*"
- gateways:
- - "kubeflow-gateway"
- http:
- - match:
- - uri:
- prefix: "/istio/grafana/"
- method:
- exact: "GET"
- rewrite:
- uri: "/"
- route:
- - destination:
- host: "grafana.istio-system.svc.cluster.local"
- port:
- number: 3000
----
-apiVersion: networking.istio.io/v1alpha3
-kind: ServiceEntry
-metadata:
- name: google-api-entry
-spec:
- hosts:
- - www.googleapis.com
- ports:
- - number: 443
- name: https
- protocol: HTTPS
- resolution: DNS
- location: MESH_EXTERNAL
----
-apiVersion: networking.istio.io/v1alpha3
-kind: VirtualService
-metadata:
- name: google-api-vs
-spec:
- hosts:
- - www.googleapis.com
- tls:
- - match:
- - port: 443
- sni_hosts:
- - www.googleapis.com
- route:
- - destination:
- host: www.googleapis.com
- port:
- number: 443
- weight: 100
----
-apiVersion: networking.istio.io/v1alpha3
-kind: ServiceEntry
-metadata:
- name: google-storage-api-entry
-spec:
- hosts:
- - storage.googleapis.com
- ports:
- - number: 443
- name: https
- protocol: HTTPS
- resolution: DNS
- location: MESH_EXTERNAL
----
-apiVersion: networking.istio.io/v1alpha3
-kind: VirtualService
-metadata:
- name: google-storage-api-vs
-spec:
- hosts:
- - storage.googleapis.com
- tls:
- - match:
- - port: 443
- sni_hosts:
- - storage.googleapis.com
- route:
- - destination:
- host: storage.googleapis.com
- port:
- number: 443
- weight: 100
----
-apiVersion: rbac.istio.io/v1alpha1
-kind: ClusterRbacConfig
-metadata:
- name: default
-spec:
- mode: $(clusterRbacConfig)
diff --git a/istio/base/kustomization.yaml b/istio/base/kustomization.yaml
deleted file mode 100644
index 062807f..0000000
--- a/istio/base/kustomization.yaml
+++ /dev/null
@@ -1,26 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- kf-istio-resources.yaml
-- cluster-roles.yaml
-namespace: kubeflow
-configMapGenerator:
-- name: istio-parameters
- env: params.env
-vars:
-- name: clusterRbacConfig
- objref:
- kind: ConfigMap
- name: istio-parameters
- apiVersion: v1
- fieldref:
- fieldpath: data.clusterRbacConfig
-- name: gatewaySelector
- objref:
- kind: ConfigMap
- name: istio-parameters
- apiVersion: v1
- fieldref:
- fieldpath: data.gatewaySelector
-configurations:
-- params.yaml
diff --git a/istio/base/params.env b/istio/base/params.env
deleted file mode 100644
index 5daead4..0000000
--- a/istio/base/params.env
+++ /dev/null
@@ -1,2 +0,0 @@
-clusterRbacConfig=ON
-gatewaySelector=ingressgateway
diff --git a/istio/base/params.yaml b/istio/base/params.yaml
deleted file mode 100644
index df85a42..0000000
--- a/istio/base/params.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-varReference:
-- path: spec/mode
- kind: ClusterRbacConfig
-- path: spec/selector
- kind: Gateway
\ No newline at end of file
diff --git a/istio/overlays/https-gateway/kf-istio-resources.yaml b/istio/overlays/https-gateway/kf-istio-resources.yaml
deleted file mode 100644
index 0515bd3..0000000
--- a/istio/overlays/https-gateway/kf-istio-resources.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-apiVersion: networking.istio.io/v1alpha3
-kind: Gateway
-metadata:
- name: kubeflow-gateway
-spec:
- selector:
- istio: $(gatewaySelector)
- servers:
- - hosts:
- - '*'
- port:
- name: https
- number: 443
- protocol: HTTPS
- tls:
- mode: SIMPLE
- privateKey: /etc/istio/ingressgateway-certs/tls.key
- serverCertificate: /etc/istio/ingressgateway-certs/tls.crt
diff --git a/istio/overlays/https-gateway/kustomization.yaml b/istio/overlays/https-gateway/kustomization.yaml
deleted file mode 100644
index 4a0e56c..0000000
--- a/istio/overlays/https-gateway/kustomization.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-bases:
-- ../../base
-patchesStrategicMerge:
-- kf-istio-resources.yaml
-
-configMapGenerator:
-- name: istio-parameters
- behavior: merge
- env: params.env
-configurations:
-- params.yaml
diff --git a/istio/overlays/https-gateway/params.env b/istio/overlays/https-gateway/params.env
deleted file mode 100644
index bb0cded..0000000
--- a/istio/overlays/https-gateway/params.env
+++ /dev/null
@@ -1 +0,0 @@
-gatewaySelector=ingressgateway
diff --git a/istio/overlays/https-gateway/params.yaml b/istio/overlays/https-gateway/params.yaml
deleted file mode 100644
index c8c2507..0000000
--- a/istio/overlays/https-gateway/params.yaml
+++ /dev/null
@@ -1,3 +0,0 @@
-varReference:
-- path: spec/selector
- kind: Gateway
diff --git a/jupyter-web-app/base/cluster-role-binding.yaml b/jupyter-web-app/base/cluster-role-binding.yaml
deleted file mode 100644
index f7fe51d..0000000
--- a/jupyter-web-app/base/cluster-role-binding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRoleBinding
-metadata:
- name: cluster-role-binding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: ClusterRole
- name: cluster-role
-subjects:
-- kind: ServiceAccount
- name: service-account
diff --git a/jupyter-web-app/base/cluster-role.yaml b/jupyter-web-app/base/cluster-role.yaml
deleted file mode 100644
index 578f436..0000000
--- a/jupyter-web-app/base/cluster-role.yaml
+++ /dev/null
@@ -1,54 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1
-kind: ClusterRole
-metadata:
- name: cluster-role
-rules:
-- apiGroups:
- - ""
- resources:
- - namespaces
- verbs:
- - get
- - list
- - create
- - delete
-- apiGroups:
- - authorization.k8s.io
- resources:
- - subjectaccessreviews
- verbs:
- - create
-- apiGroups:
- - kubeflow.org
- resources:
- - notebooks
- - notebooks/finalizers
- - poddefaults
- verbs:
- - get
- - list
- - create
- - delete
-- apiGroups:
- - ""
- resources:
- - persistentvolumeclaims
- verbs:
- - create
- - delete
- - get
- - list
-- apiGroups:
- - ""
- resources:
- - events
- verbs:
- - list
-- apiGroups:
- - storage.k8s.io
- resources:
- - storageclasses
- verbs:
- - get
- - list
- - watch
diff --git a/jupyter-web-app/base/config-map.yaml b/jupyter-web-app/base/config-map.yaml
deleted file mode 100644
index b24ca7a..0000000
--- a/jupyter-web-app/base/config-map.yaml
+++ /dev/null
@@ -1,127 +0,0 @@
-apiVersion: v1
-data:
- spawner_ui_config.yaml: |
- # Configuration file for the Jupyter UI.
- #
- # Each Jupyter UI option is configured by two keys: 'value' and 'readOnly'
- # - The 'value' key contains the default value
- # - The 'readOnly' key determines if the option will be available to users
- #
- # If the 'readOnly' key is present and set to 'true', the respective option
- # will be disabled for users and only set by the admin. Also when a
- # Notebook is POSTED to the API if a necessary field is not present then
- # the value from the config will be used.
- #
- # If the 'readOnly' key is missing (defaults to 'false'), the respective option
- # will be available for users to edit.
- #
- # Note that some values can be templated. Such values are the names of the
- # Volumes as well as their StorageClass
- spawnerFormDefaults:
- image:
- # The container Image for the user's Jupyter Notebook
- # If readonly, this value must be a member of the list below
- value: gcr.io/kubeflow-images-public/tensorflow-1.14.0-notebook-cpu:v-base-ef41372-1177829795472347138
- # The list of available standard container Images
- options:
- - gcr.io/kubeflow-images-public/tensorflow-1.14.0-notebook-cpu:v0.7.0
- - gcr.io/kubeflow-images-public/tensorflow-1.14.0-notebook-gpu:v0.7.0
- - gcr.io/kubeflow-images-public/tensorflow-2.0.0a0-notebook-cpu:v0.7.0
- - gcr.io/kubeflow-images-public/tensorflow-2.0.0a0-notebook-gpu:v0.7.0
- # By default, custom container Images are allowed
- # Uncomment the following line to only enable standard container Images
- readOnly: false
- cpu:
- # CPU for user's Notebook
- value: '0.5'
- readOnly: false
- memory:
- # Memory for user's Notebook
- value: 1.0Gi
- readOnly: false
- workspaceVolume:
- # Workspace Volume to be attached to user's Notebook
- # Each Workspace Volume is declared with the following attributes:
- # Type, Name, Size, MountPath and Access Mode
- value:
- type:
- # The Type of the Workspace Volume
- # Supported values: 'New', 'Existing'
- value: New
- name:
- # The Name of the Workspace Volume
- # Note that this is a templated value. Special values:
- # {notebook-name}: Replaced with the name of the Notebook. The frontend
- # will replace this value as the user types the name
- value: 'workspace-{notebook-name}'
- size:
- # The Size of the Workspace Volume (in Gi)
- value: '10Gi'
- mountPath:
- # The Path that the Workspace Volume will be mounted
- value: /home/jovyan
- accessModes:
- # The Access Mode of the Workspace Volume
- # Supported values: 'ReadWriteOnce', 'ReadWriteMany', 'ReadOnlyMany'
- value: ReadWriteOnce
- class:
- # The StrageClass the PVC will use if type is New. Special values are:
- # {none}: default StorageClass
- # {empty}: empty string ""
- value: '{none}'
- readOnly: false
- dataVolumes:
- # List of additional Data Volumes to be attached to the user's Notebook
- value: []
- # Each Data Volume is declared with the following attributes:
- # Type, Name, Size, MountPath and Access Mode
- #
- # For example, a list with 2 Data Volumes:
- # value:
- # - value:
- # type:
- # value: New
- # name:
- # value: '{notebook-name}-vol-1'
- # size:
- # value: '10Gi'
- # class:
- # value: standard
- # mountPath:
- # value: /home/jovyan/vol-1
- # accessModes:
- # value: ReadWriteOnce
- # class:
- # value: {none}
- # - value:
- # type:
- # value: New
- # name:
- # value: '{notebook-name}-vol-2'
- # size:
- # value: '10Gi'
- # mountPath:
- # value: /home/jovyan/vol-2
- # accessModes:
- # value: ReadWriteMany
- # class:
- # value: {none}
- readOnly: false
- extraResources:
- # Extra Resource Limits for user's Notebook
- # e.x. "{'nvidia.com/gpu': 2}"
- value: "{}"
- readOnly: false
- shm:
- value: true
- readOnly: false
- configurations:
- # List of labels to be selected, these are the labels from PodDefaults
- # value:
- # - add-gcp-secret
- # - default-editor
- value: []
- readOnly: false
-kind: ConfigMap
-metadata:
- name: config
diff --git a/jupyter-web-app/base/deployment.yaml b/jupyter-web-app/base/deployment.yaml
deleted file mode 100644
index 6eb2cc4..0000000
--- a/jupyter-web-app/base/deployment.yaml
+++ /dev/null
@@ -1,37 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: deployment
-spec:
- replicas: 1
- template:
- spec:
- containers:
- - env:
- - name: ROK_SECRET_NAME
- valueFrom:
- configMapKeyRef:
- name: parameters
- key: ROK_SECRET_NAME
- - name: UI
- valueFrom:
- configMapKeyRef:
- name: parameters
- key: UI
- - name: USERID_HEADER
- value: $(userid-header)
- - name: USERID_PREFIX
- value: $(userid-prefix)
- image: gcr.io/kubeflow-images-public/jupyter-web-app:v0.5.0
- imagePullPolicy: $(policy)
- name: jupyter-web-app
- ports:
- - containerPort: 5000
- volumeMounts:
- - mountPath: /etc/config
- name: config-volume
- serviceAccountName: service-account
- volumes:
- - configMap:
- name: config
- name: config-volume
diff --git a/jupyter-web-app/base/kustomization.yaml b/jupyter-web-app/base/kustomization.yaml
deleted file mode 100644
index 2cfe2f5..0000000
--- a/jupyter-web-app/base/kustomization.yaml
+++ /dev/null
@@ -1,70 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- cluster-role-binding.yaml
-- cluster-role.yaml
-- config-map.yaml
-- deployment.yaml
-- role-binding.yaml
-- role.yaml
-- service-account.yaml
-- service.yaml
-namePrefix: jupyter-web-app-
-namespace: kubeflow
-commonLabels:
- app: jupyter-web-app
- kustomize.component: jupyter-web-app
-images:
-- name: gcr.io/kubeflow-images-public/jupyter-web-app
- newName: gcr.io/kubeflow-images-public/jupyter-web-app
- newTag: vmaster-ge8c85064
-configMapGenerator:
-- env: params.env
- name: parameters
-generatorOptions:
- disableNameSuffixHash: true
-vars:
-- fieldref:
- fieldPath: data.policy
- name: policy
- objref:
- apiVersion: v1
- kind: ConfigMap
- name: parameters
-- fieldref:
- fieldPath: data.prefix
- name: prefix
- objref:
- apiVersion: v1
- kind: ConfigMap
- name: parameters
-- fieldref:
- fieldPath: data.clusterDomain
- name: clusterDomain
- objref:
- apiVersion: v1
- kind: ConfigMap
- name: parameters
-- fieldref:
- fieldPath: metadata.namespace
- name: namespace
- objref:
- apiVersion: v1
- kind: Service
- name: service
-- fieldref:
- fieldPath: data.userid-header
- name: userid-header
- objref:
- apiVersion: v1
- kind: ConfigMap
- name: parameters
-- fieldref:
- fieldPath: data.userid-prefix
- name: userid-prefix
- objref:
- apiVersion: v1
- kind: ConfigMap
- name: parameters
-configurations:
-- params.yaml
diff --git a/jupyter-web-app/base/params.env b/jupyter-web-app/base/params.env
deleted file mode 100644
index c6a1a52..0000000
--- a/jupyter-web-app/base/params.env
+++ /dev/null
@@ -1,7 +0,0 @@
-UI=default
-ROK_SECRET_NAME=secret-rok-{username}
-policy=Always
-prefix=jupyter
-clusterDomain=cluster.local
-userid-header=kubeflow-userid
-userid-prefix=
diff --git a/jupyter-web-app/base/params.yaml b/jupyter-web-app/base/params.yaml
deleted file mode 100644
index 65ff484..0000000
--- a/jupyter-web-app/base/params.yaml
+++ /dev/null
@@ -1,9 +0,0 @@
-varReference:
-- path: spec/template/spec/containers/imagePullPolicy
- kind: Deployment
-- path: metadata/annotations/getambassador.io\/config
- kind: Service
-- path: spec/template/spec/containers/0/env/2/value
- kind: Deployment
-- path: spec/template/spec/containers/0/env/3/value
- kind: Deployment
\ No newline at end of file
diff --git a/jupyter-web-app/base/role-binding.yaml b/jupyter-web-app/base/role-binding.yaml
deleted file mode 100644
index 5400a70..0000000
--- a/jupyter-web-app/base/role-binding.yaml
+++ /dev/null
@@ -1,11 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1beta1
-kind: RoleBinding
-metadata:
- name: jupyter-notebook-role-binding
-roleRef:
- apiGroup: rbac.authorization.k8s.io
- kind: Role
- name: jupyter-notebook-role
-subjects:
-- kind: ServiceAccount
- name: jupyter-notebook
diff --git a/jupyter-web-app/base/role.yaml b/jupyter-web-app/base/role.yaml
deleted file mode 100644
index bcd601a..0000000
--- a/jupyter-web-app/base/role.yaml
+++ /dev/null
@@ -1,35 +0,0 @@
-apiVersion: rbac.authorization.k8s.io/v1beta1
-kind: Role
-metadata:
- name: jupyter-notebook-role
-rules:
-- apiGroups:
- - ""
- resources:
- - pods
- - pods/log
- - secrets
- - services
- verbs:
- - '*'
-- apiGroups:
- - ""
- - apps
- - extensions
- resources:
- - deployments
- - replicasets
- verbs:
- - '*'
-- apiGroups:
- - kubeflow.org
- resources:
- - '*'
- verbs:
- - '*'
-- apiGroups:
- - batch
- resources:
- - jobs
- verbs:
- - '*'
diff --git a/jupyter-web-app/base/service-account.yaml b/jupyter-web-app/base/service-account.yaml
deleted file mode 100644
index a36cbd8..0000000
--- a/jupyter-web-app/base/service-account.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-apiVersion: v1
-kind: ServiceAccount
-metadata:
- name: service-account
diff --git a/jupyter-web-app/base/service.yaml b/jupyter-web-app/base/service.yaml
deleted file mode 100644
index d22b9ed..0000000
--- a/jupyter-web-app/base/service.yaml
+++ /dev/null
@@ -1,23 +0,0 @@
-apiVersion: v1
-kind: Service
-metadata:
- annotations:
- getambassador.io/config: |-
- ---
- apiVersion: ambassador/v0
- kind: Mapping
- name: webapp_mapping
- prefix: /$(prefix)/
- service: jupyter-web-app-service.$(namespace)
- add_request_headers:
- x-forwarded-prefix: /jupyter
- labels:
- run: jupyter-web-app
- name: service
-spec:
- ports:
- - name: http
- port: 80
- protocol: TCP
- targetPort: 5000
- type: ClusterIP
diff --git a/jupyter-web-app/kustomization.yaml b/jupyter-web-app/kustomization.yaml
deleted file mode 100644
index 3bd60b4..0000000
--- a/jupyter-web-app/kustomization.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-bases:
-- base
-- overlays/istio
-commonLabels:
- app.kubernetes.io/component: jupyter-web-app
- app.kubernetes.io/instance: jupyter-web-app-v0.7.0
- app.kubernetes.io/managed-by: kfctl
- app.kubernetes.io/name: jupyter-web-app
- app.kubernetes.io/part-of: kubeflow
- app.kubernetes.io/version: v0.7.0
-kind: Kustomization
-namespace: kubeflow
-resources:
-- overlays/application/application.yaml
diff --git a/jupyter-web-app/overlays/application/application.yaml b/jupyter-web-app/overlays/application/application.yaml
deleted file mode 100644
index 403e269..0000000
--- a/jupyter-web-app/overlays/application/application.yaml
+++ /dev/null
@@ -1,49 +0,0 @@
-apiVersion: app.k8s.io/v1beta1
-kind: Application
-metadata:
- name: jupyter-web-app
-spec:
- selector:
- matchLabels:
- app.kubernetes.io/name: jupyter-web-app
- app.kubernetes.io/instance: jupyter-web-app-v0.7.0
- app.kubernetes.io/managed-by: kfctl
- app.kubernetes.io/component: jupyter-web-app
- app.kubernetes.io/part-of: kubeflow
- app.kubernetes.io/version: v0.7.0
- componentKinds:
- - group: core
- kind: ConfigMap
- - group: apps
- kind: Deployment
- - group: rbac.authorization.k8s.io
- kind: RoleBinding
- - group: rbac.authorization.k8s.io
- kind: Role
- - group: core
- kind: ServiceAccount
- - group: core
- kind: Service
- - group: networking.istio.io
- kind: VirtualService
- descriptor:
- type: jupyter-web-app
- version: v1beta1
- description: Provides a UI which allows the user to create/conect/delete jupyter notebooks.
- maintainers:
- - name: Kimonas Sotirchos
- email: kimwnasptd@arrikto.com
- owners:
- - name: Kimonas Sotirchos
- email: kimwnasptd@arrikto.com
- keywords:
- - jupyterhub
- - jupyter ui
- - notebooks
- links:
- - description: About
- url: https://github.com/kubeflow/kubeflow/tree/master/components/jupyter-web-app
- - description: Docs
- url: https://www.kubeflow.org/docs/notebooks
- addOwnerRef: true
-
diff --git a/jupyter-web-app/overlays/application/kustomization.yaml b/jupyter-web-app/overlays/application/kustomization.yaml
deleted file mode 100644
index 0c1f073..0000000
--- a/jupyter-web-app/overlays/application/kustomization.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-bases:
-- ../../base
-resources:
-- application.yaml
-commonLabels:
- app.kubernetes.io/name: jupyter-web-app
- app.kubernetes.io/instance: jupyter-web-app-v0.7.0
- app.kubernetes.io/managed-by: kfctl
- app.kubernetes.io/component: jupyter-web-app
- app.kubernetes.io/part-of: kubeflow
- app.kubernetes.io/version: v0.7.0
diff --git a/jupyter-web-app/overlays/istio/kustomization.yaml b/jupyter-web-app/overlays/istio/kustomization.yaml
deleted file mode 100644
index 0991e8f..0000000
--- a/jupyter-web-app/overlays/istio/kustomization.yaml
+++ /dev/null
@@ -1,6 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-resources:
-- virtual-service.yaml
-configurations:
-- params.yaml
diff --git a/jupyter-web-app/overlays/istio/params.yaml b/jupyter-web-app/overlays/istio/params.yaml
deleted file mode 100644
index eea869e..0000000
--- a/jupyter-web-app/overlays/istio/params.yaml
+++ /dev/null
@@ -1,3 +0,0 @@
-varReference:
-- path: spec/http/route/destination/host
- kind: VirtualService
diff --git a/jupyter-web-app/overlays/istio/virtual-service.yaml b/jupyter-web-app/overlays/istio/virtual-service.yaml
deleted file mode 100644
index 589a8ee..0000000
--- a/jupyter-web-app/overlays/istio/virtual-service.yaml
+++ /dev/null
@@ -1,24 +0,0 @@
-apiVersion: networking.istio.io/v1alpha3
-kind: VirtualService
-metadata:
- name: jupyter-web-app
-spec:
- gateways:
- - kubeflow-gateway
- hosts:
- - '*'
- http:
- - headers:
- request:
- add:
- x-forwarded-prefix: /jupyter
- match:
- - uri:
- prefix: /jupyter/
- rewrite:
- uri: /
- route:
- - destination:
- host: jupyter-web-app-service.$(namespace).svc.$(clusterDomain)
- port:
- number: 80
diff --git a/plugins/README.md b/plugins/README.md
deleted file mode 100644
index ea8645b..0000000
--- a/plugins/README.md
+++ /dev/null
@@ -1,6 +0,0 @@
-# Config Management Plugins Examples
-
-| Application | Description |
-|-------------|-------------|
-| [kasane](kasane/) | The guestbook application as a `kasane` package. |
-| [kustomized-helm](kustomized-helm/) | Application comprised of a `helm` chart and customized using `kustomize` |
diff --git a/plugins/kasane/.gitignore b/plugins/kasane/.gitignore
deleted file mode 100644
index db3a6fe..0000000
--- a/plugins/kasane/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-vendor
-Kasanefile.lock
diff --git a/plugins/kasane/Kasanefile b/plugins/kasane/Kasanefile
deleted file mode 100644
index 173412e..0000000
--- a/plugins/kasane/Kasanefile
+++ /dev/null
@@ -1,5 +0,0 @@
-layers:
-- ../../guestbook/guestbook-ui-deployment.yaml
-- patch.jsonnet
-- ../../guestbook/guestbook-ui-svc.yaml
-
diff --git a/plugins/kasane/README.md b/plugins/kasane/README.md
deleted file mode 100644
index bfed877..0000000
--- a/plugins/kasane/README.md
+++ /dev/null
@@ -1,29 +0,0 @@
-# Kasane
-
-[Kasane](https://github.com/google/kasane) is a layering tool for Kubernetes which utilises Jsonnet for deep object modification and patching.
-
-Use following steps to try the application:
-
-* Follow instructions from [custom_tools.md](https://github.com/argoproj/argo-cd/blob/master/docs/operator-manual/custom_tools.md) to make sure `kasane` binary is available in `argocd-repo-server` pod.
-* Register `kasane` plugin `argocd-cm` ConfigMap:
-
-```yaml
-apiVersion: v1
-data:
- configManagementPlugins: |
- - name: kasane
- init:
- command: [kasane, update]
- generate:
- command: [kasane, show]
-```
-* Create application using `kasane` as a config management plugin name.
-
-```
-argocd app create kasane \
- --config-management-plugin kasane \
- --repo https://github.com/argoproj/argocd-example-apps \
- --path plugins/kasane \
- --dest-server https://kubernetes.default.svc \
- --dest-namespace default
-```
diff --git a/plugins/kasane/patch.jsonnet b/plugins/kasane/patch.jsonnet
deleted file mode 100644
index f5190fb..0000000
--- a/plugins/kasane/patch.jsonnet
+++ /dev/null
@@ -1,9 +0,0 @@
-function (layers)
-
-[
- layers[0] {
- spec+: {
- replicas: 2,
- },
- }
-]
diff --git a/plugins/kustomized-helm/.gitignore b/plugins/kustomized-helm/.gitignore
deleted file mode 100644
index 2582de3..0000000
--- a/plugins/kustomized-helm/.gitignore
+++ /dev/null
@@ -1,3 +0,0 @@
-all.yaml
-charts
-requirements.lock
diff --git a/plugins/kustomized-helm/Chart.yaml b/plugins/kustomized-helm/Chart.yaml
deleted file mode 100644
index bb298f2..0000000
--- a/plugins/kustomized-helm/Chart.yaml
+++ /dev/null
@@ -1 +0,0 @@
-name: guestbook
diff --git a/plugins/kustomized-helm/README.md b/plugins/kustomized-helm/README.md
deleted file mode 100644
index ddc7505..0000000
--- a/plugins/kustomized-helm/README.md
+++ /dev/null
@@ -1,31 +0,0 @@
-# Helm + Kustomize
-
-Sometimes Helm chart don't have all required parameters and additional customization is required. This example application demonstrates how to combine Helm and Kustomize and use it
-as a config management plugin in Argo CD.
-
-Use following steps to try the application:
-
-* configure `kustomized-helm` tool in `argocd-cm` ConfigMap:
-
-```yaml
- configManagementPlugins: |
- - name: kustomized-helm
- init:
- command: ["/bin/sh", "-c"]
- args: ["helm init --client-only && helm dependency build"]
- generate:
- command: [sh, -c]
- args: ["helm template . > all.yaml && kustomize build"]
-```
-
-* create application using `kustomized-helm` as a config management plugin name:
-
-
-```
-argocd app create kustomized-helm \
- --config-management-plugin kustomized-helm \
- --repo https://github.com/argoproj/argocd-example-apps \
- --path plugins/kustomized-helm \
- --dest-server https://kubernetes.default.svc \
- --dest-namespace default
-```
diff --git a/plugins/kustomized-helm/kustomization.yaml b/plugins/kustomized-helm/kustomization.yaml
deleted file mode 100644
index 23018b7..0000000
--- a/plugins/kustomized-helm/kustomization.yaml
+++ /dev/null
@@ -1,7 +0,0 @@
-namePrefix: kustomize-
-
-resources:
-- ./all.yaml
-
-patches:
-- overlays/guestbook-deployment.yaml
diff --git a/plugins/kustomized-helm/overlays/guestbook-deployment.yaml b/plugins/kustomized-helm/overlays/guestbook-deployment.yaml
deleted file mode 100644
index fd424c4..0000000
--- a/plugins/kustomized-helm/overlays/guestbook-deployment.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: release-name-helm-guestbook
-spec:
- template:
- spec:
- containers:
- - name: helm-guestbook
- image: "gcr.io/heptio-images/ks-guestbook-demo:0.2"
diff --git a/plugins/kustomized-helm/requirements.yaml b/plugins/kustomized-helm/requirements.yaml
deleted file mode 100644
index c199804..0000000
--- a/plugins/kustomized-helm/requirements.yaml
+++ /dev/null
@@ -1,4 +0,0 @@
-dependencies:
-- name: helm-guestbook
- version: 0.1.0
- repository: file://../../helm-guestbook
diff --git a/pre-post-sync/kustomization.yaml b/pre-post-sync/kustomization.yaml
deleted file mode 100644
index 6797052..0000000
--- a/pre-post-sync/kustomization.yaml
+++ /dev/null
@@ -1,8 +0,0 @@
-namePrefix: pre-post-sync-
-
-bases:
-- ../kustomize-guestbook
-
-resources:
-- pre-sync-job.yaml
-- post-sync-job.yaml
diff --git a/pre-post-sync/post-sync-job.yaml b/pre-post-sync/post-sync-job.yaml
deleted file mode 100644
index cef38f0..0000000
--- a/pre-post-sync/post-sync-job.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: batch/v1
-kind: Job
-metadata:
- name: after
- annotations:
- argocd.argoproj.io/hook: PostSync
- argocd.argoproj.io/hook-delete-policy: HookSucceeded
-spec:
- template:
- spec:
- containers:
- - name: sleep
- image: alpine:latest
- command: ["sleep", "10"]
- restartPolicy: Never
- backoffLimit: 0
diff --git a/pre-post-sync/pre-sync-job.yaml b/pre-post-sync/pre-sync-job.yaml
deleted file mode 100644
index 110ddeb..0000000
--- a/pre-post-sync/pre-sync-job.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-apiVersion: batch/v1
-kind: Job
-metadata:
- name: before
- annotations:
- argocd.argoproj.io/hook: PreSync
- argocd.argoproj.io/hook-delete-policy: HookSucceeded
-spec:
- template:
- spec:
- containers:
- - name: sleep
- image: alpine:latest
- command: ["sleep", "10"]
- restartPolicy: Never
- backoffLimit: 0
diff --git a/sock-shop/base/carts-db-dep.yaml b/sock-shop/base/carts-db-dep.yaml
deleted file mode 100644
index 5452b6f..0000000
--- a/sock-shop/base/carts-db-dep.yaml
+++ /dev/null
@@ -1,41 +0,0 @@
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: carts-db
- labels:
- name: carts-db
-spec:
- replicas: 1
- selector:
- matchLabels:
- name: carts-db
- template:
- metadata:
- labels:
- name: carts-db
- spec:
- containers:
- - name: carts-db
- image: mongo
- ports:
- - name: mongo
- containerPort: 27017
- securityContext:
- capabilities:
- drop:
- - all
- add:
- - CHOWN
- - SETGID
- - SETUID
- readOnlyRootFilesystem: true
- volumeMounts:
- - mountPath: /tmp
- name: tmp-volume
- volumes:
- - name: tmp-volume
- emptyDir:
- medium: Memory
- nodeSelector:
- beta.kubernetes.io/os: linux
diff --git a/sock-shop/base/carts-db-svc.yaml b/sock-shop/base/carts-db-svc.yaml
deleted file mode 100644
index df88dd9..0000000
--- a/sock-shop/base/carts-db-svc.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
----
-apiVersion: v1
-kind: Service
-metadata:
- name: carts-db
- labels:
- name: carts-db
-spec:
- ports:
- # the port that this service should serve on
- - port: 27017
- targetPort: 27017
- selector:
- name: carts-db
diff --git a/sock-shop/base/carts-dep.yaml b/sock-shop/base/carts-dep.yaml
deleted file mode 100644
index 7c44ff0..0000000
--- a/sock-shop/base/carts-dep.yaml
+++ /dev/null
@@ -1,64 +0,0 @@
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: carts
- labels:
- name: carts
-spec:
- replicas: 1
- selector:
- matchLabels:
- name: carts
- template:
- metadata:
- labels:
- name: carts
- spec:
- containers:
- - name: carts
- image: weaveworksdemos/carts:0.4.8
- env:
- - name: ZIPKIN
- value: zipkin.jaeger.svc.cluster.local
- - name: JAVA_OPTS
- value: -Xms64m -Xmx128m -XX:PermSize=32m -XX:MaxPermSize=64m -XX:+UseG1GC -Djava.security.egd=file:/dev/urandom
- resources:
- limits:
- cpu: 300m
- memory: 500Mi
- requests:
- cpu: 300m
- memory: 500Mi
- ports:
- - containerPort: 80
- securityContext:
- runAsNonRoot: true
- runAsUser: 10001
- capabilities:
- drop:
- - all
- add:
- - NET_BIND_SERVICE
- readOnlyRootFilesystem: true
- volumeMounts:
- - mountPath: /tmp
- name: tmp-volume
- livenessProbe:
- httpGet:
- path: /health
- port: 80
- initialDelaySeconds: 300
- periodSeconds: 3
- readinessProbe:
- httpGet:
- path: /health
- port: 80
- initialDelaySeconds: 180
- periodSeconds: 3
- volumes:
- - name: tmp-volume
- emptyDir:
- medium: Memory
- nodeSelector:
- beta.kubernetes.io/os: linux
diff --git a/sock-shop/base/catalogue-db-dep.yaml b/sock-shop/base/catalogue-db-dep.yaml
deleted file mode 100644
index 23890fa..0000000
--- a/sock-shop/base/catalogue-db-dep.yaml
+++ /dev/null
@@ -1,30 +0,0 @@
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: catalogue-db
- labels:
- name: catalogue-db
-spec:
- replicas: 1
- selector:
- matchLabels:
- name: catalogue-db
- template:
- metadata:
- labels:
- name: catalogue-db
- spec:
- containers:
- - name: catalogue-db
- image: weaveworksdemos/catalogue-db:0.3.0
- env:
- - name: MYSQL_ROOT_PASSWORD
- value: fake_password
- - name: MYSQL_DATABASE
- value: socksdb
- ports:
- - name: mysql
- containerPort: 3306
- nodeSelector:
- beta.kubernetes.io/os: linux
diff --git a/sock-shop/base/catalogue-db-svc.yaml b/sock-shop/base/catalogue-db-svc.yaml
deleted file mode 100644
index 683b9ce..0000000
--- a/sock-shop/base/catalogue-db-svc.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
----
-apiVersion: v1
-kind: Service
-metadata:
- name: catalogue-db
- labels:
- name: catalogue-db
-spec:
- ports:
- # the port that this service should serve on
- - port: 3306
- targetPort: 3306
- selector:
- name: catalogue-db
diff --git a/sock-shop/base/catalogue-dep.yaml b/sock-shop/base/catalogue-dep.yaml
deleted file mode 100644
index cfa66dc..0000000
--- a/sock-shop/base/catalogue-dep.yaml
+++ /dev/null
@@ -1,52 +0,0 @@
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: catalogue
- labels:
- name: catalogue
-spec:
- replicas: 1
- selector:
- matchLabels:
- name: catalogue
- template:
- metadata:
- labels:
- name: catalogue
- spec:
- containers:
- - name: catalogue
- image: weaveworksdemos/catalogue:0.3.5
- resources:
- limits:
- cpu: 100m
- memory: 100Mi
- requests:
- cpu: 100m
- memory: 100Mi
- ports:
- - containerPort: 80
- securityContext:
- runAsNonRoot: true
- runAsUser: 10001
- capabilities:
- drop:
- - all
- add:
- - NET_BIND_SERVICE
- readOnlyRootFilesystem: true
- livenessProbe:
- httpGet:
- path: /health
- port: 80
- initialDelaySeconds: 300
- periodSeconds: 3
- readinessProbe:
- httpGet:
- path: /health
- port: 80
- initialDelaySeconds: 180
- periodSeconds: 3
- nodeSelector:
- beta.kubernetes.io/os: linux
diff --git a/sock-shop/base/catalogue-svc.yaml b/sock-shop/base/catalogue-svc.yaml
deleted file mode 100644
index ed948f5..0000000
--- a/sock-shop/base/catalogue-svc.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
----
-apiVersion: v1
-kind: Service
-metadata:
- name: catalogue
- labels:
- name: catalogue
-spec:
- ports:
- # the port that this service should serve on
- - port: 80
- targetPort: 80
- selector:
- name: catalogue
diff --git a/sock-shop/base/front-end-dep.yaml b/sock-shop/base/front-end-dep.yaml
deleted file mode 100644
index 069c5ef..0000000
--- a/sock-shop/base/front-end-dep.yaml
+++ /dev/null
@@ -1,51 +0,0 @@
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: front-end
-spec:
- replicas: 1
- selector:
- matchLabels:
- name: front-end
- template:
- metadata:
- labels:
- name: front-end
- spec:
- containers:
- - name: front-end
- image: weaveworksdemos/front-end:0.3.12
- resources:
- limits:
- cpu: 300m
- memory: 1000Mi
- requests:
- cpu: 100m
- memory: 300Mi
- ports:
- - containerPort: 8079
- env:
- - name: SESSION_REDIS
- value: "true"
- securityContext:
- runAsNonRoot: true
- runAsUser: 10001
- capabilities:
- drop:
- - all
- readOnlyRootFilesystem: true
- livenessProbe:
- httpGet:
- path: /
- port: 8079
- initialDelaySeconds: 300
- periodSeconds: 3
- readinessProbe:
- httpGet:
- path: /
- port: 8079
- initialDelaySeconds: 30
- periodSeconds: 3
- nodeSelector:
- beta.kubernetes.io/os: linux
diff --git a/sock-shop/base/front-end-svc.yaml b/sock-shop/base/front-end-svc.yaml
deleted file mode 100644
index 5249bb4..0000000
--- a/sock-shop/base/front-end-svc.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
----
-apiVersion: v1
-kind: Service
-metadata:
- name: front-end
- labels:
- name: front-end
-spec:
- type: LoadBalancer
- ports:
- - port: 80
- targetPort: 8079
- nodePort: 30001
- selector:
- name: front-end
diff --git a/sock-shop/base/orders-db-dep.yaml b/sock-shop/base/orders-db-dep.yaml
deleted file mode 100644
index 30b7181..0000000
--- a/sock-shop/base/orders-db-dep.yaml
+++ /dev/null
@@ -1,41 +0,0 @@
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: orders-db
- labels:
- name: orders-db
-spec:
- replicas: 1
- selector:
- matchLabels:
- name: orders-db
- template:
- metadata:
- labels:
- name: orders-db
- spec:
- containers:
- - name: orders-db
- image: mongo
- ports:
- - name: mongo
- containerPort: 27017
- securityContext:
- capabilities:
- drop:
- - all
- add:
- - CHOWN
- - SETGID
- - SETUID
- readOnlyRootFilesystem: true
- volumeMounts:
- - mountPath: /tmp
- name: tmp-volume
- volumes:
- - name: tmp-volume
- emptyDir:
- medium: Memory
- nodeSelector:
- beta.kubernetes.io/os: linux
diff --git a/sock-shop/base/orders-db-svc.yaml b/sock-shop/base/orders-db-svc.yaml
deleted file mode 100644
index 7ddd3bb..0000000
--- a/sock-shop/base/orders-db-svc.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
----
-apiVersion: v1
-kind: Service
-metadata:
- name: orders-db
- labels:
- name: orders-db
-spec:
- ports:
- # the port that this service should serve on
- - port: 27017
- targetPort: 27017
- selector:
- name: orders-db
diff --git a/sock-shop/base/orders-dep.yaml b/sock-shop/base/orders-dep.yaml
deleted file mode 100644
index b31d9ad..0000000
--- a/sock-shop/base/orders-dep.yaml
+++ /dev/null
@@ -1,64 +0,0 @@
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: orders
- labels:
- name: orders
-spec:
- replicas: 1
- selector:
- matchLabels:
- name: orders
- template:
- metadata:
- labels:
- name: orders
- spec:
- containers:
- - name: orders
- image: weaveworksdemos/orders:0.4.7
- env:
- - name: ZIPKIN
- value: zipkin.jaeger.svc.cluster.local
- - name: JAVA_OPTS
- value: -Xms64m -Xmx128m -XX:PermSize=32m -XX:MaxPermSize=64m -XX:+UseG1GC -Djava.security.egd=file:/dev/urandom
- resources:
- limits:
- cpu: 500m
- memory: 500Mi
- requests:
- cpu: 200m
- memory: 500Mi
- ports:
- - containerPort: 80
- securityContext:
- runAsNonRoot: true
- runAsUser: 10001
- capabilities:
- drop:
- - all
- add:
- - NET_BIND_SERVICE
- readOnlyRootFilesystem: true
- volumeMounts:
- - mountPath: /tmp
- name: tmp-volume
- livenessProbe:
- httpGet:
- path: /health
- port: 80
- initialDelaySeconds: 300
- periodSeconds: 3
- readinessProbe:
- httpGet:
- path: /health
- port: 80
- initialDelaySeconds: 180
- periodSeconds: 3
- volumes:
- - name: tmp-volume
- emptyDir:
- medium: Memory
- nodeSelector:
- beta.kubernetes.io/os: linux
diff --git a/sock-shop/base/orders-svc.yaml b/sock-shop/base/orders-svc.yaml
deleted file mode 100644
index 6be52c4..0000000
--- a/sock-shop/base/orders-svc.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
----
-apiVersion: v1
-kind: Service
-metadata:
- name: orders
- labels:
- name: orders
-spec:
- ports:
- # the port that this service should serve on
- - port: 80
- targetPort: 80
- selector:
- name: orders
diff --git a/sock-shop/base/payment-dep.yaml b/sock-shop/base/payment-dep.yaml
deleted file mode 100644
index 4477eea..0000000
--- a/sock-shop/base/payment-dep.yaml
+++ /dev/null
@@ -1,52 +0,0 @@
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: payment
- labels:
- name: payment
-spec:
- replicas: 1
- selector:
- matchLabels:
- name: payment
- template:
- metadata:
- labels:
- name: payment
- spec:
- containers:
- - name: payment
- image: weaveworksdemos/payment:0.4.3
- resources:
- limits:
- cpu: 100m
- memory: 100Mi
- requests:
- cpu: 99m
- memory: 100Mi
- ports:
- - containerPort: 80
- securityContext:
- runAsNonRoot: true
- runAsUser: 10001
- capabilities:
- drop:
- - all
- add:
- - NET_BIND_SERVICE
- readOnlyRootFilesystem: true
- livenessProbe:
- httpGet:
- path: /health
- port: 80
- initialDelaySeconds: 300
- periodSeconds: 3
- readinessProbe:
- httpGet:
- path: /health
- port: 80
- initialDelaySeconds: 180
- periodSeconds: 3
- nodeSelector:
- beta.kubernetes.io/os: linux
diff --git a/sock-shop/base/payment-svc.yaml b/sock-shop/base/payment-svc.yaml
deleted file mode 100644
index dbe8fcc..0000000
--- a/sock-shop/base/payment-svc.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
----
-apiVersion: v1
-kind: Service
-metadata:
- name: payment
- labels:
- name: payment
-spec:
- ports:
- # the port that this service should serve on
- - port: 80
- targetPort: 80
- selector:
- name: payment
diff --git a/sock-shop/base/queue-master-dep.yaml b/sock-shop/base/queue-master-dep.yaml
deleted file mode 100644
index 626e69f..0000000
--- a/sock-shop/base/queue-master-dep.yaml
+++ /dev/null
@@ -1,48 +0,0 @@
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: queue-master
- labels:
- name: queue-master
-spec:
- replicas: 1
- selector:
- matchLabels:
- name: queue-master
- template:
- metadata:
- labels:
- name: queue-master
- spec:
- containers:
- - name: queue-master
- image: weaveworksdemos/queue-master:0.3.1
- env:
- - name: ZIPKIN
- value: zipkin.jaeger.svc.cluster.local
- - name: JAVA_OPTS
- value: -Xms64m -Xmx128m -XX:PermSize=32m -XX:MaxPermSize=64m -XX:+UseG1GC -Djava.security.egd=file:/dev/urandom
- resources:
- limits:
- cpu: 300m
- memory: 500Mi
- requests:
- cpu: 300m
- memory: 500Mi
- ports:
- - containerPort: 80
- livenessProbe:
- httpGet:
- path: /health
- port: 80
- initialDelaySeconds: 300
- periodSeconds: 3
- readinessProbe:
- httpGet:
- path: /health
- port: 80
- initialDelaySeconds: 180
- periodSeconds: 3
- nodeSelector:
- beta.kubernetes.io/os: linux
diff --git a/sock-shop/base/queue-master-svc.yaml b/sock-shop/base/queue-master-svc.yaml
deleted file mode 100644
index fa7a6ae..0000000
--- a/sock-shop/base/queue-master-svc.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
----
-apiVersion: v1
-kind: Service
-metadata:
- name: queue-master
- labels:
- name: queue-master
- annotations:
- prometheus.io/path: "/prometheus"
-spec:
- ports:
- # the port that this service should serve on
- - port: 80
- targetPort: 80
- selector:
- name: queue-master
diff --git a/sock-shop/base/rabbitmq-dep.yaml b/sock-shop/base/rabbitmq-dep.yaml
deleted file mode 100644
index 064c6f6..0000000
--- a/sock-shop/base/rabbitmq-dep.yaml
+++ /dev/null
@@ -1,44 +0,0 @@
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: rabbitmq
- labels:
- name: rabbitmq
-spec:
- replicas: 1
- selector:
- matchLabels:
- name: rabbitmq
- template:
- metadata:
- labels:
- name: rabbitmq
- annotations:
- prometheus.io/scrape: "false"
- spec:
- containers:
- - name: rabbitmq
- image: rabbitmq:3.6.8-management
- ports:
- - containerPort: 15672
- name: management
- - containerPort: 5672
- name: rabbitmq
- securityContext:
- capabilities:
- drop:
- - all
- add:
- - CHOWN
- - SETGID
- - SETUID
- - DAC_OVERRIDE
- readOnlyRootFilesystem: true
- - name: rabbitmq-exporter
- image: kbudde/rabbitmq-exporter
- ports:
- - containerPort: 9090
- name: exporter
- nodeSelector:
- beta.kubernetes.io/os: linux
diff --git a/sock-shop/base/rabbitmq-svc.yaml b/sock-shop/base/rabbitmq-svc.yaml
deleted file mode 100644
index 322513c..0000000
--- a/sock-shop/base/rabbitmq-svc.yaml
+++ /dev/null
@@ -1,19 +0,0 @@
----
-apiVersion: v1
-kind: Service
-metadata:
- name: rabbitmq
- labels:
- name: rabbitmq
-spec:
- ports:
- # the port that this service should serve on
- - port: 5672
- name: rabbitmq
- targetPort: 5672
- - port: 9090
- name: exporter
- targetPort: exporter
- protocol: TCP
- selector:
- name: rabbitmq
diff --git a/sock-shop/base/session-db-dep.yaml b/sock-shop/base/session-db-dep.yaml
deleted file mode 100644
index 85cfed9..0000000
--- a/sock-shop/base/session-db-dep.yaml
+++ /dev/null
@@ -1,36 +0,0 @@
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: session-db
- labels:
- name: session-db
-spec:
- replicas: 1
- selector:
- matchLabels:
- name: session-db
- template:
- metadata:
- labels:
- name: session-db
- annotations:
- prometheus.io.scrape: "false"
- spec:
- containers:
- - name: session-db
- image: redis:alpine
- ports:
- - name: redis
- containerPort: 6379
- securityContext:
- capabilities:
- drop:
- - all
- add:
- - CHOWN
- - SETGID
- - SETUID
- readOnlyRootFilesystem: true
- nodeSelector:
- beta.kubernetes.io/os: linux
diff --git a/sock-shop/base/session-db-svc.yaml b/sock-shop/base/session-db-svc.yaml
deleted file mode 100644
index a792ea4..0000000
--- a/sock-shop/base/session-db-svc.yaml
+++ /dev/null
@@ -1,14 +0,0 @@
----
-apiVersion: v1
-kind: Service
-metadata:
- name: session-db
- labels:
- name: session-db
-spec:
- ports:
- # the port that this service should serve on
- - port: 6379
- targetPort: 6379
- selector:
- name: session-db
diff --git a/sock-shop/base/shipping-dep.yaml b/sock-shop/base/shipping-dep.yaml
deleted file mode 100644
index af8d90b..0000000
--- a/sock-shop/base/shipping-dep.yaml
+++ /dev/null
@@ -1,64 +0,0 @@
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: shipping
- labels:
- name: shipping
-spec:
- replicas: 1
- selector:
- matchLabels:
- name: shipping
- template:
- metadata:
- labels:
- name: shipping
- spec:
- containers:
- - name: shipping
- image: weaveworksdemos/shipping:0.4.8
- env:
- - name: ZIPKIN
- value: zipkin.jaeger.svc.cluster.local
- - name: JAVA_OPTS
- value: -Xms64m -Xmx128m -XX:PermSize=32m -XX:MaxPermSize=64m -XX:+UseG1GC -Djava.security.egd=file:/dev/urandom
- resources:
- limits:
- cpu: 300m
- memory: 500Mi
- requests:
- cpu: 300m
- memory: 500Mi
- ports:
- - containerPort: 80
- securityContext:
- runAsNonRoot: true
- runAsUser: 10001
- capabilities:
- drop:
- - all
- add:
- - NET_BIND_SERVICE
- readOnlyRootFilesystem: true
- volumeMounts:
- - mountPath: /tmp
- name: tmp-volume
- livenessProbe:
- httpGet:
- path: /health
- port: 80
- initialDelaySeconds: 300
- periodSeconds: 3
- readinessProbe:
- httpGet:
- path: /health
- port: 80
- initialDelaySeconds: 180
- periodSeconds: 3
- volumes:
- - name: tmp-volume
- emptyDir:
- medium: Memory
- nodeSelector:
- beta.kubernetes.io/os: linux
diff --git a/sock-shop/base/shipping-svc.yaml b/sock-shop/base/shipping-svc.yaml
deleted file mode 100644
index aac156c..0000000
--- a/sock-shop/base/shipping-svc.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
----
-apiVersion: v1
-kind: Service
-metadata:
- name: shipping
- labels:
- name: shipping
-spec:
- ports:
- # the port that this service should serve on
- - port: 80
- targetPort: 80
- selector:
- name: shipping
-
diff --git a/sock-shop/base/user-db-dep.yaml b/sock-shop/base/user-db-dep.yaml
deleted file mode 100644
index 41ec058..0000000
--- a/sock-shop/base/user-db-dep.yaml
+++ /dev/null
@@ -1,42 +0,0 @@
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: user-db
- labels:
- name: user-db
-spec:
- replicas: 1
- selector:
- matchLabels:
- name: user-db
- template:
- metadata:
- labels:
- name: user-db
- spec:
- containers:
- - name: user-db
- image: weaveworksdemos/user-db:0.3.0
-
- ports:
- - name: mongo
- containerPort: 27017
- securityContext:
- capabilities:
- drop:
- - all
- add:
- - CHOWN
- - SETGID
- - SETUID
- readOnlyRootFilesystem: true
- volumeMounts:
- - mountPath: /tmp
- name: tmp-volume
- volumes:
- - name: tmp-volume
- emptyDir:
- medium: Memory
- nodeSelector:
- beta.kubernetes.io/os: linux
\ No newline at end of file
diff --git a/sock-shop/base/user-db-svc.yaml b/sock-shop/base/user-db-svc.yaml
deleted file mode 100644
index ace9d1a..0000000
--- a/sock-shop/base/user-db-svc.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
----
-apiVersion: v1
-kind: Service
-metadata:
- name: user-db
- labels:
- name: user-db
-spec:
- ports:
- # the port that this service should serve on
- - port: 27017
- targetPort: 27017
- selector:
- name: user-db
-
diff --git a/sock-shop/base/user-dep.yaml b/sock-shop/base/user-dep.yaml
deleted file mode 100644
index 228ad3e..0000000
--- a/sock-shop/base/user-dep.yaml
+++ /dev/null
@@ -1,55 +0,0 @@
----
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: user
- labels:
- name: user
-spec:
- replicas: 1
- selector:
- matchLabels:
- name: user
- template:
- metadata:
- labels:
- name: user
- spec:
- containers:
- - name: user
- image: weaveworksdemos/user:0.4.7
- resources:
- limits:
- cpu: 300m
- memory: 100Mi
- requests:
- cpu: 100m
- memory: 100Mi
- ports:
- - containerPort: 80
- env:
- - name: MONGO_HOST
- value: user-db:27017
- securityContext:
- runAsNonRoot: true
- runAsUser: 10001
- capabilities:
- drop:
- - all
- add:
- - NET_BIND_SERVICE
- readOnlyRootFilesystem: true
- livenessProbe:
- httpGet:
- path: /health
- port: 80
- initialDelaySeconds: 300
- periodSeconds: 3
- readinessProbe:
- httpGet:
- path: /health
- port: 80
- initialDelaySeconds: 180
- periodSeconds: 3
- nodeSelector:
- beta.kubernetes.io/os: linux
diff --git a/sock-shop/base/user-svc.yaml b/sock-shop/base/user-svc.yaml
deleted file mode 100644
index f01c118..0000000
--- a/sock-shop/base/user-svc.yaml
+++ /dev/null
@@ -1,15 +0,0 @@
----
-apiVersion: v1
-kind: Service
-metadata:
- name: user
- labels:
- name: user
-spec:
- ports:
- # the port that this service should serve on
- - port: 80
- targetPort: 80
- selector:
- name: user
-
diff --git a/sock-shop/kustomization.yaml b/sock-shop/kustomization.yaml
deleted file mode 100644
index bcc3578..0000000
--- a/sock-shop/kustomization.yaml
+++ /dev/null
@@ -1,28 +0,0 @@
-resources:
-- base/carts-db-dep.yaml
-- base/carts-db-svc.yaml
-- base/carts-dep.yaml
-- base/catalogue-db-dep.yaml
-- base/catalogue-db-svc.yaml
-- base/catalogue-dep.yaml
-- base/catalogue-svc.yaml
-- base/front-end-dep.yaml
-- base/front-end-svc.yaml
-- base/orders-db-dep.yaml
-- base/orders-db-svc.yaml
-- base/orders-dep.yaml
-- base/orders-svc.yaml
-- base/payment-dep.yaml
-- base/payment-svc.yaml
-- base/queue-master-dep.yaml
-- base/queue-master-svc.yaml
-- base/rabbitmq-dep.yaml
-- base/rabbitmq-svc.yaml
-- base/session-db-dep.yaml
-- base/session-db-svc.yaml
-- base/shipping-dep.yaml
-- base/shipping-svc.yaml
-- base/user-db-dep.yaml
-- base/user-db-svc.yaml
-- base/user-dep.yaml
-- base/user-svc.yaml
\ No newline at end of file
diff --git a/volvo-kustomize/dev/api-service/kustomization.yaml b/volvo-kustomize/dev/api-service/kustomization.yaml
new file mode 100644
index 0000000..5ebfe27
--- /dev/null
+++ b/volvo-kustomize/dev/api-service/kustomization.yaml
@@ -0,0 +1,4 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+bases:
+- ../../../kustomize/api-service
+kind: Kustomization
diff --git a/istio/kustomization.yaml b/volvo-kustomize/dev/argo/kustomization.yaml
similarity index 72%
rename from istio/kustomization.yaml
rename to volvo-kustomize/dev/argo/kustomization.yaml
index 4e745bd..27ccbab 100644
--- a/istio/kustomization.yaml
+++ b/volvo-kustomize/dev/argo/kustomization.yaml
@@ -1,5 +1,4 @@
apiVersion: kustomize.config.k8s.io/v1beta1
bases:
-- base
+- ../../../kustomize/argo
kind: Kustomization
-namespace: kubeflow
diff --git a/volvo-kustomize/dev/centraldashboard/kustomization.yaml b/volvo-kustomize/dev/centraldashboard/kustomization.yaml
new file mode 100644
index 0000000..c4ed8f2
--- /dev/null
+++ b/volvo-kustomize/dev/centraldashboard/kustomization.yaml
@@ -0,0 +1,4 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+bases:
+- ../../../kustomize/centraldashboard
+kind: Kustomization
diff --git a/volvo-kustomize/dev/cert-manager-crds/kustomization.yaml b/volvo-kustomize/dev/cert-manager-crds/kustomization.yaml
new file mode 100644
index 0000000..be41134
--- /dev/null
+++ b/volvo-kustomize/dev/cert-manager-crds/kustomization.yaml
@@ -0,0 +1,4 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+bases:
+- ../../../kustomize/cert-manager-crds
+kind: Kustomization
diff --git a/volvo-kustomize/dev/cert-manager-kube-system-resources/kustomization.yaml b/volvo-kustomize/dev/cert-manager-kube-system-resources/kustomization.yaml
new file mode 100644
index 0000000..9ea37c4
--- /dev/null
+++ b/volvo-kustomize/dev/cert-manager-kube-system-resources/kustomization.yaml
@@ -0,0 +1,4 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+bases:
+- ../../../kustomize/cert-manager-kube-system-resources
+kind: Kustomization
diff --git a/volvo-kustomize/dev/cert-manager/kustomization.yaml b/volvo-kustomize/dev/cert-manager/kustomization.yaml
new file mode 100644
index 0000000..85d060a
--- /dev/null
+++ b/volvo-kustomize/dev/cert-manager/kustomization.yaml
@@ -0,0 +1,4 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+bases:
+- ../../../kustomize/cert-manager
+kind: Kustomization
diff --git a/application-crds/kustomization.yaml b/volvo-kustomize/dev/dex/kustomization.yaml
similarity index 72%
rename from application-crds/kustomization.yaml
rename to volvo-kustomize/dev/dex/kustomization.yaml
index 4e745bd..b0689ee 100644
--- a/application-crds/kustomization.yaml
+++ b/volvo-kustomize/dev/dex/kustomization.yaml
@@ -1,5 +1,4 @@
apiVersion: kustomize.config.k8s.io/v1beta1
bases:
-- base
+- ../../../kustomize/dex
kind: Kustomization
-namespace: kubeflow
diff --git a/volvo-kustomize/dev/katib-controller/kustomization.yaml b/volvo-kustomize/dev/katib-controller/kustomization.yaml
new file mode 100644
index 0000000..80832d5
--- /dev/null
+++ b/volvo-kustomize/dev/katib-controller/kustomization.yaml
@@ -0,0 +1,4 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+bases:
+- ../../../kustomize/katib-controller
+kind: Kustomization
diff --git a/volvo-kustomize/dev/katib-crds/kustomization.yaml b/volvo-kustomize/dev/katib-crds/kustomization.yaml
new file mode 100644
index 0000000..2f586d7
--- /dev/null
+++ b/volvo-kustomize/dev/katib-crds/kustomization.yaml
@@ -0,0 +1,4 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+bases:
+- ../../../kustomize/katib-crds
+kind: Kustomization
diff --git a/volvo-kustomize/dev/kfserving-crds/kustomization.yaml b/volvo-kustomize/dev/kfserving-crds/kustomization.yaml
new file mode 100644
index 0000000..ce30fa7
--- /dev/null
+++ b/volvo-kustomize/dev/kfserving-crds/kustomization.yaml
@@ -0,0 +1,4 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+bases:
+- ../../../kustomize/kfserving-crds
+kind: Kustomization
diff --git a/volvo-kustomize/dev/kfserving-install/kustomization.yaml b/volvo-kustomize/dev/kfserving-install/kustomization.yaml
new file mode 100644
index 0000000..3ce8925
--- /dev/null
+++ b/volvo-kustomize/dev/kfserving-install/kustomization.yaml
@@ -0,0 +1,4 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+bases:
+- ../../../kustomize/kfserving-install
+kind: Kustomization
diff --git a/volvo-kustomize/dev/knative-crds/kustomization.yaml b/volvo-kustomize/dev/knative-crds/kustomization.yaml
new file mode 100644
index 0000000..a236ec3
--- /dev/null
+++ b/volvo-kustomize/dev/knative-crds/kustomization.yaml
@@ -0,0 +1,4 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+bases:
+- ../../../kustomize/knative-crds
+kind: Kustomization
diff --git a/volvo-kustomize/dev/knative-install/kustomization.yaml b/volvo-kustomize/dev/knative-install/kustomization.yaml
new file mode 100644
index 0000000..05b4cfe
--- /dev/null
+++ b/volvo-kustomize/dev/knative-install/kustomization.yaml
@@ -0,0 +1,4 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+bases:
+- ../../../kustomize/knative-intall
+kind: Kustomization
diff --git a/volvo-kustomize/dev/kubeflow-roles/kustomization.yaml b/volvo-kustomize/dev/kubeflow-roles/kustomization.yaml
new file mode 100644
index 0000000..f30d19e
--- /dev/null
+++ b/volvo-kustomize/dev/kubeflow-roles/kustomization.yaml
@@ -0,0 +1,4 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+bases:
+- ../../../kustomize/kubeflow-roles
+kind: Kustomization
diff --git a/volvo-kustomize/dev/kustomization.yaml b/volvo-kustomize/dev/kustomization.yaml
deleted file mode 100644
index 6f1cac6..0000000
--- a/volvo-kustomize/dev/kustomization.yaml
+++ /dev/null
@@ -1,17 +0,0 @@
-apiVersion: kustomize.config.k8s.io/v1beta1
-kind: Kustomization
-bases:
-# ../../kustomize/api-service/base
-#- ../../kustomize/application-crds
-#- ../../kustomize/argo
-#- ../../kustomize/centraldashboard
-#- ../../kustomize/cert-manager
-#- ../../kustomize/cert-manager-crds
-#- ../../kustomize/cert-manager-kube-system-resources
-#- ../../kustomize/dex
-- ./jupyter-web-app
-- ../../kustomize/application
-- ../../kustomize/application-crds
-- ../../kustomize/istio
-- ../../kustomize/istio-crds
-- ../../kustomize/istio-install
diff --git a/istio-install/kustomization.yaml b/volvo-kustomize/dev/metadata/kustomization.yaml
similarity index 69%
rename from istio-install/kustomization.yaml
rename to volvo-kustomize/dev/metadata/kustomization.yaml
index e907d64..e4a08b6 100644
--- a/istio-install/kustomization.yaml
+++ b/volvo-kustomize/dev/metadata/kustomization.yaml
@@ -1,5 +1,4 @@
apiVersion: kustomize.config.k8s.io/v1beta1
bases:
-- base
+- ../../../kustomize/metadata
kind: Kustomization
-namespace: istio-system
diff --git a/istio-crds/kustomization.yaml b/volvo-kustomize/dev/minio/kustomization.yaml
similarity index 69%
rename from istio-crds/kustomization.yaml
rename to volvo-kustomize/dev/minio/kustomization.yaml
index e907d64..9b49804 100644
--- a/istio-crds/kustomization.yaml
+++ b/volvo-kustomize/dev/minio/kustomization.yaml
@@ -1,5 +1,4 @@
apiVersion: kustomize.config.k8s.io/v1beta1
bases:
-- base
+- ../../../kustomize/minio
kind: Kustomization
-namespace: istio-system
diff --git a/volvo-kustomize/dev/mysql/kustomization.yaml b/volvo-kustomize/dev/mysql/kustomization.yaml
new file mode 100644
index 0000000..fc01498
--- /dev/null
+++ b/volvo-kustomize/dev/mysql/kustomization.yaml
@@ -0,0 +1,4 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+bases:
+- ../../../kustomize/mysql
+kind: Kustomization
diff --git a/volvo-kustomize/dev/notebook-controller/kustomization.yaml b/volvo-kustomize/dev/notebook-controller/kustomization.yaml
new file mode 100644
index 0000000..d9148be
--- /dev/null
+++ b/volvo-kustomize/dev/notebook-controller/kustomization.yaml
@@ -0,0 +1,4 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+bases:
+- ../../../kustomize/notebook-controller
+kind: Kustomization
diff --git a/volvo-kustomize/dev/oidc-authservice/kustomization.yaml b/volvo-kustomize/dev/oidc-authservice/kustomization.yaml
new file mode 100644
index 0000000..a06789a
--- /dev/null
+++ b/volvo-kustomize/dev/oidc-authservice/kustomization.yaml
@@ -0,0 +1,4 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+bases:
+- ../../../kustomize/oidc-authservice
+kind: Kustomization
diff --git a/volvo-kustomize/dev/persistent-agent/kustomization.yaml b/volvo-kustomize/dev/persistent-agent/kustomization.yaml
new file mode 100644
index 0000000..5b2e894
--- /dev/null
+++ b/volvo-kustomize/dev/persistent-agent/kustomization.yaml
@@ -0,0 +1,4 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+bases:
+- ../../../kustomize/persistent-agent
+kind: Kustomization
diff --git a/volvo-kustomize/dev/pipeline-visualization-service/kustomization.yaml b/volvo-kustomize/dev/pipeline-visualization-service/kustomization.yaml
new file mode 100644
index 0000000..1647754
--- /dev/null
+++ b/volvo-kustomize/dev/pipeline-visualization-service/kustomization.yaml
@@ -0,0 +1,4 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+bases:
+- ../../../kustomize/pipeline-visualization-service
+kind: Kustomization
diff --git a/volvo-kustomize/dev/pipelines-runner/kustomization.yaml b/volvo-kustomize/dev/pipelines-runner/kustomization.yaml
new file mode 100644
index 0000000..8578c23
--- /dev/null
+++ b/volvo-kustomize/dev/pipelines-runner/kustomization.yaml
@@ -0,0 +1,4 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+bases:
+- ../../../kustomize/pipelines-runner
+kind: Kustomization
diff --git a/volvo-kustomize/dev/pipelines-ui/kustomization.yaml b/volvo-kustomize/dev/pipelines-ui/kustomization.yaml
new file mode 100644
index 0000000..a1654cb
--- /dev/null
+++ b/volvo-kustomize/dev/pipelines-ui/kustomization.yaml
@@ -0,0 +1,4 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+bases:
+- ../../../kustomize/pipelines-ui
+kind: Kustomization
diff --git a/volvo-kustomize/dev/pipelines-viewer/kustomization.yaml b/volvo-kustomize/dev/pipelines-viewer/kustomization.yaml
new file mode 100644
index 0000000..b186024
--- /dev/null
+++ b/volvo-kustomize/dev/pipelines-viewer/kustomization.yaml
@@ -0,0 +1,4 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+bases:
+- ../../../kustomize/pipelines-viewer
+kind: Kustomization
diff --git a/volvo-kustomize/dev/profiles/kustomization.yaml b/volvo-kustomize/dev/profiles/kustomization.yaml
new file mode 100644
index 0000000..ae988c0
--- /dev/null
+++ b/volvo-kustomize/dev/profiles/kustomization.yaml
@@ -0,0 +1,4 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+bases:
+- ../../../kustomize/profiles
+kind: Kustomization
diff --git a/volvo-kustomize/dev/pytorch-job-crds/kustomization.yaml b/volvo-kustomize/dev/pytorch-job-crds/kustomization.yaml
new file mode 100644
index 0000000..69284bd
--- /dev/null
+++ b/volvo-kustomize/dev/pytorch-job-crds/kustomization.yaml
@@ -0,0 +1,4 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+bases:
+- ../../../kustomize/pytorch-job-crds
+kind: Kustomization
diff --git a/volvo-kustomize/dev/pytorch-operator/kustomization.yaml b/volvo-kustomize/dev/pytorch-operator/kustomization.yaml
new file mode 100644
index 0000000..4442534
--- /dev/null
+++ b/volvo-kustomize/dev/pytorch-operator/kustomization.yaml
@@ -0,0 +1,4 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+bases:
+- ../../../kustomize/pytorch-operator
+kind: Kustomization
diff --git a/volvo-kustomize/dev/scheduledworkflow/kustomization.yaml b/volvo-kustomize/dev/scheduledworkflow/kustomization.yaml
new file mode 100644
index 0000000..123442d
--- /dev/null
+++ b/volvo-kustomize/dev/scheduledworkflow/kustomization.yaml
@@ -0,0 +1,4 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+bases:
+- ../../../kustomize/scheduledworkflow
+kind: Kustomization
diff --git a/volvo-kustomize/dev/seldon-core-operator/kustomization.yaml b/volvo-kustomize/dev/seldon-core-operator/kustomization.yaml
new file mode 100644
index 0000000..7a3ef97
--- /dev/null
+++ b/volvo-kustomize/dev/seldon-core-operator/kustomization.yaml
@@ -0,0 +1,4 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+bases:
+- ../../../kustomize/seldon-core-operator
+kind: Kustomization
diff --git a/volvo-kustomize/dev/spark-operator/kustomization.yaml b/volvo-kustomize/dev/spark-operator/kustomization.yaml
new file mode 100644
index 0000000..2de461f
--- /dev/null
+++ b/volvo-kustomize/dev/spark-operator/kustomization.yaml
@@ -0,0 +1,4 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+bases:
+- ../../../kustomize/spark-operator
+kind: Kustomization
diff --git a/volvo-kustomize/dev/tensorboard/kustomization.yaml b/volvo-kustomize/dev/tensorboard/kustomization.yaml
new file mode 100644
index 0000000..9814e17
--- /dev/null
+++ b/volvo-kustomize/dev/tensorboard/kustomization.yaml
@@ -0,0 +1,4 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+bases:
+- ../../../kustomize/tensorboard
+kind: Kustomization
diff --git a/volvo-kustomize/dev/tf-job-crds/kustomization.yaml b/volvo-kustomize/dev/tf-job-crds/kustomization.yaml
new file mode 100644
index 0000000..702f5c3
--- /dev/null
+++ b/volvo-kustomize/dev/tf-job-crds/kustomization.yaml
@@ -0,0 +1,4 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+bases:
+- ../../../kustomize/tf-job-crds
+kind: Kustomization
diff --git a/volvo-kustomize/dev/tf-job-operator/kustomization.yaml b/volvo-kustomize/dev/tf-job-operator/kustomization.yaml
new file mode 100644
index 0000000..78f40ce
--- /dev/null
+++ b/volvo-kustomize/dev/tf-job-operator/kustomization.yaml
@@ -0,0 +1,4 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+bases:
+- ../../../kustomize/tf-job-operator
+kind: Kustomization
diff --git a/volvo-kustomize/dev/webhook/kustomization.yaml b/volvo-kustomize/dev/webhook/kustomization.yaml
new file mode 100644
index 0000000..b06a39d
--- /dev/null
+++ b/volvo-kustomize/dev/webhook/kustomization.yaml
@@ -0,0 +1,4 @@
+apiVersion: kustomize.config.k8s.io/v1beta1
+bases:
+- ../../../kustomize/webhook
+kind: Kustomization