6 istio-injection: disabled
\r
8 apiVersion: apiextensions.k8s.io/v1beta1
\r
9 kind: CustomResourceDefinition
\r
11 name: virtualservices.networking.istio.io
\r
18 "helm.sh/resource-policy": keep
\r
20 group: networking.istio.io
\r
22 kind: VirtualService
\r
23 listKind: VirtualServiceList
\r
24 plural: virtualservices
\r
25 singular: virtualservice
\r
30 - networking-istio-io
\r
33 additionalPrinterColumns:
\r
34 - JSONPath: .spec.gateways
\r
35 description: The names of gateways and sidecars that should apply these routes
\r
38 - JSONPath: .spec.hosts
\r
39 description: The destination hosts to which traffic is being sent
\r
42 - JSONPath: .metadata.creationTimestamp
\r
44 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.
\r
46 Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
\r
50 apiVersion: apiextensions.k8s.io/v1beta1
\r
51 kind: CustomResourceDefinition
\r
53 name: destinationrules.networking.istio.io
\r
60 "helm.sh/resource-policy": keep
\r
62 group: networking.istio.io
\r
64 kind: DestinationRule
\r
65 listKind: DestinationRuleList
\r
66 plural: destinationrules
\r
67 singular: destinationrule
\r
72 - networking-istio-io
\r
75 additionalPrinterColumns:
\r
76 - JSONPath: .spec.host
\r
77 description: The name of a service from the service registry
\r
80 - JSONPath: .metadata.creationTimestamp
\r
82 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.
\r
84 Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
\r
88 apiVersion: apiextensions.k8s.io/v1beta1
\r
89 kind: CustomResourceDefinition
\r
91 name: serviceentries.networking.istio.io
\r
98 "helm.sh/resource-policy": keep
\r
100 group: networking.istio.io
\r
103 listKind: ServiceEntryList
\r
104 plural: serviceentries
\r
105 singular: serviceentry
\r
110 - networking-istio-io
\r
113 additionalPrinterColumns:
\r
114 - JSONPath: .spec.hosts
\r
115 description: The hosts associated with the ServiceEntry
\r
118 - JSONPath: .spec.location
\r
119 description: Whether the service is external to the mesh or part of the mesh (MESH_EXTERNAL or MESH_INTERNAL)
\r
122 - JSONPath: .spec.resolution
\r
123 description: Service discovery mode for the hosts (NONE, STATIC, or DNS)
\r
126 - JSONPath: .metadata.creationTimestamp
\r
128 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.
\r
130 Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
\r
134 apiVersion: apiextensions.k8s.io/v1beta1
\r
135 kind: CustomResourceDefinition
\r
137 name: gateways.networking.istio.io
\r
144 "helm.sh/resource-policy": keep
\r
146 group: networking.istio.io
\r
155 - networking-istio-io
\r
159 apiVersion: apiextensions.k8s.io/v1beta1
\r
160 kind: CustomResourceDefinition
\r
162 name: envoyfilters.networking.istio.io
\r
169 "helm.sh/resource-policy": keep
\r
171 group: networking.istio.io
\r
174 plural: envoyfilters
\r
175 singular: envoyfilter
\r
178 - networking-istio-io
\r
182 kind: CustomResourceDefinition
\r
183 apiVersion: apiextensions.k8s.io/v1beta1
\r
185 name: clusterrbacconfigs.rbac.istio.io
\r
192 "helm.sh/resource-policy": keep
\r
194 group: rbac.istio.io
\r
196 kind: ClusterRbacConfig
\r
197 plural: clusterrbacconfigs
\r
198 singular: clusterrbacconfig
\r
205 kind: CustomResourceDefinition
\r
206 apiVersion: apiextensions.k8s.io/v1beta1
\r
208 name: policies.authentication.istio.io
\r
215 "helm.sh/resource-policy": keep
\r
217 group: authentication.istio.io
\r
224 - authentication-istio-io
\r
228 kind: CustomResourceDefinition
\r
229 apiVersion: apiextensions.k8s.io/v1beta1
\r
231 name: meshpolicies.authentication.istio.io
\r
238 "helm.sh/resource-policy": keep
\r
240 group: authentication.istio.io
\r
243 listKind: MeshPolicyList
\r
244 plural: meshpolicies
\r
245 singular: meshpolicy
\r
248 - authentication-istio-io
\r
252 kind: CustomResourceDefinition
\r
253 apiVersion: apiextensions.k8s.io/v1beta1
\r
255 name: httpapispecbindings.config.istio.io
\r
262 "helm.sh/resource-policy": keep
\r
264 group: config.istio.io
\r
266 kind: HTTPAPISpecBinding
\r
267 plural: httpapispecbindings
\r
268 singular: httpapispecbinding
\r
275 kind: CustomResourceDefinition
\r
276 apiVersion: apiextensions.k8s.io/v1beta1
\r
278 name: httpapispecs.config.istio.io
\r
285 "helm.sh/resource-policy": keep
\r
287 group: config.istio.io
\r
290 plural: httpapispecs
\r
291 singular: httpapispec
\r
298 kind: CustomResourceDefinition
\r
299 apiVersion: apiextensions.k8s.io/v1beta1
\r
301 name: quotaspecbindings.config.istio.io
\r
308 "helm.sh/resource-policy": keep
\r
310 group: config.istio.io
\r
312 kind: QuotaSpecBinding
\r
313 plural: quotaspecbindings
\r
314 singular: quotaspecbinding
\r
321 kind: CustomResourceDefinition
\r
322 apiVersion: apiextensions.k8s.io/v1beta1
\r
324 name: quotaspecs.config.istio.io
\r
331 "helm.sh/resource-policy": keep
\r
333 group: config.istio.io
\r
337 singular: quotaspec
\r
344 kind: CustomResourceDefinition
\r
345 apiVersion: apiextensions.k8s.io/v1beta1
\r
347 name: rules.config.istio.io
\r
350 package: istio.io.mixer
\r
356 "helm.sh/resource-policy": keep
\r
358 group: config.istio.io
\r
369 kind: CustomResourceDefinition
\r
370 apiVersion: apiextensions.k8s.io/v1beta1
\r
372 name: attributemanifests.config.istio.io
\r
375 package: istio.io.mixer
\r
381 "helm.sh/resource-policy": keep
\r
383 group: config.istio.io
\r
385 kind: attributemanifest
\r
386 plural: attributemanifests
\r
387 singular: attributemanifest
\r
394 kind: CustomResourceDefinition
\r
395 apiVersion: apiextensions.k8s.io/v1beta1
\r
397 name: rbacconfigs.rbac.istio.io
\r
400 package: istio.io.mixer
\r
406 "helm.sh/resource-policy": keep
\r
408 group: rbac.istio.io
\r
411 plural: rbacconfigs
\r
412 singular: rbacconfig
\r
419 kind: CustomResourceDefinition
\r
420 apiVersion: apiextensions.k8s.io/v1beta1
\r
422 name: serviceroles.rbac.istio.io
\r
425 package: istio.io.mixer
\r
431 "helm.sh/resource-policy": keep
\r
433 group: rbac.istio.io
\r
436 plural: serviceroles
\r
437 singular: servicerole
\r
444 kind: CustomResourceDefinition
\r
445 apiVersion: apiextensions.k8s.io/v1beta1
\r
447 name: servicerolebindings.rbac.istio.io
\r
450 package: istio.io.mixer
\r
456 "helm.sh/resource-policy": keep
\r
458 group: rbac.istio.io
\r
460 kind: ServiceRoleBinding
\r
461 plural: servicerolebindings
\r
462 singular: servicerolebinding
\r
468 additionalPrinterColumns:
\r
469 - JSONPath: .spec.roleRef.name
\r
470 description: The name of the ServiceRole object being referenced
\r
473 - JSONPath: .metadata.creationTimestamp
\r
475 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.
\r
477 Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
\r
481 kind: CustomResourceDefinition
\r
482 apiVersion: apiextensions.k8s.io/v1beta1
\r
484 name: adapters.config.istio.io
\r
488 istio: mixer-adapter
\r
493 "helm.sh/resource-policy": keep
\r
495 group: config.istio.io
\r
506 kind: CustomResourceDefinition
\r
507 apiVersion: apiextensions.k8s.io/v1beta1
\r
509 name: instances.config.istio.io
\r
513 istio: mixer-instance
\r
518 "helm.sh/resource-policy": keep
\r
520 group: config.istio.io
\r
531 kind: CustomResourceDefinition
\r
532 apiVersion: apiextensions.k8s.io/v1beta1
\r
534 name: templates.config.istio.io
\r
538 istio: mixer-template
\r
543 "helm.sh/resource-policy": keep
\r
545 group: config.istio.io
\r
556 kind: CustomResourceDefinition
\r
557 apiVersion: apiextensions.k8s.io/v1beta1
\r
559 name: handlers.config.istio.io
\r
563 istio: mixer-handler
\r
568 "helm.sh/resource-policy": keep
\r
570 group: config.istio.io
\r
581 apiVersion: apiextensions.k8s.io/v1beta1
\r
582 kind: CustomResourceDefinition
\r
584 name: sidecars.networking.istio.io
\r
591 "helm.sh/resource-policy": keep
\r
593 group: networking.istio.io
\r
600 - networking-istio-io
\r
604 kind: CustomResourceDefinition
\r
605 apiVersion: apiextensions.k8s.io/v1beta1
\r
607 name: authorizationpolicies.rbac.istio.io
\r
614 group: rbac.istio.io
\r
616 kind: AuthorizationPolicy
\r
617 plural: authorizationpolicies
\r
618 singular: authorizationpolicy
\r
625 apiVersion: apiextensions.k8s.io/v1beta1
\r
626 kind: CustomResourceDefinition
\r
628 name: clusterissuers.certmanager.k8s.io
\r
635 "helm.sh/resource-policy": keep
\r
637 group: certmanager.k8s.io
\r
640 kind: ClusterIssuer
\r
641 plural: clusterissuers
\r
644 apiVersion: apiextensions.k8s.io/v1beta1
\r
645 kind: CustomResourceDefinition
\r
647 name: issuers.certmanager.k8s.io
\r
654 "helm.sh/resource-policy": keep
\r
656 group: certmanager.k8s.io
\r
663 apiVersion: apiextensions.k8s.io/v1beta1
\r
664 kind: CustomResourceDefinition
\r
666 name: certificates.certmanager.k8s.io
\r
673 "helm.sh/resource-policy": keep
\r
675 additionalPrinterColumns:
\r
676 - JSONPath: .status.conditions[?(@.type=="Ready")].status
\r
679 - JSONPath: .spec.secretName
\r
682 - JSONPath: .spec.issuerRef.name
\r
686 - JSONPath: .status.conditions[?(@.type=="Ready")].message
\r
690 - JSONPath: .metadata.creationTimestamp
\r
692 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.
\r
694 Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
\r
697 group: certmanager.k8s.io
\r
702 plural: certificates
\r
707 apiVersion: apiextensions.k8s.io/v1beta1
\r
708 kind: CustomResourceDefinition
\r
710 name: orders.certmanager.k8s.io
\r
717 "helm.sh/resource-policy": keep
\r
719 additionalPrinterColumns:
\r
720 - JSONPath: .status.state
\r
723 - JSONPath: .spec.issuerRef.name
\r
727 - JSONPath: .status.reason
\r
731 - JSONPath: .metadata.creationTimestamp
\r
733 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.
\r
735 Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
\r
738 group: certmanager.k8s.io
\r
745 apiVersion: apiextensions.k8s.io/v1beta1
\r
746 kind: CustomResourceDefinition
\r
748 name: challenges.certmanager.k8s.io
\r
755 "helm.sh/resource-policy": keep
\r
757 additionalPrinterColumns:
\r
758 - JSONPath: .status.state
\r
761 - JSONPath: .spec.dnsName
\r
764 - JSONPath: .status.reason
\r
767 - JSONPath: .metadata.creationTimestamp
\r
769 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.
\r
771 Populated by the system. Read-only. Null for lists. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
\r
774 group: certmanager.k8s.io
\r
782 # Source: istio/charts/kiali/templates/demosecret.yaml
\r
788 namespace: istio-system
\r
796 username: YWRtaW4= # admin
\r
797 passphrase: YWRtaW4= # admin
\r
800 # Source: istio/charts/galley/templates/configmap.yaml
\r
804 name: istio-galley-configuration
\r
805 namespace: istio-system
\r
813 validatingwebhookconfiguration.yaml: |-
\r
814 apiVersion: admissionregistration.k8s.io/v1beta1
\r
815 kind: ValidatingWebhookConfiguration
\r
825 - name: pilot.validation.istio.io
\r
829 namespace: istio-system
\r
830 path: "/admitpilot"
\r
842 - httpapispecbindings
\r
844 - quotaspecbindings
\r
858 - authentication.istio.io
\r
867 - networking.istio.io
\r
877 failurePolicy: Fail
\r
879 - name: mixer.validation.istio.io
\r
883 namespace: istio-system
\r
884 path: "/admitmixer"
\r
896 - attributemanifests
\r
928 failurePolicy: Fail
\r
931 # Source: istio/charts/grafana/templates/configmap-custom-resources.yaml
\r
935 name: istio-grafana-custom-resources
\r
936 namespace: istio-system
\r
944 custom-resources.yaml: |-
\r
945 apiVersion: authentication.istio.io/v1alpha1
\r
948 name: grafana-ports-mtls-disabled
\r
949 namespace: istio-system
\r
965 if [ "$#" -ne "1" ]; then
\r
966 echo "first argument should be path to custom resource yaml"
\r
970 pathToResourceYAML=${1}
\r
972 kubectl get validatingwebhookconfiguration istio-galley 2>/dev/null
\r
973 if [ "$?" -eq 0 ]; then
\r
974 echo "istio-galley validatingwebhookconfiguration found - waiting for istio-galley deployment to be ready"
\r
976 kubectl -n istio-system get deployment istio-galley 2>/dev/null
\r
977 if [ "$?" -eq 0 ]; then
\r
982 kubectl -n istio-system rollout status deployment istio-galley
\r
983 if [ "$?" -ne 0 ]; then
\r
984 echo "istio-galley deployment rollout status check failed"
\r
987 echo "istio-galley deployment ready for configuration validation"
\r
990 kubectl apply -f ${pathToResourceYAML}
\r
994 # Source: istio/charts/grafana/templates/configmap-dashboards.yaml
\r
999 name: istio-grafana-configuration-dashboards-galley-dashboard
\r
1000 namespace: istio-system
\r
1008 galley-dashboard.json: '{
\r
1011 "name": "DS_PROMETHEUS",
\r
1012 "label": "Prometheus",
\r
1013 "description": "",
\r
1014 "type": "datasource",
\r
1015 "pluginId": "prometheus",
\r
1016 "pluginName": "Prometheus"
\r
1023 "datasource": "-- Grafana --",
\r
1026 "iconColor": "rgba(0, 211, 255, 1)",
\r
1027 "name": "Annotations & Alerts",
\r
1028 "type": "dashboard"
\r
1032 "editable": false,
\r
1034 "graphTooltip": 0,
\r
1038 "aliasColors": {},
\r
1042 "datasource": "Prometheus",
\r
1063 "nullPointMode": "null",
\r
1064 "percentage": false,
\r
1067 "renderer": "flot",
\r
1068 "seriesOverrides": [],
\r
1069 "spaceLength": 10,
\r
1071 "steppedLine": false,
\r
1074 "expr": "sum(istio_build{component=\"galley\"}) by (tag)",
\r
1075 "format": "time_series",
\r
1076 "intervalFactor": 1,
\r
1077 "legendFormat": "{{ tag }}",
\r
1083 "timeRegions": [],
\r
1084 "timeShift": null,
\r
1085 "title": "Galley Versions",
\r
1089 "value_type": "individual"
\r
1101 "format": "short",
\r
1109 "format": "short",
\r
1119 "alignLevel": null
\r
1123 "collapsed": false,
\r
1132 "title": "Resource Usage",
\r
1136 "aliasColors": {},
\r
1140 "datasource": "Prometheus",
\r
1161 "nullPointMode": "null",
\r
1162 "percentage": false,
\r
1165 "renderer": "flot",
\r
1166 "seriesOverrides": [],
\r
1167 "spaceLength": 10,
\r
1169 "steppedLine": false,
\r
1172 "expr": "process_virtual_memory_bytes{job=\"galley\"}",
\r
1173 "format": "time_series",
\r
1174 "intervalFactor": 2,
\r
1175 "legendFormat": "Virtual Memory",
\r
1179 "expr": "process_resident_memory_bytes{job=\"galley\"}",
\r
1180 "format": "time_series",
\r
1181 "intervalFactor": 2,
\r
1182 "legendFormat": "Resident Memory",
\r
1186 "expr": "go_memstats_heap_sys_bytes{job=\"galley\"}",
\r
1187 "format": "time_series",
\r
1188 "intervalFactor": 2,
\r
1189 "legendFormat": "heap sys",
\r
1193 "expr": "go_memstats_heap_alloc_bytes{job=\"galley\"}",
\r
1194 "format": "time_series",
\r
1195 "intervalFactor": 2,
\r
1196 "legendFormat": "heap alloc",
\r
1200 "expr": "go_memstats_alloc_bytes{job=\"galley\"}",
\r
1201 "format": "time_series",
\r
1202 "intervalFactor": 2,
\r
1203 "legendFormat": "Alloc",
\r
1207 "expr": "go_memstats_heap_inuse_bytes{job=\"galley\"}",
\r
1208 "format": "time_series",
\r
1209 "intervalFactor": 2,
\r
1210 "legendFormat": "Heap in-use",
\r
1214 "expr": "go_memstats_stack_inuse_bytes{job=\"galley\"}",
\r
1215 "format": "time_series",
\r
1216 "intervalFactor": 2,
\r
1217 "legendFormat": "Stack in-use",
\r
1221 "expr": "sum(container_memory_usage_bytes{container_name=~\"galley\", pod_name=~\"istio-galley-.*\"})",
\r
1222 "format": "time_series",
\r
1223 "intervalFactor": 1,
\r
1224 "legendFormat": "Total (kis)",
\r
1230 "timeRegions": [],
\r
1231 "timeShift": null,
\r
1232 "title": "Memory",
\r
1236 "value_type": "individual"
\r
1248 "format": "short",
\r
1256 "format": "short",
\r
1266 "alignLevel": null
\r
1270 "aliasColors": {},
\r
1274 "datasource": "Prometheus",
\r
1295 "nullPointMode": "null",
\r
1296 "percentage": false,
\r
1299 "renderer": "flot",
\r
1300 "seriesOverrides": [],
\r
1301 "spaceLength": 10,
\r
1303 "steppedLine": false,
\r
1306 "expr": "sum(rate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",container_name=~\"galley\", pod_name=~\"istio-galley-.*\"}[1m]))",
\r
1307 "format": "time_series",
\r
1308 "intervalFactor": 2,
\r
1309 "legendFormat": "Total (k8s)",
\r
1313 "expr": "sum(rate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",container_name=~\"galley\", pod_name=~\"istio-galley-.*\"}[1m])) by (container_name)",
\r
1314 "format": "time_series",
\r
1315 "intervalFactor": 2,
\r
1316 "legendFormat": "{{ container_name }} (k8s)",
\r
1320 "expr": "irate(process_cpu_seconds_total{job=\"galley\"}[1m])",
\r
1321 "format": "time_series",
\r
1322 "intervalFactor": 2,
\r
1323 "legendFormat": "galley (self-reported)",
\r
1329 "timeRegions": [],
\r
1330 "timeShift": null,
\r
1335 "value_type": "individual"
\r
1347 "format": "short",
\r
1355 "format": "short",
\r
1365 "alignLevel": null
\r
1369 "aliasColors": {},
\r
1373 "datasource": "Prometheus",
\r
1394 "nullPointMode": "null",
\r
1395 "percentage": false,
\r
1398 "renderer": "flot",
\r
1399 "seriesOverrides": [],
\r
1400 "spaceLength": 10,
\r
1402 "steppedLine": false,
\r
1405 "expr": "process_open_fds{job=\"galley\"}",
\r
1406 "format": "time_series",
\r
1407 "intervalFactor": 2,
\r
1408 "legendFormat": "Open FDs (galley)",
\r
1412 "expr": "container_fs_usage_bytes{container_name=~\"galley\", pod_name=~\"istio-galley-.*\"}",
\r
1413 "format": "time_series",
\r
1414 "intervalFactor": 2,
\r
1415 "legendFormat": "{{ container_name }} ",
\r
1421 "timeRegions": [],
\r
1422 "timeShift": null,
\r
1427 "value_type": "individual"
\r
1439 "format": "short",
\r
1447 "format": "short",
\r
1457 "alignLevel": null
\r
1461 "aliasColors": {},
\r
1465 "datasource": "Prometheus",
\r
1486 "nullPointMode": "null",
\r
1487 "percentage": false,
\r
1490 "renderer": "flot",
\r
1491 "seriesOverrides": [],
\r
1492 "spaceLength": 10,
\r
1494 "steppedLine": false,
\r
1497 "expr": "go_goroutines{job=\"galley\"}",
\r
1498 "format": "time_series",
\r
1499 "intervalFactor": 2,
\r
1500 "legendFormat": "goroutines_total",
\r
1504 "expr": "galley_mcp_source_clients_total",
\r
1505 "format": "time_series",
\r
1506 "intervalFactor": 1,
\r
1507 "legendFormat": "clients_total",
\r
1511 "expr": "go_goroutines{job=\"galley\"}/galley_mcp_source_clients_total",
\r
1512 "format": "time_series",
\r
1513 "intervalFactor": 1,
\r
1514 "legendFormat": "avg_goroutines_per_client",
\r
1520 "timeRegions": [],
\r
1521 "timeShift": null,
\r
1522 "title": "Goroutines",
\r
1526 "value_type": "individual"
\r
1538 "format": "short",
\r
1546 "format": "short",
\r
1556 "alignLevel": null
\r
1560 "collapsed": false,
\r
1569 "title": "Runtime",
\r
1573 "aliasColors": {},
\r
1577 "datasource": "Prometheus",
\r
1598 "nullPointMode": "null",
\r
1599 "percentage": false,
\r
1602 "renderer": "flot",
\r
1603 "seriesOverrides": [],
\r
1604 "spaceLength": 10,
\r
1606 "steppedLine": false,
\r
1609 "expr": "sum(rate(galley_runtime_strategy_on_change_total[1m])) * 60",
\r
1610 "format": "time_series",
\r
1611 "intervalFactor": 1,
\r
1612 "legendFormat": "Strategy Change Events",
\r
1616 "expr": "sum(rate(galley_runtime_processor_events_processed_total[1m])) * 60",
\r
1617 "format": "time_series",
\r
1618 "intervalFactor": 1,
\r
1619 "legendFormat": "Processed Events",
\r
1623 "expr": "sum(rate(galley_runtime_processor_snapshots_published_total[1m])) * 60",
\r
1624 "format": "time_series",
\r
1625 "intervalFactor": 1,
\r
1626 "legendFormat": "Snapshot Published",
\r
1632 "timeRegions": [],
\r
1633 "timeShift": null,
\r
1634 "title": "Event Rates",
\r
1638 "value_type": "individual"
\r
1650 "format": "short",
\r
1651 "label": "Events/min",
\r
1658 "format": "short",
\r
1668 "alignLevel": null
\r
1672 "aliasColors": {},
\r
1676 "datasource": "Prometheus",
\r
1697 "nullPointMode": "null",
\r
1698 "percentage": false,
\r
1701 "renderer": "flot",
\r
1702 "seriesOverrides": [],
\r
1703 "spaceLength": 10,
\r
1705 "steppedLine": false,
\r
1708 "expr": "sum(rate(galley_runtime_strategy_timer_max_time_reached_total[1m])) * 60",
\r
1709 "format": "time_series",
\r
1710 "intervalFactor": 1,
\r
1711 "legendFormat": "Max Time Reached",
\r
1715 "expr": "sum(rate(galley_runtime_strategy_timer_quiesce_reached_total[1m])) * 60",
\r
1716 "format": "time_series",
\r
1717 "intervalFactor": 1,
\r
1718 "legendFormat": "Quiesce Reached",
\r
1722 "expr": "sum(rate(galley_runtime_strategy_timer_resets_total[1m])) * 60",
\r
1723 "format": "time_series",
\r
1724 "intervalFactor": 1,
\r
1725 "legendFormat": "Timer Resets",
\r
1731 "timeRegions": [],
\r
1732 "timeShift": null,
\r
1733 "title": "Timer Rates",
\r
1737 "value_type": "individual"
\r
1749 "format": "short",
\r
1750 "label": "Events/min",
\r
1757 "format": "short",
\r
1767 "alignLevel": null
\r
1771 "aliasColors": {},
\r
1775 "datasource": "Prometheus",
\r
1796 "nullPointMode": "null",
\r
1797 "percentage": false,
\r
1800 "renderer": "flot",
\r
1801 "seriesOverrides": [],
\r
1802 "spaceLength": 10,
\r
1804 "steppedLine": false,
\r
1807 "expr": "histogram_quantile(0.50, sum by (le) (galley_runtime_processor_snapshot_events_total_bucket))",
\r
1808 "format": "time_series",
\r
1809 "intervalFactor": 1,
\r
1810 "legendFormat": "P50",
\r
1814 "expr": "histogram_quantile(0.90, sum by (le) (galley_runtime_processor_snapshot_events_total_bucket))",
\r
1815 "format": "time_series",
\r
1816 "intervalFactor": 1,
\r
1817 "legendFormat": "P90",
\r
1821 "expr": "histogram_quantile(0.95, sum by (le) (galley_runtime_processor_snapshot_events_total_bucket))",
\r
1822 "format": "time_series",
\r
1823 "intervalFactor": 1,
\r
1824 "legendFormat": "P95",
\r
1828 "expr": "histogram_quantile(0.99, sum by (le) (galley_runtime_processor_snapshot_events_total_bucket))",
\r
1829 "format": "time_series",
\r
1830 "intervalFactor": 1,
\r
1831 "legendFormat": "P99",
\r
1837 "timeRegions": [],
\r
1838 "timeShift": null,
\r
1839 "title": "Events Per Snapshot",
\r
1843 "value_type": "individual"
\r
1855 "format": "short",
\r
1863 "format": "short",
\r
1873 "alignLevel": null
\r
1877 "aliasColors": {},
\r
1881 "datasource": "Prometheus",
\r
1902 "nullPointMode": "null",
\r
1903 "percentage": false,
\r
1906 "renderer": "flot",
\r
1907 "seriesOverrides": [],
\r
1908 "spaceLength": 10,
\r
1910 "steppedLine": false,
\r
1913 "expr": "sum by (typeURL) (galley_runtime_state_type_instances_total)",
\r
1914 "format": "time_series",
\r
1915 "intervalFactor": 1,
\r
1916 "legendFormat": "{{ typeURL }}",
\r
1922 "timeRegions": [],
\r
1923 "timeShift": null,
\r
1924 "title": "State Type Instances",
\r
1928 "value_type": "individual"
\r
1940 "format": "short",
\r
1948 "format": "short",
\r
1958 "alignLevel": null
\r
1962 "collapsed": false,
\r
1971 "title": "Validation",
\r
1975 "aliasColors": {},
\r
1979 "datasource": "Prometheus",
\r
2000 "nullPointMode": "null",
\r
2001 "percentage": false,
\r
2004 "renderer": "flot",
\r
2005 "seriesOverrides": [],
\r
2006 "spaceLength": 10,
\r
2008 "steppedLine": false,
\r
2011 "expr": "galley_validation_cert_key_updates{job=\"galley\"}",
\r
2012 "format": "time_series",
\r
2013 "intervalFactor": 1,
\r
2014 "legendFormat": "Key Updates",
\r
2018 "expr": "galley_validation_cert_key_update_errors{job=\"galley\"}",
\r
2019 "format": "time_series",
\r
2020 "intervalFactor": 1,
\r
2021 "legendFormat": "Key Update Errors: {{ error }}",
\r
2027 "timeRegions": [],
\r
2028 "timeShift": null,
\r
2029 "title": "Validation Webhook Certificate",
\r
2033 "value_type": "individual"
\r
2045 "format": "short",
\r
2053 "format": "short",
\r
2063 "alignLevel": null
\r
2067 "aliasColors": {},
\r
2071 "datasource": "Prometheus",
\r
2092 "nullPointMode": "null",
\r
2093 "percentage": false,
\r
2096 "renderer": "flot",
\r
2097 "seriesOverrides": [],
\r
2098 "spaceLength": 10,
\r
2100 "steppedLine": false,
\r
2103 "expr": "sum(galley_validation_passed{job=\"galley\"}) by (group, version, resource)",
\r
2104 "format": "time_series",
\r
2105 "intervalFactor": 1,
\r
2106 "legendFormat": "Passed: {{ group }}/{{ version }}/{{resource}}",
\r
2110 "expr": "sum(galley_validation_failed{job=\"galley\"}) by (group, version, resource, reason)",
\r
2111 "format": "time_series",
\r
2112 "intervalFactor": 1,
\r
2113 "legendFormat": "Failed: {{ group }}/{{ version }}/{{resource}} ({{ reason}})",
\r
2119 "timeRegions": [],
\r
2120 "timeShift": null,
\r
2121 "title": "Resource Validation",
\r
2125 "value_type": "individual"
\r
2137 "format": "short",
\r
2145 "format": "short",
\r
2155 "alignLevel": null
\r
2159 "aliasColors": {},
\r
2163 "datasource": "Prometheus",
\r
2184 "nullPointMode": "null",
\r
2185 "percentage": false,
\r
2188 "renderer": "flot",
\r
2189 "seriesOverrides": [],
\r
2190 "spaceLength": 10,
\r
2192 "steppedLine": false,
\r
2195 "expr": "sum(galley_validation_http_error{job=\"galley\"}) by (status)",
\r
2196 "format": "time_series",
\r
2197 "intervalFactor": 1,
\r
2198 "legendFormat": "{{ status }}",
\r
2204 "timeRegions": [],
\r
2205 "timeShift": null,
\r
2206 "title": "Validation HTTP Errors",
\r
2210 "value_type": "individual"
\r
2222 "format": "short",
\r
2230 "format": "short",
\r
2240 "alignLevel": null
\r
2244 "collapsed": false,
\r
2253 "title": "Kubernetes Source",
\r
2257 "aliasColors": {},
\r
2261 "datasource": "Prometheus",
\r
2282 "nullPointMode": "null",
\r
2283 "percentage": false,
\r
2286 "renderer": "flot",
\r
2287 "seriesOverrides": [],
\r
2288 "spaceLength": 10,
\r
2290 "steppedLine": false,
\r
2293 "expr": "rate(galley_source_kube_event_success_total[1m]) * 60",
\r
2294 "format": "time_series",
\r
2295 "intervalFactor": 1,
\r
2296 "legendFormat": "Success",
\r
2300 "expr": "rate(galley_source_kube_event_error_total[1m]) * 60",
\r
2301 "format": "time_series",
\r
2302 "intervalFactor": 1,
\r
2303 "legendFormat": "Error",
\r
2309 "timeRegions": [],
\r
2310 "timeShift": null,
\r
2311 "title": "Source Event Rate",
\r
2315 "value_type": "individual"
\r
2327 "format": "short",
\r
2328 "label": "Events/min",
\r
2335 "format": "short",
\r
2345 "alignLevel": null
\r
2349 "aliasColors": {},
\r
2353 "datasource": "Prometheus",
\r
2374 "nullPointMode": "null",
\r
2375 "percentage": false,
\r
2378 "renderer": "flot",
\r
2379 "seriesOverrides": [],
\r
2380 "spaceLength": 10,
\r
2382 "steppedLine": false,
\r
2385 "expr": "rate(galley_source_kube_dynamic_converter_success_total[1m]) * 60",
\r
2386 "format": "time_series",
\r
2387 "intervalFactor": 1,
\r
2388 "legendFormat": "{apiVersion=\"{{apiVersion}}\",group=\"{{group}}\",kind=\"{{kind}}\"}",
\r
2394 "timeRegions": [],
\r
2395 "timeShift": null,
\r
2396 "title": "Kubernetes Object Conversion Successes",
\r
2400 "value_type": "individual"
\r
2412 "format": "short",
\r
2413 "label": "Conversions/min",
\r
2420 "format": "short",
\r
2430 "alignLevel": null
\r
2434 "aliasColors": {},
\r
2438 "datasource": "Prometheus",
\r
2459 "nullPointMode": "null",
\r
2460 "percentage": false,
\r
2463 "renderer": "flot",
\r
2464 "seriesOverrides": [],
\r
2465 "spaceLength": 10,
\r
2467 "steppedLine": false,
\r
2470 "expr": "rate(galley_source_kube_dynamic_converter_failure_total[1m]) * 60",
\r
2471 "format": "time_series",
\r
2472 "intervalFactor": 1,
\r
2473 "legendFormat": "Error",
\r
2479 "timeRegions": [],
\r
2480 "timeShift": null,
\r
2481 "title": "Kubernetes Object Conversion Failures",
\r
2485 "value_type": "individual"
\r
2497 "format": "short",
\r
2498 "label": "Failures/min",
\r
2505 "format": "short",
\r
2515 "alignLevel": null
\r
2519 "collapsed": false,
\r
2528 "title": "Mesh Configuration Protocol",
\r
2532 "aliasColors": {},
\r
2536 "datasource": "Prometheus",
\r
2557 "nullPointMode": "null",
\r
2558 "percentage": false,
\r
2561 "renderer": "flot",
\r
2562 "seriesOverrides": [],
\r
2563 "spaceLength": 10,
\r
2565 "steppedLine": false,
\r
2568 "expr": "sum(galley_mcp_source_clients_total)",
\r
2569 "format": "time_series",
\r
2570 "intervalFactor": 1,
\r
2571 "legendFormat": "Clients",
\r
2577 "timeRegions": [],
\r
2578 "timeShift": null,
\r
2579 "title": "Connected Clients",
\r
2583 "value_type": "individual"
\r
2595 "format": "short",
\r
2603 "format": "short",
\r
2613 "alignLevel": null
\r
2617 "aliasColors": {},
\r
2621 "datasource": "Prometheus",
\r
2642 "nullPointMode": "null",
\r
2643 "percentage": false,
\r
2646 "renderer": "flot",
\r
2647 "seriesOverrides": [],
\r
2648 "spaceLength": 10,
\r
2650 "steppedLine": false,
\r
2653 "expr": "sum by(collection)(irate(galley_mcp_source_request_acks_total[1m]) * 60)",
\r
2654 "format": "time_series",
\r
2655 "intervalFactor": 1,
\r
2656 "legendFormat": "",
\r
2662 "timeRegions": [],
\r
2663 "timeShift": null,
\r
2664 "title": "Request ACKs",
\r
2668 "value_type": "individual"
\r
2680 "format": "short",
\r
2681 "label": "ACKs/min",
\r
2688 "format": "short",
\r
2698 "alignLevel": null
\r
2702 "aliasColors": {},
\r
2706 "datasource": "Prometheus",
\r
2727 "nullPointMode": "null",
\r
2728 "percentage": false,
\r
2731 "renderer": "flot",
\r
2732 "seriesOverrides": [],
\r
2733 "spaceLength": 10,
\r
2735 "steppedLine": false,
\r
2738 "expr": "rate(galley_mcp_source_request_nacks_total[1m]) * 60",
\r
2739 "format": "time_series",
\r
2740 "intervalFactor": 1,
\r
2746 "timeRegions": [],
\r
2747 "timeShift": null,
\r
2748 "title": "Request NACKs",
\r
2752 "value_type": "individual"
\r
2764 "format": "short",
\r
2765 "label": "NACKs/min",
\r
2772 "format": "short",
\r
2782 "alignLevel": null
\r
2787 "schemaVersion": 16,
\r
2798 "refresh_intervals": [
\r
2823 "title": "Istio Galley Dashboard",
\r
2824 "uid": "TSEY6jLmk",
\r
2832 name: istio-grafana-configuration-dashboards-istio-mesh-dashboard
\r
2833 namespace: istio-system
\r
2841 istio-mesh-dashboard.json: '{
\r
2844 "name": "DS_PROMETHEUS",
\r
2845 "label": "Prometheus",
\r
2846 "description": "",
\r
2847 "type": "datasource",
\r
2848 "pluginId": "prometheus",
\r
2849 "pluginName": "Prometheus"
\r
2854 "type": "grafana",
\r
2856 "name": "Grafana",
\r
2857 "version": "5.2.3"
\r
2863 "version": "5.0.0"
\r
2866 "type": "datasource",
\r
2867 "id": "prometheus",
\r
2868 "name": "Prometheus",
\r
2869 "version": "5.0.0"
\r
2873 "id": "singlestat",
\r
2874 "name": "Singlestat",
\r
2875 "version": "5.0.0"
\r
2881 "version": "5.0.0"
\r
2887 "version": "5.0.0"
\r
2894 "datasource": "-- Grafana --",
\r
2897 "iconColor": "rgba(0, 211, 255, 1)",
\r
2898 "name": "Annotations & Alerts",
\r
2899 "type": "dashboard"
\r
2903 "editable": false,
\r
2905 "graphTooltip": 0,
\r
2910 "content": "<div>\n <div style=\"position: absolute; bottom: 0\">\n <a href=\"https://istio.io\" target=\"_blank\" style=\"font-size: 30px; text-decoration: none; color: inherit\"><img src=\"https://istio.io/img/istio-logo.svg\" style=\"height: 50px\"> Istio</a>\n </div>\n <div style=\"position: absolute; bottom: 0; right: 0; font-size: 15px\">\n Istio is an <a href=\"https://github.com/istio/istio\" target=\"_blank\">open platform</a> that provides a uniform way to connect,\n <a href=\"https://istio.io/docs/concepts/traffic-management/overview.html\" target=\"_blank\">manage</a>, and \n <a href=\"https://istio.io/docs/concepts/network-and-auth/auth.html\" target=\"_blank\">secure</a> microservices.\n <br>\n Need help? Join the <a href=\"https://istio.io/community/\" target=\"_blank\">Istio community</a>.\n </div>\n</div>",
\r
2922 "font-size": "18pt"
\r
2925 "transparent": true,
\r
2929 "cacheTimeout": null,
\r
2930 "colorBackground": false,
\r
2931 "colorValue": false,
\r
2933 "rgba(245, 54, 54, 0.9)",
\r
2934 "rgba(237, 129, 40, 0.89)",
\r
2935 "rgba(50, 172, 45, 0.97)"
\r
2937 "datasource": "Prometheus",
\r
2943 "thresholdLabels": false,
\r
2944 "thresholdMarkers": true
\r
2958 "name": "value to text",
\r
2962 "name": "range to text",
\r
2966 "maxDataPoints": 100,
\r
2967 "nullPointMode": "connected",
\r
2970 "postfixFontSize": "50%",
\r
2972 "prefixFontSize": "50%",
\r
2981 "fillColor": "rgba(31, 118, 189, 0.18)",
\r
2983 "lineColor": "rgb(31, 120, 193)",
\r
2986 "tableColumn": "",
\r
2989 "expr": "round(sum(irate(istio_requests_total{reporter=\"destination\"}[1m])), 0.001)",
\r
2990 "intervalFactor": 1,
\r
2996 "title": "Global Request Volume",
\r
2997 "transparent": false,
\r
2998 "type": "singlestat",
\r
2999 "valueFontSize": "80%",
\r
3007 "valueName": "avg"
\r
3010 "cacheTimeout": null,
\r
3011 "colorBackground": false,
\r
3012 "colorValue": false,
\r
3014 "rgba(245, 54, 54, 0.9)",
\r
3015 "rgba(237, 129, 40, 0.89)",
\r
3016 "rgba(50, 172, 45, 0.97)"
\r
3018 "datasource": "Prometheus",
\r
3019 "format": "percentunit",
\r
3024 "thresholdLabels": false,
\r
3025 "thresholdMarkers": false
\r
3039 "name": "value to text",
\r
3043 "name": "range to text",
\r
3047 "maxDataPoints": 100,
\r
3048 "nullPointMode": "connected",
\r
3051 "postfixFontSize": "50%",
\r
3053 "prefixFontSize": "50%",
\r
3062 "fillColor": "rgba(31, 118, 189, 0.18)",
\r
3064 "lineColor": "rgb(31, 120, 193)",
\r
3067 "tableColumn": "",
\r
3070 "expr": "sum(rate(istio_requests_total{reporter=\"destination\", response_code!~\"5.*\"}[1m])) / sum(rate(istio_requests_total{reporter=\"destination\"}[1m]))",
\r
3071 "format": "time_series",
\r
3072 "intervalFactor": 1,
\r
3077 "thresholds": "95, 99, 99.5",
\r
3078 "title": "Global Success Rate (non-5xx responses)",
\r
3079 "transparent": false,
\r
3080 "type": "singlestat",
\r
3081 "valueFontSize": "80%",
\r
3089 "valueName": "avg"
\r
3092 "cacheTimeout": null,
\r
3093 "colorBackground": false,
\r
3094 "colorValue": false,
\r
3096 "rgba(245, 54, 54, 0.9)",
\r
3097 "rgba(237, 129, 40, 0.89)",
\r
3098 "rgba(50, 172, 45, 0.97)"
\r
3100 "datasource": "Prometheus",
\r
3106 "thresholdLabels": false,
\r
3107 "thresholdMarkers": true
\r
3121 "name": "value to text",
\r
3125 "name": "range to text",
\r
3129 "maxDataPoints": 100,
\r
3130 "nullPointMode": "connected",
\r
3133 "postfixFontSize": "50%",
\r
3135 "prefixFontSize": "50%",
\r
3144 "fillColor": "rgba(31, 118, 189, 0.18)",
\r
3146 "lineColor": "rgb(31, 120, 193)",
\r
3149 "tableColumn": "",
\r
3152 "expr": "sum(irate(istio_requests_total{reporter=\"destination\", response_code=~\"4.*\"}[1m])) ",
\r
3153 "format": "time_series",
\r
3154 "intervalFactor": 1,
\r
3161 "transparent": false,
\r
3162 "type": "singlestat",
\r
3163 "valueFontSize": "80%",
\r
3171 "valueName": "avg"
\r
3174 "cacheTimeout": null,
\r
3175 "colorBackground": false,
\r
3176 "colorValue": false,
\r
3178 "rgba(245, 54, 54, 0.9)",
\r
3179 "rgba(237, 129, 40, 0.89)",
\r
3180 "rgba(50, 172, 45, 0.97)"
\r
3182 "datasource": "Prometheus",
\r
3188 "thresholdLabels": false,
\r
3189 "thresholdMarkers": true
\r
3203 "name": "value to text",
\r
3207 "name": "range to text",
\r
3211 "maxDataPoints": 100,
\r
3212 "nullPointMode": "connected",
\r
3215 "postfixFontSize": "50%",
\r
3217 "prefixFontSize": "50%",
\r
3226 "fillColor": "rgba(31, 118, 189, 0.18)",
\r
3228 "lineColor": "rgb(31, 120, 193)",
\r
3231 "tableColumn": "",
\r
3234 "expr": "sum(irate(istio_requests_total{reporter=\"destination\", response_code=~\"5.*\"}[1m])) ",
\r
3235 "format": "time_series",
\r
3236 "intervalFactor": 1,
\r
3243 "transparent": false,
\r
3244 "type": "singlestat",
\r
3245 "valueFontSize": "80%",
\r
3253 "valueName": "avg"
\r
3257 "datasource": "Prometheus",
\r
3258 "fontSize": "100%",
\r
3265 "hideTimeOverride": false,
\r
3270 "repeatDirection": "v",
\r
3272 "showHeader": true,
\r
3279 "alias": "Workload",
\r
3280 "colorMode": null,
\r
3282 "rgba(245, 54, 54, 0.9)",
\r
3283 "rgba(237, 129, 40, 0.89)",
\r
3284 "rgba(50, 172, 45, 0.97)"
\r
3286 "dateFormat": "YYYY-MM-DD HH:mm:ss",
\r
3289 "linkTargetBlank": false,
\r
3290 "linkTooltip": "Workload dashboard",
\r
3291 "linkUrl": "/dashboard/db/istio-workload-dashboard?var-namespace=$__cell_2&var-workload=$__cell_",
\r
3292 "pattern": "destination_workload",
\r
3293 "preserveFormat": false,
\r
3294 "sanitize": false,
\r
3301 "colorMode": null,
\r
3303 "rgba(245, 54, 54, 0.9)",
\r
3304 "rgba(237, 129, 40, 0.89)",
\r
3305 "rgba(50, 172, 45, 0.97)"
\r
3307 "dateFormat": "YYYY-MM-DD HH:mm:ss",
\r
3309 "pattern": "Time",
\r
3315 "alias": "Requests",
\r
3316 "colorMode": null,
\r
3318 "rgba(245, 54, 54, 0.9)",
\r
3319 "rgba(237, 129, 40, 0.89)",
\r
3320 "rgba(50, 172, 45, 0.97)"
\r
3322 "dateFormat": "YYYY-MM-DD HH:mm:ss",
\r
3324 "pattern": "Value #A",
\r
3330 "alias": "P50 Latency",
\r
3331 "colorMode": null,
\r
3333 "rgba(245, 54, 54, 0.9)",
\r
3334 "rgba(237, 129, 40, 0.89)",
\r
3335 "rgba(50, 172, 45, 0.97)"
\r
3337 "dateFormat": "YYYY-MM-DD HH:mm:ss",
\r
3339 "pattern": "Value #B",
\r
3345 "alias": "P90 Latency",
\r
3346 "colorMode": null,
\r
3348 "rgba(245, 54, 54, 0.9)",
\r
3349 "rgba(237, 129, 40, 0.89)",
\r
3350 "rgba(50, 172, 45, 0.97)"
\r
3352 "dateFormat": "YYYY-MM-DD HH:mm:ss",
\r
3354 "pattern": "Value #D",
\r
3360 "alias": "P99 Latency",
\r
3361 "colorMode": null,
\r
3363 "rgba(245, 54, 54, 0.9)",
\r
3364 "rgba(237, 129, 40, 0.89)",
\r
3365 "rgba(50, 172, 45, 0.97)"
\r
3367 "dateFormat": "YYYY-MM-DD HH:mm:ss",
\r
3369 "pattern": "Value #E",
\r
3375 "alias": "Success Rate",
\r
3376 "colorMode": "cell",
\r
3378 "rgba(245, 54, 54, 0.9)",
\r
3379 "rgba(237, 129, 40, 0.89)",
\r
3380 "rgba(50, 172, 45, 0.97)"
\r
3382 "dateFormat": "YYYY-MM-DD HH:mm:ss",
\r
3384 "pattern": "Value #F",
\r
3390 "unit": "percentunit"
\r
3393 "alias": "Workload",
\r
3394 "colorMode": null,
\r
3396 "rgba(245, 54, 54, 0.9)",
\r
3397 "rgba(237, 129, 40, 0.89)",
\r
3398 "rgba(50, 172, 45, 0.97)"
\r
3400 "dateFormat": "YYYY-MM-DD HH:mm:ss",
\r
3403 "linkTooltip": "$__cell dashboard",
\r
3404 "linkUrl": "/dashboard/db/istio-workload-dashboard?var-workload=$__cell_2&var-namespace=$__cell_3",
\r
3405 "pattern": "destination_workload_var",
\r
3411 "alias": "Service",
\r
3412 "colorMode": null,
\r
3414 "rgba(245, 54, 54, 0.9)",
\r
3415 "rgba(237, 129, 40, 0.89)",
\r
3416 "rgba(50, 172, 45, 0.97)"
\r
3418 "dateFormat": "YYYY-MM-DD HH:mm:ss",
\r
3421 "linkTooltip": "$__cell dashboard",
\r
3422 "linkUrl": "/dashboard/db/istio-service-dashboard?var-service=$__cell",
\r
3423 "pattern": "destination_service",
\r
3430 "colorMode": null,
\r
3432 "rgba(245, 54, 54, 0.9)",
\r
3433 "rgba(237, 129, 40, 0.89)",
\r
3434 "rgba(50, 172, 45, 0.97)"
\r
3436 "dateFormat": "YYYY-MM-DD HH:mm:ss",
\r
3438 "pattern": "destination_workload_namespace",
\r
3446 "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\")",
\r
3447 "format": "table",
\r
3450 "intervalFactor": 1,
\r
3451 "legendFormat": "{{ destination_workload}}.{{ destination_workload_namespace }}",
\r
3455 "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\")",
\r
3456 "format": "table",
\r
3459 "intervalFactor": 1,
\r
3460 "legendFormat": "{{ destination_workload}}.{{ destination_workload_namespace }}",
\r
3464 "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\")",
\r
3465 "format": "table",
\r
3468 "intervalFactor": 1,
\r
3469 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }}",
\r
3473 "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\")",
\r
3474 "format": "table",
\r
3477 "intervalFactor": 1,
\r
3478 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }}",
\r
3482 "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\")",
\r
3483 "format": "table",
\r
3487 "intervalFactor": 1,
\r
3488 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }}",
\r
3493 "title": "HTTP/GRPC Workloads",
\r
3494 "transform": "table",
\r
3495 "transparent": false,
\r
3500 "datasource": "Prometheus",
\r
3501 "fontSize": "100%",
\r
3508 "hideTimeOverride": false,
\r
3512 "repeatDirection": "v",
\r
3514 "showHeader": true,
\r
3521 "alias": "Workload",
\r
3522 "colorMode": null,
\r
3524 "rgba(245, 54, 54, 0.9)",
\r
3525 "rgba(237, 129, 40, 0.89)",
\r
3526 "rgba(50, 172, 45, 0.97)"
\r
3528 "dateFormat": "YYYY-MM-DD HH:mm:ss",
\r
3531 "linkTargetBlank": false,
\r
3532 "linkTooltip": "$__cell dashboard",
\r
3533 "linkUrl": "/dashboard/db/istio-tcp-workload-dashboard?var-namespace=$__cell_2&&var-workload=$__cell",
\r
3534 "pattern": "destination_workload",
\r
3535 "preserveFormat": false,
\r
3536 "sanitize": false,
\r
3542 "alias": "Bytes Sent",
\r
3543 "colorMode": null,
\r
3545 "rgba(245, 54, 54, 0.9)",
\r
3546 "rgba(237, 129, 40, 0.89)",
\r
3547 "rgba(50, 172, 45, 0.97)"
\r
3549 "dateFormat": "YYYY-MM-DD HH:mm:ss",
\r
3551 "pattern": "Value #A",
\r
3559 "alias": "Bytes Received",
\r
3560 "colorMode": null,
\r
3562 "rgba(245, 54, 54, 0.9)",
\r
3563 "rgba(237, 129, 40, 0.89)",
\r
3564 "rgba(50, 172, 45, 0.97)"
\r
3566 "dateFormat": "YYYY-MM-DD HH:mm:ss",
\r
3568 "pattern": "Value #C",
\r
3575 "colorMode": null,
\r
3577 "rgba(245, 54, 54, 0.9)",
\r
3578 "rgba(237, 129, 40, 0.89)",
\r
3579 "rgba(50, 172, 45, 0.97)"
\r
3581 "dateFormat": "YYYY-MM-DD HH:mm:ss",
\r
3583 "pattern": "Time",
\r
3589 "alias": "Workload",
\r
3590 "colorMode": null,
\r
3592 "rgba(245, 54, 54, 0.9)",
\r
3593 "rgba(237, 129, 40, 0.89)",
\r
3594 "rgba(50, 172, 45, 0.97)"
\r
3596 "dateFormat": "YYYY-MM-DD HH:mm:ss",
\r
3599 "linkTooltip": "$__cell dashboard",
\r
3600 "linkUrl": "/dashboard/db/istio-workload-dashboard?var-namespace=$__cell_3&var-workload=$__cell_2",
\r
3601 "pattern": "destination_workload_var",
\r
3608 "colorMode": null,
\r
3610 "rgba(245, 54, 54, 0.9)",
\r
3611 "rgba(237, 129, 40, 0.89)",
\r
3612 "rgba(50, 172, 45, 0.97)"
\r
3614 "dateFormat": "YYYY-MM-DD HH:mm:ss",
\r
3616 "pattern": "destination_workload_namespace",
\r
3622 "alias": "Service",
\r
3623 "colorMode": null,
\r
3625 "rgba(245, 54, 54, 0.9)",
\r
3626 "rgba(237, 129, 40, 0.89)",
\r
3627 "rgba(50, 172, 45, 0.97)"
\r
3629 "dateFormat": "YYYY-MM-DD HH:mm:ss",
\r
3632 "linkTooltip": "$__cell dashboard",
\r
3633 "linkUrl": "/dashboard/db/istio-service-dashboard?var-service=$__cell",
\r
3634 "pattern": "destination_service",
\r
3642 "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\")",
\r
3643 "format": "table",
\r
3646 "intervalFactor": 1,
\r
3647 "legendFormat": "{{ destination_workload }}",
\r
3651 "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\")",
\r
3652 "format": "table",
\r
3655 "intervalFactor": 1,
\r
3656 "legendFormat": "{{ destination_workload }}",
\r
3661 "title": "TCP Workloads",
\r
3662 "transform": "table",
\r
3663 "transparent": false,
\r
3667 "aliasColors": {},
\r
3671 "datasource": "Prometheus",
\r
3681 "alignAsTable": false,
\r
3686 "rightSide": false,
\r
3694 "nullPointMode": "null",
\r
3695 "percentage": false,
\r
3698 "renderer": "flot",
\r
3699 "seriesOverrides": [],
\r
3700 "spaceLength": 10,
\r
3702 "steppedLine": false,
\r
3705 "expr": "sum(istio_build) by (component, tag)",
\r
3706 "format": "time_series",
\r
3707 "intervalFactor": 1,
\r
3708 "legendFormat": "{{ component }}: {{ tag }}",
\r
3714 "timeShift": null,
\r
3715 "title": "Istio Components by Version",
\r
3719 "value_type": "individual"
\r
3721 "transparent": false,
\r
3732 "format": "short",
\r
3740 "format": "short",
\r
3750 "alignLevel": null
\r
3755 "schemaVersion": 16,
\r
3766 "refresh_intervals": [
\r
3790 "timezone": "browser",
\r
3791 "title": "Istio Mesh Dashboard",
\r
3799 name: istio-grafana-configuration-dashboards-istio-performance-dashboard
\r
3800 namespace: istio-system
\r
3808 istio-performance-dashboard.json: '{
\r
3813 "datasource": "-- Grafana --",
\r
3816 "iconColor": "rgba(0, 211, 255, 1)",
\r
3817 "name": "Annotations & Alerts",
\r
3818 "type": "dashboard"
\r
3822 "editable": false,
\r
3824 "graphTooltip": 0,
\r
3829 "collapsed": true,
\r
3839 "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.\n\n\n",
\r
3848 "mode": "markdown",
\r
3850 "timeShift": null,
\r
3851 "title": "Performance Dashboard README",
\r
3852 "transparent": true,
\r
3856 "title": "Performance Dashboard Notes",
\r
3860 "collapsed": false,
\r
3869 "title": "vCPU Usage",
\r
3873 "aliasColors": {},
\r
3897 "nullPointMode": "null",
\r
3898 "percentage": false,
\r
3901 "renderer": "flot",
\r
3902 "seriesOverrides": [],
\r
3903 "spaceLength": 10,
\r
3905 "steppedLine": false,
\r
3908 "expr": "(sum(irate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",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)",
\r
3909 "format": "time_series",
\r
3911 "intervalFactor": 1,
\r
3912 "legendFormat": "istio-telemetry",
\r
3916 "expr": "(sum(irate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",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))",
\r
3917 "format": "time_series",
\r
3919 "intervalFactor": 1,
\r
3920 "legendFormat": "istio-ingressgateway",
\r
3924 "expr": "(sum(irate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",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)",
\r
3925 "format": "time_series",
\r
3926 "intervalFactor": 1,
\r
3927 "legendFormat": "istio-proxy",
\r
3931 "expr": "(sum(irate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",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)",
\r
3932 "format": "time_series",
\r
3933 "intervalFactor": 1,
\r
3934 "legendFormat": "istio-policy",
\r
3940 "timeRegions": [],
\r
3941 "timeShift": null,
\r
3942 "title": "vCPU / 1k rps",
\r
3946 "value_type": "individual"
\r
3958 "format": "short",
\r
3966 "format": "short",
\r
3976 "alignLevel": null
\r
3980 "aliasColors": {},
\r
4004 "nullPointMode": "null",
\r
4005 "percentage": false,
\r
4008 "renderer": "flot",
\r
4009 "seriesOverrides": [],
\r
4010 "spaceLength": 10,
\r
4012 "steppedLine": false,
\r
4015 "expr": "sum(rate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",pod_name=~\"istio-telemetry-.*\",container_name=~\"mixer|istio-proxy\"}[1m]))",
\r
4016 "format": "time_series",
\r
4017 "intervalFactor": 1,
\r
4018 "legendFormat": "istio-telemetry",
\r
4022 "expr": "sum(rate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",pod_name=~\"istio-ingressgateway-.*\",container_name=\"istio-proxy\"}[1m]))",
\r
4023 "format": "time_series",
\r
4024 "intervalFactor": 1,
\r
4025 "legendFormat": "istio-ingressgateway",
\r
4029 "expr": "sum(rate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",namespace!=\"istio-system\",container_name=\"istio-proxy\"}[1m]))",
\r
4030 "format": "time_series",
\r
4031 "intervalFactor": 1,
\r
4032 "legendFormat": "istio-proxy",
\r
4036 "expr": "sum(rate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",pod_name=~\"istio-policy-.*\",container_name=~\"mixer|istio-proxy\"}[1m]))",
\r
4037 "format": "time_series",
\r
4038 "intervalFactor": 1,
\r
4039 "legendFormat": "istio-policy",
\r
4045 "timeRegions": [],
\r
4046 "timeShift": null,
\r
4051 "value_type": "individual"
\r
4063 "format": "short",
\r
4071 "format": "short",
\r
4081 "alignLevel": null
\r
4085 "collapsed": false,
\r
4094 "title": "Memory and Data Rates",
\r
4098 "aliasColors": {},
\r
4122 "nullPointMode": "null",
\r
4123 "percentage": false,
\r
4126 "renderer": "flot",
\r
4127 "seriesOverrides": [],
\r
4128 "spaceLength": 10,
\r
4130 "steppedLine": false,
\r
4133 "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)",
\r
4134 "format": "time_series",
\r
4135 "intervalFactor": 1,
\r
4136 "legendFormat": "istio-telemetry / 1k rps",
\r
4140 "expr": "sum(container_memory_usage_bytes{pod_name=~\"istio-ingressgateway-.*\"}) / count(container_memory_usage_bytes{pod_name=~\"istio-ingressgateway-.*\",container_name!=\"POD\"})",
\r
4141 "format": "time_series",
\r
4142 "intervalFactor": 1,
\r
4143 "legendFormat": "per istio-ingressgateway",
\r
4147 "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\"})",
\r
4148 "format": "time_series",
\r
4149 "intervalFactor": 1,
\r
4150 "legendFormat": "per istio proxy",
\r
4154 "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)",
\r
4155 "format": "time_series",
\r
4156 "intervalFactor": 1,
\r
4157 "legendFormat": "istio-policy / 1k rps",
\r
4163 "timeRegions": [],
\r
4164 "timeShift": null,
\r
4165 "title": "Memory Usage",
\r
4169 "value_type": "individual"
\r
4181 "format": "bytes",
\r
4189 "format": "short",
\r
4199 "alignLevel": null
\r
4203 "aliasColors": {},
\r
4227 "nullPointMode": "null",
\r
4228 "percentage": false,
\r
4231 "renderer": "flot",
\r
4232 "seriesOverrides": [],
\r
4233 "spaceLength": 10,
\r
4235 "steppedLine": false,
\r
4238 "expr": "sum(irate(istio_response_bytes_sum{destination_workload=\"istio-telemetry\"}[1m])) + sum(irate(istio_request_bytes_sum{destination_workload=\"istio-telemetry\"}[1m]))",
\r
4239 "format": "time_series",
\r
4240 "intervalFactor": 1,
\r
4241 "legendFormat": "istio-telemetry",
\r
4245 "expr": "sum(irate(istio_response_bytes_sum{source_workload=\"istio-ingressgateway\", reporter=\"source\"}[1m]))",
\r
4246 "format": "time_series",
\r
4247 "intervalFactor": 1,
\r
4248 "legendFormat": "istio-ingressgateway",
\r
4252 "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]))",
\r
4253 "format": "time_series",
\r
4254 "intervalFactor": 1,
\r
4255 "legendFormat": "istio-proxy",
\r
4259 "expr": "sum(irate(istio_response_bytes_sum{destination_workload=\"istio-policy\"}[1m])) + sum(irate(istio_request_bytes_sum{destination_workload=\"istio-policy\"}[1m]))",
\r
4260 "format": "time_series",
\r
4261 "intervalFactor": 1,
\r
4262 "legendFormat": "istio_policy",
\r
4268 "timeRegions": [],
\r
4269 "timeShift": null,
\r
4270 "title": "Bytes transferred / sec",
\r
4274 "value_type": "individual"
\r
4294 "format": "short",
\r
4304 "alignLevel": null
\r
4308 "collapsed": false,
\r
4317 "title": "Istio Component Versions",
\r
4321 "aliasColors": {},
\r
4345 "nullPointMode": "null",
\r
4346 "percentage": false,
\r
4349 "renderer": "flot",
\r
4350 "seriesOverrides": [],
\r
4351 "spaceLength": 10,
\r
4353 "steppedLine": false,
\r
4356 "expr": "sum(istio_build) by (component, tag)",
\r
4357 "format": "time_series",
\r
4358 "intervalFactor": 1,
\r
4359 "legendFormat": "{{ component }}: {{ tag }}",
\r
4365 "timeRegions": [],
\r
4366 "timeShift": null,
\r
4367 "title": "Istio Components by Version",
\r
4371 "value_type": "individual"
\r
4383 "format": "short",
\r
4391 "format": "short",
\r
4401 "alignLevel": null
\r
4405 "collapsed": false,
\r
4414 "title": "Proxy Resource Usage",
\r
4418 "aliasColors": {},
\r
4422 "datasource": "Prometheus",
\r
4443 "nullPointMode": "null",
\r
4444 "percentage": false,
\r
4447 "renderer": "flot",
\r
4448 "seriesOverrides": [],
\r
4449 "spaceLength": 10,
\r
4451 "steppedLine": false,
\r
4454 "expr": "sum(container_memory_usage_bytes{container_name=\"istio-proxy\"})",
\r
4455 "format": "time_series",
\r
4457 "intervalFactor": 2,
\r
4458 "legendFormat": "{{ container_name }} (k8s)",
\r
4465 "timeRegions": [],
\r
4466 "timeShift": null,
\r
4467 "title": "Memory",
\r
4471 "value_type": "individual"
\r
4483 "format": "bytes",
\r
4491 "format": "short",
\r
4501 "alignLevel": null
\r
4505 "aliasColors": {},
\r
4509 "datasource": "Prometheus",
\r
4530 "nullPointMode": "null",
\r
4531 "percentage": false,
\r
4534 "renderer": "flot",
\r
4535 "seriesOverrides": [],
\r
4536 "spaceLength": 10,
\r
4538 "steppedLine": false,
\r
4541 "expr": "sum(rate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",container_name=\"istio-proxy\"}[1m]))",
\r
4542 "format": "time_series",
\r
4544 "intervalFactor": 2,
\r
4545 "legendFormat": "Total (k8s)",
\r
4552 "timeRegions": [],
\r
4553 "timeShift": null,
\r
4558 "value_type": "individual"
\r
4570 "format": "short",
\r
4578 "format": "short",
\r
4588 "alignLevel": null
\r
4592 "aliasColors": {},
\r
4596 "datasource": "Prometheus",
\r
4617 "nullPointMode": "null",
\r
4618 "percentage": false,
\r
4621 "renderer": "flot",
\r
4622 "seriesOverrides": [],
\r
4623 "spaceLength": 10,
\r
4625 "steppedLine": false,
\r
4628 "expr": "sum(container_fs_usage_bytes{container_name=\"istio-proxy\"})",
\r
4629 "format": "time_series",
\r
4630 "intervalFactor": 2,
\r
4631 "legendFormat": "{{ container_name }}",
\r
4638 "timeRegions": [],
\r
4639 "timeShift": null,
\r
4644 "value_type": "individual"
\r
4656 "format": "bytes",
\r
4675 "alignLevel": null
\r
4679 "collapsed": false,
\r
4688 "title": "Pilot Resource Usage",
\r
4692 "aliasColors": {},
\r
4696 "datasource": "Prometheus",
\r
4717 "nullPointMode": "null",
\r
4718 "percentage": false,
\r
4721 "renderer": "flot",
\r
4722 "seriesOverrides": [],
\r
4723 "spaceLength": 10,
\r
4725 "steppedLine": false,
\r
4728 "expr": "process_virtual_memory_bytes{job=\"pilot\"}",
\r
4729 "format": "time_series",
\r
4731 "intervalFactor": 2,
\r
4732 "legendFormat": "Virtual Memory",
\r
4737 "expr": "process_resident_memory_bytes{job=\"pilot\"}",
\r
4738 "format": "time_series",
\r
4739 "intervalFactor": 2,
\r
4740 "legendFormat": "Resident Memory",
\r
4745 "expr": "go_memstats_heap_sys_bytes{job=\"pilot\"}",
\r
4746 "format": "time_series",
\r
4748 "intervalFactor": 2,
\r
4749 "legendFormat": "heap sys",
\r
4753 "expr": "go_memstats_heap_alloc_bytes{job=\"pilot\"}",
\r
4754 "format": "time_series",
\r
4756 "intervalFactor": 2,
\r
4757 "legendFormat": "heap alloc",
\r
4761 "expr": "go_memstats_alloc_bytes{job=\"pilot\"}",
\r
4762 "format": "time_series",
\r
4763 "intervalFactor": 2,
\r
4764 "legendFormat": "Alloc",
\r
4769 "expr": "go_memstats_heap_inuse_bytes{job=\"pilot\"}",
\r
4770 "format": "time_series",
\r
4772 "intervalFactor": 2,
\r
4773 "legendFormat": "Heap in-use",
\r
4778 "expr": "go_memstats_stack_inuse_bytes{job=\"pilot\"}",
\r
4779 "format": "time_series",
\r
4780 "intervalFactor": 2,
\r
4781 "legendFormat": "Stack in-use",
\r
4786 "expr": "sum(container_memory_usage_bytes{container_name=~\"discovery|istio-proxy\", pod_name=~\"istio-pilot-.*\"})",
\r
4787 "format": "time_series",
\r
4789 "intervalFactor": 2,
\r
4790 "legendFormat": "Total (k8s)",
\r
4795 "expr": "container_memory_usage_bytes{container_name=~\"discovery|istio-proxy\", pod_name=~\"istio-pilot-.*\"}",
\r
4796 "format": "time_series",
\r
4798 "intervalFactor": 2,
\r
4799 "legendFormat": "{{ container_name }} (k8s)",
\r
4806 "timeRegions": [],
\r
4807 "timeShift": null,
\r
4808 "title": "Memory",
\r
4812 "value_type": "individual"
\r
4824 "format": "bytes",
\r
4832 "format": "short",
\r
4842 "alignLevel": null
\r
4846 "aliasColors": {},
\r
4850 "datasource": "Prometheus",
\r
4871 "nullPointMode": "null",
\r
4872 "percentage": false,
\r
4875 "renderer": "flot",
\r
4876 "seriesOverrides": [],
\r
4877 "spaceLength": 10,
\r
4879 "steppedLine": false,
\r
4882 "expr": "sum(rate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",container_name=~\"discovery|istio-proxy\", pod_name=~\"istio-pilot-.*\"}[1m]))",
\r
4883 "format": "time_series",
\r
4885 "intervalFactor": 2,
\r
4886 "legendFormat": "Total (k8s)",
\r
4891 "expr": "sum(rate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",container_name=~\"discovery|istio-proxy\", pod_name=~\"istio-pilot-.*\"}[1m])) by (container_name)",
\r
4892 "format": "time_series",
\r
4894 "intervalFactor": 2,
\r
4895 "legendFormat": "{{ container_name }} (k8s)",
\r
4900 "expr": "irate(process_cpu_seconds_total{job=\"pilot\"}[1m])",
\r
4901 "format": "time_series",
\r
4903 "intervalFactor": 2,
\r
4904 "legendFormat": "pilot (self-reported)",
\r
4911 "timeRegions": [],
\r
4912 "timeShift": null,
\r
4917 "value_type": "individual"
\r
4929 "format": "short",
\r
4937 "format": "short",
\r
4947 "alignLevel": null
\r
4951 "aliasColors": {},
\r
4955 "datasource": "Prometheus",
\r
4976 "nullPointMode": "null",
\r
4977 "percentage": false,
\r
4980 "renderer": "flot",
\r
4981 "seriesOverrides": [],
\r
4982 "spaceLength": 10,
\r
4984 "steppedLine": false,
\r
4987 "expr": "process_open_fds{job=\"pilot\"}",
\r
4988 "format": "time_series",
\r
4992 "intervalFactor": 2,
\r
4993 "legendFormat": "Open FDs (pilot)",
\r
4997 "expr": "container_fs_usage_bytes{container_name=~\"discovery|istio-proxy\", pod_name=~\"istio-pilot-.*\"}",
\r
4998 "format": "time_series",
\r
4999 "intervalFactor": 2,
\r
5000 "legendFormat": "{{ container_name }}",
\r
5007 "timeRegions": [],
\r
5008 "timeShift": null,
\r
5013 "value_type": "individual"
\r
5025 "format": "bytes",
\r
5044 "alignLevel": null
\r
5048 "aliasColors": {},
\r
5052 "datasource": "Prometheus",
\r
5073 "nullPointMode": "null",
\r
5074 "percentage": false,
\r
5077 "renderer": "flot",
\r
5078 "seriesOverrides": [],
\r
5079 "spaceLength": 10,
\r
5081 "steppedLine": false,
\r
5084 "expr": "go_goroutines{job=\"pilot\"}",
\r
5085 "format": "time_series",
\r
5086 "intervalFactor": 2,
\r
5087 "legendFormat": "Number of Goroutines",
\r
5094 "timeRegions": [],
\r
5095 "timeShift": null,
\r
5096 "title": "Goroutines",
\r
5100 "value_type": "individual"
\r
5112 "format": "short",
\r
5120 "format": "short",
\r
5130 "alignLevel": null
\r
5134 "collapsed": false,
\r
5143 "title": "Mixer Resource Usage",
\r
5147 "aliasColors": {},
\r
5151 "datasource": "Prometheus",
\r
5172 "nullPointMode": "null",
\r
5173 "percentage": false,
\r
5176 "renderer": "flot",
\r
5177 "seriesOverrides": [],
\r
5178 "spaceLength": 10,
\r
5180 "steppedLine": false,
\r
5183 "expr": "process_virtual_memory_bytes{job=~\"istio-telemetry|istio-policy\"}",
\r
5184 "format": "time_series",
\r
5186 "intervalFactor": 2,
\r
5187 "legendFormat": "Virtual Memory",
\r
5192 "expr": "process_resident_memory_bytes{job=~\"istio-telemetry|istio-policy\"}",
\r
5193 "format": "time_series",
\r
5194 "intervalFactor": 2,
\r
5195 "legendFormat": "Resident Memory",
\r
5200 "expr": "go_memstats_heap_sys_bytes{job=~\"istio-telemetry|istio-policy\"}",
\r
5201 "format": "time_series",
\r
5203 "intervalFactor": 2,
\r
5204 "legendFormat": "heap sys",
\r
5208 "expr": "go_memstats_heap_alloc_bytes{job=~\"istio-telemetry|istio-policy\"}",
\r
5209 "format": "time_series",
\r
5211 "intervalFactor": 2,
\r
5212 "legendFormat": "heap alloc",
\r
5216 "expr": "go_memstats_alloc_bytes{job=~\"istio-telemetry|istio-policy\"}",
\r
5217 "format": "time_series",
\r
5218 "intervalFactor": 2,
\r
5219 "legendFormat": "Alloc",
\r
5224 "expr": "go_memstats_heap_inuse_bytes{job=~\"istio-telemetry|istio-policy\"}",
\r
5225 "format": "time_series",
\r
5227 "intervalFactor": 2,
\r
5228 "legendFormat": "Heap in-use",
\r
5233 "expr": "go_memstats_stack_inuse_bytes{job=~\"istio-policy|istio-telemetry\"}",
\r
5234 "format": "time_series",
\r
5235 "intervalFactor": 2,
\r
5236 "legendFormat": "Stack in-use",
\r
5241 "expr": "sum(container_memory_usage_bytes{container_name=~\"mixer|istio-proxy\", pod_name=~\"istio-telemetry-.*\"})",
\r
5242 "format": "time_series",
\r
5244 "intervalFactor": 2,
\r
5245 "legendFormat": "Total (k8s)",
\r
5250 "expr": "container_memory_usage_bytes{container_name=~\"mixer|istio-proxy\", pod_name=~\"istio-telemetry-.*\"}",
\r
5251 "format": "time_series",
\r
5253 "intervalFactor": 2,
\r
5254 "legendFormat": "{{ container_name }} (k8s)",
\r
5261 "timeRegions": [],
\r
5262 "timeShift": null,
\r
5263 "title": "Memory",
\r
5267 "value_type": "individual"
\r
5279 "format": "bytes",
\r
5287 "format": "short",
\r
5297 "alignLevel": null
\r
5301 "aliasColors": {},
\r
5305 "datasource": "Prometheus",
\r
5326 "nullPointMode": "null",
\r
5327 "percentage": false,
\r
5330 "renderer": "flot",
\r
5331 "seriesOverrides": [],
\r
5332 "spaceLength": 10,
\r
5334 "steppedLine": false,
\r
5337 "expr": "sum(rate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",container_name=~\"mixer|istio-proxy\", pod_name=~\"istio-telemetry-.*\"}[1m]))",
\r
5338 "format": "time_series",
\r
5340 "intervalFactor": 2,
\r
5341 "legendFormat": "Total (k8s)",
\r
5346 "expr": "sum(rate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",container_name=~\"mixer|istio-proxy\", pod_name=~\"istio-telemetry-.*\"}[1m])) by (container_name)",
\r
5347 "format": "time_series",
\r
5349 "intervalFactor": 2,
\r
5350 "legendFormat": "{{ container_name }} (k8s)",
\r
5355 "expr": "irate(process_cpu_seconds_total{job=~\"istio-policy|istio-telemetry\"}[1m])",
\r
5356 "format": "time_series",
\r
5358 "intervalFactor": 2,
\r
5359 "legendFormat": "mixer (self-reported)",
\r
5366 "timeRegions": [],
\r
5367 "timeShift": null,
\r
5372 "value_type": "individual"
\r
5384 "format": "short",
\r
5392 "format": "short",
\r
5402 "alignLevel": null
\r
5406 "aliasColors": {},
\r
5410 "datasource": "Prometheus",
\r
5431 "nullPointMode": "null",
\r
5432 "percentage": false,
\r
5435 "renderer": "flot",
\r
5436 "seriesOverrides": [],
\r
5437 "spaceLength": 10,
\r
5439 "steppedLine": false,
\r
5442 "expr": "process_open_fds{job=~\"istio-policy|istio-telemetry\"}",
\r
5443 "format": "time_series",
\r
5447 "intervalFactor": 2,
\r
5448 "legendFormat": "Open FDs (pilot)",
\r
5452 "expr": "container_fs_usage_bytes{container_name=~\"mixer|istio-proxy\", pod_name=~\"istio-telemetry-.*\"}",
\r
5453 "format": "time_series",
\r
5454 "intervalFactor": 2,
\r
5455 "legendFormat": "{{ container_name }}",
\r
5462 "timeRegions": [],
\r
5463 "timeShift": null,
\r
5468 "value_type": "individual"
\r
5480 "format": "bytes",
\r
5499 "alignLevel": null
\r
5503 "aliasColors": {},
\r
5507 "datasource": "Prometheus",
\r
5528 "nullPointMode": "null",
\r
5529 "percentage": false,
\r
5532 "renderer": "flot",
\r
5533 "seriesOverrides": [],
\r
5534 "spaceLength": 10,
\r
5536 "steppedLine": false,
\r
5539 "expr": "go_goroutines{job=\"istio-telemetry\"}",
\r
5540 "format": "time_series",
\r
5541 "intervalFactor": 2,
\r
5542 "legendFormat": "Number of Goroutines",
\r
5549 "timeRegions": [],
\r
5550 "timeShift": null,
\r
5551 "title": "Goroutines",
\r
5555 "value_type": "individual"
\r
5567 "format": "short",
\r
5575 "format": "short",
\r
5585 "alignLevel": null
\r
5590 "schemaVersion": 18,
\r
5601 "refresh_intervals": [
\r
5626 "title": "Istio Performance Dashboard",
\r
5627 "uid": "vu8e0VWZk",
\r
5635 name: istio-grafana-configuration-dashboards-istio-service-dashboard
\r
5636 namespace: istio-system
\r
5644 istio-service-dashboard.json: '{
\r
5649 "datasource": "-- Grafana --",
\r
5652 "iconColor": "rgba(0, 211, 255, 1)",
\r
5653 "name": "Annotations & Alerts",
\r
5654 "type": "dashboard"
\r
5658 "editable": false,
\r
5660 "graphTooltip": 0,
\r
5661 "iteration": 1536442501501,
\r
5665 "content": "<div class=\"dashboard-header text-center\">\n<span>SERVICE: $service</span>\n</div>",
\r
5676 "transparent": true,
\r
5680 "cacheTimeout": null,
\r
5681 "colorBackground": false,
\r
5682 "colorValue": false,
\r
5684 "rgba(245, 54, 54, 0.9)",
\r
5685 "rgba(237, 129, 40, 0.89)",
\r
5686 "rgba(50, 172, 45, 0.97)"
\r
5688 "datasource": "Prometheus",
\r
5694 "thresholdLabels": false,
\r
5695 "thresholdMarkers": true
\r
5709 "name": "value to text",
\r
5713 "name": "range to text",
\r
5717 "maxDataPoints": 100,
\r
5718 "nullPointMode": "connected",
\r
5721 "postfixFontSize": "50%",
\r
5723 "prefixFontSize": "50%",
\r
5732 "fillColor": "rgba(31, 118, 189, 0.18)",
\r
5734 "lineColor": "rgb(31, 120, 193)",
\r
5737 "tableColumn": "",
\r
5740 "expr": "round(sum(irate(istio_requests_total{reporter=\"source\",destination_service=~\"$service\"}[5m])), 0.001)",
\r
5741 "format": "time_series",
\r
5742 "intervalFactor": 1,
\r
5748 "title": "Client Request Volume",
\r
5749 "transparent": false,
\r
5750 "type": "singlestat",
\r
5751 "valueFontSize": "80%",
\r
5759 "valueName": "current"
\r
5762 "cacheTimeout": null,
\r
5763 "colorBackground": false,
\r
5764 "colorValue": false,
\r
5766 "rgba(50, 172, 45, 0.97)",
\r
5767 "rgba(237, 129, 40, 0.89)",
\r
5768 "rgba(245, 54, 54, 0.9)"
\r
5770 "datasource": "Prometheus",
\r
5772 "format": "percentunit",
\r
5777 "thresholdLabels": false,
\r
5778 "thresholdMarkers": false
\r
5792 "name": "value to text",
\r
5796 "name": "range to text",
\r
5800 "maxDataPoints": 100,
\r
5801 "nullPointMode": "connected",
\r
5804 "postfixFontSize": "50%",
\r
5806 "prefixFontSize": "50%",
\r
5815 "fillColor": "rgba(31, 118, 189, 0.18)",
\r
5817 "lineColor": "rgb(31, 120, 193)",
\r
5820 "tableColumn": "",
\r
5823 "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]))",
\r
5824 "format": "time_series",
\r
5825 "intervalFactor": 1,
\r
5829 "thresholds": "95, 99, 99.5",
\r
5830 "title": "Client Success Rate (non-5xx responses)",
\r
5831 "transparent": false,
\r
5832 "type": "singlestat",
\r
5833 "valueFontSize": "80%",
\r
5841 "valueName": "avg"
\r
5844 "aliasColors": {},
\r
5848 "datasource": "Prometheus",
\r
5858 "alignAsTable": false,
\r
5861 "hideEmpty": false,
\r
5862 "hideZero": false,
\r
5865 "rightSide": true,
\r
5873 "nullPointMode": "null",
\r
5874 "percentage": false,
\r
5877 "renderer": "flot",
\r
5878 "seriesOverrides": [],
\r
5879 "spaceLength": 10,
\r
5881 "steppedLine": false,
\r
5884 "expr": "histogram_quantile(0.50, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\",destination_service=~\"$service\"}[1m])) by (le))",
\r
5885 "format": "time_series",
\r
5887 "intervalFactor": 1,
\r
5888 "legendFormat": "P50",
\r
5892 "expr": "histogram_quantile(0.90, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\",destination_service=~\"$service\"}[1m])) by (le))",
\r
5893 "format": "time_series",
\r
5895 "intervalFactor": 1,
\r
5896 "legendFormat": "P90",
\r
5900 "expr": "histogram_quantile(0.99, sum(irate(istio_request_duration_seconds_bucket{reporter=\"source\",destination_service=~\"$service\"}[1m])) by (le))",
\r
5901 "format": "time_series",
\r
5903 "intervalFactor": 1,
\r
5904 "legendFormat": "P99",
\r
5910 "timeShift": null,
\r
5911 "title": "Client Request Duration",
\r
5915 "value_type": "individual"
\r
5935 "format": "short",
\r
5945 "alignLevel": null
\r
5949 "cacheTimeout": null,
\r
5950 "colorBackground": false,
\r
5951 "colorValue": false,
\r
5954 "rgba(237, 129, 40, 0.89)",
\r
5957 "datasource": "Prometheus",
\r
5963 "thresholdLabels": false,
\r
5964 "thresholdMarkers": true
\r
5978 "name": "value to text",
\r
5982 "name": "range to text",
\r
5986 "maxDataPoints": 100,
\r
5987 "nullPointMode": "connected",
\r
5990 "postfixFontSize": "50%",
\r
5992 "prefixFontSize": "50%",
\r
6001 "fillColor": "rgba(31, 118, 189, 0.18)",
\r
6003 "lineColor": "rgb(31, 120, 193)",
\r
6006 "tableColumn": "",
\r
6009 "expr": "sum(irate(istio_tcp_received_bytes_total{reporter=\"source\", destination_service=~\"$service\"}[1m]))",
\r
6010 "format": "time_series",
\r
6012 "intervalFactor": 1,
\r
6013 "legendFormat": "",
\r
6018 "title": "TCP Received Bytes",
\r
6019 "transparent": false,
\r
6020 "type": "singlestat",
\r
6021 "valueFontSize": "80%",
\r
6029 "valueName": "avg"
\r
6032 "cacheTimeout": null,
\r
6033 "colorBackground": false,
\r
6034 "colorValue": false,
\r
6036 "rgba(245, 54, 54, 0.9)",
\r
6037 "rgba(237, 129, 40, 0.89)",
\r
6038 "rgba(50, 172, 45, 0.97)"
\r
6040 "datasource": "Prometheus",
\r
6046 "thresholdLabels": false,
\r
6047 "thresholdMarkers": true
\r
6061 "name": "value to text",
\r
6065 "name": "range to text",
\r
6069 "maxDataPoints": 100,
\r
6070 "nullPointMode": "connected",
\r
6073 "postfixFontSize": "50%",
\r
6075 "prefixFontSize": "50%",
\r
6084 "fillColor": "rgba(31, 118, 189, 0.18)",
\r
6086 "lineColor": "rgb(31, 120, 193)",
\r
6089 "tableColumn": "",
\r
6092 "expr": "round(sum(irate(istio_requests_total{reporter=\"destination\",destination_service=~\"$service\"}[5m])), 0.001)",
\r
6093 "format": "time_series",
\r
6094 "intervalFactor": 1,
\r
6100 "title": "Server Request Volume",
\r
6101 "transparent": false,
\r
6102 "type": "singlestat",
\r
6103 "valueFontSize": "80%",
\r
6111 "valueName": "current"
\r
6114 "cacheTimeout": null,
\r
6115 "colorBackground": false,
\r
6116 "colorValue": false,
\r
6118 "rgba(50, 172, 45, 0.97)",
\r
6119 "rgba(237, 129, 40, 0.89)",
\r
6120 "rgba(245, 54, 54, 0.9)"
\r
6122 "datasource": "Prometheus",
\r
6124 "format": "percentunit",
\r
6129 "thresholdLabels": false,
\r
6130 "thresholdMarkers": false
\r
6144 "name": "value to text",
\r
6148 "name": "range to text",
\r
6152 "maxDataPoints": 100,
\r
6153 "nullPointMode": "connected",
\r
6156 "postfixFontSize": "50%",
\r
6158 "prefixFontSize": "50%",
\r
6167 "fillColor": "rgba(31, 118, 189, 0.18)",
\r
6169 "lineColor": "rgb(31, 120, 193)",
\r
6172 "tableColumn": "",
\r
6175 "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]))",
\r
6176 "format": "time_series",
\r
6177 "intervalFactor": 1,
\r
6181 "thresholds": "95, 99, 99.5",
\r
6182 "title": "Server Success Rate (non-5xx responses)",
\r
6183 "transparent": false,
\r
6184 "type": "singlestat",
\r
6185 "valueFontSize": "80%",
\r
6193 "valueName": "avg"
\r
6196 "aliasColors": {},
\r
6200 "datasource": "Prometheus",
\r
6210 "alignAsTable": false,
\r
6213 "hideEmpty": false,
\r
6214 "hideZero": false,
\r
6217 "rightSide": true,
\r
6225 "nullPointMode": "null",
\r
6226 "percentage": false,
\r
6229 "renderer": "flot",
\r
6230 "seriesOverrides": [],
\r
6231 "spaceLength": 10,
\r
6233 "steppedLine": false,
\r
6236 "expr": "histogram_quantile(0.50, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\",destination_service=~\"$service\"}[1m])) by (le))",
\r
6237 "format": "time_series",
\r
6239 "intervalFactor": 1,
\r
6240 "legendFormat": "P50",
\r
6244 "expr": "histogram_quantile(0.90, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\",destination_service=~\"$service\"}[1m])) by (le))",
\r
6245 "format": "time_series",
\r
6247 "intervalFactor": 1,
\r
6248 "legendFormat": "P90",
\r
6252 "expr": "histogram_quantile(0.99, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\",destination_service=~\"$service\"}[1m])) by (le))",
\r
6253 "format": "time_series",
\r
6255 "intervalFactor": 1,
\r
6256 "legendFormat": "P99",
\r
6262 "timeShift": null,
\r
6263 "title": "Server Request Duration",
\r
6267 "value_type": "individual"
\r
6287 "format": "short",
\r
6297 "alignLevel": null
\r
6301 "cacheTimeout": null,
\r
6302 "colorBackground": false,
\r
6303 "colorValue": false,
\r
6306 "rgba(237, 129, 40, 0.89)",
\r
6309 "datasource": "Prometheus",
\r
6315 "thresholdLabels": false,
\r
6316 "thresholdMarkers": true
\r
6330 "name": "value to text",
\r
6334 "name": "range to text",
\r
6338 "maxDataPoints": 100,
\r
6339 "nullPointMode": "connected",
\r
6342 "postfixFontSize": "50%",
\r
6344 "prefixFontSize": "50%",
\r
6353 "fillColor": "rgba(31, 118, 189, 0.18)",
\r
6355 "lineColor": "rgb(31, 120, 193)",
\r
6358 "tableColumn": "",
\r
6361 "expr": "sum(irate(istio_tcp_sent_bytes_total{reporter=\"source\", destination_service=~\"$service\"}[1m])) ",
\r
6362 "format": "time_series",
\r
6364 "intervalFactor": 1,
\r
6365 "legendFormat": "",
\r
6370 "title": "TCP Sent Bytes",
\r
6371 "transparent": false,
\r
6372 "type": "singlestat",
\r
6373 "valueFontSize": "80%",
\r
6381 "valueName": "avg"
\r
6384 "content": "<div class=\"dashboard-header text-center\">\n<span>CLIENT WORKLOADS</span>\n</div>",
\r
6395 "transparent": true,
\r
6399 "aliasColors": {},
\r
6403 "datasource": "Prometheus",
\r
6415 "hideEmpty": true,
\r
6425 "nullPointMode": "null as zero",
\r
6426 "percentage": false,
\r
6429 "renderer": "flot",
\r
6430 "seriesOverrides": [],
\r
6431 "spaceLength": 10,
\r
6433 "steppedLine": false,
\r
6436 "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)",
\r
6437 "format": "time_series",
\r
6438 "intervalFactor": 1,
\r
6439 "legendFormat": "{{ source_workload }}.{{ source_workload_namespace }} : {{ response_code }} (🔐mTLS)",
\r
6444 "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)",
\r
6445 "format": "time_series",
\r
6447 "intervalFactor": 1,
\r
6448 "legendFormat": "{{ source_workload }}.{{ source_workload_namespace }} : {{ response_code }}",
\r
6455 "timeShift": null,
\r
6456 "title": "Incoming Requests by Source And Response Code",
\r
6460 "value_type": "individual"
\r
6482 "format": "short",
\r
6492 "alignLevel": null
\r
6496 "aliasColors": {},
\r
6500 "datasource": "Prometheus",
\r
6512 "hideEmpty": true,
\r
6513 "hideZero": false,
\r
6523 "nullPointMode": "null",
\r
6524 "percentage": false,
\r
6527 "renderer": "flot",
\r
6528 "seriesOverrides": [],
\r
6529 "spaceLength": 10,
\r
6531 "steppedLine": false,
\r
6534 "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)",
\r
6535 "format": "time_series",
\r
6537 "intervalFactor": 1,
\r
6538 "legendFormat": "{{ source_workload }}.{{ source_workload_namespace }} (🔐mTLS)",
\r
6543 "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)",
\r
6544 "format": "time_series",
\r
6546 "intervalFactor": 1,
\r
6547 "legendFormat": "{{ source_workload }}.{{ source_workload_namespace }}",
\r
6554 "timeShift": null,
\r
6555 "title": "Incoming Success Rate (non-5xx responses) By Source",
\r
6559 "value_type": "individual"
\r
6571 "format": "percentunit",
\r
6579 "format": "short",
\r
6589 "alignLevel": null
\r
6593 "aliasColors": {},
\r
6597 "datasource": "Prometheus",
\r
6598 "description": "",
\r
6608 "alignAsTable": false,
\r
6611 "hideEmpty": true,
\r
6612 "hideZero": false,
\r
6615 "rightSide": false,
\r
6623 "nullPointMode": "null",
\r
6624 "percentage": false,
\r
6627 "renderer": "flot",
\r
6628 "seriesOverrides": [],
\r
6629 "spaceLength": 10,
\r
6631 "steppedLine": false,
\r
6634 "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))",
\r
6635 "format": "time_series",
\r
6637 "intervalFactor": 1,
\r
6638 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50 (🔐mTLS)",
\r
6643 "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))",
\r
6644 "format": "time_series",
\r
6646 "intervalFactor": 1,
\r
6647 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90 (🔐mTLS)",
\r
6652 "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))",
\r
6653 "format": "time_series",
\r
6655 "intervalFactor": 1,
\r
6656 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95 (🔐mTLS)",
\r
6661 "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))",
\r
6662 "format": "time_series",
\r
6664 "intervalFactor": 1,
\r
6665 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99 (🔐mTLS)",
\r
6670 "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))",
\r
6671 "format": "time_series",
\r
6673 "intervalFactor": 1,
\r
6674 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50",
\r
6679 "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))",
\r
6680 "format": "time_series",
\r
6682 "intervalFactor": 1,
\r
6683 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90",
\r
6688 "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))",
\r
6689 "format": "time_series",
\r
6691 "intervalFactor": 1,
\r
6692 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95",
\r
6697 "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))",
\r
6698 "format": "time_series",
\r
6700 "intervalFactor": 1,
\r
6701 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99",
\r
6708 "timeShift": null,
\r
6709 "title": "Incoming Request Duration by Source",
\r
6713 "value_type": "individual"
\r
6733 "format": "short",
\r
6743 "alignLevel": null
\r
6747 "aliasColors": {},
\r
6751 "datasource": "Prometheus",
\r
6761 "alignAsTable": false,
\r
6764 "hideEmpty": true,
\r
6767 "rightSide": false,
\r
6775 "nullPointMode": "null",
\r
6776 "percentage": false,
\r
6779 "renderer": "flot",
\r
6780 "seriesOverrides": [],
\r
6781 "spaceLength": 10,
\r
6783 "steppedLine": false,
\r
6786 "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))",
\r
6787 "format": "time_series",
\r
6789 "intervalFactor": 1,
\r
6790 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50 (🔐mTLS)",
\r
6795 "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))",
\r
6796 "format": "time_series",
\r
6798 "intervalFactor": 1,
\r
6799 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90 (🔐mTLS)",
\r
6804 "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))",
\r
6805 "format": "time_series",
\r
6807 "intervalFactor": 1,
\r
6808 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95 (🔐mTLS)",
\r
6813 "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))",
\r
6814 "format": "time_series",
\r
6816 "intervalFactor": 1,
\r
6817 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99 (🔐mTLS)",
\r
6822 "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))",
\r
6823 "format": "time_series",
\r
6825 "intervalFactor": 1,
\r
6826 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50",
\r
6831 "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))",
\r
6832 "format": "time_series",
\r
6834 "intervalFactor": 1,
\r
6835 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90",
\r
6840 "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))",
\r
6841 "format": "time_series",
\r
6843 "intervalFactor": 1,
\r
6844 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95",
\r
6849 "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))",
\r
6850 "format": "time_series",
\r
6852 "intervalFactor": 1,
\r
6853 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99",
\r
6860 "timeShift": null,
\r
6861 "title": "Incoming Request Size By Source",
\r
6865 "value_type": "individual"
\r
6877 "format": "decbytes",
\r
6885 "format": "short",
\r
6895 "alignLevel": null
\r
6899 "aliasColors": {},
\r
6903 "datasource": "Prometheus",
\r
6913 "alignAsTable": false,
\r
6916 "hideEmpty": true,
\r
6919 "rightSide": false,
\r
6927 "nullPointMode": "null",
\r
6928 "percentage": false,
\r
6931 "renderer": "flot",
\r
6932 "seriesOverrides": [],
\r
6933 "spaceLength": 10,
\r
6935 "steppedLine": false,
\r
6938 "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))",
\r
6939 "format": "time_series",
\r
6941 "intervalFactor": 1,
\r
6942 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50 (🔐mTLS)",
\r
6947 "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))",
\r
6948 "format": "time_series",
\r
6950 "intervalFactor": 1,
\r
6951 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90 (🔐mTLS)",
\r
6956 "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))",
\r
6957 "format": "time_series",
\r
6959 "intervalFactor": 1,
\r
6960 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95 (🔐mTLS)",
\r
6965 "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))",
\r
6966 "format": "time_series",
\r
6968 "intervalFactor": 1,
\r
6969 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99 (🔐mTLS)",
\r
6974 "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))",
\r
6975 "format": "time_series",
\r
6977 "intervalFactor": 1,
\r
6978 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50",
\r
6983 "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))",
\r
6984 "format": "time_series",
\r
6986 "intervalFactor": 1,
\r
6987 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90",
\r
6992 "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))",
\r
6993 "format": "time_series",
\r
6995 "intervalFactor": 1,
\r
6996 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95",
\r
7001 "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))",
\r
7002 "format": "time_series",
\r
7004 "intervalFactor": 1,
\r
7005 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99",
\r
7012 "timeShift": null,
\r
7013 "title": "Response Size By Source",
\r
7017 "value_type": "individual"
\r
7029 "format": "decbytes",
\r
7037 "format": "short",
\r
7047 "alignLevel": null
\r
7051 "aliasColors": {},
\r
7055 "datasource": "Prometheus",
\r
7076 "nullPointMode": "null",
\r
7077 "percentage": false,
\r
7080 "renderer": "flot",
\r
7081 "seriesOverrides": [],
\r
7082 "spaceLength": 10,
\r
7084 "steppedLine": false,
\r
7087 "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)",
\r
7088 "format": "time_series",
\r
7090 "intervalFactor": 1,
\r
7091 "legendFormat": "{{ source_workload }}.{{ source_workload_namespace}} (🔐mTLS)",
\r
7096 "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)",
\r
7097 "format": "time_series",
\r
7098 "intervalFactor": 1,
\r
7099 "legendFormat": "{{ source_workload }}.{{ source_workload_namespace}}",
\r
7106 "timeShift": null,
\r
7107 "title": "Bytes Received from Incoming TCP Connection",
\r
7111 "value_type": "individual"
\r
7131 "format": "short",
\r
7141 "alignLevel": null
\r
7145 "aliasColors": {},
\r
7149 "datasource": "Prometheus",
\r
7170 "nullPointMode": "null",
\r
7171 "percentage": false,
\r
7174 "renderer": "flot",
\r
7175 "seriesOverrides": [],
\r
7176 "spaceLength": 10,
\r
7178 "steppedLine": false,
\r
7181 "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)",
\r
7182 "format": "time_series",
\r
7183 "intervalFactor": 1,
\r
7184 "legendFormat": "{{ source_workload }}.{{ source_workload_namespace}} (🔐mTLS)",
\r
7189 "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)",
\r
7190 "format": "time_series",
\r
7191 "intervalFactor": 1,
\r
7192 "legendFormat": "{{ source_workload }}.{{ source_workload_namespace}}",
\r
7199 "timeShift": null,
\r
7200 "title": "Bytes Sent to Incoming TCP Connection",
\r
7204 "value_type": "individual"
\r
7224 "format": "short",
\r
7234 "alignLevel": null
\r
7238 "content": "<div class=\"dashboard-header text-center\">\n<span>SERVICE WORKLOADS</span>\n</div>",
\r
7249 "transparent": true,
\r
7253 "aliasColors": {},
\r
7257 "datasource": "Prometheus",
\r
7269 "hideEmpty": true,
\r
7279 "nullPointMode": "null as zero",
\r
7280 "percentage": false,
\r
7283 "renderer": "flot",
\r
7284 "seriesOverrides": [],
\r
7285 "spaceLength": 10,
\r
7287 "steppedLine": false,
\r
7290 "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)",
\r
7291 "format": "time_series",
\r
7292 "intervalFactor": 1,
\r
7293 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} : {{ response_code }} (🔐mTLS)",
\r
7298 "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)",
\r
7299 "format": "time_series",
\r
7301 "intervalFactor": 1,
\r
7302 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} : {{ response_code }}",
\r
7309 "timeShift": null,
\r
7310 "title": "Incoming Requests by Destination And Response Code",
\r
7314 "value_type": "individual"
\r
7336 "format": "short",
\r
7346 "alignLevel": null
\r
7350 "aliasColors": {},
\r
7354 "datasource": "Prometheus",
\r
7366 "hideEmpty": true,
\r
7367 "hideZero": false,
\r
7377 "nullPointMode": "null",
\r
7378 "percentage": false,
\r
7381 "renderer": "flot",
\r
7382 "seriesOverrides": [],
\r
7383 "spaceLength": 10,
\r
7385 "steppedLine": false,
\r
7388 "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(irate(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)",
\r
7389 "format": "time_series",
\r
7391 "intervalFactor": 1,
\r
7392 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} (🔐mTLS)",
\r
7397 "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(irate(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)",
\r
7398 "format": "time_series",
\r
7400 "intervalFactor": 1,
\r
7401 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }}",
\r
7408 "timeShift": null,
\r
7409 "title": "Incoming Success Rate (non-5xx responses) By Source",
\r
7413 "value_type": "individual"
\r
7425 "format": "percentunit",
\r
7433 "format": "short",
\r
7443 "alignLevel": null
\r
7447 "aliasColors": {},
\r
7451 "datasource": "Prometheus",
\r
7452 "description": "",
\r
7462 "alignAsTable": false,
\r
7465 "hideEmpty": true,
\r
7466 "hideZero": false,
\r
7469 "rightSide": false,
\r
7477 "nullPointMode": "null",
\r
7478 "percentage": false,
\r
7481 "renderer": "flot",
\r
7482 "seriesOverrides": [],
\r
7483 "spaceLength": 10,
\r
7485 "steppedLine": false,
\r
7488 "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))",
\r
7489 "format": "time_series",
\r
7491 "intervalFactor": 1,
\r
7492 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P50 (🔐mTLS)",
\r
7497 "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))",
\r
7498 "format": "time_series",
\r
7500 "intervalFactor": 1,
\r
7501 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P90 (🔐mTLS)",
\r
7506 "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))",
\r
7507 "format": "time_series",
\r
7509 "intervalFactor": 1,
\r
7510 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P95 (🔐mTLS)",
\r
7515 "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))",
\r
7516 "format": "time_series",
\r
7518 "intervalFactor": 1,
\r
7519 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P99 (🔐mTLS)",
\r
7524 "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))",
\r
7525 "format": "time_series",
\r
7527 "intervalFactor": 1,
\r
7528 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P50",
\r
7533 "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))",
\r
7534 "format": "time_series",
\r
7536 "intervalFactor": 1,
\r
7537 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P90",
\r
7542 "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))",
\r
7543 "format": "time_series",
\r
7545 "intervalFactor": 1,
\r
7546 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P95",
\r
7551 "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))",
\r
7552 "format": "time_series",
\r
7554 "intervalFactor": 1,
\r
7555 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P99",
\r
7562 "timeShift": null,
\r
7563 "title": "Incoming Request Duration by Source",
\r
7567 "value_type": "individual"
\r
7587 "format": "short",
\r
7597 "alignLevel": null
\r
7601 "aliasColors": {},
\r
7605 "datasource": "Prometheus",
\r
7615 "alignAsTable": false,
\r
7618 "hideEmpty": true,
\r
7621 "rightSide": false,
\r
7629 "nullPointMode": "null",
\r
7630 "percentage": false,
\r
7633 "renderer": "flot",
\r
7634 "seriesOverrides": [],
\r
7635 "spaceLength": 10,
\r
7637 "steppedLine": false,
\r
7640 "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))",
\r
7641 "format": "time_series",
\r
7643 "intervalFactor": 1,
\r
7644 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P50 (🔐mTLS)",
\r
7649 "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))",
\r
7650 "format": "time_series",
\r
7652 "intervalFactor": 1,
\r
7653 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P90 (🔐mTLS)",
\r
7658 "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))",
\r
7659 "format": "time_series",
\r
7661 "intervalFactor": 1,
\r
7662 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P95 (🔐mTLS)",
\r
7667 "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))",
\r
7668 "format": "time_series",
\r
7670 "intervalFactor": 1,
\r
7671 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P99 (🔐mTLS)",
\r
7676 "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))",
\r
7677 "format": "time_series",
\r
7679 "intervalFactor": 1,
\r
7680 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P50",
\r
7685 "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))",
\r
7686 "format": "time_series",
\r
7688 "intervalFactor": 1,
\r
7689 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P90",
\r
7694 "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))",
\r
7695 "format": "time_series",
\r
7697 "intervalFactor": 1,
\r
7698 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P95",
\r
7703 "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))",
\r
7704 "format": "time_series",
\r
7706 "intervalFactor": 1,
\r
7707 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P99",
\r
7714 "timeShift": null,
\r
7715 "title": "Incoming Request Size By Source",
\r
7719 "value_type": "individual"
\r
7731 "format": "decbytes",
\r
7739 "format": "short",
\r
7749 "alignLevel": null
\r
7753 "aliasColors": {},
\r
7757 "datasource": "Prometheus",
\r
7767 "alignAsTable": false,
\r
7770 "hideEmpty": true,
\r
7773 "rightSide": false,
\r
7781 "nullPointMode": "null",
\r
7782 "percentage": false,
\r
7785 "renderer": "flot",
\r
7786 "seriesOverrides": [],
\r
7787 "spaceLength": 10,
\r
7789 "steppedLine": false,
\r
7792 "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))",
\r
7793 "format": "time_series",
\r
7795 "intervalFactor": 1,
\r
7796 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P50 (🔐mTLS)",
\r
7801 "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))",
\r
7802 "format": "time_series",
\r
7804 "intervalFactor": 1,
\r
7805 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P90 (🔐mTLS)",
\r
7810 "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))",
\r
7811 "format": "time_series",
\r
7813 "intervalFactor": 1,
\r
7814 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P95 (🔐mTLS)",
\r
7819 "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))",
\r
7820 "format": "time_series",
\r
7822 "intervalFactor": 1,
\r
7823 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P99 (🔐mTLS)",
\r
7828 "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))",
\r
7829 "format": "time_series",
\r
7831 "intervalFactor": 1,
\r
7832 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P50",
\r
7837 "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))",
\r
7838 "format": "time_series",
\r
7840 "intervalFactor": 1,
\r
7841 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P90",
\r
7846 "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))",
\r
7847 "format": "time_series",
\r
7849 "intervalFactor": 1,
\r
7850 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P95",
\r
7855 "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))",
\r
7856 "format": "time_series",
\r
7858 "intervalFactor": 1,
\r
7859 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace }} P99",
\r
7866 "timeShift": null,
\r
7867 "title": "Response Size By Source",
\r
7871 "value_type": "individual"
\r
7883 "format": "decbytes",
\r
7891 "format": "short",
\r
7901 "alignLevel": null
\r
7905 "aliasColors": {},
\r
7909 "datasource": "Prometheus",
\r
7930 "nullPointMode": "null",
\r
7931 "percentage": false,
\r
7934 "renderer": "flot",
\r
7935 "seriesOverrides": [],
\r
7936 "spaceLength": 10,
\r
7938 "steppedLine": false,
\r
7941 "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)",
\r
7942 "format": "time_series",
\r
7944 "intervalFactor": 1,
\r
7945 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace}} (🔐mTLS)",
\r
7950 "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)",
\r
7951 "format": "time_series",
\r
7952 "intervalFactor": 1,
\r
7953 "legendFormat": "{{ destination_workload }}.{{ destination_workload_namespace}}",
\r
7960 "timeShift": null,
\r
7961 "title": "Bytes Received from Incoming TCP Connection",
\r
7965 "value_type": "individual"
\r
7985 "format": "short",
\r
7995 "alignLevel": null
\r
7999 "aliasColors": {},
\r
8003 "datasource": "Prometheus",
\r
8024 "nullPointMode": "null",
\r
8025 "percentage": false,
\r
8028 "renderer": "flot",
\r
8029 "seriesOverrides": [],
\r
8030 "spaceLength": 10,
\r
8032 "steppedLine": false,
\r
8035 "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)",
\r
8036 "format": "time_series",
\r
8037 "intervalFactor": 1,
\r
8038 "legendFormat": "{{ destination_workload }}.{{destination_workload_namespace }} (🔐mTLS)",
\r
8043 "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)",
\r
8044 "format": "time_series",
\r
8045 "intervalFactor": 1,
\r
8046 "legendFormat": "{{ destination_workload }}.{{destination_workload_namespace }}",
\r
8053 "timeShift": null,
\r
8054 "title": "Bytes Sent to Incoming TCP Connection",
\r
8058 "value_type": "individual"
\r
8078 "format": "short",
\r
8088 "alignLevel": null
\r
8093 "schemaVersion": 16,
\r
8100 "datasource": "Prometheus",
\r
8102 "includeAll": false,
\r
8103 "label": "Service",
\r
8105 "name": "service",
\r
8107 "query": "label_values(destination_service)",
\r
8111 "tagValuesQuery": "",
\r
8123 "datasource": "Prometheus",
\r
8125 "includeAll": true,
\r
8126 "label": "Client Workload Namespace",
\r
8130 "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))",
\r
8132 "regex": "/.*namespace=\"([^\"]*).*/",
\r
8134 "tagValuesQuery": "",
\r
8146 "datasource": "Prometheus",
\r
8148 "includeAll": true,
\r
8149 "label": "Client Workload",
\r
8153 "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))",
\r
8155 "regex": "/.*workload=\"([^\"]*).*/",
\r
8157 "tagValuesQuery": "",
\r
8169 "datasource": "Prometheus",
\r
8171 "includeAll": true,
\r
8172 "label": "Service Workload Namespace",
\r
8176 "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))",
\r
8178 "regex": "/.*namespace=\"([^\"]*).*/",
\r
8180 "tagValuesQuery": "",
\r
8192 "datasource": "Prometheus",
\r
8194 "includeAll": true,
\r
8195 "label": "Service Workload",
\r
8199 "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))",
\r
8201 "regex": "/.*workload=\"([^\"]*).*/",
\r
8203 "tagValuesQuery": "",
\r
8216 "refresh_intervals": [
\r
8241 "title": "Istio Service Dashboard",
\r
8242 "uid": "LJ_uJAvmk",
\r
8250 name: istio-grafana-configuration-dashboards-istio-workload-dashboard
\r
8251 namespace: istio-system
\r
8259 istio-workload-dashboard.json: '{
\r
8262 "name": "DS_PROMETHEUS",
\r
8263 "label": "Prometheus",
\r
8264 "description": "",
\r
8265 "type": "datasource",
\r
8266 "pluginId": "prometheus",
\r
8267 "pluginName": "Prometheus"
\r
8272 "type": "grafana",
\r
8274 "name": "Grafana",
\r
8275 "version": "5.0.4"
\r
8281 "version": "5.0.0"
\r
8284 "type": "datasource",
\r
8285 "id": "prometheus",
\r
8286 "name": "Prometheus",
\r
8287 "version": "5.0.0"
\r
8291 "id": "singlestat",
\r
8292 "name": "Singlestat",
\r
8293 "version": "5.0.0"
\r
8299 "version": "5.0.0"
\r
8306 "datasource": "-- Grafana --",
\r
8309 "iconColor": "rgba(0, 211, 255, 1)",
\r
8310 "name": "Annotations & Alerts",
\r
8311 "type": "dashboard"
\r
8315 "editable": false,
\r
8317 "graphTooltip": 0,
\r
8319 "iteration": 1531345461465,
\r
8323 "content": "<div class=\"dashboard-header text-center\">\n<span>WORKLOAD: $workload.$namespace</span>\n</div>",
\r
8334 "transparent": true,
\r
8338 "cacheTimeout": null,
\r
8339 "colorBackground": false,
\r
8340 "colorValue": false,
\r
8342 "rgba(245, 54, 54, 0.9)",
\r
8343 "rgba(237, 129, 40, 0.89)",
\r
8344 "rgba(50, 172, 45, 0.97)"
\r
8346 "datasource": "Prometheus",
\r
8352 "thresholdLabels": false,
\r
8353 "thresholdMarkers": true
\r
8367 "name": "value to text",
\r
8371 "name": "range to text",
\r
8375 "maxDataPoints": 100,
\r
8376 "nullPointMode": "connected",
\r
8379 "postfixFontSize": "50%",
\r
8381 "prefixFontSize": "50%",
\r
8390 "fillColor": "rgba(31, 118, 189, 0.18)",
\r
8392 "lineColor": "rgb(31, 120, 193)",
\r
8395 "tableColumn": "",
\r
8398 "expr": "round(sum(irate(istio_requests_total{reporter=\"destination\",destination_workload_namespace=~\"$namespace\",destination_workload=~\"$workload\"}[5m])), 0.001)",
\r
8399 "format": "time_series",
\r
8400 "intervalFactor": 1,
\r
8406 "title": "Incoming Request Volume",
\r
8407 "transparent": false,
\r
8408 "type": "singlestat",
\r
8409 "valueFontSize": "80%",
\r
8417 "valueName": "current"
\r
8420 "cacheTimeout": null,
\r
8421 "colorBackground": false,
\r
8422 "colorValue": false,
\r
8424 "rgba(50, 172, 45, 0.97)",
\r
8425 "rgba(237, 129, 40, 0.89)",
\r
8426 "rgba(245, 54, 54, 0.9)"
\r
8428 "datasource": "Prometheus",
\r
8430 "format": "percentunit",
\r
8435 "thresholdLabels": false,
\r
8436 "thresholdMarkers": false
\r
8450 "name": "value to text",
\r
8454 "name": "range to text",
\r
8458 "maxDataPoints": 100,
\r
8459 "nullPointMode": "connected",
\r
8462 "postfixFontSize": "50%",
\r
8464 "prefixFontSize": "50%",
\r
8473 "fillColor": "rgba(31, 118, 189, 0.18)",
\r
8475 "lineColor": "rgb(31, 120, 193)",
\r
8478 "tableColumn": "",
\r
8481 "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]))",
\r
8482 "format": "time_series",
\r
8483 "intervalFactor": 1,
\r
8487 "thresholds": "95, 99, 99.5",
\r
8488 "title": "Incoming Success Rate (non-5xx responses)",
\r
8489 "transparent": false,
\r
8490 "type": "singlestat",
\r
8491 "valueFontSize": "80%",
\r
8499 "valueName": "avg"
\r
8502 "aliasColors": {},
\r
8506 "datasource": "Prometheus",
\r
8516 "alignAsTable": false,
\r
8519 "hideEmpty": false,
\r
8520 "hideZero": false,
\r
8523 "rightSide": true,
\r
8531 "nullPointMode": "null",
\r
8532 "percentage": false,
\r
8535 "renderer": "flot",
\r
8536 "seriesOverrides": [],
\r
8537 "spaceLength": 10,
\r
8539 "steppedLine": false,
\r
8542 "expr": "histogram_quantile(0.50, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\",destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\"}[1m])) by (le))",
\r
8543 "format": "time_series",
\r
8545 "intervalFactor": 1,
\r
8546 "legendFormat": "P50",
\r
8550 "expr": "histogram_quantile(0.90, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\",destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\"}[1m])) by (le))",
\r
8551 "format": "time_series",
\r
8553 "intervalFactor": 1,
\r
8554 "legendFormat": "P90",
\r
8558 "expr": "histogram_quantile(0.99, sum(irate(istio_request_duration_seconds_bucket{reporter=\"destination\",destination_workload=~\"$workload\", destination_workload_namespace=~\"$namespace\"}[1m])) by (le))",
\r
8559 "format": "time_series",
\r
8561 "intervalFactor": 1,
\r
8562 "legendFormat": "P99",
\r
8568 "timeShift": null,
\r
8569 "title": "Request Duration",
\r
8573 "value_type": "individual"
\r
8593 "format": "short",
\r
8603 "cacheTimeout": null,
\r
8604 "colorBackground": false,
\r
8605 "colorValue": false,
\r
8608 "rgba(237, 129, 40, 0.89)",
\r
8611 "datasource": "Prometheus",
\r
8617 "thresholdLabels": false,
\r
8618 "thresholdMarkers": true
\r
8632 "name": "value to text",
\r
8636 "name": "range to text",
\r
8640 "maxDataPoints": 100,
\r
8641 "nullPointMode": "connected",
\r
8644 "postfixFontSize": "50%",
\r
8646 "prefixFontSize": "50%",
\r
8655 "fillColor": "rgba(31, 118, 189, 0.18)",
\r
8657 "lineColor": "rgb(31, 120, 193)",
\r
8660 "tableColumn": "",
\r
8663 "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]))",
\r
8664 "format": "time_series",
\r
8666 "intervalFactor": 1,
\r
8667 "legendFormat": "",
\r
8672 "title": "TCP Server Traffic",
\r
8673 "transparent": false,
\r
8674 "type": "singlestat",
\r
8675 "valueFontSize": "80%",
\r
8683 "valueName": "avg"
\r
8686 "cacheTimeout": null,
\r
8687 "colorBackground": false,
\r
8688 "colorValue": false,
\r
8691 "rgba(237, 129, 40, 0.89)",
\r
8694 "datasource": "Prometheus",
\r
8700 "thresholdLabels": false,
\r
8701 "thresholdMarkers": true
\r
8715 "name": "value to text",
\r
8719 "name": "range to text",
\r
8723 "maxDataPoints": 100,
\r
8724 "nullPointMode": "connected",
\r
8727 "postfixFontSize": "50%",
\r
8729 "prefixFontSize": "50%",
\r
8738 "fillColor": "rgba(31, 118, 189, 0.18)",
\r
8740 "lineColor": "rgb(31, 120, 193)",
\r
8743 "tableColumn": "",
\r
8746 "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]))",
\r
8747 "format": "time_series",
\r
8749 "intervalFactor": 1,
\r
8750 "legendFormat": "",
\r
8755 "title": "TCP Client Traffic",
\r
8756 "transparent": false,
\r
8757 "type": "singlestat",
\r
8758 "valueFontSize": "80%",
\r
8766 "valueName": "avg"
\r
8769 "content": "<div class=\"dashboard-header text-center\">\n<span>INBOUND WORKLOADS</span>\n</div>",
\r
8780 "transparent": true,
\r
8784 "aliasColors": {},
\r
8788 "datasource": "Prometheus",
\r
8800 "hideEmpty": true,
\r
8810 "nullPointMode": "null as zero",
\r
8811 "percentage": false,
\r
8814 "renderer": "flot",
\r
8815 "seriesOverrides": [],
\r
8816 "spaceLength": 10,
\r
8818 "steppedLine": false,
\r
8821 "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)",
\r
8822 "format": "time_series",
\r
8823 "intervalFactor": 1,
\r
8824 "legendFormat": "{{ source_workload }}.{{ source_workload_namespace }} : {{ response_code }} (🔐mTLS)",
\r
8829 "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)",
\r
8830 "format": "time_series",
\r
8832 "intervalFactor": 1,
\r
8833 "legendFormat": "{{ source_workload }}.{{ source_workload_namespace }} : {{ response_code }}",
\r
8840 "timeShift": null,
\r
8841 "title": "Incoming Requests by Source And Response Code",
\r
8845 "value_type": "individual"
\r
8867 "format": "short",
\r
8877 "aliasColors": {},
\r
8881 "datasource": "Prometheus",
\r
8893 "hideEmpty": true,
\r
8894 "hideZero": false,
\r
8904 "nullPointMode": "null",
\r
8905 "percentage": false,
\r
8908 "renderer": "flot",
\r
8909 "seriesOverrides": [],
\r
8910 "spaceLength": 10,
\r
8912 "steppedLine": false,
\r
8915 "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(irate(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)",
\r
8916 "format": "time_series",
\r
8918 "intervalFactor": 1,
\r
8919 "legendFormat": "{{ source_workload }}.{{ source_workload_namespace }} (🔐mTLS)",
\r
8924 "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(irate(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)",
\r
8925 "format": "time_series",
\r
8927 "intervalFactor": 1,
\r
8928 "legendFormat": "{{ source_workload }}.{{ source_workload_namespace }}",
\r
8935 "timeShift": null,
\r
8936 "title": "Incoming Success Rate (non-5xx responses) By Source",
\r
8940 "value_type": "individual"
\r
8952 "format": "percentunit",
\r
8960 "format": "short",
\r
8970 "aliasColors": {},
\r
8974 "datasource": "Prometheus",
\r
8975 "description": "",
\r
8985 "alignAsTable": false,
\r
8988 "hideEmpty": true,
\r
8989 "hideZero": false,
\r
8992 "rightSide": false,
\r
9000 "nullPointMode": "null",
\r
9001 "percentage": false,
\r
9004 "renderer": "flot",
\r
9005 "seriesOverrides": [],
\r
9006 "spaceLength": 10,
\r
9008 "steppedLine": false,
\r
9011 "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))",
\r
9012 "format": "time_series",
\r
9014 "intervalFactor": 1,
\r
9015 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50 (🔐mTLS)",
\r
9020 "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))",
\r
9021 "format": "time_series",
\r
9023 "intervalFactor": 1,
\r
9024 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90 (🔐mTLS)",
\r
9029 "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))",
\r
9030 "format": "time_series",
\r
9032 "intervalFactor": 1,
\r
9033 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95 (🔐mTLS)",
\r
9038 "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))",
\r
9039 "format": "time_series",
\r
9041 "intervalFactor": 1,
\r
9042 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99 (🔐mTLS)",
\r
9047 "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))",
\r
9048 "format": "time_series",
\r
9050 "intervalFactor": 1,
\r
9051 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50",
\r
9056 "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))",
\r
9057 "format": "time_series",
\r
9059 "intervalFactor": 1,
\r
9060 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90",
\r
9065 "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))",
\r
9066 "format": "time_series",
\r
9068 "intervalFactor": 1,
\r
9069 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95",
\r
9074 "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))",
\r
9075 "format": "time_series",
\r
9077 "intervalFactor": 1,
\r
9078 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99",
\r
9085 "timeShift": null,
\r
9086 "title": "Incoming Request Duration by Source",
\r
9090 "value_type": "individual"
\r
9110 "format": "short",
\r
9120 "aliasColors": {},
\r
9124 "datasource": "Prometheus",
\r
9134 "alignAsTable": false,
\r
9137 "hideEmpty": true,
\r
9140 "rightSide": false,
\r
9148 "nullPointMode": "null",
\r
9149 "percentage": false,
\r
9152 "renderer": "flot",
\r
9153 "seriesOverrides": [],
\r
9154 "spaceLength": 10,
\r
9156 "steppedLine": false,
\r
9159 "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))",
\r
9160 "format": "time_series",
\r
9162 "intervalFactor": 1,
\r
9163 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50 (🔐mTLS)",
\r
9168 "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))",
\r
9169 "format": "time_series",
\r
9171 "intervalFactor": 1,
\r
9172 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90 (🔐mTLS)",
\r
9177 "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))",
\r
9178 "format": "time_series",
\r
9180 "intervalFactor": 1,
\r
9181 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95 (🔐mTLS)",
\r
9186 "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))",
\r
9187 "format": "time_series",
\r
9189 "intervalFactor": 1,
\r
9190 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99 (🔐mTLS)",
\r
9195 "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))",
\r
9196 "format": "time_series",
\r
9198 "intervalFactor": 1,
\r
9199 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50",
\r
9204 "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))",
\r
9205 "format": "time_series",
\r
9207 "intervalFactor": 1,
\r
9208 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90",
\r
9213 "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))",
\r
9214 "format": "time_series",
\r
9216 "intervalFactor": 1,
\r
9217 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95",
\r
9222 "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))",
\r
9223 "format": "time_series",
\r
9225 "intervalFactor": 1,
\r
9226 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99",
\r
9233 "timeShift": null,
\r
9234 "title": "Incoming Request Size By Source",
\r
9238 "value_type": "individual"
\r
9250 "format": "decbytes",
\r
9258 "format": "short",
\r
9268 "aliasColors": {},
\r
9272 "datasource": "Prometheus",
\r
9282 "alignAsTable": false,
\r
9285 "hideEmpty": true,
\r
9288 "rightSide": false,
\r
9296 "nullPointMode": "null",
\r
9297 "percentage": false,
\r
9300 "renderer": "flot",
\r
9301 "seriesOverrides": [],
\r
9302 "spaceLength": 10,
\r
9304 "steppedLine": false,
\r
9307 "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))",
\r
9308 "format": "time_series",
\r
9310 "intervalFactor": 1,
\r
9311 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50 (🔐mTLS)",
\r
9316 "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))",
\r
9317 "format": "time_series",
\r
9319 "intervalFactor": 1,
\r
9320 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90 (🔐mTLS)",
\r
9325 "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))",
\r
9326 "format": "time_series",
\r
9328 "intervalFactor": 1,
\r
9329 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95 (🔐mTLS)",
\r
9334 "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))",
\r
9335 "format": "time_series",
\r
9337 "intervalFactor": 1,
\r
9338 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99 (🔐mTLS)",
\r
9343 "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))",
\r
9344 "format": "time_series",
\r
9346 "intervalFactor": 1,
\r
9347 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P50",
\r
9352 "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))",
\r
9353 "format": "time_series",
\r
9355 "intervalFactor": 1,
\r
9356 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P90",
\r
9361 "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))",
\r
9362 "format": "time_series",
\r
9364 "intervalFactor": 1,
\r
9365 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P95",
\r
9370 "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))",
\r
9371 "format": "time_series",
\r
9373 "intervalFactor": 1,
\r
9374 "legendFormat": "{{source_workload}}.{{source_workload_namespace}} P99",
\r
9381 "timeShift": null,
\r
9382 "title": "Response Size By Source",
\r
9386 "value_type": "individual"
\r
9398 "format": "decbytes",
\r
9406 "format": "short",
\r
9416 "aliasColors": {},
\r
9420 "datasource": "Prometheus",
\r
9441 "nullPointMode": "null",
\r
9442 "percentage": false,
\r
9445 "renderer": "flot",
\r
9446 "seriesOverrides": [],
\r
9447 "spaceLength": 10,
\r
9449 "steppedLine": false,
\r
9452 "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)",
\r
9453 "format": "time_series",
\r
9455 "intervalFactor": 1,
\r
9456 "legendFormat": "{{ source_workload }}.{{ source_workload_namespace}} (🔐mTLS)",
\r
9461 "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)",
\r
9462 "format": "time_series",
\r
9463 "intervalFactor": 1,
\r
9464 "legendFormat": "{{ source_workload }}.{{ source_workload_namespace}}",
\r
9471 "timeShift": null,
\r
9472 "title": "Bytes Received from Incoming TCP Connection",
\r
9476 "value_type": "individual"
\r
9496 "format": "short",
\r
9506 "aliasColors": {},
\r
9510 "datasource": "Prometheus",
\r
9531 "nullPointMode": "null",
\r
9532 "percentage": false,
\r
9535 "renderer": "flot",
\r
9536 "seriesOverrides": [],
\r
9537 "spaceLength": 10,
\r
9539 "steppedLine": false,
\r
9542 "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)",
\r
9543 "format": "time_series",
\r
9544 "intervalFactor": 1,
\r
9545 "legendFormat": "{{ source_workload }}.{{ source_workload_namespace}} (🔐mTLS)",
\r
9550 "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)",
\r
9551 "format": "time_series",
\r
9552 "intervalFactor": 1,
\r
9553 "legendFormat": "{{ source_workload }}.{{ source_workload_namespace}}",
\r
9560 "timeShift": null,
\r
9561 "title": "Bytes Sent to Incoming TCP Connection",
\r
9565 "value_type": "individual"
\r
9585 "format": "short",
\r
9595 "content": "<div class=\"dashboard-header text-center\">\n<span>OUTBOUND SERVICES</span>\n</div>",
\r
9606 "transparent": true,
\r
9610 "aliasColors": {},
\r
9614 "datasource": "Prometheus",
\r
9626 "hideEmpty": true,
\r
9636 "nullPointMode": "null as zero",
\r
9637 "percentage": false,
\r
9640 "renderer": "flot",
\r
9641 "seriesOverrides": [],
\r
9642 "spaceLength": 10,
\r
9644 "steppedLine": false,
\r
9647 "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)",
\r
9648 "format": "time_series",
\r
9649 "intervalFactor": 1,
\r
9650 "legendFormat": "{{ destination_service }} : {{ response_code }} (🔐mTLS)",
\r
9655 "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)",
\r
9656 "format": "time_series",
\r
9658 "intervalFactor": 1,
\r
9659 "legendFormat": "{{ destination_service }} : {{ response_code }}",
\r
9666 "timeShift": null,
\r
9667 "title": "Outgoing Requests by Destination And Response Code",
\r
9671 "value_type": "individual"
\r
9693 "format": "short",
\r
9703 "aliasColors": {},
\r
9707 "datasource": "Prometheus",
\r
9719 "hideEmpty": true,
\r
9720 "hideZero": false,
\r
9730 "nullPointMode": "null",
\r
9731 "percentage": false,
\r
9734 "renderer": "flot",
\r
9735 "seriesOverrides": [],
\r
9736 "spaceLength": 10,
\r
9738 "steppedLine": false,
\r
9741 "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)",
\r
9742 "format": "time_series",
\r
9744 "intervalFactor": 1,
\r
9745 "legendFormat": "{{ destination_service }} (🔐mTLS)",
\r
9750 "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)",
\r
9751 "format": "time_series",
\r
9753 "intervalFactor": 1,
\r
9754 "legendFormat": "{{destination_service }}",
\r
9761 "timeShift": null,
\r
9762 "title": "Outgoing Success Rate (non-5xx responses) By Destination",
\r
9766 "value_type": "individual"
\r
9778 "format": "percentunit",
\r
9786 "format": "short",
\r
9796 "aliasColors": {},
\r
9800 "datasource": "Prometheus",
\r
9801 "description": "",
\r
9811 "alignAsTable": false,
\r
9814 "hideEmpty": true,
\r
9815 "hideZero": false,
\r
9818 "rightSide": false,
\r
9826 "nullPointMode": "null",
\r
9827 "percentage": false,
\r
9830 "renderer": "flot",
\r
9831 "seriesOverrides": [],
\r
9832 "spaceLength": 10,
\r
9834 "steppedLine": false,
\r
9837 "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))",
\r
9838 "format": "time_series",
\r
9840 "intervalFactor": 1,
\r
9841 "legendFormat": "{{ destination_service }} P50 (🔐mTLS)",
\r
9846 "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))",
\r
9847 "format": "time_series",
\r
9849 "intervalFactor": 1,
\r
9850 "legendFormat": "{{ destination_service }} P90 (🔐mTLS)",
\r
9855 "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))",
\r
9856 "format": "time_series",
\r
9858 "intervalFactor": 1,
\r
9859 "legendFormat": "{{ destination_service }} P95 (🔐mTLS)",
\r
9864 "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))",
\r
9865 "format": "time_series",
\r
9867 "intervalFactor": 1,
\r
9868 "legendFormat": "{{ destination_service }} P99 (🔐mTLS)",
\r
9873 "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))",
\r
9874 "format": "time_series",
\r
9876 "intervalFactor": 1,
\r
9877 "legendFormat": "{{ destination_service }} P50",
\r
9882 "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))",
\r
9883 "format": "time_series",
\r
9885 "intervalFactor": 1,
\r
9886 "legendFormat": "{{ destination_service }} P90",
\r
9891 "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))",
\r
9892 "format": "time_series",
\r
9894 "intervalFactor": 1,
\r
9895 "legendFormat": "{{ destination_service }} P95",
\r
9900 "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))",
\r
9901 "format": "time_series",
\r
9903 "intervalFactor": 1,
\r
9904 "legendFormat": "{{ destination_service }} P99",
\r
9911 "timeShift": null,
\r
9912 "title": "Outgoing Request Duration by Destination",
\r
9916 "value_type": "individual"
\r
9936 "format": "short",
\r
9946 "aliasColors": {},
\r
9950 "datasource": "Prometheus",
\r
9960 "alignAsTable": false,
\r
9963 "hideEmpty": true,
\r
9966 "rightSide": false,
\r
9974 "nullPointMode": "null",
\r
9975 "percentage": false,
\r
9978 "renderer": "flot",
\r
9979 "seriesOverrides": [],
\r
9980 "spaceLength": 10,
\r
9982 "steppedLine": false,
\r
9985 "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))",
\r
9986 "format": "time_series",
\r
9988 "intervalFactor": 1,
\r
9989 "legendFormat": "{{ destination_service }} P50 (🔐mTLS)",
\r
9994 "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))",
\r
9995 "format": "time_series",
\r
9997 "intervalFactor": 1,
\r
9998 "legendFormat": "{{ destination_service }} P90 (🔐mTLS)",
\r
10003 "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))",
\r
10004 "format": "time_series",
\r
10006 "intervalFactor": 1,
\r
10007 "legendFormat": "{{ destination_service }} P95 (🔐mTLS)",
\r
10012 "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))",
\r
10013 "format": "time_series",
\r
10015 "intervalFactor": 1,
\r
10016 "legendFormat": "{{ destination_service }} P99 (🔐mTLS)",
\r
10021 "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))",
\r
10022 "format": "time_series",
\r
10024 "intervalFactor": 1,
\r
10025 "legendFormat": "{{ destination_service }} P50",
\r
10030 "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))",
\r
10031 "format": "time_series",
\r
10033 "intervalFactor": 1,
\r
10034 "legendFormat": "{{ destination_service }} P90",
\r
10039 "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))",
\r
10040 "format": "time_series",
\r
10042 "intervalFactor": 1,
\r
10043 "legendFormat": "{{ destination_service }} P95",
\r
10048 "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))",
\r
10049 "format": "time_series",
\r
10051 "intervalFactor": 1,
\r
10052 "legendFormat": "{{ destination_service }} P99",
\r
10057 "thresholds": [],
\r
10058 "timeFrom": null,
\r
10059 "timeShift": null,
\r
10060 "title": "Outgoing Request Size By Destination",
\r
10064 "value_type": "individual"
\r
10076 "format": "decbytes",
\r
10084 "format": "short",
\r
10094 "aliasColors": {},
\r
10096 "dashLength": 10,
\r
10098 "datasource": "Prometheus",
\r
10108 "alignAsTable": false,
\r
10110 "current": false,
\r
10111 "hideEmpty": true,
\r
10114 "rightSide": false,
\r
10122 "nullPointMode": "null",
\r
10123 "percentage": false,
\r
10124 "pointradius": 5,
\r
10126 "renderer": "flot",
\r
10127 "seriesOverrides": [],
\r
10128 "spaceLength": 10,
\r
10130 "steppedLine": false,
\r
10133 "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))",
\r
10134 "format": "time_series",
\r
10136 "intervalFactor": 1,
\r
10137 "legendFormat": "{{ destination_service }} P50 (🔐mTLS)",
\r
10142 "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))",
\r
10143 "format": "time_series",
\r
10145 "intervalFactor": 1,
\r
10146 "legendFormat": "{{ destination_service }} P90 (🔐mTLS)",
\r
10151 "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))",
\r
10152 "format": "time_series",
\r
10154 "intervalFactor": 1,
\r
10155 "legendFormat": "{{ destination_service }} P95 (🔐mTLS)",
\r
10160 "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))",
\r
10161 "format": "time_series",
\r
10163 "intervalFactor": 1,
\r
10164 "legendFormat": "{{ destination_service }} P99 (🔐mTLS)",
\r
10169 "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))",
\r
10170 "format": "time_series",
\r
10172 "intervalFactor": 1,
\r
10173 "legendFormat": "{{ destination_service }} P50",
\r
10178 "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))",
\r
10179 "format": "time_series",
\r
10181 "intervalFactor": 1,
\r
10182 "legendFormat": "{{ destination_service }} P90",
\r
10187 "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))",
\r
10188 "format": "time_series",
\r
10190 "intervalFactor": 1,
\r
10191 "legendFormat": "{{ destination_service }} P95",
\r
10196 "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))",
\r
10197 "format": "time_series",
\r
10199 "intervalFactor": 1,
\r
10200 "legendFormat": "{{ destination_service }} P99",
\r
10205 "thresholds": [],
\r
10206 "timeFrom": null,
\r
10207 "timeShift": null,
\r
10208 "title": "Response Size By Destination",
\r
10212 "value_type": "individual"
\r
10224 "format": "decbytes",
\r
10232 "format": "short",
\r
10242 "aliasColors": {},
\r
10244 "dashLength": 10,
\r
10246 "datasource": "Prometheus",
\r
10257 "current": false,
\r
10267 "nullPointMode": "null",
\r
10268 "percentage": false,
\r
10269 "pointradius": 5,
\r
10271 "renderer": "flot",
\r
10272 "seriesOverrides": [],
\r
10273 "spaceLength": 10,
\r
10275 "steppedLine": false,
\r
10278 "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)",
\r
10279 "format": "time_series",
\r
10280 "intervalFactor": 1,
\r
10281 "legendFormat": "{{ destination_service }} (🔐mTLS)",
\r
10286 "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)",
\r
10287 "format": "time_series",
\r
10288 "intervalFactor": 1,
\r
10289 "legendFormat": "{{ destination_service }}",
\r
10294 "thresholds": [],
\r
10295 "timeFrom": null,
\r
10296 "timeShift": null,
\r
10297 "title": "Bytes Sent on Outgoing TCP Connection",
\r
10301 "value_type": "individual"
\r
10321 "format": "short",
\r
10331 "aliasColors": {},
\r
10333 "dashLength": 10,
\r
10335 "datasource": "Prometheus",
\r
10346 "current": false,
\r
10356 "nullPointMode": "null",
\r
10357 "percentage": false,
\r
10358 "pointradius": 5,
\r
10360 "renderer": "flot",
\r
10361 "seriesOverrides": [],
\r
10362 "spaceLength": 10,
\r
10364 "steppedLine": false,
\r
10367 "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)",
\r
10368 "format": "time_series",
\r
10369 "intervalFactor": 1,
\r
10370 "legendFormat": "{{ destination_service }} (🔐mTLS)",
\r
10375 "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)",
\r
10376 "format": "time_series",
\r
10377 "intervalFactor": 1,
\r
10378 "legendFormat": "{{ destination_service }}",
\r
10383 "thresholds": [],
\r
10384 "timeFrom": null,
\r
10385 "timeShift": null,
\r
10386 "title": "Bytes Received from Outgoing TCP Connection",
\r
10390 "value_type": "individual"
\r
10410 "format": "short",
\r
10420 "refresh": "10s",
\r
10421 "schemaVersion": 16,
\r
10427 "allValue": null,
\r
10429 "datasource": "Prometheus",
\r
10431 "includeAll": false,
\r
10432 "label": "Namespace",
\r
10434 "name": "namespace",
\r
10436 "query": "query_result(sum(istio_requests_total) by (destination_workload_namespace) or sum(istio_tcp_sent_bytes_total) by (destination_workload_namespace))",
\r
10438 "regex": "/.*_namespace=\"([^\"]*).*/",
\r
10440 "tagValuesQuery": "",
\r
10447 "allValue": null,
\r
10449 "datasource": "Prometheus",
\r
10451 "includeAll": false,
\r
10452 "label": "Workload",
\r
10454 "name": "workload",
\r
10456 "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)))",
\r
10458 "regex": "/.*workload=\"([^\"]*).*/",
\r
10460 "tagValuesQuery": "",
\r
10467 "allValue": null,
\r
10469 "datasource": "Prometheus",
\r
10471 "includeAll": true,
\r
10472 "label": "Inbound Workload Namespace",
\r
10476 "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))",
\r
10478 "regex": "/.*namespace=\"([^\"]*).*/",
\r
10480 "tagValuesQuery": "",
\r
10487 "allValue": null,
\r
10489 "datasource": "Prometheus",
\r
10491 "includeAll": true,
\r
10492 "label": "Inbound Workload",
\r
10496 "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))",
\r
10498 "regex": "/.*workload=\"([^\"]*).*/",
\r
10500 "tagValuesQuery": "",
\r
10507 "allValue": null,
\r
10509 "datasource": "Prometheus",
\r
10511 "includeAll": true,
\r
10512 "label": "Destination Service",
\r
10514 "name": "dstsvc",
\r
10516 "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))",
\r
10518 "regex": "/.*destination_service=\"([^\"]*).*/",
\r
10520 "tagValuesQuery": "",
\r
10529 "from": "now-5m",
\r
10533 "refresh_intervals": [
\r
10545 "time_options": [
\r
10558 "title": "Istio Workload Dashboard",
\r
10559 "uid": "UbsSZTDik",
\r
10567 name: istio-grafana-configuration-dashboards-mixer-dashboard
\r
10568 namespace: istio-system
\r
10576 mixer-dashboard.json: '{
\r
10579 "name": "DS_PROMETHEUS",
\r
10580 "label": "Prometheus",
\r
10581 "description": "",
\r
10582 "type": "datasource",
\r
10583 "pluginId": "prometheus",
\r
10584 "pluginName": "Prometheus"
\r
10589 "type": "grafana",
\r
10591 "name": "Grafana",
\r
10592 "version": "5.2.3"
\r
10598 "version": "5.0.0"
\r
10601 "type": "datasource",
\r
10602 "id": "prometheus",
\r
10603 "name": "Prometheus",
\r
10604 "version": "5.0.0"
\r
10610 "version": "5.0.0"
\r
10617 "datasource": "-- Grafana --",
\r
10620 "iconColor": "rgba(0, 211, 255, 1)",
\r
10622 "name": "Annotations & Alerts",
\r
10624 "type": "dashboard"
\r
10628 "editable": false,
\r
10630 "graphTooltip": 1,
\r
10632 "iteration": 1543881232533,
\r
10636 "content": "<center><h2>Deployed Versions</h2></center>",
\r
10648 "transparent": true,
\r
10652 "aliasColors": {},
\r
10654 "dashLength": 10,
\r
10656 "datasource": "Prometheus",
\r
10667 "current": false,
\r
10677 "nullPointMode": "null",
\r
10678 "percentage": false,
\r
10679 "pointradius": 5,
\r
10681 "renderer": "flot",
\r
10682 "seriesOverrides": [],
\r
10683 "spaceLength": 10,
\r
10685 "steppedLine": false,
\r
10688 "expr": "sum(istio_build{component=\"mixer\"}) by (tag)",
\r
10689 "format": "time_series",
\r
10690 "intervalFactor": 1,
\r
10691 "legendFormat": "{{ tag }}",
\r
10695 "thresholds": [],
\r
10696 "timeFrom": null,
\r
10697 "timeShift": null,
\r
10698 "title": "Mixer Versions",
\r
10702 "value_type": "individual"
\r
10714 "format": "short",
\r
10722 "format": "short",
\r
10732 "alignLevel": null
\r
10736 "content": "<center><h2>Resource Usage</h2></center>",
\r
10748 "transparent": true,
\r
10752 "aliasColors": {},
\r
10754 "dashLength": 10,
\r
10756 "datasource": "Prometheus",
\r
10767 "current": false,
\r
10777 "nullPointMode": "null",
\r
10778 "percentage": false,
\r
10779 "pointradius": 5,
\r
10781 "renderer": "flot",
\r
10782 "seriesOverrides": [],
\r
10783 "spaceLength": 10,
\r
10785 "steppedLine": false,
\r
10788 "expr": "sum(process_virtual_memory_bytes{job=~\"istio-telemetry|istio-policy\"}) by (job)",
\r
10789 "format": "time_series",
\r
10790 "instant": false,
\r
10791 "intervalFactor": 2,
\r
10792 "legendFormat": "Virtual Memory ({{ job }})",
\r
10796 "expr": "sum(process_resident_memory_bytes{job=~\"istio-telemetry|istio-policy\"}) by (job)",
\r
10797 "format": "time_series",
\r
10798 "intervalFactor": 2,
\r
10799 "legendFormat": "Resident Memory ({{ job }})",
\r
10803 "expr": "sum(go_memstats_heap_sys_bytes{job=~\"istio-telemetry|istio-policy\"}) by (job)",
\r
10804 "format": "time_series",
\r
10806 "intervalFactor": 2,
\r
10807 "legendFormat": "heap sys ({{ job }})",
\r
10811 "expr": "sum(go_memstats_heap_alloc_bytes{job=~\"istio-telemetry|istio-policy\"}) by (job)",
\r
10812 "format": "time_series",
\r
10814 "intervalFactor": 2,
\r
10815 "legendFormat": "heap alloc ({{ job }})",
\r
10819 "expr": "sum(go_memstats_alloc_bytes{job=~\"istio-telemetry|istio-policy\"}) by (job)",
\r
10820 "format": "time_series",
\r
10821 "intervalFactor": 2,
\r
10822 "legendFormat": "Alloc ({{ job }})",
\r
10826 "expr": "sum(go_memstats_heap_inuse_bytes{job=~\"istio-telemetry|istio-policy\"}) by (job)",
\r
10827 "format": "time_series",
\r
10829 "intervalFactor": 2,
\r
10830 "legendFormat": "Heap in-use ({{ job }})",
\r
10834 "expr": "sum(go_memstats_stack_inuse_bytes{job=~\"istio-telemetry|istio-policy\"}) by (job)",
\r
10835 "format": "time_series",
\r
10836 "intervalFactor": 2,
\r
10837 "legendFormat": "Stack in-use ({{ job }})",
\r
10841 "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)",
\r
10842 "format": "time_series",
\r
10844 "intervalFactor": 2,
\r
10845 "legendFormat": "{{ service }} total (k8s)",
\r
10849 "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)",
\r
10850 "format": "time_series",
\r
10852 "intervalFactor": 2,
\r
10853 "legendFormat": "{{ service }} - {{ container_name }} (k8s)",
\r
10857 "thresholds": [],
\r
10858 "timeFrom": null,
\r
10859 "timeShift": null,
\r
10860 "title": "Memory",
\r
10864 "value_type": "individual"
\r
10876 "format": "bytes",
\r
10884 "format": "short",
\r
10894 "alignLevel": null
\r
10898 "aliasColors": {},
\r
10900 "dashLength": 10,
\r
10902 "datasource": "Prometheus",
\r
10913 "current": false,
\r
10923 "nullPointMode": "null",
\r
10924 "percentage": false,
\r
10925 "pointradius": 5,
\r
10927 "renderer": "flot",
\r
10928 "seriesOverrides": [],
\r
10929 "spaceLength": 10,
\r
10931 "steppedLine": false,
\r
10934 "expr": "label_replace(sum(rate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",container_name=~\"mixer|istio-proxy\", pod_name=~\"istio-telemetry-.*|istio-policy-.*\"}[1m])) by (pod_name), \"service\", \"$1\" , \"pod_name\", \"(istio-telemetry|istio-policy)-.*\")",
\r
10935 "format": "time_series",
\r
10937 "intervalFactor": 2,
\r
10938 "legendFormat": "{{ service }} total (k8s)",
\r
10942 "expr": "label_replace(sum(rate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",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)-.*\")",
\r
10943 "format": "time_series",
\r
10945 "intervalFactor": 2,
\r
10946 "legendFormat": "{{ service }} - {{ container_name }} (k8s)",
\r
10950 "expr": "sum(irate(process_cpu_seconds_total{job=~\"istio-telemetry|istio-policy\"}[1m])) by (job)",
\r
10951 "format": "time_series",
\r
10953 "intervalFactor": 2,
\r
10954 "legendFormat": "{{ job }} (self-reported)",
\r
10958 "thresholds": [],
\r
10959 "timeFrom": null,
\r
10960 "timeShift": null,
\r
10965 "value_type": "individual"
\r
10977 "format": "short",
\r
10985 "format": "short",
\r
10995 "alignLevel": null
\r
10999 "aliasColors": {},
\r
11001 "dashLength": 10,
\r
11003 "datasource": "Prometheus",
\r
11014 "current": false,
\r
11024 "nullPointMode": "null",
\r
11025 "percentage": false,
\r
11026 "pointradius": 5,
\r
11028 "renderer": "flot",
\r
11029 "seriesOverrides": [],
\r
11030 "spaceLength": 10,
\r
11032 "steppedLine": false,
\r
11035 "expr": "sum(process_open_fds{job=~\"istio-telemetry|istio-policy\"}) by (job)",
\r
11036 "format": "time_series",
\r
11038 "instant": false,
\r
11040 "intervalFactor": 2,
\r
11041 "legendFormat": "Open FDs ({{ job }})",
\r
11045 "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)",
\r
11046 "format": "time_series",
\r
11047 "intervalFactor": 2,
\r
11048 "legendFormat": "{{ service }} - {{ container_name }}",
\r
11052 "thresholds": [],
\r
11053 "timeFrom": null,
\r
11054 "timeShift": null,
\r
11059 "value_type": "individual"
\r
11071 "format": "bytes",
\r
11079 "decimals": null,
\r
11080 "format": "none",
\r
11090 "alignLevel": null
\r
11094 "aliasColors": {},
\r
11096 "dashLength": 10,
\r
11098 "datasource": "Prometheus",
\r
11109 "current": false,
\r
11119 "nullPointMode": "null",
\r
11120 "percentage": false,
\r
11121 "pointradius": 5,
\r
11123 "renderer": "flot",
\r
11124 "seriesOverrides": [],
\r
11125 "spaceLength": 10,
\r
11127 "steppedLine": false,
\r
11130 "expr": "sum(go_goroutines{job=~\"istio-telemetry|istio-policy\"}) by (job)",
\r
11131 "format": "time_series",
\r
11132 "intervalFactor": 2,
\r
11133 "legendFormat": "Number of Goroutines ({{ job }})",
\r
11137 "thresholds": [],
\r
11138 "timeFrom": null,
\r
11139 "timeShift": null,
\r
11140 "title": "Goroutines",
\r
11144 "value_type": "individual"
\r
11156 "format": "short",
\r
11164 "format": "short",
\r
11174 "alignLevel": null
\r
11178 "content": "<center><h2>Mixer Overview</h2></center>",
\r
11185 "height": "40px",
\r
11190 "transparent": true,
\r
11194 "aliasColors": {},
\r
11196 "dashLength": 10,
\r
11198 "datasource": "Prometheus",
\r
11209 "current": false,
\r
11219 "nullPointMode": "null",
\r
11220 "percentage": false,
\r
11221 "pointradius": 5,
\r
11223 "renderer": "flot",
\r
11224 "seriesOverrides": [],
\r
11225 "spaceLength": 10,
\r
11227 "steppedLine": false,
\r
11230 "expr": "sum(rate(grpc_io_server_completed_rpcs[1m]))",
\r
11231 "format": "time_series",
\r
11233 "intervalFactor": 2,
\r
11234 "legendFormat": "mixer (Total)",
\r
11238 "expr": "sum(rate(grpc_io_server_completed_rpcs[1m])) by (grpc_server_method)",
\r
11239 "format": "time_series",
\r
11240 "intervalFactor": 2,
\r
11241 "legendFormat": "mixer ({{ grpc_server_method }})",
\r
11245 "thresholds": [],
\r
11246 "timeFrom": null,
\r
11247 "timeShift": null,
\r
11248 "title": "Incoming Requests",
\r
11252 "value_type": "individual"
\r
11272 "format": "short",
\r
11282 "alignLevel": null
\r
11286 "aliasColors": {},
\r
11288 "dashLength": 10,
\r
11290 "datasource": "Prometheus",
\r
11301 "current": false,
\r
11311 "nullPointMode": "null",
\r
11312 "percentage": false,
\r
11313 "pointradius": 5,
\r
11315 "renderer": "flot",
\r
11316 "seriesOverrides": [
\r
11322 "spaceLength": 10,
\r
11324 "steppedLine": false,
\r
11327 "expr": "histogram_quantile(0.5, sum(rate(grpc_io_server_server_latency_bucket{}[1m])) by (grpc_server_method, le))",
\r
11328 "format": "time_series",
\r
11329 "intervalFactor": 2,
\r
11330 "legendFormat": "{{ grpc_server_method }} 0.5",
\r
11334 "expr": "histogram_quantile(0.9, sum(rate(grpc_io_server_server_latency_bucket{}[1m])) by (grpc_server_method, le))",
\r
11335 "format": "time_series",
\r
11336 "intervalFactor": 2,
\r
11337 "legendFormat": "{{ grpc_server_method }} 0.9",
\r
11341 "expr": "histogram_quantile(0.99, sum(rate(grpc_io_server_server_latency_bucket{}[1m])) by (grpc_server_method, le))",
\r
11342 "format": "time_series",
\r
11343 "intervalFactor": 2,
\r
11344 "legendFormat": "{{ grpc_server_method }} 0.99",
\r
11348 "thresholds": [],
\r
11349 "timeFrom": null,
\r
11350 "timeShift": null,
\r
11351 "title": "Response Durations",
\r
11355 "value_type": "individual"
\r
11375 "format": "short",
\r
11385 "alignLevel": null
\r
11389 "aliasColors": {},
\r
11391 "dashLength": 10,
\r
11393 "datasource": "Prometheus",
\r
11404 "current": false,
\r
11414 "nullPointMode": "null",
\r
11415 "percentage": false,
\r
11416 "pointradius": 5,
\r
11418 "renderer": "flot",
\r
11419 "seriesOverrides": [],
\r
11420 "spaceLength": 10,
\r
11422 "steppedLine": false,
\r
11425 "expr": "sum(rate(grpc_server_handled_total{grpc_code=~\"Unknown|Unimplemented|Internal|DataLoss\"}[1m])) by (grpc_method)",
\r
11426 "format": "time_series",
\r
11427 "intervalFactor": 2,
\r
11428 "legendFormat": "Mixer {{ grpc_method }}",
\r
11432 "thresholds": [],
\r
11433 "timeFrom": null,
\r
11434 "timeShift": null,
\r
11435 "title": "Server Error Rate (5xx responses)",
\r
11439 "value_type": "individual"
\r
11451 "format": "short",
\r
11459 "format": "short",
\r
11469 "alignLevel": null
\r
11473 "aliasColors": {},
\r
11475 "dashLength": 10,
\r
11477 "datasource": "Prometheus",
\r
11488 "current": false,
\r
11498 "nullPointMode": "null",
\r
11499 "percentage": false,
\r
11500 "pointradius": 5,
\r
11502 "renderer": "flot",
\r
11503 "seriesOverrides": [],
\r
11504 "spaceLength": 10,
\r
11506 "steppedLine": false,
\r
11509 "expr": "sum(irate(grpc_server_handled_total{grpc_code!=\"OK\",grpc_service=~\".*Mixer\"}[1m])) by (grpc_method)",
\r
11510 "format": "time_series",
\r
11511 "intervalFactor": 2,
\r
11512 "legendFormat": "Mixer {{ grpc_method }}",
\r
11516 "thresholds": [],
\r
11517 "timeFrom": null,
\r
11518 "timeShift": null,
\r
11519 "title": "Non-successes (4xxs)",
\r
11523 "value_type": "individual"
\r
11535 "format": "short",
\r
11543 "format": "short",
\r
11553 "alignLevel": null
\r
11557 "content": "<center><h2>Adapters and Config</h2></center>",
\r
11568 "transparent": true,
\r
11572 "aliasColors": {},
\r
11574 "dashLength": 10,
\r
11576 "datasource": "Prometheus",
\r
11587 "current": false,
\r
11597 "nullPointMode": "null",
\r
11598 "percentage": false,
\r
11599 "pointradius": 5,
\r
11601 "renderer": "flot",
\r
11602 "seriesOverrides": [],
\r
11603 "spaceLength": 10,
\r
11605 "steppedLine": false,
\r
11608 "expr": "sum(irate(mixer_runtime_dispatches_total{adapter=~\"$adapter\"}[1m])) by (adapter)",
\r
11609 "format": "time_series",
\r
11610 "intervalFactor": 2,
\r
11611 "legendFormat": "{{ adapter }}",
\r
11615 "thresholds": [],
\r
11616 "timeFrom": null,
\r
11617 "timeShift": null,
\r
11618 "title": "Adapter Dispatch Count",
\r
11622 "value_type": "individual"
\r
11634 "format": "short",
\r
11642 "format": "short",
\r
11652 "alignLevel": null
\r
11656 "aliasColors": {},
\r
11658 "dashLength": 10,
\r
11660 "datasource": "Prometheus",
\r
11671 "current": false,
\r
11681 "nullPointMode": "null",
\r
11682 "percentage": false,
\r
11683 "pointradius": 5,
\r
11685 "renderer": "flot",
\r
11686 "seriesOverrides": [],
\r
11687 "spaceLength": 10,
\r
11689 "steppedLine": false,
\r
11692 "expr": "histogram_quantile(0.5, sum(irate(mixer_runtime_dispatch_duration_seconds_bucket{adapter=~\"$adapter\"}[1m])) by (adapter, le))",
\r
11693 "format": "time_series",
\r
11694 "intervalFactor": 2,
\r
11695 "legendFormat": "{{ adapter }} - p50",
\r
11699 "expr": "histogram_quantile(0.9, sum(irate(mixer_runtime_dispatch_duration_seconds_bucket{adapter=~\"$adapter\"}[1m])) by (adapter, le))",
\r
11700 "format": "time_series",
\r
11701 "intervalFactor": 2,
\r
11702 "legendFormat": "{{ adapter }} - p90 ",
\r
11706 "expr": "histogram_quantile(0.99, sum(irate(mixer_runtime_dispatch_duration_seconds_bucket{adapter=~\"$adapter\"}[1m])) by (adapter, le))",
\r
11707 "format": "time_series",
\r
11708 "intervalFactor": 2,
\r
11709 "legendFormat": "{{ adapter }} - p99",
\r
11713 "thresholds": [],
\r
11714 "timeFrom": null,
\r
11715 "timeShift": null,
\r
11716 "title": "Adapter Dispatch Duration",
\r
11720 "value_type": "individual"
\r
11740 "format": "short",
\r
11750 "alignLevel": null
\r
11754 "aliasColors": {},
\r
11756 "dashLength": 10,
\r
11758 "datasource": "Prometheus",
\r
11769 "current": false,
\r
11779 "nullPointMode": "null",
\r
11780 "percentage": false,
\r
11781 "pointradius": 5,
\r
11783 "renderer": "flot",
\r
11784 "seriesOverrides": [],
\r
11785 "spaceLength": 10,
\r
11787 "steppedLine": false,
\r
11790 "expr": "scalar(topk(1, max(mixer_config_rule_config_count) by (configID)))",
\r
11791 "format": "time_series",
\r
11792 "intervalFactor": 1,
\r
11793 "legendFormat": "Rules",
\r
11797 "expr": "scalar(topk(1, max(mixer_config_rule_config_error_count) by (configID)))",
\r
11798 "format": "time_series",
\r
11799 "intervalFactor": 1,
\r
11800 "legendFormat": "Config Errors",
\r
11804 "expr": "scalar(topk(1, max(mixer_config_rule_config_match_error_count) by (configID)))",
\r
11805 "format": "time_series",
\r
11806 "intervalFactor": 1,
\r
11807 "legendFormat": "Match Errors",
\r
11811 "expr": "scalar(topk(1, max(mixer_config_unsatisfied_action_handler_count) by (configID)))",
\r
11812 "format": "time_series",
\r
11813 "intervalFactor": 1,
\r
11814 "legendFormat": "Unsatisfied Actions",
\r
11818 "thresholds": [],
\r
11819 "timeFrom": null,
\r
11820 "timeShift": null,
\r
11821 "title": "Rules",
\r
11825 "value_type": "individual"
\r
11837 "format": "short",
\r
11845 "format": "short",
\r
11855 "alignLevel": null
\r
11859 "aliasColors": {},
\r
11861 "dashLength": 10,
\r
11863 "datasource": "Prometheus",
\r
11874 "current": false,
\r
11884 "nullPointMode": "null",
\r
11885 "percentage": false,
\r
11886 "pointradius": 5,
\r
11888 "renderer": "flot",
\r
11889 "seriesOverrides": [],
\r
11890 "spaceLength": 10,
\r
11892 "steppedLine": false,
\r
11895 "expr": "scalar(topk(1, max(mixer_config_instance_config_count) by (configID)))",
\r
11896 "format": "time_series",
\r
11897 "intervalFactor": 1,
\r
11898 "legendFormat": "Instances",
\r
11902 "thresholds": [],
\r
11903 "timeFrom": null,
\r
11904 "timeShift": null,
\r
11905 "title": "Instances in Latest Config",
\r
11909 "value_type": "individual"
\r
11921 "format": "short",
\r
11929 "format": "short",
\r
11939 "alignLevel": null
\r
11943 "aliasColors": {},
\r
11945 "dashLength": 10,
\r
11947 "datasource": "Prometheus",
\r
11958 "current": false,
\r
11968 "nullPointMode": "null",
\r
11969 "percentage": false,
\r
11970 "pointradius": 5,
\r
11972 "renderer": "flot",
\r
11973 "seriesOverrides": [],
\r
11974 "spaceLength": 10,
\r
11976 "steppedLine": false,
\r
11979 "expr": "scalar(topk(1, max(mixer_config_handler_config_count) by (configID)))",
\r
11980 "format": "time_series",
\r
11981 "intervalFactor": 1,
\r
11982 "legendFormat": "Handlers",
\r
11986 "thresholds": [],
\r
11987 "timeFrom": null,
\r
11988 "timeShift": null,
\r
11989 "title": "Handlers in Latest Config",
\r
11993 "value_type": "individual"
\r
12005 "format": "short",
\r
12013 "format": "short",
\r
12023 "alignLevel": null
\r
12027 "aliasColors": {},
\r
12029 "dashLength": 10,
\r
12031 "datasource": "Prometheus",
\r
12042 "current": false,
\r
12052 "nullPointMode": "null",
\r
12053 "percentage": false,
\r
12054 "pointradius": 5,
\r
12056 "renderer": "flot",
\r
12057 "seriesOverrides": [],
\r
12058 "spaceLength": 10,
\r
12060 "steppedLine": false,
\r
12063 "expr": "scalar(topk(1, max(mixer_config_attribute_count) by (configID)))",
\r
12064 "format": "time_series",
\r
12065 "instant": false,
\r
12066 "intervalFactor": 1,
\r
12067 "legendFormat": "Attributes",
\r
12071 "thresholds": [],
\r
12072 "timeFrom": null,
\r
12073 "timeShift": null,
\r
12074 "title": "Attributes in Latest Config",
\r
12078 "value_type": "individual"
\r
12090 "format": "short",
\r
12098 "format": "short",
\r
12108 "alignLevel": null
\r
12112 "content": "<center><h2>Individual Adapters</h2></center>",
\r
12123 "transparent": true,
\r
12127 "collapsed": false,
\r
12136 "repeat": "adapter",
\r
12137 "title": "$adapter Adapter",
\r
12141 "aliasColors": {},
\r
12143 "dashLength": 10,
\r
12145 "datasource": "Prometheus",
\r
12156 "current": false,
\r
12166 "nullPointMode": "null",
\r
12167 "percentage": false,
\r
12168 "pointradius": 5,
\r
12170 "renderer": "flot",
\r
12171 "seriesOverrides": [],
\r
12172 "spaceLength": 10,
\r
12174 "steppedLine": false,
\r
12177 "expr": "label_replace(irate(mixer_runtime_dispatches_total{adapter=~\"$adapter\"}[1m]),\"handler\", \"$1 ($3)\", \"handler\", \"(.*)\\\\.(.*)\\\\.(.*)\")",
\r
12178 "format": "time_series",
\r
12179 "intervalFactor": 2,
\r
12180 "legendFormat": "{{ handler }} (error: {{ error }})",
\r
12184 "thresholds": [],
\r
12185 "timeFrom": null,
\r
12186 "timeShift": null,
\r
12187 "title": "Dispatch Count By Handler",
\r
12191 "value_type": "individual"
\r
12203 "format": "short",
\r
12211 "format": "short",
\r
12221 "alignLevel": null
\r
12225 "aliasColors": {},
\r
12227 "dashLength": 10,
\r
12229 "datasource": "Prometheus",
\r
12240 "current": false,
\r
12250 "nullPointMode": "null",
\r
12251 "percentage": false,
\r
12252 "pointradius": 5,
\r
12254 "renderer": "flot",
\r
12255 "seriesOverrides": [],
\r
12256 "spaceLength": 10,
\r
12258 "steppedLine": false,
\r
12261 "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\", \"(.*)\\\\.(.*)\\\\.(.*)\")",
\r
12262 "format": "time_series",
\r
12263 "intervalFactor": 2,
\r
12264 "legendFormat": "p50 - {{ handler_short }} (error: {{ error }})",
\r
12268 "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\", \"(.*)\\\\.(.*)\\\\.(.*)\")",
\r
12269 "format": "time_series",
\r
12270 "intervalFactor": 2,
\r
12271 "legendFormat": "p90 - {{ handler_short }} (error: {{ error }})",
\r
12275 "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\", \"(.*)\\\\.(.*)\\\\.(.*)\")",
\r
12276 "format": "time_series",
\r
12277 "intervalFactor": 2,
\r
12278 "legendFormat": "p99 - {{ handler_short }} (error: {{ error }})",
\r
12282 "thresholds": [],
\r
12283 "timeFrom": null,
\r
12284 "timeShift": null,
\r
12285 "title": "Dispatch Duration By Handler",
\r
12289 "value_type": "individual"
\r
12309 "format": "short",
\r
12319 "alignLevel": null
\r
12324 "schemaVersion": 16,
\r
12330 "allValue": null,
\r
12332 "datasource": "Prometheus",
\r
12334 "includeAll": true,
\r
12335 "label": "Adapter",
\r
12337 "name": "adapter",
\r
12339 "query": "label_values(adapter)",
\r
12343 "tagValuesQuery": "",
\r
12352 "from": "now-5m",
\r
12356 "refresh_intervals": [
\r
12368 "time_options": [
\r
12381 "title": "Istio Mixer Dashboard",
\r
12389 name: istio-grafana-configuration-dashboards-pilot-dashboard
\r
12390 namespace: istio-system
\r
12398 pilot-dashboard.json: '{
\r
12403 "datasource": "-- Grafana --",
\r
12406 "iconColor": "rgba(0, 211, 255, 1)",
\r
12407 "name": "Annotations & Alerts",
\r
12408 "type": "dashboard"
\r
12412 "editable": false,
\r
12414 "graphTooltip": 1,
\r
12419 "collapsed": false,
\r
12428 "title": "Deployed Versions",
\r
12432 "aliasColors": {},
\r
12434 "dashLength": 10,
\r
12436 "datasource": "Prometheus",
\r
12447 "current": false,
\r
12457 "nullPointMode": "null",
\r
12458 "percentage": false,
\r
12459 "pointradius": 5,
\r
12461 "renderer": "flot",
\r
12462 "seriesOverrides": [],
\r
12463 "spaceLength": 10,
\r
12465 "steppedLine": false,
\r
12468 "expr": "sum(istio_build{component=\"pilot\"}) by (tag)",
\r
12469 "format": "time_series",
\r
12470 "intervalFactor": 1,
\r
12471 "legendFormat": "{{ tag }}",
\r
12475 "thresholds": [],
\r
12476 "timeFrom": null,
\r
12477 "timeRegions": [],
\r
12478 "timeShift": null,
\r
12479 "title": "Pilot Versions",
\r
12483 "value_type": "individual"
\r
12495 "format": "short",
\r
12503 "format": "short",
\r
12513 "alignLevel": null
\r
12517 "collapsed": false,
\r
12526 "title": "Resource Usage",
\r
12530 "aliasColors": {},
\r
12532 "dashLength": 10,
\r
12534 "datasource": "Prometheus",
\r
12545 "current": false,
\r
12555 "nullPointMode": "null",
\r
12556 "percentage": false,
\r
12557 "pointradius": 5,
\r
12559 "renderer": "flot",
\r
12560 "seriesOverrides": [],
\r
12561 "spaceLength": 10,
\r
12563 "steppedLine": false,
\r
12566 "expr": "process_virtual_memory_bytes{job=\"pilot\"}",
\r
12567 "format": "time_series",
\r
12568 "instant": false,
\r
12569 "intervalFactor": 2,
\r
12570 "legendFormat": "Virtual Memory",
\r
12575 "expr": "process_resident_memory_bytes{job=\"pilot\"}",
\r
12576 "format": "time_series",
\r
12577 "intervalFactor": 2,
\r
12578 "legendFormat": "Resident Memory",
\r
12583 "expr": "go_memstats_heap_sys_bytes{job=\"pilot\"}",
\r
12584 "format": "time_series",
\r
12586 "intervalFactor": 2,
\r
12587 "legendFormat": "heap sys",
\r
12591 "expr": "go_memstats_heap_alloc_bytes{job=\"pilot\"}",
\r
12592 "format": "time_series",
\r
12594 "intervalFactor": 2,
\r
12595 "legendFormat": "heap alloc",
\r
12599 "expr": "go_memstats_alloc_bytes{job=\"pilot\"}",
\r
12600 "format": "time_series",
\r
12601 "intervalFactor": 2,
\r
12602 "legendFormat": "Alloc",
\r
12607 "expr": "go_memstats_heap_inuse_bytes{job=\"pilot\"}",
\r
12608 "format": "time_series",
\r
12610 "intervalFactor": 2,
\r
12611 "legendFormat": "Heap in-use",
\r
12616 "expr": "go_memstats_stack_inuse_bytes{job=\"pilot\"}",
\r
12617 "format": "time_series",
\r
12618 "intervalFactor": 2,
\r
12619 "legendFormat": "Stack in-use",
\r
12624 "expr": "sum(container_memory_usage_bytes{container_name=~\"discovery|istio-proxy\", pod_name=~\"istio-pilot-.*\"})",
\r
12625 "format": "time_series",
\r
12627 "intervalFactor": 2,
\r
12628 "legendFormat": "Total (k8s)",
\r
12633 "expr": "container_memory_usage_bytes{container_name=~\"discovery|istio-proxy\", pod_name=~\"istio-pilot-.*\"}",
\r
12634 "format": "time_series",
\r
12636 "intervalFactor": 2,
\r
12637 "legendFormat": "{{ container_name }} (k8s)",
\r
12642 "thresholds": [],
\r
12643 "timeFrom": null,
\r
12644 "timeRegions": [],
\r
12645 "timeShift": null,
\r
12646 "title": "Memory",
\r
12650 "value_type": "individual"
\r
12662 "format": "bytes",
\r
12670 "format": "short",
\r
12680 "alignLevel": null
\r
12684 "aliasColors": {},
\r
12686 "dashLength": 10,
\r
12688 "datasource": "Prometheus",
\r
12699 "current": false,
\r
12709 "nullPointMode": "null",
\r
12710 "percentage": false,
\r
12711 "pointradius": 5,
\r
12713 "renderer": "flot",
\r
12714 "seriesOverrides": [],
\r
12715 "spaceLength": 10,
\r
12717 "steppedLine": false,
\r
12720 "expr": "sum(rate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",container_name=~\"discovery|istio-proxy\", pod_name=~\"istio-pilot-.*\"}[1m]))",
\r
12721 "format": "time_series",
\r
12723 "intervalFactor": 2,
\r
12724 "legendFormat": "Total (k8s)",
\r
12729 "expr": "sum(rate(container_cpu_usage_seconds_total{job=\"kubernetes-cadvisor\",container_name=~\"discovery|istio-proxy\", pod_name=~\"istio-pilot-.*\"}[1m])) by (container_name)",
\r
12730 "format": "time_series",
\r
12732 "intervalFactor": 2,
\r
12733 "legendFormat": "{{ container_name }} (k8s)",
\r
12738 "expr": "irate(process_cpu_seconds_total{job=\"pilot\"}[1m])",
\r
12739 "format": "time_series",
\r
12741 "intervalFactor": 2,
\r
12742 "legendFormat": "pilot (self-reported)",
\r
12747 "thresholds": [],
\r
12748 "timeFrom": null,
\r
12749 "timeRegions": [],
\r
12750 "timeShift": null,
\r
12755 "value_type": "individual"
\r
12767 "format": "short",
\r
12775 "format": "short",
\r
12785 "alignLevel": null
\r
12789 "aliasColors": {},
\r
12791 "dashLength": 10,
\r
12793 "datasource": "Prometheus",
\r
12804 "current": false,
\r
12814 "nullPointMode": "null",
\r
12815 "percentage": false,
\r
12816 "pointradius": 5,
\r
12818 "renderer": "flot",
\r
12819 "seriesOverrides": [],
\r
12820 "spaceLength": 10,
\r
12822 "steppedLine": false,
\r
12825 "expr": "process_open_fds{job=\"pilot\"}",
\r
12826 "format": "time_series",
\r
12828 "instant": false,
\r
12830 "intervalFactor": 2,
\r
12831 "legendFormat": "Open FDs (pilot)",
\r
12835 "expr": "container_fs_usage_bytes{container_name=~\"discovery|istio-proxy\", pod_name=~\"istio-pilot-.*\"}",
\r
12836 "format": "time_series",
\r
12837 "intervalFactor": 2,
\r
12838 "legendFormat": "{{ container_name }}",
\r
12843 "thresholds": [],
\r
12844 "timeFrom": null,
\r
12845 "timeRegions": [],
\r
12846 "timeShift": null,
\r
12851 "value_type": "individual"
\r
12863 "format": "bytes",
\r
12871 "decimals": null,
\r
12872 "format": "none",
\r
12882 "alignLevel": null
\r
12886 "aliasColors": {},
\r
12888 "dashLength": 10,
\r
12890 "datasource": "Prometheus",
\r
12901 "current": false,
\r
12911 "nullPointMode": "null",
\r
12912 "percentage": false,
\r
12913 "pointradius": 5,
\r
12915 "renderer": "flot",
\r
12916 "seriesOverrides": [],
\r
12917 "spaceLength": 10,
\r
12919 "steppedLine": false,
\r
12922 "expr": "go_goroutines{job=\"pilot\"}",
\r
12923 "format": "time_series",
\r
12924 "intervalFactor": 2,
\r
12925 "legendFormat": "Number of Goroutines",
\r
12930 "thresholds": [],
\r
12931 "timeFrom": null,
\r
12932 "timeRegions": [],
\r
12933 "timeShift": null,
\r
12934 "title": "Goroutines",
\r
12938 "value_type": "individual"
\r
12950 "format": "short",
\r
12958 "format": "short",
\r
12968 "alignLevel": null
\r
12972 "collapsed": false,
\r
12981 "title": "Pilot Push Information",
\r
12985 "aliasColors": {},
\r
12987 "dashLength": 10,
\r
12989 "description": "Shows pilot pushes",
\r
13000 "current": false,
\r
13010 "nullPointMode": "null as zero",
\r
13011 "paceLength": 10,
\r
13012 "percentage": false,
\r
13013 "pointradius": 5,
\r
13015 "renderer": "flot",
\r
13016 "seriesOverrides": [],
\r
13017 "spaceLength": 10,
\r
13019 "steppedLine": false,
\r
13022 "expr": "sum(rate(pilot_xds_pushes{type!~\".*_senderr\"}[1m])) by (type)",
\r
13023 "format": "time_series",
\r
13024 "instant": false,
\r
13026 "intervalFactor": 1,
\r
13027 "legendFormat": "{{ type }}",
\r
13032 "thresholds": [],
\r
13033 "timeFrom": null,
\r
13034 "timeRegions": [],
\r
13035 "timeShift": null,
\r
13036 "title": "Pilot Pushes",
\r
13040 "value_type": "individual"
\r
13062 "format": "short",
\r
13072 "alignLevel": null
\r
13076 "aliasColors": {},
\r
13078 "dashLength": 10,
\r
13080 "datasource": "Prometheus",
\r
13081 "description": "Captures a variety of pilot errors",
\r
13092 "current": false,
\r
13102 "nullPointMode": "null",
\r
13103 "percentage": false,
\r
13104 "pointradius": 5,
\r
13106 "renderer": "flot",
\r
13107 "seriesOverrides": [],
\r
13108 "spaceLength": 10,
\r
13110 "steppedLine": false,
\r
13113 "expr": "label_replace(sum(pilot_xds_cds_reject{job=\"pilot\"}) by (node, err), \"node\", \"$1\", \"node\", \".*~.*~(.*)~.*\")",
\r
13114 "format": "time_series",
\r
13116 "intervalFactor": 1,
\r
13117 "legendFormat": "Rejected CDS Configs - {{ node }}: {{ err }}",
\r
13121 "expr": "pilot_xds_eds_reject{job=\"pilot\"}",
\r
13122 "format": "time_series",
\r
13124 "intervalFactor": 1,
\r
13125 "legendFormat": "Rejected EDS Configs",
\r
13129 "expr": "rate(pilot_xds_write_timeout{job=\"pilot\"}[1m])",
\r
13130 "format": "time_series",
\r
13131 "intervalFactor": 1,
\r
13132 "legendFormat": "Write Timeouts",
\r
13136 "expr": "rate(pilot_xds_push_timeout{job=\"pilot\"}[1m])",
\r
13137 "format": "time_series",
\r
13138 "intervalFactor": 1,
\r
13139 "legendFormat": "Push Timeouts",
\r
13143 "expr": "sum(rate(pilot_xds_push_errors{job=\"pilot\"}[1m]))",
\r
13144 "format": "time_series",
\r
13146 "intervalFactor": 1,
\r
13147 "legendFormat": "Push Errors ({{ type }})",
\r
13151 "thresholds": [],
\r
13152 "timeFrom": null,
\r
13153 "timeRegions": [],
\r
13154 "timeShift": null,
\r
13155 "title": "Pilot Errors",
\r
13159 "value_type": "individual"
\r
13171 "format": "short",
\r
13179 "format": "short",
\r
13189 "alignLevel": null
\r
13193 "collapsed": false,
\r
13206 "aliasColors": {},
\r
13208 "dashLength": 10,
\r
13210 "datasource": "Prometheus",
\r
13221 "current": false,
\r
13231 "nullPointMode": "null",
\r
13232 "percentage": false,
\r
13233 "pointradius": 5,
\r
13235 "renderer": "flot",
\r
13236 "seriesOverrides": [],
\r
13237 "spaceLength": 10,
\r
13239 "steppedLine": false,
\r
13242 "expr": "sum(irate(envoy_cluster_update_success{cluster_name=\"xds-grpc\"}[1m]))",
\r
13243 "format": "time_series",
\r
13245 "intervalFactor": 1,
\r
13246 "legendFormat": "XDS GRPC Successes",
\r
13250 "thresholds": [],
\r
13251 "timeFrom": null,
\r
13252 "timeRegions": [],
\r
13253 "timeShift": null,
\r
13254 "title": "Updates",
\r
13258 "value_type": "individual"
\r
13288 "alignLevel": null
\r
13292 "aliasColors": {},
\r
13294 "dashLength": 10,
\r
13296 "datasource": "Prometheus",
\r
13307 "current": false,
\r
13317 "nullPointMode": "null",
\r
13318 "percentage": false,
\r
13319 "pointradius": 5,
\r
13321 "renderer": "flot",
\r
13322 "seriesOverrides": [],
\r
13323 "spaceLength": 10,
\r
13325 "steppedLine": false,
\r
13328 "expr": "round(sum(rate(envoy_cluster_update_attempt{cluster_name=\"xds-grpc\"}[1m])) - sum(rate(envoy_cluster_update_success{cluster_name=\"xds-grpc\"}[1m])))",
\r
13329 "format": "time_series",
\r
13330 "intervalFactor": 2,
\r
13331 "legendFormat": "XDS GRPC ",
\r
13336 "thresholds": [],
\r
13337 "timeFrom": null,
\r
13338 "timeRegions": [],
\r
13339 "timeShift": null,
\r
13340 "title": "Failures",
\r
13344 "value_type": "individual"
\r
13364 "format": "short",
\r
13374 "alignLevel": null
\r
13378 "aliasColors": {},
\r
13380 "dashLength": 10,
\r
13382 "datasource": "Prometheus",
\r
13393 "current": false,
\r
13403 "nullPointMode": "null",
\r
13404 "percentage": false,
\r
13405 "pointradius": 5,
\r
13407 "renderer": "flot",
\r
13408 "seriesOverrides": [],
\r
13409 "spaceLength": 10,
\r
13411 "steppedLine": false,
\r
13414 "expr": "sum(envoy_cluster_upstream_cx_active{cluster_name=\"xds-grpc\"})",
\r
13415 "format": "time_series",
\r
13416 "intervalFactor": 2,
\r
13417 "legendFormat": "Pilot (XDS GRPC)",
\r
13422 "thresholds": [],
\r
13423 "timeFrom": null,
\r
13424 "timeRegions": [],
\r
13425 "timeShift": null,
\r
13426 "title": "Active Connections",
\r
13430 "value_type": "individual"
\r
13442 "format": "short",
\r
13450 "format": "short",
\r
13460 "alignLevel": null
\r
13464 "aliasColors": {},
\r
13466 "dashLength": 10,
\r
13468 "datasource": "Prometheus",
\r
13479 "current": false,
\r
13489 "nullPointMode": "null",
\r
13490 "percentage": false,
\r
13491 "pointradius": 5,
\r
13493 "renderer": "flot",
\r
13494 "seriesOverrides": [],
\r
13495 "spaceLength": 10,
\r
13497 "steppedLine": false,
\r
13500 "expr": "pilot_conflict_inbound_listener{job=\"pilot\"}",
\r
13501 "format": "time_series",
\r
13502 "intervalFactor": 1,
\r
13503 "legendFormat": "Inbound Listeners",
\r
13507 "expr": "pilot_conflict_outbound_listener_http_over_current_tcp{job=\"pilot\"}",
\r
13508 "format": "time_series",
\r
13509 "intervalFactor": 1,
\r
13510 "legendFormat": "Outbound Listeners (http over current tcp)",
\r
13514 "expr": "pilot_conflict_outbound_listener_tcp_over_current_tcp{job=\"pilot\"}",
\r
13515 "format": "time_series",
\r
13516 "intervalFactor": 1,
\r
13517 "legendFormat": "Outbound Listeners (tcp over current tcp)",
\r
13521 "expr": "pilot_conflict_outbound_listener_tcp_over_current_http{job=\"pilot\"}",
\r
13522 "format": "time_series",
\r
13523 "intervalFactor": 1,
\r
13524 "legendFormat": "Outbound Listeners (tcp over current http)",
\r
13528 "thresholds": [],
\r
13529 "timeFrom": null,
\r
13530 "timeRegions": [],
\r
13531 "timeShift": null,
\r
13532 "title": "Conflicts",
\r
13536 "value_type": "individual"
\r
13548 "format": "short",
\r
13556 "format": "short",
\r
13566 "alignLevel": null
\r
13570 "aliasColors": {},
\r
13572 "dashLength": 10,
\r
13574 "datasource": "Prometheus",
\r
13585 "current": false,
\r
13595 "nullPointMode": "null",
\r
13596 "percentage": false,
\r
13597 "pointradius": 5,
\r
13599 "renderer": "flot",
\r
13600 "seriesOverrides": [],
\r
13601 "spaceLength": 10,
\r
13603 "steppedLine": false,
\r
13606 "expr": "pilot_virt_services{job=\"pilot\"}",
\r
13607 "format": "time_series",
\r
13608 "intervalFactor": 1,
\r
13609 "legendFormat": "Virtual Services",
\r
13613 "expr": "pilot_services{job=\"pilot\"}",
\r
13614 "format": "time_series",
\r
13615 "intervalFactor": 1,
\r
13616 "legendFormat": "Services",
\r
13620 "expr": "label_replace(sum(pilot_xds_cds_reject{job=\"pilot\"}) by (node, err), \"node\", \"$1\", \"node\", \".*~.*~(.*)~.*\")",
\r
13621 "format": "time_series",
\r
13623 "intervalFactor": 1,
\r
13624 "legendFormat": "Rejected CDS Configs - {{ node }}: {{ err }}",
\r
13628 "expr": "pilot_xds_eds_reject{job=\"pilot\"}",
\r
13629 "format": "time_series",
\r
13631 "intervalFactor": 1,
\r
13632 "legendFormat": "Rejected EDS Configs",
\r
13636 "expr": "pilot_xds{job=\"pilot\"}",
\r
13637 "format": "time_series",
\r
13638 "intervalFactor": 1,
\r
13639 "legendFormat": "Connected Endpoints",
\r
13643 "expr": "rate(pilot_xds_write_timeout{job=\"pilot\"}[1m])",
\r
13644 "format": "time_series",
\r
13645 "intervalFactor": 1,
\r
13646 "legendFormat": "Write Timeouts",
\r
13650 "expr": "rate(pilot_xds_push_timeout{job=\"pilot\"}[1m])",
\r
13651 "format": "time_series",
\r
13652 "intervalFactor": 1,
\r
13653 "legendFormat": "Push Timeouts",
\r
13657 "expr": "rate(pilot_xds_pushes{job=\"pilot\"}[1m])",
\r
13658 "format": "time_series",
\r
13659 "intervalFactor": 1,
\r
13660 "legendFormat": "Pushes ({{ type }})",
\r
13664 "expr": "rate(pilot_xds_push_errors{job=\"pilot\"}[1m])",
\r
13665 "format": "time_series",
\r
13666 "intervalFactor": 1,
\r
13667 "legendFormat": "Push Errors ({{ type }})",
\r
13671 "thresholds": [],
\r
13672 "timeFrom": null,
\r
13673 "timeRegions": [],
\r
13674 "timeShift": null,
\r
13675 "title": "ADS Monitoring",
\r
13679 "value_type": "individual"
\r
13691 "format": "short",
\r
13699 "format": "short",
\r
13709 "alignLevel": null
\r
13713 "aliasColors": {},
\r
13715 "dashLength": 10,
\r
13717 "datasource": "Prometheus",
\r
13728 "current": false,
\r
13738 "nullPointMode": "null",
\r
13739 "percentage": false,
\r
13740 "pointradius": 5,
\r
13742 "renderer": "flot",
\r
13743 "seriesOverrides": [],
\r
13744 "spaceLength": 10,
\r
13746 "steppedLine": false,
\r
13749 "expr": "label_replace(sum(pilot_xds_cds_reject{job=\"pilot\"}) by (node, err), \"node\", \"$1\", \"node\", \".*~.*~(.*)~.*\")",
\r
13750 "format": "time_series",
\r
13751 "intervalFactor": 1,
\r
13752 "legendFormat": "{{ node }} ({{ err }})",
\r
13756 "thresholds": [],
\r
13757 "timeFrom": null,
\r
13758 "timeRegions": [],
\r
13759 "timeShift": null,
\r
13760 "title": "Rejected CDS Configs",
\r
13764 "value_type": "individual"
\r
13776 "format": "short",
\r
13784 "format": "short",
\r
13794 "alignLevel": null
\r
13798 "aliasColors": {},
\r
13800 "dashLength": 10,
\r
13802 "datasource": "Prometheus",
\r
13813 "current": false,
\r
13823 "nullPointMode": "null",
\r
13824 "percentage": false,
\r
13825 "pointradius": 5,
\r
13827 "renderer": "flot",
\r
13828 "seriesOverrides": [],
\r
13829 "spaceLength": 10,
\r
13831 "steppedLine": false,
\r
13834 "expr": "label_replace(sum(pilot_xds_eds_reject{job=\"pilot\"}) by (node, err), \"node\", \"$1\", \"node\", \".*~.*~(.*)~.*\")",
\r
13835 "format": "time_series",
\r
13836 "intervalFactor": 1,
\r
13837 "legendFormat": "{{ node }} ({{err}})",
\r
13841 "thresholds": [],
\r
13842 "timeFrom": null,
\r
13843 "timeRegions": [],
\r
13844 "timeShift": null,
\r
13845 "title": "Rejected EDS Configs",
\r
13849 "value_type": "individual"
\r
13861 "format": "short",
\r
13869 "format": "short",
\r
13879 "alignLevel": null
\r
13883 "aliasColors": {},
\r
13885 "dashLength": 10,
\r
13887 "datasource": "Prometheus",
\r
13898 "current": false,
\r
13908 "nullPointMode": "null",
\r
13909 "percentage": false,
\r
13910 "pointradius": 5,
\r
13912 "renderer": "flot",
\r
13913 "seriesOverrides": [],
\r
13914 "spaceLength": 10,
\r
13916 "steppedLine": false,
\r
13919 "expr": "label_replace(sum(pilot_xds_lds_reject{job=\"pilot\"}) by (node, err), \"node\", \"$1\", \"node\", \".*~.*~(.*)~.*\")",
\r
13920 "format": "time_series",
\r
13921 "intervalFactor": 1,
\r
13922 "legendFormat": "{{ node }} ({{err}})",
\r
13926 "thresholds": [],
\r
13927 "timeFrom": null,
\r
13928 "timeRegions": [],
\r
13929 "timeShift": null,
\r
13930 "title": "Rejected LDS Configs",
\r
13934 "value_type": "individual"
\r
13946 "format": "short",
\r
13954 "format": "short",
\r
13964 "alignLevel": null
\r
13968 "aliasColors": {},
\r
13970 "dashLength": 10,
\r
13972 "datasource": "Prometheus",
\r
13983 "current": false,
\r
13993 "nullPointMode": "null",
\r
13994 "percentage": false,
\r
13995 "pointradius": 5,
\r
13997 "renderer": "flot",
\r
13998 "seriesOverrides": [],
\r
13999 "spaceLength": 10,
\r
14001 "steppedLine": false,
\r
14004 "expr": "label_replace(sum(pilot_xds_rds_reject{job=\"pilot\"}) by (node, err), \"node\", \"$1\", \"node\", \".*~.*~(.*)~.*\")",
\r
14005 "format": "time_series",
\r
14006 "intervalFactor": 1,
\r
14007 "legendFormat": "{{ node }} ({{err}})",
\r
14011 "thresholds": [],
\r
14012 "timeFrom": null,
\r
14013 "timeRegions": [],
\r
14014 "timeShift": null,
\r
14015 "title": "Rejected RDS Configs",
\r
14019 "value_type": "individual"
\r
14031 "format": "short",
\r
14039 "format": "short",
\r
14049 "alignLevel": null
\r
14054 "outbound|80||default-http-backend.kube-system.svc.cluster.local": "rgba(255, 255, 255, 0.97)"
\r
14057 "dashLength": 10,
\r
14059 "datasource": "Prometheus",
\r
14070 "current": false,
\r
14080 "nullPointMode": "null",
\r
14081 "percentage": false,
\r
14082 "pointradius": 5,
\r
14084 "renderer": "flot",
\r
14085 "seriesOverrides": [
\r
14087 "alias": "outbound|80||default-http-backend.kube-system.svc.cluster.local",
\r
14091 "spaceLength": 10,
\r
14093 "steppedLine": false,
\r
14096 "expr": "sum(pilot_xds_eds_instances{job=\"pilot\"}) by (cluster)",
\r
14097 "format": "time_series",
\r
14098 "intervalFactor": 1,
\r
14099 "legendFormat": "{{ cluster }}",
\r
14103 "thresholds": [],
\r
14104 "timeFrom": null,
\r
14105 "timeRegions": [],
\r
14106 "timeShift": null,
\r
14107 "title": "EDS Instances",
\r
14111 "value_type": "individual"
\r
14123 "format": "short",
\r
14131 "format": "short",
\r
14141 "alignLevel": null
\r
14146 "schemaVersion": 18,
\r
14153 "from": "now-5m",
\r
14157 "refresh_intervals": [
\r
14169 "time_options": [
\r
14181 "timezone": "browser",
\r
14182 "title": "Istio Pilot Dashboard",
\r
14183 "uid": "3--MLVZZk",
\r
14190 # Source: istio/charts/grafana/templates/configmap.yaml
\r
14194 name: istio-grafana
\r
14195 namespace: istio-system
\r
14203 datasources.yaml: |
\r
14214 url: http://prometheus:9090
\r
14216 dashboardproviders.yaml: |
\r
14219 - disableDeletion: false
\r
14223 path: /var/lib/grafana/dashboards/istio
\r
14228 # Source: istio/charts/kiali/templates/configmap.yaml
\r
14233 namespace: istio-system
\r
14241 istio_namespace: istio-system
\r
14243 strategy: "login"
\r
14247 external_services:
\r
14253 url: http://prometheus:9090
\r
14256 # Source: istio/charts/prometheus/templates/configmap.yaml
\r
14261 namespace: istio-system
\r
14264 chart: prometheus
\r
14268 prometheus.yml: |-
\r
14270 scrape_interval: 15s
\r
14273 - job_name: 'istio-mesh'
\r
14274 kubernetes_sd_configs:
\r
14275 - role: endpoints
\r
14281 - source_labels: [__meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name]
\r
14283 regex: istio-telemetry;prometheus
\r
14285 # Scrape config for envoy stats
\r
14286 - job_name: 'envoy-stats'
\r
14287 metrics_path: /stats/prometheus
\r
14288 kubernetes_sd_configs:
\r
14292 - source_labels: [__meta_kubernetes_pod_container_port_name]
\r
14294 regex: '.*-envoy-prom'
\r
14295 - source_labels: [__address__, __meta_kubernetes_pod_annotation_prometheus_io_port]
\r
14297 regex: ([^:]+)(?::\d+)?;(\d+)
\r
14298 replacement: $1:15090
\r
14299 target_label: __address__
\r
14300 - action: labelmap
\r
14301 regex: __meta_kubernetes_pod_label_(.+)
\r
14302 - source_labels: [__meta_kubernetes_namespace]
\r
14304 target_label: namespace
\r
14305 - source_labels: [__meta_kubernetes_pod_name]
\r
14307 target_label: pod_name
\r
14309 - job_name: 'istio-policy'
\r
14310 kubernetes_sd_configs:
\r
14311 - role: endpoints
\r
14318 - source_labels: [__meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name]
\r
14320 regex: istio-policy;http-monitoring
\r
14322 - job_name: 'istio-telemetry'
\r
14323 kubernetes_sd_configs:
\r
14324 - role: endpoints
\r
14330 - source_labels: [__meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name]
\r
14332 regex: istio-telemetry;http-monitoring
\r
14334 - job_name: 'pilot'
\r
14335 kubernetes_sd_configs:
\r
14336 - role: endpoints
\r
14342 - source_labels: [__meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name]
\r
14344 regex: istio-pilot;http-monitoring
\r
14346 - job_name: 'galley'
\r
14347 kubernetes_sd_configs:
\r
14348 - role: endpoints
\r
14354 - source_labels: [__meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name]
\r
14356 regex: istio-galley;http-monitoring
\r
14358 - job_name: 'citadel'
\r
14359 kubernetes_sd_configs:
\r
14360 - role: endpoints
\r
14366 - source_labels: [__meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name]
\r
14368 regex: istio-citadel;http-monitoring
\r
14370 # scrape config for API servers
\r
14371 - job_name: 'kubernetes-apiservers'
\r
14372 kubernetes_sd_configs:
\r
14373 - role: endpoints
\r
14379 ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
\r
14380 bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
\r
14382 - source_labels: [__meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name]
\r
14384 regex: kubernetes;https
\r
14386 # scrape config for nodes (kubelet)
\r
14387 - job_name: 'kubernetes-nodes'
\r
14390 ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
\r
14391 bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
\r
14392 kubernetes_sd_configs:
\r
14395 - action: labelmap
\r
14396 regex: __meta_kubernetes_node_label_(.+)
\r
14397 - target_label: __address__
\r
14398 replacement: kubernetes.default.svc:443
\r
14399 - source_labels: [__meta_kubernetes_node_name]
\r
14401 target_label: __metrics_path__
\r
14402 replacement: /api/v1/nodes/${1}/proxy/metrics
\r
14404 # Scrape config for Kubelet cAdvisor.
\r
14406 # This is required for Kubernetes 1.7.3 and later, where cAdvisor metrics
\r
14407 # (those whose names begin with 'container_') have been removed from the
\r
14408 # Kubelet metrics endpoint. This job scrapes the cAdvisor endpoint to
\r
14409 # retrieve those metrics.
\r
14411 # In Kubernetes 1.7.0-1.7.2, these metrics are only exposed on the cAdvisor
\r
14412 # HTTP endpoint; use "replacement: /api/v1/nodes/${1}:4194/proxy/metrics"
\r
14413 # in that case (and ensure cAdvisor's HTTP server hasn't been disabled with
\r
14414 # the --cadvisor-port=0 Kubelet flag).
\r
14416 # This job is not necessary and should be removed in Kubernetes 1.6 and
\r
14417 # earlier versions, or it will cause the metrics to be scraped twice.
\r
14418 - job_name: 'kubernetes-cadvisor'
\r
14421 ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
\r
14422 bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
\r
14423 kubernetes_sd_configs:
\r
14426 - action: labelmap
\r
14427 regex: __meta_kubernetes_node_label_(.+)
\r
14428 - target_label: __address__
\r
14429 replacement: kubernetes.default.svc:443
\r
14430 - source_labels: [__meta_kubernetes_node_name]
\r
14432 target_label: __metrics_path__
\r
14433 replacement: /api/v1/nodes/${1}/proxy/metrics/cadvisor
\r
14435 # scrape config for service endpoints.
\r
14436 - job_name: 'kubernetes-service-endpoints'
\r
14437 kubernetes_sd_configs:
\r
14438 - role: endpoints
\r
14440 - source_labels: [__meta_kubernetes_service_annotation_prometheus_io_scrape]
\r
14443 - source_labels: [__meta_kubernetes_service_annotation_prometheus_io_scheme]
\r
14445 target_label: __scheme__
\r
14447 - source_labels: [__meta_kubernetes_service_annotation_prometheus_io_path]
\r
14449 target_label: __metrics_path__
\r
14451 - source_labels: [__address__, __meta_kubernetes_service_annotation_prometheus_io_port]
\r
14453 target_label: __address__
\r
14454 regex: ([^:]+)(?::\d+)?;(\d+)
\r
14455 replacement: $1:$2
\r
14456 - action: labelmap
\r
14457 regex: __meta_kubernetes_service_label_(.+)
\r
14458 - source_labels: [__meta_kubernetes_namespace]
\r
14460 target_label: kubernetes_namespace
\r
14461 - source_labels: [__meta_kubernetes_service_name]
\r
14463 target_label: kubernetes_name
\r
14465 - job_name: 'kubernetes-pods'
\r
14466 kubernetes_sd_configs:
\r
14468 relabel_configs: # If first two labels are present, pod should be scraped by the istio-secure job.
\r
14469 - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_scrape]
\r
14472 # Keep target if there's no sidecar or if prometheus.io/scheme is explicitly set to "http"
\r
14473 - source_labels: [__meta_kubernetes_pod_annotation_sidecar_istio_io_status, __meta_kubernetes_pod_annotation_prometheus_io_scheme]
\r
14475 regex: ((;.*)|(.*;http))
\r
14476 - source_labels: [__meta_kubernetes_pod_annotation_istio_mtls]
\r
14479 - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_path]
\r
14481 target_label: __metrics_path__
\r
14483 - source_labels: [__address__, __meta_kubernetes_pod_annotation_prometheus_io_port]
\r
14485 regex: ([^:]+)(?::\d+)?;(\d+)
\r
14486 replacement: $1:$2
\r
14487 target_label: __address__
\r
14488 - action: labelmap
\r
14489 regex: __meta_kubernetes_pod_label_(.+)
\r
14490 - source_labels: [__meta_kubernetes_namespace]
\r
14492 target_label: namespace
\r
14493 - source_labels: [__meta_kubernetes_pod_name]
\r
14495 target_label: pod_name
\r
14497 - job_name: 'kubernetes-pods-istio-secure'
\r
14500 ca_file: /etc/istio-certs/root-cert.pem
\r
14501 cert_file: /etc/istio-certs/cert-chain.pem
\r
14502 key_file: /etc/istio-certs/key.pem
\r
14503 insecure_skip_verify: true # prometheus does not support secure naming.
\r
14504 kubernetes_sd_configs:
\r
14507 - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_scrape]
\r
14510 # sidecar status annotation is added by sidecar injector and
\r
14511 # istio_workload_mtls_ability can be specifically placed on a pod to indicate its ability to receive mtls traffic.
\r
14512 - source_labels: [__meta_kubernetes_pod_annotation_sidecar_istio_io_status, __meta_kubernetes_pod_annotation_istio_mtls]
\r
14514 regex: (([^;]+);([^;]*))|(([^;]*);(true))
\r
14515 - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_scheme]
\r
14518 - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_path]
\r
14520 target_label: __metrics_path__
\r
14522 - source_labels: [__address__] # Only keep address that is host:port
\r
14523 action: keep # otherwise an extra target with ':443' is added for https scheme
\r
14524 regex: ([^:]+):(\d+)
\r
14525 - source_labels: [__address__, __meta_kubernetes_pod_annotation_prometheus_io_port]
\r
14527 regex: ([^:]+)(?::\d+)?;(\d+)
\r
14528 replacement: $1:$2
\r
14529 target_label: __address__
\r
14530 - action: labelmap
\r
14531 regex: __meta_kubernetes_pod_label_(.+)
\r
14532 - source_labels: [__meta_kubernetes_namespace]
\r
14534 target_label: namespace
\r
14535 - source_labels: [__meta_kubernetes_pod_name]
\r
14537 target_label: pod_name
\r
14539 # Source: istio/charts/security/templates/configmap.yaml
\r
14543 name: istio-security-custom-resources
\r
14544 namespace: istio-system
\r
14552 custom-resources.yaml: |-
\r
14553 # Authentication policy to enable permissive mode for all services (that have sidecar) in the mesh.
\r
14554 apiVersion: "authentication.istio.io/v1alpha1"
\r
14555 kind: "MeshPolicy"
\r
14572 if [ "$#" -ne "1" ]; then
\r
14573 echo "first argument should be path to custom resource yaml"
\r
14577 pathToResourceYAML=${1}
\r
14579 kubectl get validatingwebhookconfiguration istio-galley 2>/dev/null
\r
14580 if [ "$?" -eq 0 ]; then
\r
14581 echo "istio-galley validatingwebhookconfiguration found - waiting for istio-galley deployment to be ready"
\r
14583 kubectl -n istio-system get deployment istio-galley 2>/dev/null
\r
14584 if [ "$?" -eq 0 ]; then
\r
14589 kubectl -n istio-system rollout status deployment istio-galley
\r
14590 if [ "$?" -ne 0 ]; then
\r
14591 echo "istio-galley deployment rollout status check failed"
\r
14594 echo "istio-galley deployment ready for configuration validation"
\r
14597 kubectl apply -f ${pathToResourceYAML}
\r
14601 # Source: istio/templates/configmap.yaml
\r
14607 namespace: istio-system
\r
14615 # Set the following variable to true to disable policy checks by the Mixer.
\r
14616 # Note that metrics will still be reported to the Mixer.
\r
14617 disablePolicyChecks: false
\r
14619 # Set enableTracing to false to disable request tracing.
\r
14620 enableTracing: true
\r
14622 # Set accessLogFile to empty string to disable access log.
\r
14623 accessLogFile: "/dev/stdout"
\r
14625 # If accessLogEncoding is TEXT, value will be used directly as the log format
\r
14626 # example: "[%START_TIME%] %REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\n"
\r
14627 # If AccessLogEncoding is JSON, value will be parsed as map[string]string
\r
14628 # example: '{"start_time": "%START_TIME%", "req_method": "%REQ(:METHOD)%"}'
\r
14629 # Leave empty to use default log format
\r
14630 accessLogFormat: ""
\r
14632 # Set accessLogEncoding to JSON or TEXT to configure sidecar access log
\r
14633 accessLogEncoding: 'TEXT'
\r
14634 mixerCheckServer: istio-policy.istio-system.svc.cluster.local:9091
\r
14635 mixerReportServer: istio-telemetry.istio-system.svc.cluster.local:9091
\r
14636 # policyCheckFailOpen allows traffic in cases when the mixer policy service cannot be reached.
\r
14637 # Default is false which means the traffic is denied when the client is unable to connect to Mixer.
\r
14638 policyCheckFailOpen: false
\r
14639 # Let Pilot give ingresses the public IP of the Istio ingressgateway
\r
14640 ingressService: istio-ingressgateway
\r
14642 # Default connect timeout for dynamic clusters generated by Pilot and returned via XDS
\r
14643 connectTimeout: 10s
\r
14645 # DNS refresh rate for Envoy clusters of type STRICT_DNS
\r
14646 dnsRefreshRate: 300s
\r
14648 # Unix Domain Socket through which envoy communicates with NodeAgent SDS to get
\r
14649 # key/cert for mTLS. Use secret-mount files instead of SDS if set to empty.
\r
14652 # This flag is used by secret discovery service(SDS).
\r
14653 # If set to true(prerequisite: https://kubernetes.io/docs/concepts/storage/volumes/#projected), Istio will inject volumes mount
\r
14654 # for k8s service account JWT, so that K8s API server mounts k8s service account JWT to envoy container, which
\r
14655 # will be used to generate key/cert eventually. This isn't supported for non-k8s case.
\r
14656 enableSdsTokenMount: false
\r
14658 # This flag is used by secret discovery service(SDS).
\r
14659 # If set to true, envoy will fetch normal k8s service account JWT from '/var/run/secrets/kubernetes.io/serviceaccount/token'
\r
14660 # (https://kubernetes.io/docs/tasks/access-application-cluster/access-cluster/#accessing-the-api-from-a-pod)
\r
14661 # and pass to sds server, which will be used to request key/cert eventually.
\r
14662 # this flag is ignored if enableSdsTokenMount is set.
\r
14663 # This isn't supported for non-k8s case.
\r
14664 sdsUseK8sSaJwt: false
\r
14666 # The trust domain corresponds to the trust root of a system.
\r
14667 # Refer to https://github.com/spiffe/spiffe/blob/master/standards/SPIFFE-ID.md#21-trust-domain
\r
14670 # Set the default behavior of the sidecar for handling outbound traffic from the application:
\r
14671 # ALLOW_ANY - outbound traffic to unknown destinations will be allowed, in case there are no
\r
14672 # services or ServiceEntries for the destination port
\r
14673 # REGISTRY_ONLY - restrict outbound traffic to services defined in the service registry as well
\r
14674 # as those defined through ServiceEntries
\r
14675 outboundTrafficPolicy:
\r
14678 localityLbSetting:
\r
14682 # The namespace to treat as the administrative root namespace for istio
\r
14684 rootNamespace: istio-system
\r
14686 - address: istio-galley.istio-system.svc:9901
\r
14690 # TCP connection timeout between Envoy & the application, and between Envoys. Used for static clusters
\r
14691 # defined in Envoy's configuration file
\r
14692 connectTimeout: 10s
\r
14694 ### ADVANCED SETTINGS #############
\r
14695 # Where should envoy's configuration be stored in the istio-proxy container
\r
14696 configPath: "/etc/istio/proxy"
\r
14697 binaryPath: "/usr/local/bin/envoy"
\r
14698 # The pseudo service name used for Envoy.
\r
14699 serviceCluster: istio-proxy
\r
14700 # These settings that determine how long an old Envoy
\r
14701 # process should be kept alive after an occasional reload.
\r
14702 drainDuration: 45s
\r
14703 parentShutdownDuration: 1m0s
\r
14705 # The mode used to redirect inbound connections to Envoy. This setting
\r
14706 # has no effect on outbound traffic: iptables REDIRECT is always used for
\r
14707 # outbound connections.
\r
14708 # If "REDIRECT", use iptables REDIRECT to NAT and redirect to Envoy.
\r
14709 # The "REDIRECT" mode loses source addresses during redirection.
\r
14710 # If "TPROXY", use iptables TPROXY to redirect to Envoy.
\r
14711 # The "TPROXY" mode preserves both the source and destination IP
\r
14712 # addresses and ports, so that they can be used for advanced filtering
\r
14713 # and manipulation.
\r
14714 # The "TPROXY" mode also configures the sidecar to run with the
\r
14715 # CAP_NET_ADMIN capability, which is required to use TPROXY.
\r
14716 #interceptionMode: REDIRECT
\r
14718 # Port where Envoy listens (on local host) for admin commands
\r
14719 # You can exec into the istio-proxy container in a pod and
\r
14720 # curl the admin port (curl http://localhost:15000/) to obtain
\r
14721 # diagnostic information from Envoy. See
\r
14722 # https://lyft.github.io/envoy/docs/operations/admin.html
\r
14723 # for more details
\r
14724 proxyAdminPort: 15000
\r
14726 # Set concurrency to a specific number to control the number of Proxy worker threads.
\r
14727 # If set to 0 (default), then start worker thread for each CPU thread/core.
\r
14732 # Address of the Zipkin collector
\r
14733 address: zipkin.istio-system:9411
\r
14735 # Mutual TLS authentication between sidecars and istio control plane.
\r
14736 controlPlaneAuthPolicy: NONE
\r
14738 # Address where istio Pilot service is running
\r
14739 discoveryAddress: istio-pilot.istio-system:15010
\r
14741 # Configuration file for the mesh networks to be used by the Split Horizon EDS.
\r
14746 # Source: istio/templates/sidecar-injector-configmap.yaml
\r
14751 name: istio-sidecar-injector
\r
14752 namespace: istio-system
\r
14758 istio: sidecar-injector
\r
14761 {"certmanager":{"enabled":false},"galley":{"enabled":true,"global":{"arch":{"amd64":2,"ppc64le":2,"arm64":2},"configValidation":true,"controlPlaneSecurityEnabled":false,"defaultNodeSelector":{},"defaultPodDisruptionBudget":{"enabled":true},"defaultResources":{"requests":{"cpu":"10m"}},"defaultTolerations":[],"disablePolicyChecks":false,"enableHelmTest":false,"enableTracing":true,"hub":"iecedge","imagePullPolicy":"IfNotPresent","imagePullSecrets":null,"k8sIngress":{"enableHttps":false,"enabled":false,"gatewayName":"ingressgateway"},"localityLbSetting":{},"logging":{"level":"default:info"},"meshExpansion":{"enabled":false,"useILB":false},"meshNetworks":{},"monitoringPort":15014,"mtls":{"enabled":false},"multiCluster":{"enabled":false},"oneNamespace":false,"outboundTrafficPolicy":{"mode":"ALLOW_ANY"},"policyCheckFailOpen":false,"priorityClassName":"","proxy":{"accessLogEncoding":"TEXT","accessLogFile":"/dev/stdout","accessLogFormat":"","autoInject":"enabled","clusterDomain":"cluster.local","componentLogLevel":"","concurrency":2,"dnsRefreshRate":"300s","enableCoreDump":false,"envoyMetricsService":{"enabled":false,"host":null,"port":null},"envoyStatsd":{"enabled":false,"host":null,"port":null},"excludeIPRanges":"","excludeInboundPorts":"","excludeOutboundPorts":"","image":"proxyv2-arm64","includeIPRanges":"*","includeInboundPorts":"*","kubevirtInterfaces":"","logLevel":"","privileged":false,"readinessFailureThreshold":30,"readinessInitialDelaySeconds":1,"readinessPeriodSeconds":2,"resources":{"limits":{"cpu":"2000m","memory":"1024Mi"},"requests":{"cpu":"10m","memory":"40Mi"}},"statusPort":15020,"tracer":"zipkin"},"proxy_init":{"image":"proxy_init-arm64"},"sds":{"enabled":false,"udsPath":"","useNormalJwt":false,"useTrustworthyJwt":false},"tag":"1.2.3","tracer":{"datadog":{"address":"$(HOST_IP):8126"},"lightstep":{"accessToken":"","address":"","cacertPath":"","secure":true},"zipkin":{"address":""}},"trustDomain":"","useMCP":true},"image":"galley","nodeSelector":{},"podAntiAffinityLabelSelector":[],"podAntiAffinityTermLabelSelector":[],"replicaCount":1,"tolerations":[]},"gateways":{"enabled":true,"global":{"arch":{"amd64":2,"ppc64le":2,"arm64":2},"configValidation":true,"controlPlaneSecurityEnabled":false,"defaultNodeSelector":{},"defaultPodDisruptionBudget":{"enabled":true},"defaultResources":{"requests":{"cpu":"10m"}},"defaultTolerations":[],"disablePolicyChecks":false,"enableHelmTest":false,"enableTracing":true,"hub":"iecedge","imagePullPolicy":"IfNotPresent","imagePullSecrets":null,"k8sIngress":{"enableHttps":false,"enabled":false,"gatewayName":"ingressgateway"},"localityLbSetting":{},"logging":{"level":"default:info"},"meshExpansion":{"enabled":false,"useILB":false},"meshNetworks":{},"monitoringPort":15014,"mtls":{"enabled":false},"multiCluster":{"enabled":false},"oneNamespace":false,"outboundTrafficPolicy":{"mode":"ALLOW_ANY"},"policyCheckFailOpen":false,"priorityClassName":"","proxy":{"accessLogEncoding":"TEXT","accessLogFile":"/dev/stdout","accessLogFormat":"","autoInject":"enabled","clusterDomain":"cluster.local","componentLogLevel":"","concurrency":2,"dnsRefreshRate":"300s","enableCoreDump":false,"envoyMetricsService":{"enabled":false,"host":null,"port":null},"envoyStatsd":{"enabled":false,"host":null,"port":null},"excludeIPRanges":"","excludeInboundPorts":"","excludeOutboundPorts":"","image":"proxyv2-arm64","includeIPRanges":"*","includeInboundPorts":"*","kubevirtInterfaces":"","logLevel":"","privileged":false,"readinessFailureThreshold":30,"readinessInitialDelaySeconds":1,"readinessPeriodSeconds":2,"resources":{"limits":{"cpu":"2000m","memory":"1024Mi"},"requests":{"cpu":"10m","memory":"40Mi"}},"statusPort":15020,"tracer":"zipkin"},"proxy_init":{"image":"proxy_init-arm64"},"sds":{"enabled":false,"udsPath":"","useNormalJwt":false,"useTrustworthyJwt":false},"tag":"1.2.3","tracer":{"datadog":{"address":"$(HOST_IP):8126"},"lightstep":{"accessToken":"","address":"","cacertPath":"","secure":true},"zipkin":{"address":""}},"trustDomain":"","useMCP":true},"istio-egressgateway":{"autoscaleEnabled":false,"autoscaleMax":5,"autoscaleMin":1,"cpu":{"targetAverageUtilization":80},"enabled":true,"env":{"ISTIO_META_ROUTER_MODE":"sni-dnat"},"labels":{"app":"istio-egressgateway","iecedge":"egressgateway"},"nodeSelector":{},"podAnnotations":{},"podAntiAffinityLabelSelector":[],"podAntiAffinityTermLabelSelector":[],"ports":[{"name":"http2","port":80},{"name":"https","port":443},{"name":"tls","port":15443,"targetPort":15443}],"resources":{"limits":{"cpu":"2000m","memory":"256Mi"},"requests":{"cpu":"10m","memory":"40Mi"}},"secretVolumes":[{"mountPath":"/etc/istio/egressgateway-certs","name":"egressgateway-certs","secretName":"istio-egressgateway-certs"},{"mountPath":"/etc/istio/egressgateway-ca-certs","name":"egressgateway-ca-certs","secretName":"istio-egressgateway-ca-certs"}],"serviceAnnotations":{},"tolerations":[],"type":"ClusterIP"},"istio-ilbgateway":{"autoscaleEnabled":true,"autoscaleMax":5,"autoscaleMin":1,"cpu":{"targetAverageUtilization":80},"enabled":false,"labels":{"app":"istio-ilbgateway","iecedge":"ilbgateway"},"loadBalancerIP":"","nodeSelector":{},"podAnnotations":{},"ports":[{"name":"grpc-pilot-mtls","port":15011},{"name":"grpc-pilot","port":15010},{"name":"tcp-citadel-grpc-tls","port":8060,"targetPort":8060},{"name":"tcp-dns","port":5353}],"resources":{"requests":{"cpu":"800m","memory":"512Mi"}},"secretVolumes":[{"mountPath":"/etc/istio/ilbgateway-certs","name":"ilbgateway-certs","secretName":"istio-ilbgateway-certs"},{"mountPath":"/etc/istio/ilbgateway-ca-certs","name":"ilbgateway-ca-certs","secretName":"istio-ilbgateway-ca-certs"}],"serviceAnnotations":{"cloud.google.com/load-balancer-type":"internal"},"tolerations":[],"type":"LoadBalancer"},"istio-ingressgateway":{"applicationPorts":"","autoscaleEnabled":false,"autoscaleMax":5,"autoscaleMin":1,"cpu":{"targetAverageUtilization":80},"enabled":true,"env":{"ISTIO_META_ROUTER_MODE":"sni-dnat"},"externalIPs":[],"labels":{"app":"istio-ingressgateway","iecedge":"ingressgateway"},"loadBalancerIP":"","loadBalancerSourceRanges":[],"meshExpansionPorts":[{"name":"tcp-pilot-grpc-tls","port":15011,"targetPort":15011},{"name":"tcp-mixer-grpc-tls","port":15004,"targetPort":15004},{"name":"tcp-citadel-grpc-tls","port":8060,"targetPort":8060},{"name":"tcp-dns-tls","port":853,"targetPort":853}],"nodeSelector":{},"podAnnotations":{},"podAntiAffinityLabelSelector":[],"podAntiAffinityTermLabelSelector":[],"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}],"resources":{"limits":{"cpu":"2000m","memory":"1024Mi"},"requests":{"cpu":"10m","memory":"40Mi"}},"sds":{"enabled":false,"image":"node-agent-k8s","resources":{"limits":{"cpu":"2000m","memory":"1024Mi"},"requests":{"cpu":"100m","memory":"128Mi"}}},"secretVolumes":[{"mountPath":"/etc/istio/ingressgateway-certs","name":"ingressgateway-certs","secretName":"istio-ingressgateway-certs"},{"mountPath":"/etc/istio/ingressgateway-ca-certs","name":"ingressgateway-ca-certs","secretName":"istio-ingressgateway-ca-certs"}],"serviceAnnotations":{},"tolerations":[],"type":"LoadBalancer"}},"global":{"arch":{"amd64":2,"ppc64le":2,"arm64":2},"configValidation":true,"controlPlaneSecurityEnabled":false,"defaultNodeSelector":{},"defaultPodDisruptionBudget":{"enabled":true},"defaultResources":{"requests":{"cpu":"10m"}},"defaultTolerations":[],"disablePolicyChecks":false,"enableHelmTest":false,"enableTracing":true,"hub":"iecedge","imagePullPolicy":"IfNotPresent","imagePullSecrets":null,"k8sIngress":{"enableHttps":false,"enabled":false,"gatewayName":"ingressgateway"},"localityLbSetting":{},"logging":{"level":"default:info"},"meshExpansion":{"enabled":false,"useILB":false},"meshNetworks":{},"monitoringPort":15014,"mtls":{"enabled":false},"multiCluster":{"enabled":false},"oneNamespace":false,"outboundTrafficPolicy":{"mode":"ALLOW_ANY"},"policyCheckFailOpen":false,"priorityClassName":"","proxy":{"accessLogEncoding":"TEXT","accessLogFile":"/dev/stdout","accessLogFormat":"","autoInject":"enabled","clusterDomain":"cluster.local","componentLogLevel":"","concurrency":2,"dnsRefreshRate":"300s","enableCoreDump":false,"envoyMetricsService":{"enabled":false,"host":null,"port":null},"envoyStatsd":{"enabled":false,"host":null,"port":null},"excludeIPRanges":"","excludeInboundPorts":"","excludeOutboundPorts":"","image":"proxyv2-arm64","includeIPRanges":"*","includeInboundPorts":"*","kubevirtInterfaces":"","logLevel":"","privileged":false,"readinessFailureThreshold":30,"readinessInitialDelaySeconds":1,"readinessPeriodSeconds":2,"resources":{"limits":{"cpu":"2000m","memory":"1024Mi"},"requests":{"cpu":"10m","memory":"40Mi"}},"statusPort":15020,"tracer":"zipkin"},"proxy_init":{"image":"proxy_init-arm64"},"sds":{"enabled":false,"udsPath":"","useNormalJwt":false,"useTrustworthyJwt":false},"tag":"1.2.3","tracer":{"datadog":{"address":"$(HOST_IP):8126"},"lightstep":{"accessToken":"","address":"","cacertPath":"","secure":true},"zipkin":{"address":""}},"trustDomain":"","useMCP":true},"grafana":{"accessMode":"ReadWriteMany","contextPath":"/grafana","dashboardProviders":{"dashboardproviders.yaml":{"apiVersion":1,"providers":[{"disableDeletion":false,"folder":"istio","name":"istio","options":{"path":"/var/lib/grafana/dashboards/istio"},"orgId":1,"type":"file"}]}},"datasources":{"datasources.yaml":{"apiVersion":1,"datasources":[{"access":"proxy","editable":true,"isDefault":true,"jsonData":{"timeInterval":"5s"},"name":"Prometheus","orgId":1,"type":"prometheus","url":"http://prometheus:9090"}]}},"enabled":true,"global":{"arch":{"amd64":2,"ppc64le":2,"arm64":2},"configValidation":true,"controlPlaneSecurityEnabled":false,"defaultNodeSelector":{},"defaultPodDisruptionBudget":{"enabled":true},"defaultResources":{"requests":{"cpu":"10m"}},"defaultTolerations":[],"disablePolicyChecks":false,"enableHelmTest":false,"enableTracing":true,"hub":"iecedge","imagePullPolicy":"IfNotPresent","imagePullSecrets":null,"k8sIngress":{"enableHttps":false,"enabled":false,"gatewayName":"ingressgateway"},"localityLbSetting":{},"logging":{"level":"default:info"},"meshExpansion":{"enabled":false,"useILB":false},"meshNetworks":{},"monitoringPort":15014,"mtls":{"enabled":false},"multiCluster":{"enabled":false},"oneNamespace":false,"outboundTrafficPolicy":{"mode":"ALLOW_ANY"},"policyCheckFailOpen":false,"priorityClassName":"","proxy":{"accessLogEncoding":"TEXT","accessLogFile":"/dev/stdout","accessLogFormat":"","autoInject":"enabled","clusterDomain":"cluster.local","componentLogLevel":"","concurrency":2,"dnsRefreshRate":"300s","enableCoreDump":false,"envoyMetricsService":{"enabled":false,"host":null,"port":null},"envoyStatsd":{"enabled":false,"host":null,"port":null},"excludeIPRanges":"","excludeInboundPorts":"","excludeOutboundPorts":"","image":"proxyv2-arm64","includeIPRanges":"*","includeInboundPorts":"*","kubevirtInterfaces":"","logLevel":"","privileged":false,"readinessFailureThreshold":30,"readinessInitialDelaySeconds":1,"readinessPeriodSeconds":2,"resources":{"limits":{"cpu":"2000m","memory":"1024Mi"},"requests":{"cpu":"10m","memory":"40Mi"}},"statusPort":15020,"tracer":"zipkin"},"proxy_init":{"image":"proxy_init-arm64"},"sds":{"enabled":false,"udsPath":"","useNormalJwt":false,"useTrustworthyJwt":false},"tag":"1.2.3","tracer":{"datadog":{"address":"$(HOST_IP):8126"},"lightstep":{"accessToken":"","address":"","cacertPath":"","secure":true},"zipkin":{"address":""}},"trustDomain":"","useMCP":true},"image":{"repository":"grafana/grafana","tag":"6.1.6"},"ingress":{"annotations":null,"enabled":false,"hosts":["grafana.local"],"tls":null},"nodeSelector":{},"persist":false,"podAntiAffinityLabelSelector":[],"podAntiAffinityTermLabelSelector":[],"replicaCount":1,"security":{"enabled":false,"passphraseKey":"passphrase","secretName":"grafana","usernameKey":"username"},"service":{"annotations":{},"externalPort":3000,"loadBalancerIP":null,"loadBalancerSourceRanges":null,"name":"http","type":"ClusterIP"},"storageClassName":"","tolerations":[]},"istio_cni":{"enabled":false},"istiocoredns":{"enabled":false},"kiali":{"contextPath":"/kiali","createDemoSecret":true,"dashboard":{"grafanaURL":null,"jaegerURL":null,"secretName":"kiali","viewOnlyMode":false},"enabled":true,"global":{"arch":{"amd64":2,"ppc64le":2,"arm64":2},"configValidation":true,"controlPlaneSecurityEnabled":false,"defaultNodeSelector":{},"defaultPodDisruptionBudget":{"enabled":true},"defaultResources":{"requests":{"cpu":"10m"}},"defaultTolerations":[],"disablePolicyChecks":false,"enableHelmTest":false,"enableTracing":true,"hub":"iecedge","imagePullPolicy":"IfNotPresent","imagePullSecrets":null,"k8sIngress":{"enableHttps":false,"enabled":false,"gatewayName":"ingressgateway"},"localityLbSetting":{},"logging":{"level":"default:info"},"meshExpansion":{"enabled":false,"useILB":false},"meshNetworks":{},"monitoringPort":15014,"mtls":{"enabled":false},"multiCluster":{"enabled":false},"oneNamespace":false,"outboundTrafficPolicy":{"mode":"ALLOW_ANY"},"policyCheckFailOpen":false,"priorityClassName":"","proxy":{"accessLogEncoding":"TEXT","accessLogFile":"/dev/stdout","accessLogFormat":"","autoInject":"enabled","clusterDomain":"cluster.local","componentLogLevel":"","concurrency":2,"dnsRefreshRate":"300s","enableCoreDump":false,"envoyMetricsService":{"enabled":false,"host":null,"port":null},"envoyStatsd":{"enabled":false,"host":null,"port":null},"excludeIPRanges":"","excludeInboundPorts":"","excludeOutboundPorts":"","image":"proxyv2-arm64","includeIPRanges":"*","includeInboundPorts":"*","kubevirtInterfaces":"","logLevel":"","privileged":false,"readinessFailureThreshold":30,"readinessInitialDelaySeconds":1,"readinessPeriodSeconds":2,"resources":{"limits":{"cpu":"2000m","memory":"1024Mi"},"requests":{"cpu":"10m","memory":"40Mi"}},"statusPort":15020,"tracer":"zipkin"},"proxy_init":{"image":"proxy_init-arm64"},"sds":{"enabled":false,"udsPath":"","useNormalJwt":false,"useTrustworthyJwt":false},"tag":"1.2.3","tracer":{"datadog":{"address":"$(HOST_IP):8126"},"lightstep":{"accessToken":"","address":"","cacertPath":"","secure":true},"zipkin":{"address":""}},"trustDomain":"","useMCP":true},"hub":"quay.io/kiali","ingress":{"annotations":null,"enabled":false,"hosts":["kiali.local"],"tls":null},"nodeSelector":{},"podAntiAffinityLabelSelector":[],"podAntiAffinityTermLabelSelector":[],"prometheusAddr":"http://prometheus:9090","replicaCount":1,"tag":"v0.20","tolerations":[]},"mixer":{"adapters":{"kubernetesenv":{"enabled":true},"prometheus":{"enabled":true,"metricsExpiryDuration":"10m"},"stdio":{"enabled":true,"outputAsJson":true},"useAdapterCRDs":false},"env":{"GODEBUG":"gctrace=1","GOMAXPROCS":"6"},"global":{"arch":{"amd64":2,"ppc64le":2,"arm64":2},"configValidation":true,"controlPlaneSecurityEnabled":false,"defaultNodeSelector":{},"defaultPodDisruptionBudget":{"enabled":true},"defaultResources":{"requests":{"cpu":"10m"}},"defaultTolerations":[],"disablePolicyChecks":false,"enableHelmTest":false,"enableTracing":true,"hub":"iecedge","imagePullPolicy":"IfNotPresent","imagePullSecrets":null,"k8sIngress":{"enableHttps":false,"enabled":false,"gatewayName":"ingressgateway"},"localityLbSetting":{},"logging":{"level":"default:info"},"meshExpansion":{"enabled":false,"useILB":false},"meshNetworks":{},"monitoringPort":15014,"mtls":{"enabled":false},"multiCluster":{"enabled":false},"oneNamespace":false,"outboundTrafficPolicy":{"mode":"ALLOW_ANY"},"policyCheckFailOpen":false,"priorityClassName":"","proxy":{"accessLogEncoding":"TEXT","accessLogFile":"/dev/stdout","accessLogFormat":"","autoInject":"enabled","clusterDomain":"cluster.local","componentLogLevel":"","concurrency":2,"dnsRefreshRate":"300s","enableCoreDump":false,"envoyMetricsService":{"enabled":false,"host":null,"port":null},"envoyStatsd":{"enabled":false,"host":null,"port":null},"excludeIPRanges":"","excludeInboundPorts":"","excludeOutboundPorts":"","image":"proxyv2-arm64","includeIPRanges":"*","includeInboundPorts":"*","kubevirtInterfaces":"","logLevel":"","privileged":false,"readinessFailureThreshold":30,"readinessInitialDelaySeconds":1,"readinessPeriodSeconds":2,"resources":{"limits":{"cpu":"2000m","memory":"1024Mi"},"requests":{"cpu":"10m","memory":"40Mi"}},"statusPort":15020,"tracer":"zipkin"},"proxy_init":{"image":"proxy_init-arm64"},"sds":{"enabled":false,"udsPath":"","useNormalJwt":false,"useTrustworthyJwt":false},"tag":"1.2.3","tracer":{"datadog":{"address":"$(HOST_IP):8126"},"lightstep":{"accessToken":"","address":"","cacertPath":"","secure":true},"zipkin":{"address":""}},"trustDomain":"","useMCP":true},"image":"mixer","nodeSelector":{},"podAnnotations":{},"podAntiAffinityLabelSelector":[],"podAntiAffinityTermLabelSelector":[],"policy":{"autoscaleEnabled":false,"autoscaleMax":5,"autoscaleMin":1,"cpu":{"targetAverageUtilization":80},"enabled":true,"replicaCount":1,"resources":{"requests":{"cpu":"10m","memory":"100Mi"}}},"telemetry":{"autoscaleEnabled":false,"autoscaleMax":5,"autoscaleMin":1,"cpu":{"targetAverageUtilization":80},"enabled":true,"loadshedding":{"latencyThreshold":"100ms","mode":"enforce"},"replicaCount":1,"resources":{"limits":{"cpu":"4800m","memory":"4G"},"requests":{"cpu":"50m","memory":"100Mi"}},"sessionAffinityEnabled":false},"templates":{"useTemplateCRDs":false},"tolerations":[]},"nodeagent":{"enabled":false},"pilot":{"autoscaleEnabled":false,"autoscaleMax":5,"autoscaleMin":1,"cpu":{"targetAverageUtilization":80},"enabled":true,"env":{"GODEBUG":"gctrace=1","PILOT_PUSH_THROTTLE":100},"global":{"arch":{"amd64":2,"ppc64le":2,"arm64":2},"configValidation":true,"controlPlaneSecurityEnabled":false,"defaultNodeSelector":{},"defaultPodDisruptionBudget":{"enabled":true},"defaultResources":{"requests":{"cpu":"10m"}},"defaultTolerations":[],"disablePolicyChecks":false,"enableHelmTest":false,"enableTracing":true,"hub":"iecedge","imagePullPolicy":"IfNotPresent","imagePullSecrets":null,"k8sIngress":{"enableHttps":false,"enabled":false,"gatewayName":"ingressgateway"},"localityLbSetting":{},"logging":{"level":"default:info"},"meshExpansion":{"enabled":false,"useILB":false},"meshNetworks":{},"monitoringPort":15014,"mtls":{"enabled":false},"multiCluster":{"enabled":false},"oneNamespace":false,"outboundTrafficPolicy":{"mode":"ALLOW_ANY"},"policyCheckFailOpen":false,"priorityClassName":"","proxy":{"accessLogEncoding":"TEXT","accessLogFile":"/dev/stdout","accessLogFormat":"","autoInject":"enabled","clusterDomain":"cluster.local","componentLogLevel":"","concurrency":2,"dnsRefreshRate":"300s","enableCoreDump":false,"envoyMetricsService":{"enabled":false,"host":null,"port":null},"envoyStatsd":{"enabled":false,"host":null,"port":null},"excludeIPRanges":"","excludeInboundPorts":"","excludeOutboundPorts":"","image":"proxyv2-arm64","includeIPRanges":"*","includeInboundPorts":"*","kubevirtInterfaces":"","logLevel":"","privileged":false,"readinessFailureThreshold":30,"readinessInitialDelaySeconds":1,"readinessPeriodSeconds":2,"resources":{"limits":{"cpu":"2000m","memory":"1024Mi"},"requests":{"cpu":"10m","memory":"40Mi"}},"statusPort":15020,"tracer":"zipkin"},"proxy_init":{"image":"proxy_init-arm64"},"sds":{"enabled":false,"udsPath":"","useNormalJwt":false,"useTrustworthyJwt":false},"tag":"1.2.3","tracer":{"datadog":{"address":"$(HOST_IP):8126"},"lightstep":{"accessToken":"","address":"","cacertPath":"","secure":true},"zipkin":{"address":""}},"trustDomain":"","useMCP":true},"image":"pilot","keepaliveMaxServerConnectionAge":"30m","nodeSelector":{},"podAntiAffinityLabelSelector":[],"podAntiAffinityTermLabelSelector":[],"resources":{"requests":{"cpu":"10m","memory":"100Mi"}},"sidecar":true,"tolerations":[],"traceSampling":100},"prometheus":{"contextPath":"/prometheus","enabled":true,"global":{"arch":{"amd64":2,"ppc64le":2,"arm64":2},"configValidation":true,"controlPlaneSecurityEnabled":false,"defaultNodeSelector":{},"defaultPodDisruptionBudget":{"enabled":true},"defaultResources":{"requests":{"cpu":"10m"}},"defaultTolerations":[],"disablePolicyChecks":false,"enableHelmTest":false,"enableTracing":true,"hub":"iecedge","imagePullPolicy":"IfNotPresent","imagePullSecrets":null,"k8sIngress":{"enableHttps":false,"enabled":false,"gatewayName":"ingressgateway"},"localityLbSetting":{},"logging":{"level":"default:info"},"meshExpansion":{"enabled":false,"useILB":false},"meshNetworks":{},"monitoringPort":15014,"mtls":{"enabled":false},"multiCluster":{"enabled":false},"oneNamespace":false,"outboundTrafficPolicy":{"mode":"ALLOW_ANY"},"policyCheckFailOpen":false,"priorityClassName":"","proxy":{"accessLogEncoding":"TEXT","accessLogFile":"/dev/stdout","accessLogFormat":"","autoInject":"enabled","clusterDomain":"cluster.local","componentLogLevel":"","concurrency":2,"dnsRefreshRate":"300s","enableCoreDump":false,"envoyMetricsService":{"enabled":false,"host":null,"port":null},"envoyStatsd":{"enabled":false,"host":null,"port":null},"excludeIPRanges":"","excludeInboundPorts":"","excludeOutboundPorts":"","image":"proxyv2-arm64","includeIPRanges":"*","includeInboundPorts":"*","kubevirtInterfaces":"","logLevel":"","privileged":false,"readinessFailureThreshold":30,"readinessInitialDelaySeconds":1,"readinessPeriodSeconds":2,"resources":{"limits":{"cpu":"2000m","memory":"1024Mi"},"requests":{"cpu":"10m","memory":"40Mi"}},"statusPort":15020,"tracer":"zipkin"},"proxy_init":{"image":"proxy_init-arm64"},"sds":{"enabled":false,"udsPath":"","useNormalJwt":false,"useTrustworthyJwt":false},"tag":"1.2.3","tracer":{"datadog":{"address":"$(HOST_IP):8126"},"lightstep":{"accessToken":"","address":"","cacertPath":"","secure":true},"zipkin":{"address":""}},"trustDomain":"","useMCP":true},"hub":"docker.io/prom","ingress":{"annotations":null,"enabled":false,"hosts":["prometheus.local"],"tls":null},"nodeSelector":{},"podAntiAffinityLabelSelector":[],"podAntiAffinityTermLabelSelector":[],"replicaCount":1,"retention":"6h","scrapeInterval":"15s","security":{"enabled":true},"service":{"annotations":{},"nodePort":{"enabled":false,"port":32090}},"tag":"v2.8.0","tolerations":[]},"security":{"citadelHealthCheck":false,"createMeshPolicy":true,"enabled":true,"global":{"arch":{"amd64":2,"ppc64le":2,"arm64":2},"configValidation":true,"controlPlaneSecurityEnabled":false,"defaultNodeSelector":{},"defaultPodDisruptionBudget":{"enabled":true},"defaultResources":{"requests":{"cpu":"10m"}},"defaultTolerations":[],"disablePolicyChecks":false,"enableHelmTest":false,"enableTracing":true,"hub":"iecedge","imagePullPolicy":"IfNotPresent","imagePullSecrets":null,"k8sIngress":{"enableHttps":false,"enabled":false,"gatewayName":"ingressgateway"},"localityLbSetting":{},"logging":{"level":"default:info"},"meshExpansion":{"enabled":false,"useILB":false},"meshNetworks":{},"monitoringPort":15014,"mtls":{"enabled":false},"multiCluster":{"enabled":false},"oneNamespace":false,"outboundTrafficPolicy":{"mode":"ALLOW_ANY"},"policyCheckFailOpen":false,"priorityClassName":"","proxy":{"accessLogEncoding":"TEXT","accessLogFile":"/dev/stdout","accessLogFormat":"","autoInject":"enabled","clusterDomain":"cluster.local","componentLogLevel":"","concurrency":2,"dnsRefreshRate":"300s","enableCoreDump":false,"envoyMetricsService":{"enabled":false,"host":null,"port":null},"envoyStatsd":{"enabled":false,"host":null,"port":null},"excludeIPRanges":"","excludeInboundPorts":"","excludeOutboundPorts":"","image":"proxyv2-arm64","includeIPRanges":"*","includeInboundPorts":"*","kubevirtInterfaces":"","logLevel":"","privileged":false,"readinessFailureThreshold":30,"readinessInitialDelaySeconds":1,"readinessPeriodSeconds":2,"resources":{"limits":{"cpu":"2000m","memory":"1024Mi"},"requests":{"cpu":"10m","memory":"40Mi"}},"statusPort":15020,"tracer":"zipkin"},"proxy_init":{"image":"proxy_init-arm64"},"sds":{"enabled":false,"udsPath":"","useNormalJwt":false,"useTrustworthyJwt":false},"tag":"1.2.3","tracer":{"datadog":{"address":"$(HOST_IP):8126"},"lightstep":{"accessToken":"","address":"","cacertPath":"","secure":true},"zipkin":{"address":""}},"trustDomain":"","useMCP":true},"image":"citadel","nodeSelector":{},"podAntiAffinityLabelSelector":[],"podAntiAffinityTermLabelSelector":[],"replicaCount":1,"selfSigned":true,"tolerations":[],"workloadCertTtl":"2160h"},"sidecarInjectorWebhook":{"alwaysInjectSelector":[],"enableNamespacesByDefault":false,"enabled":true,"global":{"arch":{"amd64":2,"ppc64le":2,"arm64":2},"configValidation":true,"controlPlaneSecurityEnabled":false,"defaultNodeSelector":{},"defaultPodDisruptionBudget":{"enabled":true},"defaultResources":{"requests":{"cpu":"10m"}},"defaultTolerations":[],"disablePolicyChecks":false,"enableHelmTest":false,"enableTracing":true,"hub":"iecedge","imagePullPolicy":"IfNotPresent","imagePullSecrets":null,"k8sIngress":{"enableHttps":false,"enabled":false,"gatewayName":"ingressgateway"},"localityLbSetting":{},"logging":{"level":"default:info"},"meshExpansion":{"enabled":false,"useILB":false},"meshNetworks":{},"monitoringPort":15014,"mtls":{"enabled":false},"multiCluster":{"enabled":false},"oneNamespace":false,"outboundTrafficPolicy":{"mode":"ALLOW_ANY"},"policyCheckFailOpen":false,"priorityClassName":"","proxy":{"accessLogEncoding":"TEXT","accessLogFile":"/dev/stdout","accessLogFormat":"","autoInject":"enabled","clusterDomain":"cluster.local","componentLogLevel":"","concurrency":2,"dnsRefreshRate":"300s","enableCoreDump":false,"envoyMetricsService":{"enabled":false,"host":null,"port":null},"envoyStatsd":{"enabled":false,"host":null,"port":null},"excludeIPRanges":"","excludeInboundPorts":"","excludeOutboundPorts":"","image":"proxyv2-arm64","includeIPRanges":"*","includeInboundPorts":"*","kubevirtInterfaces":"","logLevel":"","privileged":false,"readinessFailureThreshold":30,"readinessInitialDelaySeconds":1,"readinessPeriodSeconds":2,"resources":{"limits":{"cpu":"2000m","memory":"1024Mi"},"requests":{"cpu":"10m","memory":"40Mi"}},"statusPort":15020,"tracer":"zipkin"},"proxy_init":{"image":"proxy_init-arm64"},"sds":{"enabled":false,"udsPath":"","useNormalJwt":false,"useTrustworthyJwt":false},"tag":"1.2.3","tracer":{"datadog":{"address":"$(HOST_IP):8126"},"lightstep":{"accessToken":"","address":"","cacertPath":"","secure":true},"zipkin":{"address":""}},"trustDomain":"","useMCP":true},"image":"sidecar_injector","neverInjectSelector":[],"nodeSelector":{},"podAntiAffinityLabelSelector":[],"podAntiAffinityTermLabelSelector":[],"replicaCount":1,"rewriteAppHTTPProbe":false,"tolerations":[]},"tracing":{"enabled":true,"global":{"arch":{"amd64":2,"ppc64le":2,"arm64":2},"configValidation":true,"controlPlaneSecurityEnabled":false,"defaultNodeSelector":{},"defaultPodDisruptionBudget":{"enabled":true},"defaultResources":{"requests":{"cpu":"10m"}},"defaultTolerations":[],"disablePolicyChecks":false,"enableHelmTest":false,"enableTracing":true,"hub":"iecedge","imagePullPolicy":"IfNotPresent","imagePullSecrets":null,"k8sIngress":{"enableHttps":false,"enabled":false,"gatewayName":"ingressgateway"},"localityLbSetting":{},"logging":{"level":"default:info"},"meshExpansion":{"enabled":false,"useILB":false},"meshNetworks":{},"monitoringPort":15014,"mtls":{"enabled":false},"multiCluster":{"enabled":false},"oneNamespace":false,"outboundTrafficPolicy":{"mode":"ALLOW_ANY"},"policyCheckFailOpen":false,"priorityClassName":"","proxy":{"accessLogEncoding":"TEXT","accessLogFile":"/dev/stdout","accessLogFormat":"","autoInject":"enabled","clusterDomain":"cluster.local","componentLogLevel":"","concurrency":2,"dnsRefreshRate":"300s","enableCoreDump":false,"envoyMetricsService":{"enabled":false,"host":null,"port":null},"envoyStatsd":{"enabled":false,"host":null,"port":null},"excludeIPRanges":"","excludeInboundPorts":"","excludeOutboundPorts":"","image":"proxyv2-arm64","includeIPRanges":"*","includeInboundPorts":"*","kubevirtInterfaces":"","logLevel":"","privileged":false,"readinessFailureThreshold":30,"readinessInitialDelaySeconds":1,"readinessPeriodSeconds":2,"resources":{"limits":{"cpu":"2000m","memory":"1024Mi"},"requests":{"cpu":"10m","memory":"40Mi"}},"statusPort":15020,"tracer":"zipkin"},"proxy_init":{"image":"proxy_init-arm64"},"sds":{"enabled":false,"udsPath":"","useNormalJwt":false,"useTrustworthyJwt":false},"tag":"1.2.3","tracer":{"datadog":{"address":"$(HOST_IP):8126"},"lightstep":{"accessToken":"","address":"","cacertPath":"","secure":true},"zipkin":{"address":""}},"trustDomain":"","useMCP":true},"ingress":{"annotations":null,"enabled":false,"hosts":null,"tls":null},"jaeger":{"hub":"docker.io/jaegertracing","memory":{"max_traces":50000},"tag":1.9},"nodeSelector":{},"podAntiAffinityLabelSelector":[],"podAntiAffinityTermLabelSelector":[],"provider":"jaeger","service":{"annotations":{},"externalPort":9411,"name":"http","type":"ClusterIP"},"tolerations":[],"zipkin":{"hub":"docker.io/openzipkin","javaOptsHeap":700,"maxSpans":500000,"node":{"cpus":2},"probeStartupDelay":200,"queryPort":9411,"resources":{"limits":{"cpu":"300m","memory":"900Mi"},"requests":{"cpu":"150m","memory":"900Mi"}},"tag":2}}}
\r
14765 alwaysInjectSelector:
\r
14768 neverInjectSelector:
\r
14772 rewriteAppHTTPProbe: {{ valueOrDefault .Values.sidecarInjectorWebhook.rewriteAppHTTPProbe false }}
\r
14773 {{- if or (not .Values.istio_cni.enabled) .Values.global.proxy.enableCoreDump }}
\r
14775 {{ if ne (annotation .ObjectMeta `sidecar.istio.io/interceptionMode` .ProxyConfig.InterceptionMode) `NONE` }}
\r
14776 {{- if not .Values.istio_cni.enabled }}
\r
14777 - name: istio-init
\r
14778 {{- if contains "/" .Values.global.proxy_init.image }}
\r
14779 image: "{{ .Values.global.proxy_init.image }}"
\r
14781 image: "{{ .Values.global.hub }}/{{ .Values.global.proxy_init.image }}:{{ .Values.global.tag }}"
\r
14789 - "{{ annotation .ObjectMeta `sidecar.istio.io/interceptionMode` .ProxyConfig.InterceptionMode }}"
\r
14791 - "{{ annotation .ObjectMeta `traffic.sidecar.istio.io/includeOutboundIPRanges` .Values.global.proxy.includeIPRanges }}"
\r
14793 - "{{ annotation .ObjectMeta `traffic.sidecar.istio.io/excludeOutboundIPRanges` .Values.global.proxy.excludeIPRanges }}"
\r
14795 - "{{ annotation .ObjectMeta `traffic.sidecar.istio.io/includeInboundPorts` (includeInboundPorts .Spec.Containers) }}"
\r
14797 - "{{ excludeInboundPort (annotation .ObjectMeta `status.sidecar.istio.io/port` .Values.global.proxy.statusPort) (annotation .ObjectMeta `traffic.sidecar.istio.io/excludeInboundPorts` .Values.global.proxy.excludeInboundPorts) }}"
\r
14798 {{ if or (isset .ObjectMeta.Annotations `traffic.sidecar.istio.io/excludeOutboundPorts`) (ne .Values.global.proxy.excludeOutboundPorts "") -}}
\r
14800 - "{{ annotation .ObjectMeta `traffic.sidecar.istio.io/excludeOutboundPorts` .Values.global.proxy.excludeOutboundPorts }}"
\r
14802 {{ if (isset .ObjectMeta.Annotations `traffic.sidecar.istio.io/kubevirtInterfaces`) -}}
\r
14804 - "{{ index .ObjectMeta.Annotations `traffic.sidecar.istio.io/kubevirtInterfaces` }}"
\r
14806 imagePullPolicy: "{{ .Values.global.imagePullPolicy }}"
\r
14816 runAsNonRoot: false
\r
14820 {{- if .Values.global.proxy.privileged }}
\r
14823 restartPolicy: Always
\r
14825 {{- if contains "*" (annotation .ObjectMeta `traffic.sidecar.istio.io/includeInboundPorts` "") }}
\r
14826 - name: INBOUND_CAPTURE_PORT
\r
14831 {{- if eq .Values.global.proxy.enableCoreDump true }}
\r
14832 - name: enable-core-dump
\r
14835 - sysctl -w kernel.core_pattern=/var/lib/istio/core.proxy && ulimit -c unlimited
\r
14838 {{- if contains "/" .Values.global.proxy_init.image }}
\r
14839 image: "{{ .Values.global.proxy_init.image }}"
\r
14841 image: "{{ .Values.global.hub }}/{{ .Values.global.proxy_init.image }}:{{ .Values.global.tag }}"
\r
14843 imagePullPolicy: IfNotPresent
\r
14847 runAsNonRoot: false
\r
14852 - name: istio-proxy
\r
14853 {{- if contains "/" .Values.global.proxy.image }}
\r
14854 image: "{{ annotation .ObjectMeta `sidecar.istio.io/proxyImage` .Values.global.proxy.image }}"
\r
14856 image: "{{ annotation .ObjectMeta `sidecar.istio.io/proxyImage` .Values.global.hub }}/{{ .Values.global.proxy.image }}:{{ .Values.global.tag }}"
\r
14859 - containerPort: 15090
\r
14861 name: http-envoy-prom
\r
14866 - $(POD_NAMESPACE).svc.{{ .Values.global.proxy.clusterDomain }}
\r
14868 - "{{ .ProxyConfig.ConfigPath }}"
\r
14870 - "{{ .ProxyConfig.BinaryPath }}"
\r
14871 - --serviceCluster
\r
14872 {{ if ne "" (index .ObjectMeta.Labels "app") -}}
\r
14873 - "{{ index .ObjectMeta.Labels `app` }}.$(POD_NAMESPACE)"
\r
14875 - "{{ valueOrDefault .DeploymentMeta.Name `istio-proxy` }}.{{ valueOrDefault .DeploymentMeta.Namespace `default` }}"
\r
14877 - --drainDuration
\r
14878 - "{{ formatDuration .ProxyConfig.DrainDuration }}"
\r
14879 - --parentShutdownDuration
\r
14880 - "{{ formatDuration .ProxyConfig.ParentShutdownDuration }}"
\r
14881 - --discoveryAddress
\r
14882 - "{{ annotation .ObjectMeta `sidecar.istio.io/discoveryAddress` .ProxyConfig.DiscoveryAddress }}"
\r
14883 {{- if eq .Values.global.proxy.tracer "lightstep" }}
\r
14884 - --lightstepAddress
\r
14885 - "{{ .ProxyConfig.GetTracing.GetLightstep.GetAddress }}"
\r
14886 - --lightstepAccessToken
\r
14887 - "{{ .ProxyConfig.GetTracing.GetLightstep.GetAccessToken }}"
\r
14888 - --lightstepSecure={{ .ProxyConfig.GetTracing.GetLightstep.GetSecure }}
\r
14889 - --lightstepCacertPath
\r
14890 - "{{ .ProxyConfig.GetTracing.GetLightstep.GetCacertPath }}"
\r
14891 {{- else if eq .Values.global.proxy.tracer "zipkin" }}
\r
14892 - --zipkinAddress
\r
14893 - "{{ .ProxyConfig.GetTracing.GetZipkin.GetAddress }}"
\r
14894 {{- else if eq .Values.global.proxy.tracer "datadog" }}
\r
14895 - --datadogAgentAddress
\r
14896 - "{{ .ProxyConfig.GetTracing.GetDatadog.GetAddress }}"
\r
14898 {{- if .Values.global.proxy.logLevel }}
\r
14899 - --proxyLogLevel={{ .Values.global.proxy.logLevel }}
\r
14901 {{- if .Values.global.proxy.componentLogLevel }}
\r
14902 - --proxyComponentLogLevel={{ .Values.global.proxy.componentLogLevel }}
\r
14904 - --dnsRefreshRate
\r
14905 - {{ .Values.global.proxy.dnsRefreshRate }}
\r
14906 - --connectTimeout
\r
14907 - "{{ formatDuration .ProxyConfig.ConnectTimeout }}"
\r
14908 {{- if .Values.global.proxy.envoyStatsd.enabled }}
\r
14909 - --statsdUdpAddress
\r
14910 - "{{ .ProxyConfig.StatsdUdpAddress }}"
\r
14912 {{- if .Values.global.proxy.envoyMetricsService.enabled }}
\r
14913 - --envoyMetricsServiceAddress
\r
14914 - "{{ .ProxyConfig.EnvoyMetricsServiceAddress }}"
\r
14916 - --proxyAdminPort
\r
14917 - "{{ .ProxyConfig.ProxyAdminPort }}"
\r
14918 {{ if gt .ProxyConfig.Concurrency 0 -}}
\r
14920 - "{{ .ProxyConfig.Concurrency }}"
\r
14922 - --controlPlaneAuthPolicy
\r
14923 - "{{ annotation .ObjectMeta `sidecar.istio.io/controlPlaneAuthPolicy` .ProxyConfig.ControlPlaneAuthPolicy }}"
\r
14924 {{- if (ne (annotation .ObjectMeta "status.sidecar.istio.io/port" .Values.global.proxy.statusPort) "0") }}
\r
14926 - "{{ annotation .ObjectMeta `status.sidecar.istio.io/port` .Values.global.proxy.statusPort }}"
\r
14927 - --applicationPorts
\r
14928 - "{{ annotation .ObjectMeta `readiness.status.sidecar.istio.io/applicationPorts` (applicationPorts .Spec.Containers) }}"
\r
14930 {{- if .Values.global.trustDomain }}
\r
14931 - --trust-domain={{ .Values.global.trustDomain }}
\r
14937 fieldPath: metadata.name
\r
14938 - name: POD_NAMESPACE
\r
14941 fieldPath: metadata.namespace
\r
14942 - name: INSTANCE_IP
\r
14945 fieldPath: status.podIP
\r
14946 {{ if eq .Values.global.proxy.tracer "datadog" }}
\r
14950 fieldPath: status.hostIP
\r
14952 - name: ISTIO_META_POD_NAME
\r
14955 fieldPath: metadata.name
\r
14956 - name: ISTIO_META_CONFIG_NAMESPACE
\r
14959 fieldPath: metadata.namespace
\r
14960 - name: ISTIO_META_INTERCEPTION_MODE
\r
14961 value: "{{ or (index .ObjectMeta.Annotations `sidecar.istio.io/interceptionMode`) .ProxyConfig.InterceptionMode.String }}"
\r
14962 - name: ISTIO_META_INCLUDE_INBOUND_PORTS
\r
14963 value: "{{ annotation .ObjectMeta `traffic.sidecar.istio.io/includeInboundPorts` (applicationPorts .Spec.Containers) }}"
\r
14964 {{- if .Values.global.network }}
\r
14965 - name: ISTIO_META_NETWORK
\r
14966 value: "{{ .Values.global.network }}"
\r
14968 {{ if .ObjectMeta.Annotations }}
\r
14969 - name: ISTIO_METAJSON_ANNOTATIONS
\r
14971 {{ toJSON .ObjectMeta.Annotations }}
\r
14973 {{ if .ObjectMeta.Labels }}
\r
14974 - name: ISTIO_METAJSON_LABELS
\r
14976 {{ toJSON .ObjectMeta.Labels }}
\r
14978 {{- if (isset .ObjectMeta.Annotations `sidecar.istio.io/bootstrapOverride`) }}
\r
14979 - name: ISTIO_BOOTSTRAP_OVERRIDE
\r
14980 value: "/etc/istio/custom-bootstrap/custom_bootstrap.json"
\r
14982 {{- if .Values.global.sds.customTokenDirectory }}
\r
14983 - name: ISTIO_META_SDS_TOKEN_PATH
\r
14984 value: "{{ .Values.global.sds.customTokenDirectory -}}/sdstoken"
\r
14986 imagePullPolicy: {{ .Values.global.imagePullPolicy }}
\r
14987 {{ if ne (annotation .ObjectMeta `status.sidecar.istio.io/port` .Values.global.proxy.statusPort) `0` }}
\r
14990 path: /healthz/ready
\r
14991 port: {{ annotation .ObjectMeta `status.sidecar.istio.io/port` .Values.global.proxy.statusPort }}
\r
14992 initialDelaySeconds: {{ annotation .ObjectMeta `readiness.status.sidecar.istio.io/initialDelaySeconds` .Values.global.proxy.readinessInitialDelaySeconds }}
\r
14993 periodSeconds: {{ annotation .ObjectMeta `readiness.status.sidecar.istio.io/periodSeconds` .Values.global.proxy.readinessPeriodSeconds }}
\r
14994 failureThreshold: {{ annotation .ObjectMeta `readiness.status.sidecar.istio.io/failureThreshold` .Values.global.proxy.readinessFailureThreshold }}
\r
14997 {{- if .Values.global.proxy.privileged }}
\r
15000 {{- if ne .Values.global.proxy.enableCoreDump true }}
\r
15001 readOnlyRootFilesystem: true
\r
15003 {{ if eq (annotation .ObjectMeta `sidecar.istio.io/interceptionMode` .ProxyConfig.InterceptionMode) `TPROXY` -}}
\r
15009 {{ if and .Values.global.sds.enabled .Values.global.sds.useTrustworthyJwt }}
\r
15015 {{ if or (isset .ObjectMeta.Annotations `sidecar.istio.io/proxyCPU`) (isset .ObjectMeta.Annotations `sidecar.istio.io/proxyMemory`) -}}
\r
15017 {{ if (isset .ObjectMeta.Annotations `sidecar.istio.io/proxyCPU`) -}}
\r
15018 cpu: "{{ index .ObjectMeta.Annotations `sidecar.istio.io/proxyCPU` }}"
\r
15020 {{ if (isset .ObjectMeta.Annotations `sidecar.istio.io/proxyMemory`) -}}
\r
15021 memory: "{{ index .ObjectMeta.Annotations `sidecar.istio.io/proxyMemory` }}"
\r
15024 {{- if .Values.global.proxy.resources }}
\r
15025 {{ toYaml .Values.global.proxy.resources | indent 4 }}
\r
15029 {{ if (isset .ObjectMeta.Annotations `sidecar.istio.io/bootstrapOverride`) }}
\r
15030 - mountPath: /etc/istio/custom-bootstrap
\r
15031 name: custom-bootstrap-volume
\r
15033 - mountPath: /etc/istio/proxy
\r
15034 name: istio-envoy
\r
15035 {{- if .Values.global.sds.enabled }}
\r
15036 - mountPath: /var/run/sds
\r
15037 name: sds-uds-path
\r
15039 {{- if .Values.global.sds.useTrustworthyJwt }}
\r
15040 - mountPath: /var/run/secrets/tokens
\r
15041 name: istio-token
\r
15043 {{- if .Values.global.sds.customTokenDirectory }}
\r
15044 - mountPath: "{{ .Values.global.sds.customTokenDirectory -}}"
\r
15045 name: custom-sds-token
\r
15049 - mountPath: /etc/certs/
\r
15050 name: istio-certs
\r
15053 {{- if and (eq .Values.global.proxy.tracer "lightstep") .Values.global.tracer.lightstep.cacertPath }}
\r
15054 - mountPath: {{ directory .ProxyConfig.GetTracing.GetLightstep.GetCacertPath }}
\r
15055 name: lightstep-certs
\r
15058 {{- if isset .ObjectMeta.Annotations `sidecar.istio.io/userVolumeMount` }}
\r
15059 {{ range $index, $value := fromJSON (index .ObjectMeta.Annotations `sidecar.istio.io/userVolumeMount`) }}
\r
15060 - name: "{{ $index }}"
\r
15061 {{ toYaml $value | indent 4 }}
\r
15065 {{- if (isset .ObjectMeta.Annotations `sidecar.istio.io/bootstrapOverride`) }}
\r
15066 - name: custom-bootstrap-volume
\r
15068 name: {{ annotation .ObjectMeta `sidecar.istio.io/bootstrapOverride` "" }}
\r
15072 name: istio-envoy
\r
15073 {{- if .Values.global.sds.enabled }}
\r
15074 - name: sds-uds-path
\r
15076 path: /var/run/sds
\r
15077 {{- if .Values.global.sds.customTokenDirectory }}
\r
15078 - name: custom-sds-token
\r
15080 secretName: sdstokensecret
\r
15082 {{- if .Values.global.sds.useTrustworthyJwt }}
\r
15083 - name: istio-token
\r
15086 - serviceAccountToken:
\r
15087 path: istio-token
\r
15088 expirationSeconds: 43200
\r
15089 audience: {{ .Values.global.trustDomain }}
\r
15092 - name: istio-certs
\r
15095 {{ if eq .Spec.ServiceAccountName "" }}
\r
15096 secretName: istio.default
\r
15098 secretName: {{ printf "istio.%s" .Spec.ServiceAccountName }}
\r
15100 {{- if isset .ObjectMeta.Annotations `sidecar.istio.io/userVolume` }}
\r
15101 {{range $index, $value := fromJSON (index .ObjectMeta.Annotations `sidecar.istio.io/userVolume`) }}
\r
15102 - name: "{{ $index }}"
\r
15103 {{ toYaml $value | indent 2 }}
\r
15107 {{- if and (eq .Values.global.proxy.tracer "lightstep") .Values.global.tracer.lightstep.cacertPath }}
\r
15108 - name: lightstep-certs
\r
15111 secretName: lightstep.cacert
\r
15113 {{- if .Values.global.podDNSSearchNamespaces }}
\r
15116 {{- range .Values.global.podDNSSearchNamespaces }}
\r
15122 # Source: istio/charts/galley/templates/serviceaccount.yaml
\r
15124 kind: ServiceAccount
\r
15126 name: istio-galley-service-account
\r
15127 namespace: istio-system
\r
15135 # Source: istio/charts/gateways/templates/serviceaccount.yaml
\r
15138 kind: ServiceAccount
\r
15140 name: istio-egressgateway-service-account
\r
15141 namespace: istio-system
\r
15143 app: istio-egressgateway
\r
15149 kind: ServiceAccount
\r
15151 name: istio-ingressgateway-service-account
\r
15152 namespace: istio-system
\r
15154 app: istio-ingressgateway
\r
15162 # Source: istio/charts/grafana/templates/create-custom-resources-job.yaml
\r
15164 kind: ServiceAccount
\r
15166 name: istio-grafana-post-install-account
\r
15167 namespace: istio-system
\r
15174 apiVersion: rbac.authorization.k8s.io/v1
\r
15175 kind: ClusterRole
\r
15177 name: istio-grafana-post-install-istio-system
\r
15184 - apiGroups: ["authentication.istio.io"] # needed to create default authn policy
\r
15188 apiVersion: rbac.authorization.k8s.io/v1
\r
15189 kind: ClusterRoleBinding
\r
15191 name: istio-grafana-post-install-role-binding-istio-system
\r
15198 apiGroup: rbac.authorization.k8s.io
\r
15199 kind: ClusterRole
\r
15200 name: istio-grafana-post-install-istio-system
\r
15202 - kind: ServiceAccount
\r
15203 name: istio-grafana-post-install-account
\r
15204 namespace: istio-system
\r
15206 apiVersion: batch/v1
\r
15209 name: istio-grafana-post-install-1.2.3
\r
15210 namespace: istio-system
\r
15212 "helm.sh/hook": post-install
\r
15213 "helm.sh/hook-delete-policy": hook-succeeded
\r
15222 name: istio-grafana-post-install
\r
15224 app: istio-grafana
\r
15229 serviceAccountName: istio-grafana-post-install-account
\r
15232 image: "iecedge/kubectl-arm64:1.2.3"
\r
15233 imagePullPolicy: IfNotPresent
\r
15234 command: [ "/bin/bash", "/tmp/grafana/run.sh", "/tmp/grafana/custom-resources.yaml" ]
\r
15236 - mountPath: "/tmp/grafana"
\r
15237 name: tmp-configmap-grafana
\r
15239 - name: tmp-configmap-grafana
\r
15241 name: istio-grafana-custom-resources
\r
15242 restartPolicy: OnFailure
\r
15245 requiredDuringSchedulingIgnoredDuringExecution:
\r
15246 nodeSelectorTerms:
\r
15247 - matchExpressions:
\r
15248 - key: beta.kubernetes.io/arch
\r
15254 preferredDuringSchedulingIgnoredDuringExecution:
\r
15257 matchExpressions:
\r
15258 - key: beta.kubernetes.io/arch
\r
15264 matchExpressions:
\r
15265 - key: beta.kubernetes.io/arch
\r
15271 matchExpressions:
\r
15272 - key: beta.kubernetes.io/arch
\r
15278 # Source: istio/charts/kiali/templates/serviceaccount.yaml
\r
15280 kind: ServiceAccount
\r
15282 name: kiali-service-account
\r
15283 namespace: istio-system
\r
15291 # Source: istio/charts/mixer/templates/serviceaccount.yaml
\r
15294 kind: ServiceAccount
\r
15296 name: istio-mixer-service-account
\r
15297 namespace: istio-system
\r
15305 # Source: istio/charts/pilot/templates/serviceaccount.yaml
\r
15307 kind: ServiceAccount
\r
15309 name: istio-pilot-service-account
\r
15310 namespace: istio-system
\r
15318 # Source: istio/charts/prometheus/templates/serviceaccount.yaml
\r
15320 kind: ServiceAccount
\r
15323 namespace: istio-system
\r
15326 chart: prometheus
\r
15331 # Source: istio/charts/security/templates/cleanup-secrets.yaml
\r
15332 # The reason for creating a ServiceAccount and ClusterRole specifically for this
\r
15333 # post-delete hooked job is because the citadel ServiceAccount is being deleted
\r
15334 # before this hook is launched. On the other hand, running this hook before the
\r
15335 # deletion of the citadel (e.g. pre-delete) won't delete the secrets because they
\r
15336 # will be re-created immediately by the to-be-deleted citadel.
\r
15338 # It's also important that the ServiceAccount, ClusterRole and ClusterRoleBinding
\r
15339 # will be ready before running the hooked Job therefore the hook weights.
\r
15342 kind: ServiceAccount
\r
15344 name: istio-cleanup-secrets-service-account
\r
15345 namespace: istio-system
\r
15347 "helm.sh/hook": post-delete
\r
15348 "helm.sh/hook-delete-policy": hook-succeeded
\r
15349 "helm.sh/hook-weight": "1"
\r
15356 apiVersion: rbac.authorization.k8s.io/v1
\r
15357 kind: ClusterRole
\r
15359 name: istio-cleanup-secrets-istio-system
\r
15361 "helm.sh/hook": post-delete
\r
15362 "helm.sh/hook-delete-policy": hook-succeeded
\r
15363 "helm.sh/hook-weight": "1"
\r
15370 - apiGroups: [""]
\r
15371 resources: ["secrets"]
\r
15372 verbs: ["list", "delete"]
\r
15374 apiVersion: rbac.authorization.k8s.io/v1
\r
15375 kind: ClusterRoleBinding
\r
15377 name: istio-cleanup-secrets-istio-system
\r
15379 "helm.sh/hook": post-delete
\r
15380 "helm.sh/hook-delete-policy": hook-succeeded
\r
15381 "helm.sh/hook-weight": "2"
\r
15388 apiGroup: rbac.authorization.k8s.io
\r
15389 kind: ClusterRole
\r
15390 name: istio-cleanup-secrets-istio-system
\r
15392 - kind: ServiceAccount
\r
15393 name: istio-cleanup-secrets-service-account
\r
15394 namespace: istio-system
\r
15396 apiVersion: batch/v1
\r
15399 name: istio-cleanup-secrets-1.2.3
\r
15400 namespace: istio-system
\r
15402 "helm.sh/hook": post-delete
\r
15403 "helm.sh/hook-delete-policy": hook-succeeded
\r
15404 "helm.sh/hook-weight": "3"
\r
15413 name: istio-cleanup-secrets
\r
15420 serviceAccountName: istio-cleanup-secrets-service-account
\r
15423 image: "iecedge/kubectl-arm64:1.2.3"
\r
15424 imagePullPolicy: IfNotPresent
\r
15429 kubectl get secret --all-namespaces | grep "istio.io/key-and-cert" | while read -r entry; do
\r
15430 ns=$(echo $entry | awk '{print $1}');
\r
15431 name=$(echo $entry | awk '{print $2}');
\r
15432 kubectl delete secret $name -n $ns;
\r
15434 restartPolicy: OnFailure
\r
15437 requiredDuringSchedulingIgnoredDuringExecution:
\r
15438 nodeSelectorTerms:
\r
15439 - matchExpressions:
\r
15440 - key: beta.kubernetes.io/arch
\r
15446 preferredDuringSchedulingIgnoredDuringExecution:
\r
15449 matchExpressions:
\r
15450 - key: beta.kubernetes.io/arch
\r
15456 matchExpressions:
\r
15457 - key: beta.kubernetes.io/arch
\r
15463 matchExpressions:
\r
15464 - key: beta.kubernetes.io/arch
\r
15470 # Source: istio/charts/security/templates/create-custom-resources-job.yaml
\r
15473 kind: ServiceAccount
\r
15475 name: istio-security-post-install-account
\r
15476 namespace: istio-system
\r
15483 apiVersion: rbac.authorization.k8s.io/v1beta1
\r
15484 kind: ClusterRole
\r
15486 name: istio-security-post-install-istio-system
\r
15493 - apiGroups: ["authentication.istio.io"] # needed to create default authn policy
\r
15496 - apiGroups: ["networking.istio.io"] # needed to create security destination rules
\r
15499 - apiGroups: ["admissionregistration.k8s.io"]
\r
15500 resources: ["validatingwebhookconfigurations"]
\r
15502 - apiGroups: ["extensions", "apps"]
\r
15503 resources: ["deployments", "replicasets"]
\r
15504 verbs: ["get", "list", "watch"]
\r
15506 apiVersion: rbac.authorization.k8s.io/v1beta1
\r
15507 kind: ClusterRoleBinding
\r
15509 name: istio-security-post-install-role-binding-istio-system
\r
15516 apiGroup: rbac.authorization.k8s.io
\r
15517 kind: ClusterRole
\r
15518 name: istio-security-post-install-istio-system
\r
15520 - kind: ServiceAccount
\r
15521 name: istio-security-post-install-account
\r
15522 namespace: istio-system
\r
15524 apiVersion: batch/v1
\r
15527 name: istio-security-post-install-1.2.3
\r
15528 namespace: istio-system
\r
15530 "helm.sh/hook": post-install
\r
15531 "helm.sh/hook-delete-policy": hook-succeeded
\r
15540 name: istio-security-post-install
\r
15547 serviceAccountName: istio-security-post-install-account
\r
15550 image: "iecedge/kubectl-arm64:1.2.3"
\r
15551 imagePullPolicy: IfNotPresent
\r
15552 command: [ "/bin/bash", "/tmp/security/run.sh", "/tmp/security/custom-resources.yaml" ]
\r
15554 - mountPath: "/tmp/security"
\r
15555 name: tmp-configmap-security
\r
15557 - name: tmp-configmap-security
\r
15559 name: istio-security-custom-resources
\r
15560 restartPolicy: OnFailure
\r
15563 requiredDuringSchedulingIgnoredDuringExecution:
\r
15564 nodeSelectorTerms:
\r
15565 - matchExpressions:
\r
15566 - key: beta.kubernetes.io/arch
\r
15572 preferredDuringSchedulingIgnoredDuringExecution:
\r
15575 matchExpressions:
\r
15576 - key: beta.kubernetes.io/arch
\r
15582 matchExpressions:
\r
15583 - key: beta.kubernetes.io/arch
\r
15589 matchExpressions:
\r
15590 - key: beta.kubernetes.io/arch
\r
15596 # Source: istio/charts/security/templates/serviceaccount.yaml
\r
15598 kind: ServiceAccount
\r
15600 name: istio-citadel-service-account
\r
15601 namespace: istio-system
\r
15609 # Source: istio/charts/sidecarInjectorWebhook/templates/serviceaccount.yaml
\r
15611 kind: ServiceAccount
\r
15613 name: istio-sidecar-injector-service-account
\r
15614 namespace: istio-system
\r
15616 app: sidecarInjectorWebhook
\r
15617 chart: sidecarInjectorWebhook
\r
15620 istio: sidecar-injector
\r
15623 # Source: istio/templates/serviceaccount.yaml
\r
15625 kind: ServiceAccount
\r
15627 name: istio-multi
\r
15628 namespace: istio-system
\r
15631 # Source: istio/charts/galley/templates/clusterrole.yaml
\r
15632 apiVersion: rbac.authorization.k8s.io/v1
\r
15633 kind: ClusterRole
\r
15635 name: istio-galley-istio-system
\r
15642 - apiGroups: ["admissionregistration.k8s.io"]
\r
15643 resources: ["validatingwebhookconfigurations"]
\r
15645 - apiGroups: ["config.istio.io"] # istio mixer CRD watcher
\r
15647 verbs: ["get", "list", "watch"]
\r
15648 - apiGroups: ["networking.istio.io"]
\r
15650 verbs: ["get", "list", "watch"]
\r
15651 - apiGroups: ["authentication.istio.io"]
\r
15653 verbs: ["get", "list", "watch"]
\r
15654 - apiGroups: ["rbac.istio.io"]
\r
15656 verbs: ["get", "list", "watch"]
\r
15657 - apiGroups: ["extensions","apps"]
\r
15658 resources: ["deployments"]
\r
15659 resourceNames: ["istio-galley"]
\r
15661 - apiGroups: [""]
\r
15662 resources: ["pods", "nodes", "services", "endpoints"]
\r
15663 verbs: ["get", "list", "watch"]
\r
15664 - apiGroups: ["extensions"]
\r
15665 resources: ["ingresses"]
\r
15666 verbs: ["get", "list", "watch"]
\r
15667 - apiGroups: ["extensions"]
\r
15668 resources: ["deployments/finalizers"]
\r
15669 resourceNames: ["istio-galley"]
\r
15670 verbs: ["update"]
\r
15673 # Source: istio/charts/kiali/templates/clusterrole.yaml
\r
15674 apiVersion: rbac.authorization.k8s.io/v1
\r
15675 kind: ClusterRole
\r
15684 - apiGroups: [""]
\r
15692 - replicationcontrollers
\r
15698 - apiGroups: ["extensions", "apps"]
\r
15707 - apiGroups: ["autoscaling"]
\r
15709 - horizontalpodautoscalers
\r
15714 - apiGroups: ["batch"]
\r
15722 - apiGroups: ["config.istio.io"]
\r
15748 - quotaspecbindings
\r
15769 - apiGroups: ["networking.istio.io"]
\r
15771 - destinationrules
\r
15774 - virtualservices
\r
15782 - apiGroups: ["authentication.istio.io"]
\r
15793 - apiGroups: ["rbac.istio.io"]
\r
15795 - clusterrbacconfigs
\r
15797 - servicerolebindings
\r
15806 - apiGroups: ["monitoring.kiali.io"]
\r
15808 - monitoringdashboards
\r
15813 apiVersion: rbac.authorization.k8s.io/v1
\r
15814 kind: ClusterRole
\r
15816 name: kiali-viewer
\r
15823 - apiGroups: [""]
\r
15831 - replicationcontrollers
\r
15837 - apiGroups: ["extensions", "apps"]
\r
15846 - apiGroups: ["autoscaling"]
\r
15848 - horizontalpodautoscalers
\r
15853 - apiGroups: ["batch"]
\r
15861 - apiGroups: ["config.istio.io"]
\r
15887 - quotaspecbindings
\r
15905 - apiGroups: ["networking.istio.io"]
\r
15907 - destinationrules
\r
15910 - virtualservices
\r
15915 - apiGroups: ["authentication.istio.io"]
\r
15923 - apiGroups: ["rbac.istio.io"]
\r
15925 - clusterrbacconfigs
\r
15927 - servicerolebindings
\r
15933 - apiGroups: ["monitoring.kiali.io"]
\r
15935 - monitoringdashboards
\r
15941 # Source: istio/charts/mixer/templates/clusterrole.yaml
\r
15943 apiVersion: rbac.authorization.k8s.io/v1
\r
15944 kind: ClusterRole
\r
15946 name: istio-mixer-istio-system
\r
15953 - apiGroups: ["config.istio.io"] # istio CRD watcher
\r
15955 verbs: ["create", "get", "list", "watch", "patch"]
\r
15956 - apiGroups: ["apiextensions.k8s.io"]
\r
15957 resources: ["customresourcedefinitions"]
\r
15958 verbs: ["get", "list", "watch"]
\r
15959 - apiGroups: [""]
\r
15960 resources: ["configmaps", "endpoints", "pods", "services", "namespaces", "secrets", "replicationcontrollers"]
\r
15961 verbs: ["get", "list", "watch"]
\r
15962 - apiGroups: ["extensions", "apps"]
\r
15963 resources: ["replicasets"]
\r
15964 verbs: ["get", "list", "watch"]
\r
15967 # Source: istio/charts/pilot/templates/clusterrole.yaml
\r
15968 apiVersion: rbac.authorization.k8s.io/v1
\r
15969 kind: ClusterRole
\r
15971 name: istio-pilot-istio-system
\r
15978 - apiGroups: ["config.istio.io"]
\r
15981 - apiGroups: ["rbac.istio.io"]
\r
15983 verbs: ["get", "watch", "list"]
\r
15984 - apiGroups: ["networking.istio.io"]
\r
15987 - apiGroups: ["authentication.istio.io"]
\r
15990 - apiGroups: ["apiextensions.k8s.io"]
\r
15991 resources: ["customresourcedefinitions"]
\r
15993 - apiGroups: ["extensions"]
\r
15994 resources: ["ingresses", "ingresses/status"]
\r
15996 - apiGroups: [""]
\r
15997 resources: ["configmaps"]
\r
15998 verbs: ["create", "get", "list", "watch", "update"]
\r
15999 - apiGroups: [""]
\r
16000 resources: ["endpoints", "pods", "services", "namespaces", "nodes", "secrets"]
\r
16001 verbs: ["get", "list", "watch"]
\r
16004 # Source: istio/charts/prometheus/templates/clusterrole.yaml
\r
16005 apiVersion: rbac.authorization.k8s.io/v1
\r
16006 kind: ClusterRole
\r
16008 name: prometheus-istio-system
\r
16011 chart: prometheus
\r
16015 - apiGroups: [""]
\r
16022 verbs: ["get", "list", "watch"]
\r
16023 - apiGroups: [""]
\r
16027 - nonResourceURLs: ["/metrics"]
\r
16031 # Source: istio/charts/security/templates/clusterrole.yaml
\r
16032 apiVersion: rbac.authorization.k8s.io/v1
\r
16033 kind: ClusterRole
\r
16035 name: istio-citadel-istio-system
\r
16042 - apiGroups: [""]
\r
16043 resources: ["configmaps"]
\r
16044 verbs: ["create", "get", "update"]
\r
16045 - apiGroups: [""]
\r
16046 resources: ["secrets"]
\r
16047 verbs: ["create", "get", "watch", "list", "update", "delete"]
\r
16048 - apiGroups: [""]
\r
16049 resources: ["serviceaccounts", "services"]
\r
16050 verbs: ["get", "watch", "list"]
\r
16051 - apiGroups: ["authentication.k8s.io"]
\r
16052 resources: ["tokenreviews"]
\r
16053 verbs: ["create"]
\r
16056 # Source: istio/charts/sidecarInjectorWebhook/templates/clusterrole.yaml
\r
16057 apiVersion: rbac.authorization.k8s.io/v1
\r
16058 kind: ClusterRole
\r
16060 name: istio-sidecar-injector-istio-system
\r
16062 app: sidecarInjectorWebhook
\r
16063 chart: sidecarInjectorWebhook
\r
16066 istio: sidecar-injector
\r
16068 - apiGroups: [""]
\r
16069 resources: ["configmaps"]
\r
16070 verbs: ["get", "list", "watch"]
\r
16071 - apiGroups: ["admissionregistration.k8s.io"]
\r
16072 resources: ["mutatingwebhookconfigurations"]
\r
16073 verbs: ["get", "list", "watch", "patch"]
\r
16076 # Source: istio/templates/clusterrole.yaml
\r
16077 kind: ClusterRole
\r
16078 apiVersion: rbac.authorization.k8s.io/v1
\r
16080 name: istio-reader
\r
16082 - apiGroups: ['']
\r
16083 resources: ['nodes', 'pods', 'services', 'endpoints', "replicationcontrollers"]
\r
16084 verbs: ['get', 'watch', 'list']
\r
16085 - apiGroups: ["extensions", "apps"]
\r
16086 resources: ["replicasets"]
\r
16087 verbs: ["get", "list", "watch"]
\r
16090 # Source: istio/charts/galley/templates/clusterrolebinding.yaml
\r
16091 apiVersion: rbac.authorization.k8s.io/v1
\r
16092 kind: ClusterRoleBinding
\r
16094 name: istio-galley-admin-role-binding-istio-system
\r
16101 apiGroup: rbac.authorization.k8s.io
\r
16102 kind: ClusterRole
\r
16103 name: istio-galley-istio-system
\r
16105 - kind: ServiceAccount
\r
16106 name: istio-galley-service-account
\r
16107 namespace: istio-system
\r
16110 # Source: istio/charts/kiali/templates/clusterrolebinding.yaml
\r
16111 apiVersion: rbac.authorization.k8s.io/v1
\r
16112 kind: ClusterRoleBinding
\r
16114 name: istio-kiali-admin-role-binding-istio-system
\r
16121 apiGroup: rbac.authorization.k8s.io
\r
16122 kind: ClusterRole
\r
16125 - kind: ServiceAccount
\r
16126 name: kiali-service-account
\r
16127 namespace: istio-system
\r
16130 # Source: istio/charts/mixer/templates/clusterrolebinding.yaml
\r
16132 apiVersion: rbac.authorization.k8s.io/v1
\r
16133 kind: ClusterRoleBinding
\r
16135 name: istio-mixer-admin-role-binding-istio-system
\r
16142 apiGroup: rbac.authorization.k8s.io
\r
16143 kind: ClusterRole
\r
16144 name: istio-mixer-istio-system
\r
16146 - kind: ServiceAccount
\r
16147 name: istio-mixer-service-account
\r
16148 namespace: istio-system
\r
16151 # Source: istio/charts/pilot/templates/clusterrolebinding.yaml
\r
16152 apiVersion: rbac.authorization.k8s.io/v1
\r
16153 kind: ClusterRoleBinding
\r
16155 name: istio-pilot-istio-system
\r
16162 apiGroup: rbac.authorization.k8s.io
\r
16163 kind: ClusterRole
\r
16164 name: istio-pilot-istio-system
\r
16166 - kind: ServiceAccount
\r
16167 name: istio-pilot-service-account
\r
16168 namespace: istio-system
\r
16171 # Source: istio/charts/prometheus/templates/clusterrolebindings.yaml
\r
16172 apiVersion: rbac.authorization.k8s.io/v1
\r
16173 kind: ClusterRoleBinding
\r
16175 name: prometheus-istio-system
\r
16178 chart: prometheus
\r
16182 apiGroup: rbac.authorization.k8s.io
\r
16183 kind: ClusterRole
\r
16184 name: prometheus-istio-system
\r
16186 - kind: ServiceAccount
\r
16188 namespace: istio-system
\r
16191 # Source: istio/charts/security/templates/clusterrolebinding.yaml
\r
16192 apiVersion: rbac.authorization.k8s.io/v1
\r
16193 kind: ClusterRoleBinding
\r
16195 name: istio-citadel-istio-system
\r
16202 apiGroup: rbac.authorization.k8s.io
\r
16203 kind: ClusterRole
\r
16204 name: istio-citadel-istio-system
\r
16206 - kind: ServiceAccount
\r
16207 name: istio-citadel-service-account
\r
16208 namespace: istio-system
\r
16211 # Source: istio/charts/sidecarInjectorWebhook/templates/clusterrolebinding.yaml
\r
16212 apiVersion: rbac.authorization.k8s.io/v1
\r
16213 kind: ClusterRoleBinding
\r
16215 name: istio-sidecar-injector-admin-role-binding-istio-system
\r
16217 app: sidecarInjectorWebhook
\r
16218 chart: sidecarInjectorWebhook
\r
16221 istio: sidecar-injector
\r
16223 apiGroup: rbac.authorization.k8s.io
\r
16224 kind: ClusterRole
\r
16225 name: istio-sidecar-injector-istio-system
\r
16227 - kind: ServiceAccount
\r
16228 name: istio-sidecar-injector-service-account
\r
16229 namespace: istio-system
\r
16232 # Source: istio/templates/clusterrolebinding.yaml
\r
16233 apiVersion: rbac.authorization.k8s.io/v1
\r
16234 kind: ClusterRoleBinding
\r
16236 name: istio-multi
\r
16238 chart: istio-1.1.0
\r
16240 apiGroup: rbac.authorization.k8s.io
\r
16241 kind: ClusterRole
\r
16242 name: istio-reader
\r
16244 - kind: ServiceAccount
\r
16245 name: istio-multi
\r
16246 namespace: istio-system
\r
16249 # Source: istio/charts/gateways/templates/role.yaml
\r
16251 apiVersion: rbac.authorization.k8s.io/v1
\r
16254 name: istio-ingressgateway-sds
\r
16255 namespace: istio-system
\r
16257 - apiGroups: [""]
\r
16258 resources: ["secrets"]
\r
16259 verbs: ["get", "watch", "list"]
\r
16263 # Source: istio/charts/gateways/templates/rolebindings.yaml
\r
16265 apiVersion: rbac.authorization.k8s.io/v1
\r
16266 kind: RoleBinding
\r
16268 name: istio-ingressgateway-sds
\r
16269 namespace: istio-system
\r
16271 apiGroup: rbac.authorization.k8s.io
\r
16273 name: istio-ingressgateway-sds
\r
16275 - kind: ServiceAccount
\r
16276 name: istio-ingressgateway-service-account
\r
16280 # Source: istio/charts/galley/templates/service.yaml
\r
16284 name: istio-galley
\r
16285 namespace: istio-system
\r
16295 name: https-validation
\r
16297 name: http-monitoring
\r
16304 # Source: istio/charts/gateways/templates/service.yaml
\r
16309 name: istio-egressgateway
\r
16310 namespace: istio-system
\r
16316 app: istio-egressgateway
\r
16317 istio: egressgateway
\r
16322 app: istio-egressgateway
\r
16323 istio: egressgateway
\r
16334 targetPort: 15443
\r
16339 name: istio-ingressgateway
\r
16340 namespace: istio-system
\r
16346 app: istio-ingressgateway
\r
16347 istio: ingressgateway
\r
16349 type: LoadBalancer
\r
16352 app: istio-ingressgateway
\r
16353 istio: ingressgateway
\r
16356 name: status-port
\r
16358 targetPort: 15020
\r
16373 name: https-kiali
\r
16375 targetPort: 15029
\r
16377 name: https-prometheus
\r
16379 targetPort: 15030
\r
16381 name: https-grafana
\r
16383 targetPort: 15031
\r
16385 name: https-tracing
\r
16387 targetPort: 15032
\r
16391 targetPort: 15443
\r
16395 # Source: istio/charts/grafana/templates/service.yaml
\r
16400 namespace: istio-system
\r
16418 # Source: istio/charts/kiali/templates/service.yaml
\r
16423 namespace: istio-system
\r
16431 - name: http-kiali
\r
16438 # Source: istio/charts/mixer/templates/service.yaml
\r
16443 name: istio-policy
\r
16444 namespace: istio-system
\r
16446 networking.istio.io/exportTo: "*"
\r
16455 - name: grpc-mixer
\r
16457 - name: grpc-mixer-mtls
\r
16459 - name: http-monitoring
\r
16463 istio-mixer-type: policy
\r
16468 name: istio-telemetry
\r
16469 namespace: istio-system
\r
16471 networking.istio.io/exportTo: "*"
\r
16480 - name: grpc-mixer
\r
16482 - name: grpc-mixer-mtls
\r
16484 - name: http-monitoring
\r
16486 - name: prometheus
\r
16490 istio-mixer-type: telemetry
\r
16495 # Source: istio/charts/pilot/templates/service.yaml
\r
16499 name: istio-pilot
\r
16500 namespace: istio-system
\r
16510 name: grpc-xds # direct
\r
16512 name: https-xds # mTLS
\r
16514 name: http-legacy-discovery # direct
\r
16516 name: http-monitoring
\r
16521 # Source: istio/charts/prometheus/templates/service.yaml
\r
16526 namespace: istio-system
\r
16528 prometheus.io/scrape: 'true'
\r
16531 chart: prometheus
\r
16538 - name: http-prometheus
\r
16543 # Source: istio/charts/security/templates/service.yaml
\r
16547 # we use the normal name here (e.g. 'prometheus')
\r
16548 # as grafana is configured to use this as a data source
\r
16549 name: istio-citadel
\r
16550 namespace: istio-system
\r
16559 - name: grpc-citadel
\r
16563 - name: http-monitoring
\r
16569 # Source: istio/charts/sidecarInjectorWebhook/templates/service.yaml
\r
16573 name: istio-sidecar-injector
\r
16574 namespace: istio-system
\r
16576 app: sidecarInjectorWebhook
\r
16577 chart: sidecarInjectorWebhook
\r
16580 istio: sidecar-injector
\r
16585 istio: sidecar-injector
\r
16588 # Source: istio/charts/galley/templates/deployment.yaml
\r
16589 apiVersion: apps/v1
\r
16592 name: istio-galley
\r
16593 namespace: istio-system
\r
16608 maxUnavailable: 0
\r
16618 sidecar.istio.io/inject: "false"
\r
16620 serviceAccountName: istio-galley-service-account
\r
16623 image: "iecedge/galley-arm64:1.2.3"
\r
16624 imagePullPolicy: IfNotPresent
\r
16626 - containerPort: 443
\r
16627 - containerPort: 15014
\r
16628 - containerPort: 9901
\r
16630 - /usr/local/bin/galley
\r
16632 - --meshConfigFile=/etc/mesh-config/mesh
\r
16633 - --livenessProbeInterval=1s
\r
16634 - --livenessProbePath=/healthliveness
\r
16635 - --readinessProbePath=/healthready
\r
16636 - --readinessProbeInterval=1s
\r
16637 - --deployment-namespace=istio-system
\r
16638 - --insecure=true
\r
16639 - --validation-webhook-config-file
\r
16640 - /etc/config/validatingwebhookconfiguration.yaml
\r
16641 - --monitoringPort=15014
\r
16642 - --log_output_level=default:info
\r
16645 mountPath: /etc/certs
\r
16648 mountPath: /etc/config
\r
16650 - name: mesh-config
\r
16651 mountPath: /etc/mesh-config
\r
16656 - /usr/local/bin/galley
\r
16658 - --probe-path=/healthliveness
\r
16660 initialDelaySeconds: 5
\r
16665 - /usr/local/bin/galley
\r
16667 - --probe-path=/healthready
\r
16669 initialDelaySeconds: 5
\r
16678 secretName: istio.istio-galley-service-account
\r
16681 name: istio-galley-configuration
\r
16682 - name: mesh-config
\r
16687 requiredDuringSchedulingIgnoredDuringExecution:
\r
16688 nodeSelectorTerms:
\r
16689 - matchExpressions:
\r
16690 - key: beta.kubernetes.io/arch
\r
16696 preferredDuringSchedulingIgnoredDuringExecution:
\r
16699 matchExpressions:
\r
16700 - key: beta.kubernetes.io/arch
\r
16706 matchExpressions:
\r
16707 - key: beta.kubernetes.io/arch
\r
16713 matchExpressions:
\r
16714 - key: beta.kubernetes.io/arch
\r
16720 # Source: istio/charts/gateways/templates/deployment.yaml
\r
16722 apiVersion: apps/v1
\r
16725 name: istio-egressgateway
\r
16726 namespace: istio-system
\r
16731 app: istio-egressgateway
\r
16732 istio: egressgateway
\r
16737 app: istio-egressgateway
\r
16738 istio: egressgateway
\r
16745 app: istio-egressgateway
\r
16746 istio: egressgateway
\r
16748 sidecar.istio.io/inject: "false"
\r
16750 serviceAccountName: istio-egressgateway-service-account
\r
16752 - name: istio-proxy
\r
16753 image: "iecedge/proxyv2-arm64:1.2.3"
\r
16754 imagePullPolicy: IfNotPresent
\r
16756 - containerPort: 80
\r
16757 - containerPort: 443
\r
16758 - containerPort: 15443
\r
16759 - containerPort: 15090
\r
16761 name: http-envoy-prom
\r
16766 - $(POD_NAMESPACE).svc.cluster.local
\r
16767 - --log_output_level=default:info
\r
16768 - --drainDuration
\r
16769 - '45s' #drainDuration
\r
16770 - --parentShutdownDuration
\r
16771 - '1m0s' #parentShutdownDuration
\r
16772 - --connectTimeout
\r
16773 - '10s' #connectTimeout
\r
16774 - --serviceCluster
\r
16775 - istio-egressgateway
\r
16776 - --zipkinAddress
\r
16778 - --proxyAdminPort
\r
16782 - --controlPlaneAuthPolicy
\r
16784 - --discoveryAddress
\r
16785 - istio-pilot:15010
\r
16787 failureThreshold: 30
\r
16789 path: /healthz/ready
\r
16792 initialDelaySeconds: 1
\r
16794 successThreshold: 1
\r
16795 timeoutSeconds: 1
\r
16805 - name: NODE_NAME
\r
16809 fieldPath: spec.nodeName
\r
16814 fieldPath: metadata.name
\r
16815 - name: POD_NAMESPACE
\r
16819 fieldPath: metadata.namespace
\r
16820 - name: INSTANCE_IP
\r
16824 fieldPath: status.podIP
\r
16829 fieldPath: status.hostIP
\r
16830 - name: ISTIO_META_POD_NAME
\r
16834 fieldPath: metadata.name
\r
16835 - name: ISTIO_META_CONFIG_NAMESPACE
\r
16838 fieldPath: metadata.namespace
\r
16839 - name: ISTIO_META_ROUTER_MODE
\r
16842 - name: istio-certs
\r
16843 mountPath: /etc/certs
\r
16845 - name: egressgateway-certs
\r
16846 mountPath: "/etc/istio/egressgateway-certs"
\r
16848 - name: egressgateway-ca-certs
\r
16849 mountPath: "/etc/istio/egressgateway-ca-certs"
\r
16852 - name: istio-certs
\r
16854 secretName: istio.istio-egressgateway-service-account
\r
16856 - name: egressgateway-certs
\r
16858 secretName: "istio-egressgateway-certs"
\r
16860 - name: egressgateway-ca-certs
\r
16862 secretName: "istio-egressgateway-ca-certs"
\r
16866 requiredDuringSchedulingIgnoredDuringExecution:
\r
16867 nodeSelectorTerms:
\r
16868 - matchExpressions:
\r
16869 - key: beta.kubernetes.io/arch
\r
16875 preferredDuringSchedulingIgnoredDuringExecution:
\r
16878 matchExpressions:
\r
16879 - key: beta.kubernetes.io/arch
\r
16885 matchExpressions:
\r
16886 - key: beta.kubernetes.io/arch
\r
16892 matchExpressions:
\r
16893 - key: beta.kubernetes.io/arch
\r
16898 apiVersion: apps/v1
\r
16901 name: istio-ingressgateway
\r
16902 namespace: istio-system
\r
16907 app: istio-ingressgateway
\r
16908 istio: ingressgateway
\r
16913 app: istio-ingressgateway
\r
16914 istio: ingressgateway
\r
16921 app: istio-ingressgateway
\r
16922 istio: ingressgateway
\r
16924 sidecar.istio.io/inject: "false"
\r
16926 serviceAccountName: istio-ingressgateway-service-account
\r
16928 - name: istio-proxy
\r
16929 image: "iecedge/proxyv2-arm64:1.2.3"
\r
16930 imagePullPolicy: IfNotPresent
\r
16932 - containerPort: 15020
\r
16933 - containerPort: 80
\r
16934 - containerPort: 443
\r
16935 - containerPort: 31400
\r
16936 - containerPort: 15029
\r
16937 - containerPort: 15030
\r
16938 - containerPort: 15031
\r
16939 - containerPort: 15032
\r
16940 - containerPort: 15443
\r
16941 - containerPort: 15090
\r
16943 name: http-envoy-prom
\r
16948 - $(POD_NAMESPACE).svc.cluster.local
\r
16949 - --log_output_level=default:info
\r
16950 - --drainDuration
\r
16951 - '45s' #drainDuration
\r
16952 - --parentShutdownDuration
\r
16953 - '1m0s' #parentShutdownDuration
\r
16954 - --connectTimeout
\r
16955 - '10s' #connectTimeout
\r
16956 - --serviceCluster
\r
16957 - istio-ingressgateway
\r
16958 - --zipkinAddress
\r
16960 - --proxyAdminPort
\r
16964 - --controlPlaneAuthPolicy
\r
16966 - --discoveryAddress
\r
16967 - istio-pilot:15010
\r
16969 failureThreshold: 30
\r
16971 path: /healthz/ready
\r
16974 initialDelaySeconds: 1
\r
16976 successThreshold: 1
\r
16977 timeoutSeconds: 1
\r
16987 - name: NODE_NAME
\r
16991 fieldPath: spec.nodeName
\r
16996 fieldPath: metadata.name
\r
16997 - name: POD_NAMESPACE
\r
17001 fieldPath: metadata.namespace
\r
17002 - name: INSTANCE_IP
\r
17006 fieldPath: status.podIP
\r
17011 fieldPath: status.hostIP
\r
17012 - name: ISTIO_META_POD_NAME
\r
17016 fieldPath: metadata.name
\r
17017 - name: ISTIO_META_CONFIG_NAMESPACE
\r
17020 fieldPath: metadata.namespace
\r
17021 - name: ISTIO_META_ROUTER_MODE
\r
17024 - name: istio-certs
\r
17025 mountPath: /etc/certs
\r
17027 - name: ingressgateway-certs
\r
17028 mountPath: "/etc/istio/ingressgateway-certs"
\r
17030 - name: ingressgateway-ca-certs
\r
17031 mountPath: "/etc/istio/ingressgateway-ca-certs"
\r
17034 - name: istio-certs
\r
17036 secretName: istio.istio-ingressgateway-service-account
\r
17038 - name: ingressgateway-certs
\r
17040 secretName: "istio-ingressgateway-certs"
\r
17042 - name: ingressgateway-ca-certs
\r
17044 secretName: "istio-ingressgateway-ca-certs"
\r
17048 requiredDuringSchedulingIgnoredDuringExecution:
\r
17049 nodeSelectorTerms:
\r
17050 - matchExpressions:
\r
17051 - key: beta.kubernetes.io/arch
\r
17057 preferredDuringSchedulingIgnoredDuringExecution:
\r
17060 matchExpressions:
\r
17061 - key: beta.kubernetes.io/arch
\r
17067 matchExpressions:
\r
17068 - key: beta.kubernetes.io/arch
\r
17074 matchExpressions:
\r
17075 - key: beta.kubernetes.io/arch
\r
17082 # Source: istio/charts/grafana/templates/deployment.yaml
\r
17083 apiVersion: apps/v1
\r
17087 namespace: istio-system
\r
17106 sidecar.istio.io/inject: "false"
\r
17107 prometheus.io/scrape: "true"
\r
17114 image: "grafana/grafana:6.1.6"
\r
17115 imagePullPolicy: IfNotPresent
\r
17117 - containerPort: 3000
\r
17123 - name: GRAFANA_PORT
\r
17125 - name: GF_AUTH_BASIC_ENABLED
\r
17127 - name: GF_AUTH_ANONYMOUS_ENABLED
\r
17129 - name: GF_AUTH_ANONYMOUS_ORG_ROLE
\r
17131 - name: GF_PATHS_DATA
\r
17132 value: /data/grafana
\r
17139 mountPath: /data/grafana
\r
17140 - name: dashboards-istio-galley-dashboard
\r
17141 mountPath: "/var/lib/grafana/dashboards/istio/galley-dashboard.json"
\r
17142 subPath: galley-dashboard.json
\r
17144 - name: dashboards-istio-istio-mesh-dashboard
\r
17145 mountPath: "/var/lib/grafana/dashboards/istio/istio-mesh-dashboard.json"
\r
17146 subPath: istio-mesh-dashboard.json
\r
17148 - name: dashboards-istio-istio-performance-dashboard
\r
17149 mountPath: "/var/lib/grafana/dashboards/istio/istio-performance-dashboard.json"
\r
17150 subPath: istio-performance-dashboard.json
\r
17152 - name: dashboards-istio-istio-service-dashboard
\r
17153 mountPath: "/var/lib/grafana/dashboards/istio/istio-service-dashboard.json"
\r
17154 subPath: istio-service-dashboard.json
\r
17156 - name: dashboards-istio-istio-workload-dashboard
\r
17157 mountPath: "/var/lib/grafana/dashboards/istio/istio-workload-dashboard.json"
\r
17158 subPath: istio-workload-dashboard.json
\r
17160 - name: dashboards-istio-mixer-dashboard
\r
17161 mountPath: "/var/lib/grafana/dashboards/istio/mixer-dashboard.json"
\r
17162 subPath: mixer-dashboard.json
\r
17164 - name: dashboards-istio-pilot-dashboard
\r
17165 mountPath: "/var/lib/grafana/dashboards/istio/pilot-dashboard.json"
\r
17166 subPath: pilot-dashboard.json
\r
17169 mountPath: "/etc/grafana/provisioning/datasources/datasources.yaml"
\r
17170 subPath: datasources.yaml
\r
17172 mountPath: "/etc/grafana/provisioning/dashboards/dashboardproviders.yaml"
\r
17173 subPath: dashboardproviders.yaml
\r
17176 requiredDuringSchedulingIgnoredDuringExecution:
\r
17177 nodeSelectorTerms:
\r
17178 - matchExpressions:
\r
17179 - key: beta.kubernetes.io/arch
\r
17185 preferredDuringSchedulingIgnoredDuringExecution:
\r
17188 matchExpressions:
\r
17189 - key: beta.kubernetes.io/arch
\r
17195 matchExpressions:
\r
17196 - key: beta.kubernetes.io/arch
\r
17202 matchExpressions:
\r
17203 - key: beta.kubernetes.io/arch
\r
17210 name: istio-grafana
\r
17213 - name: dashboards-istio-galley-dashboard
\r
17215 name: istio-grafana-configuration-dashboards-galley-dashboard
\r
17216 - name: dashboards-istio-istio-mesh-dashboard
\r
17218 name: istio-grafana-configuration-dashboards-istio-mesh-dashboard
\r
17219 - name: dashboards-istio-istio-performance-dashboard
\r
17221 name: istio-grafana-configuration-dashboards-istio-performance-dashboard
\r
17222 - name: dashboards-istio-istio-service-dashboard
\r
17224 name: istio-grafana-configuration-dashboards-istio-service-dashboard
\r
17225 - name: dashboards-istio-istio-workload-dashboard
\r
17227 name: istio-grafana-configuration-dashboards-istio-workload-dashboard
\r
17228 - name: dashboards-istio-mixer-dashboard
\r
17230 name: istio-grafana-configuration-dashboards-mixer-dashboard
\r
17231 - name: dashboards-istio-pilot-dashboard
\r
17233 name: istio-grafana-configuration-dashboards-pilot-dashboard
\r
17236 # Source: istio/charts/kiali/templates/deployment.yaml
\r
17237 apiVersion: apps/v1
\r
17241 namespace: istio-system
\r
17261 sidecar.istio.io/inject: "false"
\r
17262 scheduler.alpha.kubernetes.io/critical-pod: ""
\r
17263 prometheus.io/scrape: "true"
\r
17264 prometheus.io/port: "9090"
\r
17266 serviceAccountName: kiali-service-account
\r
17268 - image: "lurenjia/kiali:v1.11.0"
\r
17269 imagePullPolicy: IfNotPresent
\r
17272 - "/opt/kiali/kiali"
\r
17274 - "/kiali-configuration/config.yaml"
\r
17278 - name: ACTIVE_NAMESPACE
\r
17281 fieldPath: metadata.namespace
\r
17283 - name: kiali-configuration
\r
17284 mountPath: "/kiali-configuration"
\r
17285 - name: kiali-secret
\r
17286 mountPath: "/kiali-secret"
\r
17292 - name: kiali-configuration
\r
17295 - name: kiali-secret
\r
17297 secretName: kiali
\r
17301 requiredDuringSchedulingIgnoredDuringExecution:
\r
17302 nodeSelectorTerms:
\r
17303 - matchExpressions:
\r
17304 - key: beta.kubernetes.io/arch
\r
17310 preferredDuringSchedulingIgnoredDuringExecution:
\r
17313 matchExpressions:
\r
17314 - key: beta.kubernetes.io/arch
\r
17320 matchExpressions:
\r
17321 - key: beta.kubernetes.io/arch
\r
17327 matchExpressions:
\r
17328 - key: beta.kubernetes.io/arch
\r
17334 # Source: istio/charts/mixer/templates/deployment.yaml
\r
17336 apiVersion: apps/v1
\r
17339 name: istio-policy
\r
17340 namespace: istio-system
\r
17352 maxUnavailable: 0
\r
17356 istio-mixer-type: policy
\r
17365 istio-mixer-type: policy
\r
17367 sidecar.istio.io/inject: "false"
\r
17369 serviceAccountName: istio-mixer-service-account
\r
17371 - name: istio-certs
\r
17373 secretName: istio.istio-mixer-service-account
\r
17375 - name: uds-socket
\r
17377 - name: policy-adapter-secret
\r
17379 secretName: policy-adapter-secret
\r
17383 requiredDuringSchedulingIgnoredDuringExecution:
\r
17384 nodeSelectorTerms:
\r
17385 - matchExpressions:
\r
17386 - key: beta.kubernetes.io/arch
\r
17392 preferredDuringSchedulingIgnoredDuringExecution:
\r
17395 matchExpressions:
\r
17396 - key: beta.kubernetes.io/arch
\r
17402 matchExpressions:
\r
17403 - key: beta.kubernetes.io/arch
\r
17409 matchExpressions:
\r
17410 - key: beta.kubernetes.io/arch
\r
17416 image: "iecedge/mixer-arm64:1.2.3"
\r
17417 imagePullPolicy: IfNotPresent
\r
17419 - containerPort: 15014
\r
17420 - containerPort: 42422
\r
17422 - --monitoringPort=15014
\r
17424 - unix:///sock/mixer.socket
\r
17425 - --log_output_level=default:info
\r
17426 - --configStoreURL=mcp://istio-galley.istio-system.svc:9901
\r
17427 - --configDefaultNamespace=istio-system
\r
17428 - --useAdapterCRDs=false
\r
17429 - --useTemplateCRDs=false
\r
17430 - --trace_zipkin_url=http://zipkin.istio-system:9411/api/v1/spans
\r
17433 value: "gctrace=1"
\r
17434 - name: GOMAXPROCS
\r
17442 - name: istio-certs
\r
17443 mountPath: /etc/certs
\r
17445 - name: uds-socket
\r
17451 initialDelaySeconds: 5
\r
17453 - name: istio-proxy
\r
17454 image: "iecedge/proxyv2-arm64:1.2.3"
\r
17455 imagePullPolicy: IfNotPresent
\r
17457 - containerPort: 9091
\r
17458 - containerPort: 15004
\r
17459 - containerPort: 15090
\r
17461 name: http-envoy-prom
\r
17465 - $(POD_NAMESPACE).svc.cluster.local
\r
17466 - --serviceCluster
\r
17469 - /etc/istio/proxy/envoy_policy.yaml.tmpl
\r
17470 - --controlPlaneAuthPolicy
\r
17477 fieldPath: metadata.name
\r
17478 - name: POD_NAMESPACE
\r
17482 fieldPath: metadata.namespace
\r
17483 - name: INSTANCE_IP
\r
17487 fieldPath: status.podIP
\r
17497 - name: istio-certs
\r
17498 mountPath: /etc/certs
\r
17500 - name: uds-socket
\r
17502 - name: policy-adapter-secret
\r
17503 mountPath: /var/run/secrets/istio.io/policy/adapter
\r
17507 apiVersion: apps/v1
\r
17510 name: istio-telemetry
\r
17511 namespace: istio-system
\r
17523 maxUnavailable: 0
\r
17527 istio-mixer-type: telemetry
\r
17536 istio-mixer-type: telemetry
\r
17538 sidecar.istio.io/inject: "false"
\r
17540 serviceAccountName: istio-mixer-service-account
\r
17542 - name: istio-certs
\r
17544 secretName: istio.istio-mixer-service-account
\r
17546 - name: uds-socket
\r
17548 - name: telemetry-adapter-secret
\r
17550 secretName: telemetry-adapter-secret
\r
17554 requiredDuringSchedulingIgnoredDuringExecution:
\r
17555 nodeSelectorTerms:
\r
17556 - matchExpressions:
\r
17557 - key: beta.kubernetes.io/arch
\r
17563 preferredDuringSchedulingIgnoredDuringExecution:
\r
17566 matchExpressions:
\r
17567 - key: beta.kubernetes.io/arch
\r
17573 matchExpressions:
\r
17574 - key: beta.kubernetes.io/arch
\r
17580 matchExpressions:
\r
17581 - key: beta.kubernetes.io/arch
\r
17587 image: "iecedge/mixer-arm64:1.2.3"
\r
17588 imagePullPolicy: IfNotPresent
\r
17590 - containerPort: 15014
\r
17591 - containerPort: 42422
\r
17593 - --monitoringPort=15014
\r
17595 - unix:///sock/mixer.socket
\r
17596 - --log_output_level=default:info
\r
17597 - --configStoreURL=mcp://istio-galley.istio-system.svc:9901
\r
17598 - --configDefaultNamespace=istio-system
\r
17599 - --useAdapterCRDs=false
\r
17600 - --useTemplateCRDs=false
\r
17601 - --trace_zipkin_url=http://zipkin.istio-system:9411/api/v1/spans
\r
17602 - --averageLatencyThreshold
\r
17604 - --loadsheddingMode
\r
17608 value: "gctrace=1"
\r
17609 - name: GOMAXPROCS
\r
17620 - name: istio-certs
\r
17621 mountPath: /etc/certs
\r
17623 - name: telemetry-adapter-secret
\r
17624 mountPath: /var/run/secrets/istio.io/telemetry/adapter
\r
17626 - name: uds-socket
\r
17632 initialDelaySeconds: 5
\r
17634 - name: istio-proxy
\r
17635 image: "iecedge/proxyv2-arm64:1.2.3"
\r
17636 imagePullPolicy: IfNotPresent
\r
17638 - containerPort: 9091
\r
17639 - containerPort: 15004
\r
17640 - containerPort: 15090
\r
17642 name: http-envoy-prom
\r
17646 - $(POD_NAMESPACE).svc.cluster.local
\r
17647 - --serviceCluster
\r
17648 - istio-telemetry
\r
17650 - /etc/istio/proxy/envoy_telemetry.yaml.tmpl
\r
17651 - --controlPlaneAuthPolicy
\r
17658 fieldPath: metadata.name
\r
17659 - name: POD_NAMESPACE
\r
17663 fieldPath: metadata.namespace
\r
17664 - name: INSTANCE_IP
\r
17668 fieldPath: status.podIP
\r
17678 - name: istio-certs
\r
17679 mountPath: /etc/certs
\r
17681 - name: uds-socket
\r
17687 # Source: istio/charts/pilot/templates/deployment.yaml
\r
17688 apiVersion: apps/v1
\r
17691 name: istio-pilot
\r
17692 namespace: istio-system
\r
17693 # TODO: default template doesn't have this, which one is right ?
\r
17701 checksum/config-volume: f8da08b6b8c170dde721efd680270b2901e750d4aa186ebb6c22bef5b78a43f9
\r
17707 maxUnavailable: 0
\r
17720 sidecar.istio.io/inject: "false"
\r
17722 serviceAccountName: istio-pilot-service-account
\r
17724 - name: discovery
\r
17725 image: "iecedge/pilot-arm64:1.2.3"
\r
17726 imagePullPolicy: IfNotPresent
\r
17729 - --monitoringAddr=:15014
\r
17730 - --log_output_level=default:info
\r
17733 - --secureGrpcAddr
\r
17735 - --keepaliveMaxServerConnectionAge
\r
17738 - containerPort: 8080
\r
17739 - containerPort: 15010
\r
17744 initialDelaySeconds: 5
\r
17745 periodSeconds: 30
\r
17746 timeoutSeconds: 5
\r
17752 fieldPath: metadata.name
\r
17753 - name: POD_NAMESPACE
\r
17757 fieldPath: metadata.namespace
\r
17759 value: "gctrace=1"
\r
17760 - name: PILOT_PUSH_THROTTLE
\r
17762 - name: PILOT_TRACE_SAMPLING
\r
17764 - name: PILOT_DISABLE_XDS_MARSHALING_TO_ANY
\r
17772 - name: config-volume
\r
17773 mountPath: /etc/istio/config
\r
17774 - name: istio-certs
\r
17775 mountPath: /etc/certs
\r
17777 - name: istio-proxy
\r
17778 image: "iecedge/proxyv2-arm64:1.2.3"
\r
17779 imagePullPolicy: IfNotPresent
\r
17781 - containerPort: 15003
\r
17782 - containerPort: 15005
\r
17783 - containerPort: 15007
\r
17784 - containerPort: 15011
\r
17788 - $(POD_NAMESPACE).svc.cluster.local
\r
17789 - --serviceCluster
\r
17792 - /etc/istio/proxy/envoy_pilot.yaml.tmpl
\r
17793 - --controlPlaneAuthPolicy
\r
17800 fieldPath: metadata.name
\r
17801 - name: POD_NAMESPACE
\r
17805 fieldPath: metadata.namespace
\r
17806 - name: INSTANCE_IP
\r
17810 fieldPath: status.podIP
\r
17820 - name: istio-certs
\r
17821 mountPath: /etc/certs
\r
17824 - name: config-volume
\r
17827 - name: istio-certs
\r
17829 secretName: istio.istio-pilot-service-account
\r
17833 requiredDuringSchedulingIgnoredDuringExecution:
\r
17834 nodeSelectorTerms:
\r
17835 - matchExpressions:
\r
17836 - key: beta.kubernetes.io/arch
\r
17842 preferredDuringSchedulingIgnoredDuringExecution:
\r
17845 matchExpressions:
\r
17846 - key: beta.kubernetes.io/arch
\r
17852 matchExpressions:
\r
17853 - key: beta.kubernetes.io/arch
\r
17859 matchExpressions:
\r
17860 - key: beta.kubernetes.io/arch
\r
17866 # Source: istio/charts/prometheus/templates/deployment.yaml
\r
17867 # TODO: the original template has service account, roles, etc
\r
17868 apiVersion: apps/v1
\r
17872 namespace: istio-system
\r
17875 chart: prometheus
\r
17887 chart: prometheus
\r
17891 sidecar.istio.io/inject: "false"
\r
17893 serviceAccountName: prometheus
\r
17895 - name: prometheus
\r
17896 image: "carlosedp/prometheus:v2.8.0-arm64"
\r
17897 imagePullPolicy: IfNotPresent
\r
17899 - '--storage.tsdb.retention=6h'
\r
17900 - '--config.file=/etc/prometheus/prometheus.yml'
\r
17902 - containerPort: 9090
\r
17917 - name: config-volume
\r
17918 mountPath: /etc/prometheus
\r
17919 - mountPath: /etc/istio-certs
\r
17920 name: istio-certs
\r
17922 - name: config-volume
\r
17925 - name: istio-certs
\r
17928 secretName: istio.default
\r
17931 requiredDuringSchedulingIgnoredDuringExecution:
\r
17932 nodeSelectorTerms:
\r
17933 - matchExpressions:
\r
17934 - key: beta.kubernetes.io/arch
\r
17940 preferredDuringSchedulingIgnoredDuringExecution:
\r
17943 matchExpressions:
\r
17944 - key: beta.kubernetes.io/arch
\r
17950 matchExpressions:
\r
17951 - key: beta.kubernetes.io/arch
\r
17957 matchExpressions:
\r
17958 - key: beta.kubernetes.io/arch
\r
17964 # Source: istio/charts/security/templates/deployment.yaml
\r
17965 # istio CA watching all namespaces
\r
17966 apiVersion: apps/v1
\r
17969 name: istio-citadel
\r
17970 namespace: istio-system
\r
17985 maxUnavailable: 0
\r
17995 sidecar.istio.io/inject: "false"
\r
17997 serviceAccountName: istio-citadel-service-account
\r
18000 image: "iecedge/citadel-arm64:1.2.3"
\r
18001 imagePullPolicy: IfNotPresent
\r
18003 - --append-dns-names=true
\r
18004 - --grpc-port=8060
\r
18005 - --citadel-storage-namespace=istio-system
\r
18006 - --custom-dns-names=istio-pilot-service-account.istio-system:istio-pilot.istio-system
\r
18007 - --monitoring-port=15014
\r
18008 - --self-signed-ca=true
\r
18009 - --workload-cert-ttl=2160h
\r
18016 requiredDuringSchedulingIgnoredDuringExecution:
\r
18017 nodeSelectorTerms:
\r
18018 - matchExpressions:
\r
18019 - key: beta.kubernetes.io/arch
\r
18025 preferredDuringSchedulingIgnoredDuringExecution:
\r
18028 matchExpressions:
\r
18029 - key: beta.kubernetes.io/arch
\r
18035 matchExpressions:
\r
18036 - key: beta.kubernetes.io/arch
\r
18042 matchExpressions:
\r
18043 - key: beta.kubernetes.io/arch
\r
18049 # Source: istio/charts/sidecarInjectorWebhook/templates/deployment.yaml
\r
18050 apiVersion: apps/v1
\r
18053 name: istio-sidecar-injector
\r
18054 namespace: istio-system
\r
18056 app: sidecarInjectorWebhook
\r
18057 chart: sidecarInjectorWebhook
\r
18060 istio: sidecar-injector
\r
18065 istio: sidecar-injector
\r
18069 maxUnavailable: 0
\r
18073 app: sidecarInjectorWebhook
\r
18074 chart: sidecarInjectorWebhook
\r
18077 istio: sidecar-injector
\r
18079 sidecar.istio.io/inject: "false"
\r
18081 serviceAccountName: istio-sidecar-injector-service-account
\r
18083 - name: sidecar-injector-webhook
\r
18084 image: "iecedge/sidecar_injector-arm64:1.2.3"
\r
18085 imagePullPolicy: IfNotPresent
\r
18087 - --caCertFile=/etc/istio/certs/root-cert.pem
\r
18088 - --tlsCertFile=/etc/istio/certs/cert-chain.pem
\r
18089 - --tlsKeyFile=/etc/istio/certs/key.pem
\r
18090 - --injectConfig=/etc/istio/inject/config
\r
18091 - --meshConfig=/etc/istio/config/mesh
\r
18092 - --healthCheckInterval=2s
\r
18093 - --healthCheckFile=/health
\r
18095 - name: config-volume
\r
18096 mountPath: /etc/istio/config
\r
18099 mountPath: /etc/istio/certs
\r
18101 - name: inject-config
\r
18102 mountPath: /etc/istio/inject
\r
18107 - /usr/local/bin/sidecar-injector
\r
18109 - --probe-path=/health
\r
18111 initialDelaySeconds: 4
\r
18116 - /usr/local/bin/sidecar-injector
\r
18118 - --probe-path=/health
\r
18120 initialDelaySeconds: 4
\r
18127 - name: config-volume
\r
18132 secretName: istio.istio-sidecar-injector-service-account
\r
18133 - name: inject-config
\r
18135 name: istio-sidecar-injector
\r
18143 requiredDuringSchedulingIgnoredDuringExecution:
\r
18144 nodeSelectorTerms:
\r
18145 - matchExpressions:
\r
18146 - key: beta.kubernetes.io/arch
\r
18152 preferredDuringSchedulingIgnoredDuringExecution:
\r
18155 matchExpressions:
\r
18156 - key: beta.kubernetes.io/arch
\r
18162 matchExpressions:
\r
18163 - key: beta.kubernetes.io/arch
\r
18169 matchExpressions:
\r
18170 - key: beta.kubernetes.io/arch
\r
18176 # Source: istio/charts/tracing/templates/deployment-jaeger.yaml
\r
18179 apiVersion: apps/v1
\r
18182 name: istio-tracing
\r
18183 namespace: istio-system
\r
18201 sidecar.istio.io/inject: "false"
\r
18202 prometheus.io/scrape: "true"
\r
18203 prometheus.io/port: "16686"
\r
18204 prometheus.io/path: "/jaeger/metrics"
\r
18208 image: "desaegher/jaeger-all-in-one:arm64"
\r
18209 imagePullPolicy: IfNotPresent
\r
18211 - containerPort: 9411
\r
18212 - containerPort: 16686
\r
18213 - containerPort: 5775
\r
18215 - containerPort: 6831
\r
18217 - containerPort: 6832
\r
18220 - name: POD_NAMESPACE
\r
18224 fieldPath: metadata.namespace
\r
18225 - name: COLLECTOR_ZIPKIN_HTTP_PORT
\r
18227 - name: MEMORY_MAX_TRACES
\r
18229 - name: QUERY_BASE_PATH
\r
18245 requiredDuringSchedulingIgnoredDuringExecution:
\r
18246 nodeSelectorTerms:
\r
18247 - matchExpressions:
\r
18248 - key: beta.kubernetes.io/arch
\r
18254 preferredDuringSchedulingIgnoredDuringExecution:
\r
18257 matchExpressions:
\r
18258 - key: beta.kubernetes.io/arch
\r
18264 matchExpressions:
\r
18265 - key: beta.kubernetes.io/arch
\r
18271 matchExpressions:
\r
18272 - key: beta.kubernetes.io/arch
\r
18279 # Source: istio/charts/tracing/templates/service-jaeger.yaml
\r
18285 name: jaeger-services
\r
18286 namespace: istio-system
\r
18296 name: jaeger-query
\r
18297 namespace: istio-system
\r
18301 jaeger-infra: jaeger-service
\r
18307 - name: query-http
\r
18310 targetPort: 16686
\r
18316 name: jaeger-collector
\r
18317 namespace: istio-system
\r
18320 jaeger-infra: collector-service
\r
18326 - name: jaeger-collector-tchannel
\r
18329 targetPort: 14267
\r
18330 - name: jaeger-collector-http
\r
18332 targetPort: 14268
\r
18340 name: jaeger-agent
\r
18341 namespace: istio-system
\r
18344 jaeger-infra: agent-service
\r
18350 - name: agent-zipkin-thrift
\r
18354 - name: agent-compact
\r
18358 - name: agent-binary
\r
18369 # Source: istio/charts/tracing/templates/service.yaml
\r
18373 name: tracing-services
\r
18374 namespace: istio-system
\r
18385 namespace: istio-system
\r
18404 namespace: istio-system
\r
18413 - name: http-query
\r
18417 targetPort: 16686
\r
18423 # Source: istio/charts/sidecarInjectorWebhook/templates/mutatingwebhook.yaml
\r
18424 apiVersion: admissionregistration.k8s.io/v1beta1
\r
18425 kind: MutatingWebhookConfiguration
\r
18427 name: istio-sidecar-injector
\r
18429 app: sidecarInjectorWebhook
\r
18430 chart: sidecarInjectorWebhook
\r
18434 - name: sidecar-injector.istio.io
\r
18437 name: istio-sidecar-injector
\r
18438 namespace: istio-system
\r
18442 - operations: [ "CREATE" ]
\r
18444 apiVersions: ["v1"]
\r
18445 resources: ["pods"]
\r
18446 failurePolicy: Fail
\r
18447 namespaceSelector:
\r
18449 istio-injection: enabled
\r
18453 # Source: istio/charts/galley/templates/poddisruptionbudget.yaml
\r
18455 apiVersion: policy/v1beta1
\r
18456 kind: PodDisruptionBudget
\r
18458 name: istio-galley
\r
18459 namespace: istio-system
\r
18476 # Source: istio/charts/gateways/templates/poddisruptionbudget.yaml
\r
18478 apiVersion: policy/v1beta1
\r
18479 kind: PodDisruptionBudget
\r
18481 name: istio-egressgateway
\r
18482 namespace: istio-system
\r
18487 app: istio-egressgateway
\r
18488 istio: egressgateway
\r
18495 app: istio-egressgateway
\r
18496 istio: egressgateway
\r
18498 apiVersion: policy/v1beta1
\r
18499 kind: PodDisruptionBudget
\r
18501 name: istio-ingressgateway
\r
18502 namespace: istio-system
\r
18507 app: istio-ingressgateway
\r
18508 istio: ingressgateway
\r
18515 app: istio-ingressgateway
\r
18516 istio: ingressgateway
\r
18520 # Source: istio/charts/mixer/templates/poddisruptionbudget.yaml
\r
18522 apiVersion: policy/v1beta1
\r
18523 kind: PodDisruptionBudget
\r
18525 name: istio-policy
\r
18526 namespace: istio-system
\r
18534 istio-mixer-type: policy
\r
18543 istio-mixer-type: policy
\r
18545 apiVersion: policy/v1beta1
\r
18546 kind: PodDisruptionBudget
\r
18548 name: istio-telemetry
\r
18549 namespace: istio-system
\r
18557 istio-mixer-type: telemetry
\r
18566 istio-mixer-type: telemetry
\r
18570 # Source: istio/charts/pilot/templates/poddisruptionbudget.yaml
\r
18572 apiVersion: policy/v1beta1
\r
18573 kind: PodDisruptionBudget
\r
18575 name: istio-pilot
\r
18576 namespace: istio-system
\r
18593 # Source: istio/charts/sidecarInjectorWebhook/templates/poddisruptionbudget.yaml
\r
18595 apiVersion: policy/v1beta1
\r
18596 kind: PodDisruptionBudget
\r
18598 name: istio-sidecar-injector
\r
18599 namespace: istio-system
\r
18601 app: sidecarInjectorWebhook
\r
18603 istio: sidecar-injector
\r
18609 app: sidecarInjectorWebhook
\r
18611 istio: sidecar-injector
\r
18613 # Source: istio/charts/galley/templates/validatingwebhookconfiguration.yaml.tpl
\r
18617 # Source: istio/charts/gateways/templates/autoscale.yaml
\r
18621 # Source: istio/charts/gateways/templates/preconfigured.yaml
\r
18625 # Source: istio/charts/grafana/templates/grafana-ports-mtls.yaml
\r
18629 # Source: istio/charts/grafana/templates/ingress.yaml
\r
18632 # Source: istio/charts/grafana/templates/pvc.yaml
\r
18636 # Source: istio/charts/grafana/templates/tests/test-grafana-connection.yaml
\r
18640 # Source: istio/charts/kiali/templates/ingress.yaml
\r
18643 # Source: istio/charts/kiali/templates/tests/test-kiali-connection.yaml
\r
18647 # Source: istio/charts/mixer/templates/autoscale.yaml
\r
18651 # Source: istio/charts/pilot/templates/autoscale.yaml
\r
18655 # Source: istio/charts/pilot/templates/meshexpansion.yaml
\r
18660 # Source: istio/charts/prometheus/templates/ingress.yaml
\r
18663 # Source: istio/charts/prometheus/templates/tests/test-prometheus-connection.yaml
\r
18667 # Source: istio/charts/security/templates/enable-mesh-mtls.yaml
\r
18671 # Source: istio/charts/security/templates/enable-mesh-permissive.yaml
\r
18675 # Source: istio/charts/security/templates/meshexpansion.yaml
\r
18679 # Source: istio/charts/security/templates/tests/test-citadel-connection.yaml
\r
18683 # Source: istio/charts/tracing/templates/deployment-zipkin.yaml
\r
18687 # Source: istio/charts/tracing/templates/ingress.yaml
\r
18690 # Source: istio/charts/tracing/templates/tests/test-tracing-connection.yaml
\r
18694 # Source: istio/templates/endpoints.yaml
\r
18698 # Source: istio/templates/install-custom-resources.sh.tpl
\r
18702 # Source: istio/templates/service.yaml
\r
18706 # Source: istio/charts/mixer/templates/config.yaml
\r
18708 apiVersion: "config.istio.io/v1alpha2"
\r
18709 kind: attributemanifest
\r
18712 namespace: istio-system
\r
18721 valueType: IP_ADDRESS
\r
18723 valueType: STRING
\r
18725 valueType: STRING
\r
18727 valueType: STRING_MAP
\r
18729 valueType: STRING
\r
18731 valueType: STRING
\r
18733 valueType: STRING
\r
18735 valueType: STRING
\r
18736 request.url_path:
\r
18737 valueType: STRING
\r
18738 request.query_params:
\r
18739 valueType: STRING_MAP
\r
18741 valueType: STRING
\r
18743 valueType: STRING
\r
18745 valueType: STRING
\r
18746 request.total_size:
\r
18751 valueType: TIMESTAMP
\r
18752 request.useragent:
\r
18753 valueType: STRING
\r
18756 response.duration:
\r
18757 valueType: DURATION
\r
18758 response.headers:
\r
18759 valueType: STRING_MAP
\r
18760 response.total_size:
\r
18765 valueType: TIMESTAMP
\r
18766 response.grpc_status:
\r
18767 valueType: STRING
\r
18768 response.grpc_message:
\r
18769 valueType: STRING
\r
18771 valueType: STRING
\r
18772 source.user: # DEPRECATED
\r
18773 valueType: STRING
\r
18774 source.principal:
\r
18775 valueType: STRING
\r
18777 valueType: STRING
\r
18778 destination.principal:
\r
18779 valueType: STRING
\r
18780 destination.port:
\r
18782 connection.event:
\r
18783 valueType: STRING
\r
18785 valueType: STRING
\r
18786 connection.received.bytes:
\r
18788 connection.received.bytes_total:
\r
18790 connection.sent.bytes:
\r
18792 connection.sent.bytes_total:
\r
18794 connection.duration:
\r
18795 valueType: DURATION
\r
18798 connection.requested_server_name:
\r
18799 valueType: STRING
\r
18800 context.protocol:
\r
18801 valueType: STRING
\r
18802 context.proxy_error_code:
\r
18803 valueType: STRING
\r
18804 context.timestamp:
\r
18805 valueType: TIMESTAMP
\r
18807 valueType: TIMESTAMP
\r
18808 # Deprecated, kept for compatibility
\r
18809 context.reporter.local:
\r
18811 context.reporter.kind:
\r
18812 valueType: STRING
\r
18813 context.reporter.uid:
\r
18814 valueType: STRING
\r
18816 valueType: STRING
\r
18818 valueType: STRING
\r
18820 valueType: STRING
\r
18822 valueType: STRING
\r
18823 request.auth.principal:
\r
18824 valueType: STRING
\r
18825 request.auth.audiences:
\r
18826 valueType: STRING
\r
18827 request.auth.presenter:
\r
18828 valueType: STRING
\r
18829 request.auth.claims:
\r
18830 valueType: STRING_MAP
\r
18831 request.auth.raw_claims:
\r
18832 valueType: STRING
\r
18834 valueType: STRING
\r
18835 rbac.permissive.response_code:
\r
18836 valueType: STRING
\r
18837 rbac.permissive.effective_policy_id:
\r
18838 valueType: STRING
\r
18839 check.error_code:
\r
18841 check.error_message:
\r
18842 valueType: STRING
\r
18849 apiVersion: "config.istio.io/v1alpha2"
\r
18850 kind: attributemanifest
\r
18853 namespace: istio-system
\r
18862 valueType: IP_ADDRESS
\r
18864 valueType: STRING_MAP
\r
18866 valueType: STRING_MAP
\r
18868 valueType: STRING
\r
18869 source.namespace:
\r
18870 valueType: STRING
\r
18872 valueType: STRING
\r
18873 source.serviceAccount:
\r
18874 valueType: STRING
\r
18876 valueType: STRING
\r
18877 source.workload.uid:
\r
18878 valueType: STRING
\r
18879 source.workload.name:
\r
18880 valueType: STRING
\r
18881 source.workload.namespace:
\r
18882 valueType: STRING
\r
18884 valueType: IP_ADDRESS
\r
18885 destination.labels:
\r
18886 valueType: STRING_MAP
\r
18887 destination.metadata:
\r
18888 valueType: STRING_MAP
\r
18889 destination.owner:
\r
18890 valueType: STRING
\r
18891 destination.name:
\r
18892 valueType: STRING
\r
18893 destination.container.name:
\r
18894 valueType: STRING
\r
18895 destination.namespace:
\r
18896 valueType: STRING
\r
18897 destination.service.uid:
\r
18898 valueType: STRING
\r
18899 destination.service.name:
\r
18900 valueType: STRING
\r
18901 destination.service.namespace:
\r
18902 valueType: STRING
\r
18903 destination.service.host:
\r
18904 valueType: STRING
\r
18905 destination.serviceAccount:
\r
18906 valueType: STRING
\r
18907 destination.workload.uid:
\r
18908 valueType: STRING
\r
18909 destination.workload.name:
\r
18910 valueType: STRING
\r
18911 destination.workload.namespace:
\r
18912 valueType: STRING
\r
18914 apiVersion: "config.istio.io/v1alpha2"
\r
18918 namespace: istio-system
\r
18925 compiledAdapter: stdio
\r
18927 outputAsJson: true
\r
18929 apiVersion: "config.istio.io/v1alpha2"
\r
18933 namespace: istio-system
\r
18940 compiledTemplate: logentry
\r
18942 severity: '"Info"'
\r
18943 timestamp: request.time
\r
18945 sourceIp: source.ip | ip("0.0.0.0")
\r
18946 sourceApp: source.labels["app"] | ""
\r
18947 sourcePrincipal: source.principal | ""
\r
18948 sourceName: source.name | ""
\r
18949 sourceWorkload: source.workload.name | ""
\r
18950 sourceNamespace: source.namespace | ""
\r
18951 sourceOwner: source.owner | ""
\r
18952 destinationApp: destination.labels["app"] | ""
\r
18953 destinationIp: destination.ip | ip("0.0.0.0")
\r
18954 destinationServiceHost: destination.service.host | ""
\r
18955 destinationWorkload: destination.workload.name | ""
\r
18956 destinationName: destination.name | ""
\r
18957 destinationNamespace: destination.namespace | ""
\r
18958 destinationOwner: destination.owner | ""
\r
18959 destinationPrincipal: destination.principal | ""
\r
18960 apiClaims: request.auth.raw_claims | ""
\r
18961 apiKey: request.api_key | request.headers["x-api-key"] | ""
\r
18962 protocol: request.scheme | context.protocol | "http"
\r
18963 method: request.method | ""
\r
18964 url: request.path | ""
\r
18965 responseCode: response.code | 0
\r
18966 responseFlags: context.proxy_error_code | ""
\r
18967 responseSize: response.size | 0
\r
18968 permissiveResponseCode: rbac.permissive.response_code | "none"
\r
18969 permissiveResponsePolicyID: rbac.permissive.effective_policy_id | "none"
\r
18970 requestSize: request.size | 0
\r
18971 requestId: request.headers["x-request-id"] | ""
\r
18972 clientTraceId: request.headers["x-client-trace-id"] | ""
\r
18973 latency: response.duration | "0ms"
\r
18974 connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none"))
\r
18975 requestedServerName: connection.requested_server_name | ""
\r
18976 userAgent: request.useragent | ""
\r
18977 responseTimestamp: response.time
\r
18978 receivedBytes: request.total_size | 0
\r
18979 sentBytes: response.total_size | 0
\r
18980 referer: request.referer | ""
\r
18981 httpAuthority: request.headers[":authority"] | request.host | ""
\r
18982 xForwardedFor: request.headers["x-forwarded-for"] | "0.0.0.0"
\r
18983 reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination")
\r
18984 grpcStatus: response.grpc_status | ""
\r
18985 grpcMessage: response.grpc_message | ""
\r
18986 monitored_resource_type: '"global"'
\r
18988 apiVersion: "config.istio.io/v1alpha2"
\r
18991 name: tcpaccesslog
\r
18992 namespace: istio-system
\r
18999 compiledTemplate: logentry
\r
19001 severity: '"Info"'
\r
19002 timestamp: context.time | timestamp("2017-01-01T00:00:00Z")
\r
19004 connectionEvent: connection.event | ""
\r
19005 sourceIp: source.ip | ip("0.0.0.0")
\r
19006 sourceApp: source.labels["app"] | ""
\r
19007 sourcePrincipal: source.principal | ""
\r
19008 sourceName: source.name | ""
\r
19009 sourceWorkload: source.workload.name | ""
\r
19010 sourceNamespace: source.namespace | ""
\r
19011 sourceOwner: source.owner | ""
\r
19012 destinationApp: destination.labels["app"] | ""
\r
19013 destinationIp: destination.ip | ip("0.0.0.0")
\r
19014 destinationServiceHost: destination.service.host | ""
\r
19015 destinationWorkload: destination.workload.name | ""
\r
19016 destinationName: destination.name | ""
\r
19017 destinationNamespace: destination.namespace | ""
\r
19018 destinationOwner: destination.owner | ""
\r
19019 destinationPrincipal: destination.principal | ""
\r
19020 protocol: context.protocol | "tcp"
\r
19021 connectionDuration: connection.duration | "0ms"
\r
19022 connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none"))
\r
19023 requestedServerName: connection.requested_server_name | ""
\r
19024 receivedBytes: connection.received.bytes | 0
\r
19025 sentBytes: connection.sent.bytes | 0
\r
19026 totalReceivedBytes: connection.received.bytes_total | 0
\r
19027 totalSentBytes: connection.sent.bytes_total | 0
\r
19028 reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination")
\r
19029 responseFlags: context.proxy_error_code | ""
\r
19030 monitored_resource_type: '"global"'
\r
19032 apiVersion: "config.istio.io/v1alpha2"
\r
19036 namespace: istio-system
\r
19043 match: context.protocol == "http" || context.protocol == "grpc"
\r
19049 apiVersion: "config.istio.io/v1alpha2"
\r
19053 namespace: istio-system
\r
19060 match: context.protocol == "tcp"
\r
19066 apiVersion: "config.istio.io/v1alpha2"
\r
19069 name: requestcount
\r
19070 namespace: istio-system
\r
19077 compiledTemplate: metric
\r
19081 reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination")
\r
19082 source_workload: source.workload.name | "unknown"
\r
19083 source_workload_namespace: source.workload.namespace | "unknown"
\r
19084 source_principal: source.principal | "unknown"
\r
19085 source_app: source.labels["app"] | "unknown"
\r
19086 source_version: source.labels["version"] | "unknown"
\r
19087 destination_workload: destination.workload.name | "unknown"
\r
19088 destination_workload_namespace: destination.workload.namespace | "unknown"
\r
19089 destination_principal: destination.principal | "unknown"
\r
19090 destination_app: destination.labels["app"] | "unknown"
\r
19091 destination_version: destination.labels["version"] | "unknown"
\r
19092 destination_service: destination.service.host | "unknown"
\r
19093 destination_service_name: destination.service.name | "unknown"
\r
19094 destination_service_namespace: destination.service.namespace | "unknown"
\r
19095 request_protocol: api.protocol | context.protocol | "unknown"
\r
19096 response_code: response.code | 200
\r
19097 response_flags: context.proxy_error_code | "-"
\r
19098 permissive_response_code: rbac.permissive.response_code | "none"
\r
19099 permissive_response_policyid: rbac.permissive.effective_policy_id | "none"
\r
19100 connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none"))
\r
19101 monitored_resource_type: '"UNSPECIFIED"'
\r
19103 apiVersion: "config.istio.io/v1alpha2"
\r
19106 name: requestduration
\r
19107 namespace: istio-system
\r
19114 compiledTemplate: metric
\r
19116 value: response.duration | "0ms"
\r
19118 reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination")
\r
19119 source_workload: source.workload.name | "unknown"
\r
19120 source_workload_namespace: source.workload.namespace | "unknown"
\r
19121 source_principal: source.principal | "unknown"
\r
19122 source_app: source.labels["app"] | "unknown"
\r
19123 source_version: source.labels["version"] | "unknown"
\r
19124 destination_workload: destination.workload.name | "unknown"
\r
19125 destination_workload_namespace: destination.workload.namespace | "unknown"
\r
19126 destination_principal: destination.principal | "unknown"
\r
19127 destination_app: destination.labels["app"] | "unknown"
\r
19128 destination_version: destination.labels["version"] | "unknown"
\r
19129 destination_service: destination.service.host | "unknown"
\r
19130 destination_service_name: destination.service.name | "unknown"
\r
19131 destination_service_namespace: destination.service.namespace | "unknown"
\r
19132 request_protocol: api.protocol | context.protocol | "unknown"
\r
19133 response_code: response.code | 200
\r
19134 response_flags: context.proxy_error_code | "-"
\r
19135 permissive_response_code: rbac.permissive.response_code | "none"
\r
19136 permissive_response_policyid: rbac.permissive.effective_policy_id | "none"
\r
19137 connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none"))
\r
19138 monitored_resource_type: '"UNSPECIFIED"'
\r
19140 apiVersion: "config.istio.io/v1alpha2"
\r
19143 name: requestsize
\r
19144 namespace: istio-system
\r
19151 compiledTemplate: metric
\r
19153 value: request.size | 0
\r
19155 reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination")
\r
19156 source_workload: source.workload.name | "unknown"
\r
19157 source_workload_namespace: source.workload.namespace | "unknown"
\r
19158 source_principal: source.principal | "unknown"
\r
19159 source_app: source.labels["app"] | "unknown"
\r
19160 source_version: source.labels["version"] | "unknown"
\r
19161 destination_workload: destination.workload.name | "unknown"
\r
19162 destination_workload_namespace: destination.workload.namespace | "unknown"
\r
19163 destination_principal: destination.principal | "unknown"
\r
19164 destination_app: destination.labels["app"] | "unknown"
\r
19165 destination_version: destination.labels["version"] | "unknown"
\r
19166 destination_service: destination.service.host | "unknown"
\r
19167 destination_service_name: destination.service.name | "unknown"
\r
19168 destination_service_namespace: destination.service.namespace | "unknown"
\r
19169 request_protocol: api.protocol | context.protocol | "unknown"
\r
19170 response_code: response.code | 200
\r
19171 response_flags: context.proxy_error_code | "-"
\r
19172 permissive_response_code: rbac.permissive.response_code | "none"
\r
19173 permissive_response_policyid: rbac.permissive.effective_policy_id | "none"
\r
19174 connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none"))
\r
19175 monitored_resource_type: '"UNSPECIFIED"'
\r
19177 apiVersion: "config.istio.io/v1alpha2"
\r
19180 name: responsesize
\r
19181 namespace: istio-system
\r
19188 compiledTemplate: metric
\r
19190 value: response.size | 0
\r
19192 reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination")
\r
19193 source_workload: source.workload.name | "unknown"
\r
19194 source_workload_namespace: source.workload.namespace | "unknown"
\r
19195 source_principal: source.principal | "unknown"
\r
19196 source_app: source.labels["app"] | "unknown"
\r
19197 source_version: source.labels["version"] | "unknown"
\r
19198 destination_workload: destination.workload.name | "unknown"
\r
19199 destination_workload_namespace: destination.workload.namespace | "unknown"
\r
19200 destination_principal: destination.principal | "unknown"
\r
19201 destination_app: destination.labels["app"] | "unknown"
\r
19202 destination_version: destination.labels["version"] | "unknown"
\r
19203 destination_service: destination.service.host | "unknown"
\r
19204 destination_service_name: destination.service.name | "unknown"
\r
19205 destination_service_namespace: destination.service.namespace | "unknown"
\r
19206 request_protocol: api.protocol | context.protocol | "unknown"
\r
19207 response_code: response.code | 200
\r
19208 response_flags: context.proxy_error_code | "-"
\r
19209 permissive_response_code: rbac.permissive.response_code | "none"
\r
19210 permissive_response_policyid: rbac.permissive.effective_policy_id | "none"
\r
19211 connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none"))
\r
19212 monitored_resource_type: '"UNSPECIFIED"'
\r
19214 apiVersion: "config.istio.io/v1alpha2"
\r
19217 name: tcpbytesent
\r
19218 namespace: istio-system
\r
19225 compiledTemplate: metric
\r
19227 value: connection.sent.bytes | 0
\r
19229 reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination")
\r
19230 source_workload: source.workload.name | "unknown"
\r
19231 source_workload_namespace: source.workload.namespace | "unknown"
\r
19232 source_principal: source.principal | "unknown"
\r
19233 source_app: source.labels["app"] | "unknown"
\r
19234 source_version: source.labels["version"] | "unknown"
\r
19235 destination_workload: destination.workload.name | "unknown"
\r
19236 destination_workload_namespace: destination.workload.namespace | "unknown"
\r
19237 destination_principal: destination.principal | "unknown"
\r
19238 destination_app: destination.labels["app"] | "unknown"
\r
19239 destination_version: destination.labels["version"] | "unknown"
\r
19240 destination_service: destination.service.host | "unknown"
\r
19241 destination_service_name: destination.service.name | "unknown"
\r
19242 destination_service_namespace: destination.service.namespace | "unknown"
\r
19243 connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none"))
\r
19244 response_flags: context.proxy_error_code | "-"
\r
19245 monitored_resource_type: '"UNSPECIFIED"'
\r
19247 apiVersion: "config.istio.io/v1alpha2"
\r
19250 name: tcpbytereceived
\r
19251 namespace: istio-system
\r
19258 compiledTemplate: metric
\r
19260 value: connection.received.bytes | 0
\r
19262 reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination")
\r
19263 source_workload: source.workload.name | "unknown"
\r
19264 source_workload_namespace: source.workload.namespace | "unknown"
\r
19265 source_principal: source.principal | "unknown"
\r
19266 source_app: source.labels["app"] | "unknown"
\r
19267 source_version: source.labels["version"] | "unknown"
\r
19268 destination_workload: destination.workload.name | "unknown"
\r
19269 destination_workload_namespace: destination.workload.namespace | "unknown"
\r
19270 destination_principal: destination.principal | "unknown"
\r
19271 destination_app: destination.labels["app"] | "unknown"
\r
19272 destination_version: destination.labels["version"] | "unknown"
\r
19273 destination_service: destination.service.host | "unknown"
\r
19274 destination_service_name: destination.service.name | "unknown"
\r
19275 destination_service_namespace: destination.service.namespace | "unknown"
\r
19276 connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none"))
\r
19277 response_flags: context.proxy_error_code | "-"
\r
19278 monitored_resource_type: '"UNSPECIFIED"'
\r
19280 apiVersion: "config.istio.io/v1alpha2"
\r
19283 name: tcpconnectionsopened
\r
19284 namespace: istio-system
\r
19291 compiledTemplate: metric
\r
19295 reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination")
\r
19296 source_workload: source.workload.name | "unknown"
\r
19297 source_workload_namespace: source.workload.namespace | "unknown"
\r
19298 source_principal: source.principal | "unknown"
\r
19299 source_app: source.labels["app"] | "unknown"
\r
19300 source_version: source.labels["version"] | "unknown"
\r
19301 destination_workload: destination.workload.name | "unknown"
\r
19302 destination_workload_namespace: destination.workload.namespace | "unknown"
\r
19303 destination_principal: destination.principal | "unknown"
\r
19304 destination_app: destination.labels["app"] | "unknown"
\r
19305 destination_version: destination.labels["version"] | "unknown"
\r
19306 destination_service: destination.service.name | "unknown"
\r
19307 destination_service_name: destination.service.name | "unknown"
\r
19308 destination_service_namespace: destination.service.namespace | "unknown"
\r
19309 connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none"))
\r
19310 response_flags: context.proxy_error_code | "-"
\r
19311 monitored_resource_type: '"UNSPECIFIED"'
\r
19313 apiVersion: "config.istio.io/v1alpha2"
\r
19316 name: tcpconnectionsclosed
\r
19317 namespace: istio-system
\r
19324 compiledTemplate: metric
\r
19328 reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination")
\r
19329 source_workload: source.workload.name | "unknown"
\r
19330 source_workload_namespace: source.workload.namespace | "unknown"
\r
19331 source_principal: source.principal | "unknown"
\r
19332 source_app: source.labels["app"] | "unknown"
\r
19333 source_version: source.labels["version"] | "unknown"
\r
19334 destination_workload: destination.workload.name | "unknown"
\r
19335 destination_workload_namespace: destination.workload.namespace | "unknown"
\r
19336 destination_principal: destination.principal | "unknown"
\r
19337 destination_app: destination.labels["app"] | "unknown"
\r
19338 destination_version: destination.labels["version"] | "unknown"
\r
19339 destination_service: destination.service.name | "unknown"
\r
19340 destination_service_name: destination.service.name | "unknown"
\r
19341 destination_service_namespace: destination.service.namespace | "unknown"
\r
19342 connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none"))
\r
19343 response_flags: context.proxy_error_code | "-"
\r
19344 monitored_resource_type: '"UNSPECIFIED"'
\r
19346 apiVersion: "config.istio.io/v1alpha2"
\r
19350 namespace: istio-system
\r
19357 compiledAdapter: prometheus
\r
19359 metricsExpirationPolicy:
\r
19360 metricsExpiryDuration: "10m"
\r
19362 - name: requests_total
\r
19363 instance_name: requestcount.instance.istio-system
\r
19368 - source_principal
\r
19369 - source_workload
\r
19370 - source_workload_namespace
\r
19372 - destination_app
\r
19373 - destination_principal
\r
19374 - destination_workload
\r
19375 - destination_workload_namespace
\r
19376 - destination_version
\r
19377 - destination_service
\r
19378 - destination_service_name
\r
19379 - destination_service_namespace
\r
19380 - request_protocol
\r
19383 - permissive_response_code
\r
19384 - permissive_response_policyid
\r
19385 - connection_security_policy
\r
19386 - name: request_duration_seconds
\r
19387 instance_name: requestduration.instance.istio-system
\r
19388 kind: DISTRIBUTION
\r
19392 - source_principal
\r
19393 - source_workload
\r
19394 - source_workload_namespace
\r
19396 - destination_app
\r
19397 - destination_principal
\r
19398 - destination_workload
\r
19399 - destination_workload_namespace
\r
19400 - destination_version
\r
19401 - destination_service
\r
19402 - destination_service_name
\r
19403 - destination_service_namespace
\r
19404 - request_protocol
\r
19407 - permissive_response_code
\r
19408 - permissive_response_policyid
\r
19409 - connection_security_policy
\r
19411 explicit_buckets:
\r
19412 bounds: [0.005, 0.01, 0.025, 0.05, 0.1, 0.25, 0.5, 1, 2.5, 5, 10]
\r
19413 - name: request_bytes
\r
19414 instance_name: requestsize.instance.istio-system
\r
19415 kind: DISTRIBUTION
\r
19419 - source_principal
\r
19420 - source_workload
\r
19421 - source_workload_namespace
\r
19423 - destination_app
\r
19424 - destination_principal
\r
19425 - destination_workload
\r
19426 - destination_workload_namespace
\r
19427 - destination_version
\r
19428 - destination_service
\r
19429 - destination_service_name
\r
19430 - destination_service_namespace
\r
19431 - request_protocol
\r
19434 - permissive_response_code
\r
19435 - permissive_response_policyid
\r
19436 - connection_security_policy
\r
19438 exponentialBuckets:
\r
19439 numFiniteBuckets: 8
\r
19442 - name: response_bytes
\r
19443 instance_name: responsesize.instance.istio-system
\r
19444 kind: DISTRIBUTION
\r
19448 - source_principal
\r
19449 - source_workload
\r
19450 - source_workload_namespace
\r
19452 - destination_app
\r
19453 - destination_principal
\r
19454 - destination_workload
\r
19455 - destination_workload_namespace
\r
19456 - destination_version
\r
19457 - destination_service
\r
19458 - destination_service_name
\r
19459 - destination_service_namespace
\r
19460 - request_protocol
\r
19463 - permissive_response_code
\r
19464 - permissive_response_policyid
\r
19465 - connection_security_policy
\r
19467 exponentialBuckets:
\r
19468 numFiniteBuckets: 8
\r
19471 - name: tcp_sent_bytes_total
\r
19472 instance_name: tcpbytesent.instance.istio-system
\r
19477 - source_principal
\r
19478 - source_workload
\r
19479 - source_workload_namespace
\r
19481 - destination_app
\r
19482 - destination_principal
\r
19483 - destination_workload
\r
19484 - destination_workload_namespace
\r
19485 - destination_version
\r
19486 - destination_service
\r
19487 - destination_service_name
\r
19488 - destination_service_namespace
\r
19489 - connection_security_policy
\r
19491 - name: tcp_received_bytes_total
\r
19492 instance_name: tcpbytereceived.instance.istio-system
\r
19497 - source_principal
\r
19498 - source_workload
\r
19499 - source_workload_namespace
\r
19501 - destination_app
\r
19502 - destination_principal
\r
19503 - destination_workload
\r
19504 - destination_workload_namespace
\r
19505 - destination_version
\r
19506 - destination_service
\r
19507 - destination_service_name
\r
19508 - destination_service_namespace
\r
19509 - connection_security_policy
\r
19511 - name: tcp_connections_opened_total
\r
19512 instance_name: tcpconnectionsopened.instance.istio-system
\r
19517 - source_principal
\r
19518 - source_workload
\r
19519 - source_workload_namespace
\r
19521 - destination_app
\r
19522 - destination_principal
\r
19523 - destination_workload
\r
19524 - destination_workload_namespace
\r
19525 - destination_version
\r
19526 - destination_service
\r
19527 - destination_service_name
\r
19528 - destination_service_namespace
\r
19529 - connection_security_policy
\r
19531 - name: tcp_connections_closed_total
\r
19532 instance_name: tcpconnectionsclosed.instance.istio-system
\r
19537 - source_principal
\r
19538 - source_workload
\r
19539 - source_workload_namespace
\r
19541 - destination_app
\r
19542 - destination_principal
\r
19543 - destination_workload
\r
19544 - destination_workload_namespace
\r
19545 - destination_version
\r
19546 - destination_service
\r
19547 - destination_service_name
\r
19548 - destination_service_namespace
\r
19549 - connection_security_policy
\r
19552 apiVersion: "config.istio.io/v1alpha2"
\r
19556 namespace: istio-system
\r
19563 match: (context.protocol == "http" || context.protocol == "grpc") && (match((request.useragent | "-"), "kube-probe*") == false) && (match((request.useragent | "-"), "Prometheus*") == false)
\r
19565 - handler: prometheus
\r
19568 - requestduration
\r
19572 apiVersion: "config.istio.io/v1alpha2"
\r
19576 namespace: istio-system
\r
19583 match: context.protocol == "tcp"
\r
19585 - handler: prometheus
\r
19588 - tcpbytereceived
\r
19590 apiVersion: "config.istio.io/v1alpha2"
\r
19593 name: promtcpconnectionopen
\r
19594 namespace: istio-system
\r
19601 match: context.protocol == "tcp" && ((connection.event | "na") == "open")
\r
19603 - handler: prometheus
\r
19605 - tcpconnectionsopened
\r
19607 apiVersion: "config.istio.io/v1alpha2"
\r
19610 name: promtcpconnectionclosed
\r
19611 namespace: istio-system
\r
19618 match: context.protocol == "tcp" && ((connection.event | "na") == "close")
\r
19620 - handler: prometheus
\r
19622 - tcpconnectionsclosed
\r
19624 apiVersion: "config.istio.io/v1alpha2"
\r
19627 name: kubernetesenv
\r
19628 namespace: istio-system
\r
19635 compiledAdapter: kubernetesenv
\r
19637 # when running from mixer root, use the following config after adding a
\r
19638 # symbolic link to a kubernetes config file via:
\r
19640 # $ ln -s ~/.kube/config mixer/adapter/kubernetes/kubeconfig
\r
19642 # kubeconfig_path: "mixer/adapter/kubernetes/kubeconfig"
\r
19645 apiVersion: "config.istio.io/v1alpha2"
\r
19648 name: kubeattrgenrulerule
\r
19649 namespace: istio-system
\r
19657 - handler: kubernetesenv
\r
19661 apiVersion: "config.istio.io/v1alpha2"
\r
19664 name: tcpkubeattrgenrulerule
\r
19665 namespace: istio-system
\r
19672 match: context.protocol == "tcp"
\r
19674 - handler: kubernetesenv
\r
19678 apiVersion: "config.istio.io/v1alpha2"
\r
19682 namespace: istio-system
\r
19689 compiledTemplate: kubernetes
\r
19691 # Pass the required attribute data to the adapter
\r
19692 source_uid: source.uid | ""
\r
19693 source_ip: source.ip | ip("0.0.0.0") # default to unspecified ip addr
\r
19694 destination_uid: destination.uid | ""
\r
19695 destination_port: destination.port | 0
\r
19696 attributeBindings:
\r
19697 # Fill the new attributes from the adapter produced output.
\r
19698 # $out refers to an instance of OutputTemplate message
\r
19699 source.ip: $out.source_pod_ip | ip("0.0.0.0")
\r
19700 source.uid: $out.source_pod_uid | "unknown"
\r
19701 source.labels: $out.source_labels | emptyStringMap()
\r
19702 source.name: $out.source_pod_name | "unknown"
\r
19703 source.namespace: $out.source_namespace | "default"
\r
19704 source.owner: $out.source_owner | "unknown"
\r
19705 source.serviceAccount: $out.source_service_account_name | "unknown"
\r
19706 source.workload.uid: $out.source_workload_uid | "unknown"
\r
19707 source.workload.name: $out.source_workload_name | "unknown"
\r
19708 source.workload.namespace: $out.source_workload_namespace | "unknown"
\r
19709 destination.ip: $out.destination_pod_ip | ip("0.0.0.0")
\r
19710 destination.uid: $out.destination_pod_uid | "unknown"
\r
19711 destination.labels: $out.destination_labels | emptyStringMap()
\r
19712 destination.name: $out.destination_pod_name | "unknown"
\r
19713 destination.container.name: $out.destination_container_name | "unknown"
\r
19714 destination.namespace: $out.destination_namespace | "default"
\r
19715 destination.owner: $out.destination_owner | "unknown"
\r
19716 destination.serviceAccount: $out.destination_service_account_name | "unknown"
\r
19717 destination.workload.uid: $out.destination_workload_uid | "unknown"
\r
19718 destination.workload.name: $out.destination_workload_name | "unknown"
\r
19719 destination.workload.namespace: $out.destination_workload_namespace | "unknown"
\r
19721 # Configuration needed by Mixer.
\r
19722 # Mixer cluster is delivered via CDS
\r
19723 # Specify mixer cluster settings
\r
19724 apiVersion: networking.istio.io/v1alpha3
\r
19725 kind: DestinationRule
\r
19727 name: istio-policy
\r
19728 namespace: istio-system
\r
19735 host: istio-policy.istio-system.svc.cluster.local
\r
19739 http2MaxRequests: 10000
\r
19740 maxRequestsPerConnection: 10000
\r
19742 apiVersion: networking.istio.io/v1alpha3
\r
19743 kind: DestinationRule
\r
19745 name: istio-telemetry
\r
19746 namespace: istio-system
\r
19753 host: istio-telemetry.istio-system.svc.cluster.local
\r
19757 http2MaxRequests: 10000
\r
19758 maxRequestsPerConnection: 10000
\r