├── .gitmodules ├── LICENSE ├── README.md ├── assets └── avatar.png ├── code └── concepts │ └── bookinfo-bookinfo-config-dump │ ├── README.md │ ├── details-config-dump │ ├── pilot_eds_dump │ ├── productpage-config-dump │ ├── productpage-envoy-rev0.json │ ├── ratings-config-dump │ └── reviews-config-dump ├── istio-quick-start-pathway.json └── istio-quick-start └── install-istio-using-istioctl ├── finish.md ├── index.json ├── intro.md ├── step1.md ├── step2.md ├── step3.md └── step4.md /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "code/practice/enhance-tracing"] 2 | path = code/practice/enhance-tracing 3 | url = git@github.com:zhaohuabing/istio-opentracing-demo.git 4 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Apache License 2 | Version 2.0, January 2004 3 | http://www.apache.org/licenses/ 4 | 5 | TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 6 | 7 | 1. Definitions. 8 | 9 | "License" shall mean the terms and conditions for use, reproduction, 10 | and distribution as defined by Sections 1 through 9 of this document. 11 | 12 | "Licensor" shall mean the copyright owner or entity authorized by 13 | the copyright owner that is granting the License. 14 | 15 | "Legal Entity" shall mean the union of the acting entity and all 16 | other entities that control, are controlled by, or are under common 17 | control with that entity. For the purposes of this definition, 18 | "control" means (i) the power, direct or indirect, to cause the 19 | direction or management of such entity, whether by contract or 20 | otherwise, or (ii) ownership of fifty percent (50%) or more of the 21 | outstanding shares, or (iii) beneficial ownership of such entity. 22 | 23 | "You" (or "Your") shall mean an individual or Legal Entity 24 | exercising permissions granted by this License. 25 | 26 | "Source" form shall mean the preferred form for making modifications, 27 | including but not limited to software source code, documentation 28 | source, and configuration files. 29 | 30 | "Object" form shall mean any form resulting from mechanical 31 | transformation or translation of a Source form, including but 32 | not limited to compiled object code, generated documentation, 33 | and conversions to other media types. 34 | 35 | "Work" shall mean the work of authorship, whether in Source or 36 | Object form, made available under the License, as indicated by a 37 | copyright notice that is included in or attached to the work 38 | (an example is provided in the Appendix below). 39 | 40 | "Derivative Works" shall mean any work, whether in Source or Object 41 | form, that is based on (or derived from) the Work and for which the 42 | editorial revisions, annotations, elaborations, or other modifications 43 | represent, as a whole, an original work of authorship. For the purposes 44 | of this License, Derivative Works shall not include works that remain 45 | separable from, or merely link (or bind by name) to the interfaces of, 46 | the Work and Derivative Works thereof. 47 | 48 | "Contribution" shall mean any work of authorship, including 49 | the original version of the Work and any modifications or additions 50 | to that Work or Derivative Works thereof, that is intentionally 51 | submitted to Licensor for inclusion in the Work by the copyright owner 52 | or by an individual or Legal Entity authorized to submit on behalf of 53 | the copyright owner. For the purposes of this definition, "submitted" 54 | means any form of electronic, verbal, or written communication sent 55 | to the Licensor or its representatives, including but not limited to 56 | communication on electronic mailing lists, source code control systems, 57 | and issue tracking systems that are managed by, or on behalf of, the 58 | Licensor for the purpose of discussing and improving the Work, but 59 | excluding communication that is conspicuously marked or otherwise 60 | designated in writing by the copyright owner as "Not a Contribution." 61 | 62 | "Contributor" shall mean Licensor and any individual or Legal Entity 63 | on behalf of whom a Contribution has been received by Licensor and 64 | subsequently incorporated within the Work. 65 | 66 | 2. Grant of Copyright License. Subject to the terms and conditions of 67 | this License, each Contributor hereby grants to You a perpetual, 68 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable 69 | copyright license to reproduce, prepare Derivative Works of, 70 | publicly display, publicly perform, sublicense, and distribute the 71 | Work and such Derivative Works in Source or Object form. 72 | 73 | 3. Grant of Patent License. Subject to the terms and conditions of 74 | this License, each Contributor hereby grants to You a perpetual, 75 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable 76 | (except as stated in this section) patent license to make, have made, 77 | use, offer to sell, sell, import, and otherwise transfer the Work, 78 | where such license applies only to those patent claims licensable 79 | by such Contributor that are necessarily infringed by their 80 | Contribution(s) alone or by combination of their Contribution(s) 81 | with the Work to which such Contribution(s) was submitted. If You 82 | institute patent litigation against any entity (including a 83 | cross-claim or counterclaim in a lawsuit) alleging that the Work 84 | or a Contribution incorporated within the Work constitutes direct 85 | or contributory patent infringement, then any patent licenses 86 | granted to You under this License for that Work shall terminate 87 | as of the date such litigation is filed. 88 | 89 | 4. Redistribution. You may reproduce and distribute copies of the 90 | Work or Derivative Works thereof in any medium, with or without 91 | modifications, and in Source or Object form, provided that You 92 | meet the following conditions: 93 | 94 | (a) You must give any other recipients of the Work or 95 | Derivative Works a copy of this License; and 96 | 97 | (b) You must cause any modified files to carry prominent notices 98 | stating that You changed the files; and 99 | 100 | (c) You must retain, in the Source form of any Derivative Works 101 | that You distribute, all copyright, patent, trademark, and 102 | attribution notices from the Source form of the Work, 103 | excluding those notices that do not pertain to any part of 104 | the Derivative Works; and 105 | 106 | (d) If the Work includes a "NOTICE" text file as part of its 107 | distribution, then any Derivative Works that You distribute must 108 | include a readable copy of the attribution notices contained 109 | within such NOTICE file, excluding those notices that do not 110 | pertain to any part of the Derivative Works, in at least one 111 | of the following places: within a NOTICE text file distributed 112 | as part of the Derivative Works; within the Source form or 113 | documentation, if provided along with the Derivative Works; or, 114 | within a display generated by the Derivative Works, if and 115 | wherever such third-party notices normally appear. The contents 116 | of the NOTICE file are for informational purposes only and 117 | do not modify the License. You may add Your own attribution 118 | notices within Derivative Works that You distribute, alongside 119 | or as an addendum to the NOTICE text from the Work, provided 120 | that such additional attribution notices cannot be construed 121 | as modifying the License. 122 | 123 | You may add Your own copyright statement to Your modifications and 124 | may provide additional or different license terms and conditions 125 | for use, reproduction, or distribution of Your modifications, or 126 | for any such Derivative Works as a whole, provided Your use, 127 | reproduction, and distribution of the Work otherwise complies with 128 | the conditions stated in this License. 129 | 130 | 5. Submission of Contributions. Unless You explicitly state otherwise, 131 | any Contribution intentionally submitted for inclusion in the Work 132 | by You to the Licensor shall be under the terms and conditions of 133 | this License, without any additional terms or conditions. 134 | Notwithstanding the above, nothing herein shall supersede or modify 135 | the terms of any separate license agreement you may have executed 136 | with Licensor regarding such Contributions. 137 | 138 | 6. Trademarks. This License does not grant permission to use the trade 139 | names, trademarks, service marks, or product names of the Licensor, 140 | except as required for reasonable and customary use in describing the 141 | origin of the Work and reproducing the content of the NOTICE file. 142 | 143 | 7. Disclaimer of Warranty. Unless required by applicable law or 144 | agreed to in writing, Licensor provides the Work (and each 145 | Contributor provides its Contributions) on an "AS IS" BASIS, 146 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 147 | implied, including, without limitation, any warranties or conditions 148 | of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A 149 | PARTICULAR PURPOSE. You are solely responsible for determining the 150 | appropriateness of using or redistributing the Work and assume any 151 | risks associated with Your exercise of permissions under this License. 152 | 153 | 8. Limitation of Liability. In no event and under no legal theory, 154 | whether in tort (including negligence), contract, or otherwise, 155 | unless required by applicable law (such as deliberate and grossly 156 | negligent acts) or agreed to in writing, shall any Contributor be 157 | liable to You for damages, including any direct, indirect, special, 158 | incidental, or consequential damages of any character arising as a 159 | result of this License or out of the use or inability to use the 160 | Work (including but not limited to damages for loss of goodwill, 161 | work stoppage, computer failure or malfunction, or any and all 162 | other commercial damages or losses), even if such Contributor 163 | has been advised of the possibility of such damages. 164 | 165 | 9. Accepting Warranty or Additional Liability. While redistributing 166 | the Work or Derivative Works thereof, You may choose to offer, 167 | and charge a fee for, acceptance of support, warranty, indemnity, 168 | or other liability obligations and/or rights consistent with this 169 | License. However, in accepting such obligations, You may act only 170 | on Your own behalf and on Your sole responsibility, not on behalf 171 | of any other Contributor, and only if You agree to indemnify, 172 | defend, and hold each Contributor harmless for any liability 173 | incurred by, or claims asserted against, such Contributor by reason 174 | of your accepting any such warranty or additional liability. 175 | 176 | END OF TERMS AND CONDITIONS 177 | 178 | APPENDIX: How to apply the Apache License to your work. 179 | 180 | To apply the Apache License to your work, attach the following 181 | boilerplate notice, with the fields enclosed by brackets "[]" 182 | replaced with your own identifying information. (Don't include 183 | the brackets!) The text should be enclosed in the appropriate 184 | comment syntax for the file format. We also recommend that a 185 | file or class name and description of purpose be included on the 186 | same "printed page" as the copyright notice for easier 187 | identification within third-party archives. 188 | 189 | Copyright [yyyy] [name of copyright owner] 190 | 191 | Licensed under the Apache License, Version 2.0 (the "License"); 192 | you may not use this file except in compliance with the License. 193 | You may obtain a copy of the License at 194 | 195 | http://www.apache.org/licenses/LICENSE-2.0 196 | 197 | Unless required by applicable law or agreed to in writing, software 198 | distributed under the License is distributed on an "AS IS" BASIS, 199 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 200 | See the License for the specific language governing permissions and 201 | limitations under the License. 202 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # istio-handbook-resources 2 | Istio Handbook examples 3 | -------------------------------------------------------------------------------- /assets/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/servicemesher/istio-handbook-resources/dabe2bafa9c4cbdad8765d788a6d4070f60b6b18/assets/avatar.png -------------------------------------------------------------------------------- /code/concepts/bookinfo-bookinfo-config-dump/README.md: -------------------------------------------------------------------------------- 1 | ![](https://istio.io/docs/examples/bookinfo/noistio.svg) 2 | ```bash 3 | master $ kubectl get pod -o wide 4 | NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES 5 | details-v1-c5b5f496d-xxm2c 2/2 Running 0 107s 10.40.0.13 node01 6 | productpage-v1-c7765c886-bdl6x 2/2 Running 0 106s 10.40.0.18 node01 7 | ratings-v1-f745cf57b-4lsqr 2/2 Running 0 107s 10.40.0.14 node01 8 | reviews-v1-75b979578c-vqd4g 2/2 Running 0 106s 10.40.0.15 node01 9 | reviews-v2-597bf96c8f-6smcw 2/2 Running 0 106s 10.40.0.16 node01 10 | reviews-v3-54c6c64795-6qpkp 2/2 Running 0 106s 10.40.0.17 node01 11 | 12 | master $ kubectl get svc -o wide 13 | NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE SELECTOR 14 | details ClusterIP 10.101.41.162 9080/TCP 17m app=details 15 | kubernetes ClusterIP 10.96.0.1 443/TCP 15h 16 | productpage ClusterIP 10.100.240.212 9080/TCP 17m app=productpage 17 | ratings ClusterIP 10.101.170.120 9080/TCP 17m app=ratings 18 | reviews ClusterIP 10.102.108.56 9080/TCP 17m app=reviews 19 | ``` 20 | -------------------------------------------------------------------------------- /code/concepts/bookinfo-bookinfo-config-dump/pilot_eds_dump: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "clusterName": "outbound|15032||istio-ingressgateway.istio-system.svc.cluster.local", 4 | "endpoints": [ 5 | { 6 | "lbEndpoints": [ 7 | { 8 | "endpoint": { 9 | "address": { 10 | "socketAddress": { 11 | "address": "10.40.0.5", 12 | "portValue": 15032 13 | } 14 | } 15 | }, 16 | "metadata": { 17 | "filterMetadata": { 18 | "envoy.transport_socket_match": { 19 | "tlsMode": "disabled" 20 | }, 21 | "istio": { 22 | "uid": "kubernetes://istio-ingressgateway-7d6b9b5ffc-2r8b5.istio-system" 23 | } 24 | } 25 | }, 26 | "loadBalancingWeight": 1 27 | } 28 | ], 29 | "loadBalancingWeight": 1 30 | } 31 | ] 32 | }, 33 | { 34 | "clusterName": "outbound|15020||istio-ingressgateway.istio-system.svc.cluster.local", 35 | "endpoints": [ 36 | { 37 | "lbEndpoints": [ 38 | { 39 | "endpoint": { 40 | "address": { 41 | "socketAddress": { 42 | "address": "10.40.0.5", 43 | "portValue": 15020 44 | } 45 | } 46 | }, 47 | "metadata": { 48 | "filterMetadata": { 49 | "envoy.transport_socket_match": { 50 | "tlsMode": "disabled" 51 | }, 52 | "istio": { 53 | "uid": "kubernetes://istio-ingressgateway-7d6b9b5ffc-2r8b5.istio-system" 54 | } 55 | } 56 | }, 57 | "loadBalancingWeight": 1 58 | } 59 | ], 60 | "loadBalancingWeight": 1 61 | } 62 | ] 63 | }, 64 | { 65 | "clusterName": "outbound_.9080_._.details.default.svc.cluster.local", 66 | "endpoints": [ 67 | { 68 | "lbEndpoints": [ 69 | { 70 | "endpoint": { 71 | "address": { 72 | "socketAddress": { 73 | "address": "10.40.0.13", 74 | "portValue": 9080 75 | } 76 | } 77 | }, 78 | "metadata": { 79 | "filterMetadata": { 80 | "envoy.transport_socket_match": { 81 | "tlsMode": "istio" 82 | }, 83 | "istio": { 84 | "uid": "kubernetes://details-v1-c5b5f496d-bxs7z.default" 85 | } 86 | } 87 | }, 88 | "loadBalancingWeight": 1 89 | } 90 | ], 91 | "loadBalancingWeight": 1 92 | } 93 | ] 94 | }, 95 | { 96 | "clusterName": "outbound_.15004_._.istio-telemetry.istio-system.svc.cluster.local", 97 | "endpoints": [ 98 | { 99 | "lbEndpoints": [ 100 | { 101 | "endpoint": { 102 | "address": { 103 | "socketAddress": { 104 | "address": "10.40.0.3", 105 | "portValue": 15004 106 | } 107 | } 108 | }, 109 | "metadata": { 110 | "filterMetadata": { 111 | "envoy.transport_socket_match": { 112 | "tlsMode": "disabled" 113 | }, 114 | "istio": { 115 | "uid": "kubernetes://istio-telemetry-fc488f958-7mpsx.istio-system" 116 | } 117 | } 118 | }, 119 | "loadBalancingWeight": 1 120 | } 121 | ], 122 | "loadBalancingWeight": 1 123 | } 124 | ] 125 | }, 126 | { 127 | "clusterName": "outbound_.9091_._.istio-telemetry.istio-system.svc.cluster.local", 128 | "endpoints": [ 129 | { 130 | "lbEndpoints": [ 131 | { 132 | "endpoint": { 133 | "address": { 134 | "socketAddress": { 135 | "address": "10.40.0.3", 136 | "portValue": 9091 137 | } 138 | } 139 | }, 140 | "metadata": { 141 | "filterMetadata": { 142 | "envoy.transport_socket_match": { 143 | "tlsMode": "disabled" 144 | }, 145 | "istio": { 146 | "uid": "kubernetes://istio-telemetry-fc488f958-7mpsx.istio-system" 147 | } 148 | } 149 | }, 150 | "loadBalancingWeight": 1 151 | } 152 | ], 153 | "loadBalancingWeight": 1 154 | } 155 | ] 156 | }, 157 | { 158 | "clusterName": "outbound_.9411_._.zipkin.istio-system.svc.cluster.local", 159 | "endpoints": [ 160 | { 161 | "lbEndpoints": [ 162 | { 163 | "endpoint": { 164 | "address": { 165 | "socketAddress": { 166 | "address": "10.40.0.1", 167 | "portValue": 9411 168 | } 169 | } 170 | }, 171 | "metadata": { 172 | "filterMetadata": { 173 | "envoy.transport_socket_match": { 174 | "tlsMode": "disabled" 175 | }, 176 | "istio": { 177 | "uid": "kubernetes://istio-tracing-cd67ddf8-wkkcq.istio-system" 178 | } 179 | } 180 | }, 181 | "loadBalancingWeight": 1 182 | } 183 | ], 184 | "loadBalancingWeight": 1 185 | } 186 | ] 187 | }, 188 | { 189 | "clusterName": "outbound_.14267_._.jaeger-collector.istio-system.svc.cluster.local", 190 | "endpoints": [ 191 | { 192 | "lbEndpoints": [ 193 | { 194 | "endpoint": { 195 | "address": { 196 | "socketAddress": { 197 | "address": "10.40.0.1", 198 | "portValue": 14267 199 | } 200 | } 201 | }, 202 | "metadata": { 203 | "filterMetadata": { 204 | "envoy.transport_socket_match": { 205 | "tlsMode": "disabled" 206 | }, 207 | "istio": { 208 | "uid": "kubernetes://istio-tracing-cd67ddf8-wkkcq.istio-system" 209 | } 210 | } 211 | }, 212 | "loadBalancingWeight": 1 213 | } 214 | ], 215 | "loadBalancingWeight": 1 216 | } 217 | ] 218 | }, 219 | { 220 | "clusterName": "outbound_.9153_._.kube-dns.kube-system.svc.cluster.local", 221 | "endpoints": [ 222 | { 223 | "lbEndpoints": [ 224 | { 225 | "endpoint": { 226 | "address": { 227 | "socketAddress": { 228 | "address": "10.88.0.3", 229 | "portValue": 9153 230 | } 231 | } 232 | }, 233 | "metadata": { 234 | "filterMetadata": { 235 | "envoy.transport_socket_match": { 236 | "tlsMode": "disabled" 237 | }, 238 | "istio": { 239 | "uid": "kubernetes://coredns-fb8b8dccf-zftvx.kube-system" 240 | } 241 | } 242 | }, 243 | "loadBalancingWeight": 1 244 | }, 245 | { 246 | "endpoint": { 247 | "address": { 248 | "socketAddress": { 249 | "address": "10.88.0.4", 250 | "portValue": 9153 251 | } 252 | } 253 | }, 254 | "metadata": { 255 | "filterMetadata": { 256 | "envoy.transport_socket_match": { 257 | "tlsMode": "disabled" 258 | }, 259 | "istio": { 260 | "uid": "kubernetes://coredns-fb8b8dccf-rdtkl.kube-system" 261 | } 262 | } 263 | }, 264 | "loadBalancingWeight": 1 265 | } 266 | ], 267 | "loadBalancingWeight": 2 268 | } 269 | ] 270 | }, 271 | { 272 | "clusterName": "outbound|443||istio-egressgateway.istio-system.svc.cluster.local", 273 | "endpoints": [ 274 | { 275 | "lbEndpoints": [ 276 | { 277 | "endpoint": { 278 | "address": { 279 | "socketAddress": { 280 | "address": "10.40.0.2", 281 | "portValue": 443 282 | } 283 | } 284 | }, 285 | "metadata": { 286 | "filterMetadata": { 287 | "envoy.transport_socket_match": { 288 | "tlsMode": "disabled" 289 | }, 290 | "istio": { 291 | "uid": "kubernetes://istio-egressgateway-75cb89bd7f-knpm8.istio-system" 292 | } 293 | } 294 | }, 295 | "loadBalancingWeight": 1 296 | } 297 | ], 298 | "loadBalancingWeight": 1 299 | } 300 | ] 301 | }, 302 | { 303 | "clusterName": "outbound|80||istio-egressgateway.istio-system.svc.cluster.local", 304 | "endpoints": [ 305 | { 306 | "lbEndpoints": [ 307 | { 308 | "endpoint": { 309 | "address": { 310 | "socketAddress": { 311 | "address": "10.40.0.2", 312 | "portValue": 80 313 | } 314 | } 315 | }, 316 | "metadata": { 317 | "filterMetadata": { 318 | "envoy.transport_socket_match": { 319 | "tlsMode": "disabled" 320 | }, 321 | "istio": { 322 | "uid": "kubernetes://istio-egressgateway-75cb89bd7f-knpm8.istio-system" 323 | } 324 | } 325 | }, 326 | "loadBalancingWeight": 1 327 | } 328 | ], 329 | "loadBalancingWeight": 1 330 | } 331 | ] 332 | }, 333 | { 334 | "clusterName": "outbound|15014||istio-policy.istio-system.svc.cluster.local", 335 | "endpoints": [ 336 | { 337 | "lbEndpoints": [ 338 | { 339 | "endpoint": { 340 | "address": { 341 | "socketAddress": { 342 | "address": "10.40.0.8", 343 | "portValue": 15014 344 | } 345 | } 346 | }, 347 | "metadata": { 348 | "filterMetadata": { 349 | "envoy.transport_socket_match": { 350 | "tlsMode": "disabled" 351 | }, 352 | "istio": { 353 | "uid": "kubernetes://istio-policy-9f78db4cb-52xmz.istio-system" 354 | } 355 | } 356 | }, 357 | "loadBalancingWeight": 1 358 | } 359 | ], 360 | "loadBalancingWeight": 1 361 | } 362 | ] 363 | }, 364 | { 365 | "clusterName": "outbound|9091||istio-policy.istio-system.svc.cluster.local", 366 | "endpoints": [ 367 | { 368 | "lbEndpoints": [ 369 | { 370 | "endpoint": { 371 | "address": { 372 | "socketAddress": { 373 | "address": "10.40.0.8", 374 | "portValue": 9091 375 | } 376 | } 377 | }, 378 | "metadata": { 379 | "filterMetadata": { 380 | "envoy.transport_socket_match": { 381 | "tlsMode": "disabled" 382 | }, 383 | "istio": { 384 | "uid": "kubernetes://istio-policy-9f78db4cb-52xmz.istio-system" 385 | } 386 | } 387 | }, 388 | "loadBalancingWeight": 1 389 | } 390 | ], 391 | "loadBalancingWeight": 1 392 | } 393 | ] 394 | }, 395 | { 396 | "clusterName": "outbound_.15029_._.istio-ingressgateway.istio-system.svc.cluster.local", 397 | "endpoints": [ 398 | { 399 | "lbEndpoints": [ 400 | { 401 | "endpoint": { 402 | "address": { 403 | "socketAddress": { 404 | "address": "10.40.0.5", 405 | "portValue": 15029 406 | } 407 | } 408 | }, 409 | "metadata": { 410 | "filterMetadata": { 411 | "envoy.transport_socket_match": { 412 | "tlsMode": "disabled" 413 | }, 414 | "istio": { 415 | "uid": "kubernetes://istio-ingressgateway-7d6b9b5ffc-2r8b5.istio-system" 416 | } 417 | } 418 | }, 419 | "loadBalancingWeight": 1 420 | } 421 | ], 422 | "loadBalancingWeight": 1 423 | } 424 | ] 425 | }, 426 | { 427 | "clusterName": "outbound_.53_._.kube-dns.kube-system.svc.cluster.local", 428 | "endpoints": [ 429 | { 430 | "lbEndpoints": [ 431 | { 432 | "endpoint": { 433 | "address": { 434 | "socketAddress": { 435 | "address": "10.88.0.3", 436 | "portValue": 53 437 | } 438 | } 439 | }, 440 | "metadata": { 441 | "filterMetadata": { 442 | "envoy.transport_socket_match": { 443 | "tlsMode": "disabled" 444 | }, 445 | "istio": { 446 | "uid": "kubernetes://coredns-fb8b8dccf-zftvx.kube-system" 447 | } 448 | } 449 | }, 450 | "loadBalancingWeight": 1 451 | }, 452 | { 453 | "endpoint": { 454 | "address": { 455 | "socketAddress": { 456 | "address": "10.88.0.4", 457 | "portValue": 53 458 | } 459 | } 460 | }, 461 | "metadata": { 462 | "filterMetadata": { 463 | "envoy.transport_socket_match": { 464 | "tlsMode": "disabled" 465 | }, 466 | "istio": { 467 | "uid": "kubernetes://coredns-fb8b8dccf-rdtkl.kube-system" 468 | } 469 | } 470 | }, 471 | "loadBalancingWeight": 1 472 | } 473 | ], 474 | "loadBalancingWeight": 2 475 | } 476 | ] 477 | }, 478 | { 479 | "clusterName": "outbound|14268||jaeger-collector.istio-system.svc.cluster.local", 480 | "endpoints": [ 481 | { 482 | "lbEndpoints": [ 483 | { 484 | "endpoint": { 485 | "address": { 486 | "socketAddress": { 487 | "address": "10.40.0.1", 488 | "portValue": 14268 489 | } 490 | } 491 | }, 492 | "metadata": { 493 | "filterMetadata": { 494 | "envoy.transport_socket_match": { 495 | "tlsMode": "disabled" 496 | }, 497 | "istio": { 498 | "uid": "kubernetes://istio-tracing-cd67ddf8-wkkcq.istio-system" 499 | } 500 | } 501 | }, 502 | "loadBalancingWeight": 1 503 | } 504 | ], 505 | "loadBalancingWeight": 1 506 | } 507 | ] 508 | }, 509 | { 510 | "clusterName": "outbound|15004||istio-policy.istio-system.svc.cluster.local", 511 | "endpoints": [ 512 | { 513 | "lbEndpoints": [ 514 | { 515 | "endpoint": { 516 | "address": { 517 | "socketAddress": { 518 | "address": "10.40.0.8", 519 | "portValue": 15004 520 | } 521 | } 522 | }, 523 | "metadata": { 524 | "filterMetadata": { 525 | "envoy.transport_socket_match": { 526 | "tlsMode": "disabled" 527 | }, 528 | "istio": { 529 | "uid": "kubernetes://istio-policy-9f78db4cb-52xmz.istio-system" 530 | } 531 | } 532 | }, 533 | "loadBalancingWeight": 1 534 | } 535 | ], 536 | "loadBalancingWeight": 1 537 | } 538 | ] 539 | }, 540 | { 541 | "clusterName": "outbound_.8080_._.istio-pilot.istio-system.svc.cluster.local", 542 | "endpoints": [ 543 | { 544 | "lbEndpoints": [ 545 | { 546 | "endpoint": { 547 | "address": { 548 | "socketAddress": { 549 | "address": "10.40.0.6", 550 | "portValue": 8080 551 | } 552 | } 553 | }, 554 | "metadata": { 555 | "filterMetadata": { 556 | "envoy.transport_socket_match": { 557 | "tlsMode": "disabled" 558 | }, 559 | "istio": { 560 | "uid": "kubernetes://istio-pilot-678b45584b-nnmbm.istio-system" 561 | } 562 | } 563 | }, 564 | "loadBalancingWeight": 1 565 | } 566 | ], 567 | "loadBalancingWeight": 1 568 | } 569 | ] 570 | }, 571 | { 572 | "clusterName": "outbound_.443_._.istio-galley.istio-system.svc.cluster.local", 573 | "endpoints": [ 574 | { 575 | "lbEndpoints": [ 576 | { 577 | "endpoint": { 578 | "address": { 579 | "socketAddress": { 580 | "address": "10.40.0.10", 581 | "portValue": 9443 582 | } 583 | } 584 | }, 585 | "metadata": { 586 | "filterMetadata": { 587 | "envoy.transport_socket_match": { 588 | "tlsMode": "disabled" 589 | }, 590 | "istio": { 591 | "uid": "kubernetes://istio-galley-5bcd89bd9c-52rgh.istio-system" 592 | } 593 | } 594 | }, 595 | "loadBalancingWeight": 1 596 | } 597 | ], 598 | "loadBalancingWeight": 1 599 | } 600 | ] 601 | }, 602 | { 603 | "clusterName": "outbound_.9090_._.prometheus.istio-system.svc.cluster.local", 604 | "endpoints": [ 605 | { 606 | "lbEndpoints": [ 607 | { 608 | "endpoint": { 609 | "address": { 610 | "socketAddress": { 611 | "address": "10.40.0.11", 612 | "portValue": 9090 613 | } 614 | } 615 | }, 616 | "metadata": { 617 | "filterMetadata": { 618 | "envoy.transport_socket_match": { 619 | "tlsMode": "disabled" 620 | }, 621 | "istio": { 622 | "uid": "kubernetes://prometheus-586d4445c7-crjp4.istio-system" 623 | } 624 | } 625 | }, 626 | "loadBalancingWeight": 1 627 | } 628 | ], 629 | "loadBalancingWeight": 1 630 | } 631 | ] 632 | }, 633 | { 634 | "clusterName": "outbound|9080||details.default.svc.cluster.local", 635 | "endpoints": [ 636 | { 637 | "lbEndpoints": [ 638 | { 639 | "endpoint": { 640 | "address": { 641 | "socketAddress": { 642 | "address": "10.40.0.13", 643 | "portValue": 9080 644 | } 645 | } 646 | }, 647 | "metadata": { 648 | "filterMetadata": { 649 | "envoy.transport_socket_match": { 650 | "tlsMode": "istio" 651 | }, 652 | "istio": { 653 | "uid": "kubernetes://details-v1-c5b5f496d-bxs7z.default" 654 | } 655 | } 656 | }, 657 | "loadBalancingWeight": 1 658 | } 659 | ], 660 | "loadBalancingWeight": 1 661 | } 662 | ] 663 | }, 664 | { 665 | "clusterName": "outbound|3000||grafana.istio-system.svc.cluster.local", 666 | "endpoints": [ 667 | { 668 | "lbEndpoints": [ 669 | { 670 | "endpoint": { 671 | "address": { 672 | "socketAddress": { 673 | "address": "10.40.0.7", 674 | "portValue": 3000 675 | } 676 | } 677 | }, 678 | "metadata": { 679 | "filterMetadata": { 680 | "envoy.transport_socket_match": { 681 | "tlsMode": "disabled" 682 | }, 683 | "istio": { 684 | "uid": "kubernetes://grafana-5f798469fd-sss4g.istio-system" 685 | } 686 | } 687 | }, 688 | "loadBalancingWeight": 1 689 | } 690 | ], 691 | "loadBalancingWeight": 1 692 | } 693 | ] 694 | }, 695 | { 696 | "clusterName": "outbound|9901||istio-galley.istio-system.svc.cluster.local", 697 | "endpoints": [ 698 | { 699 | "lbEndpoints": [ 700 | { 701 | "endpoint": { 702 | "address": { 703 | "socketAddress": { 704 | "address": "10.40.0.10", 705 | "portValue": 9901 706 | } 707 | } 708 | }, 709 | "metadata": { 710 | "filterMetadata": { 711 | "envoy.transport_socket_match": { 712 | "tlsMode": "disabled" 713 | }, 714 | "istio": { 715 | "uid": "kubernetes://istio-galley-5bcd89bd9c-52rgh.istio-system" 716 | } 717 | } 718 | }, 719 | "loadBalancingWeight": 1 720 | } 721 | ], 722 | "loadBalancingWeight": 1 723 | } 724 | ] 725 | }, 726 | { 727 | "clusterName": "outbound_.443_._.istio-ingressgateway.istio-system.svc.cluster.local", 728 | "endpoints": [ 729 | { 730 | "lbEndpoints": [ 731 | { 732 | "endpoint": { 733 | "address": { 734 | "socketAddress": { 735 | "address": "10.40.0.5", 736 | "portValue": 443 737 | } 738 | } 739 | }, 740 | "metadata": { 741 | "filterMetadata": { 742 | "envoy.transport_socket_match": { 743 | "tlsMode": "disabled" 744 | }, 745 | "istio": { 746 | "uid": "kubernetes://istio-ingressgateway-7d6b9b5ffc-2r8b5.istio-system" 747 | } 748 | } 749 | }, 750 | "loadBalancingWeight": 1 751 | } 752 | ], 753 | "loadBalancingWeight": 1 754 | } 755 | ] 756 | }, 757 | { 758 | "clusterName": "outbound_.443_._.istio-sidecar-injector.istio-system.svc.cluster.local", 759 | "endpoints": [ 760 | { 761 | "lbEndpoints": [ 762 | { 763 | "endpoint": { 764 | "address": { 765 | "socketAddress": { 766 | "address": "10.40.0.12", 767 | "portValue": 9443 768 | } 769 | } 770 | }, 771 | "metadata": { 772 | "filterMetadata": { 773 | "envoy.transport_socket_match": { 774 | "tlsMode": "disabled" 775 | }, 776 | "istio": { 777 | "uid": "kubernetes://istio-sidecar-injector-7d65c79dd5-xrlbh.istio-system" 778 | } 779 | } 780 | }, 781 | "loadBalancingWeight": 1 782 | } 783 | ], 784 | "loadBalancingWeight": 1 785 | } 786 | ] 787 | }, 788 | { 789 | "clusterName": "outbound_.15004_._.istio-policy.istio-system.svc.cluster.local", 790 | "endpoints": [ 791 | { 792 | "lbEndpoints": [ 793 | { 794 | "endpoint": { 795 | "address": { 796 | "socketAddress": { 797 | "address": "10.40.0.8", 798 | "portValue": 15004 799 | } 800 | } 801 | }, 802 | "metadata": { 803 | "filterMetadata": { 804 | "envoy.transport_socket_match": { 805 | "tlsMode": "disabled" 806 | }, 807 | "istio": { 808 | "uid": "kubernetes://istio-policy-9f78db4cb-52xmz.istio-system" 809 | } 810 | } 811 | }, 812 | "loadBalancingWeight": 1 813 | } 814 | ], 815 | "loadBalancingWeight": 1 816 | } 817 | ] 818 | }, 819 | { 820 | "clusterName": "outbound_.80_._.tracing.istio-system.svc.cluster.local", 821 | "endpoints": [ 822 | { 823 | "lbEndpoints": [ 824 | { 825 | "endpoint": { 826 | "address": { 827 | "socketAddress": { 828 | "address": "10.40.0.1", 829 | "portValue": 16686 830 | } 831 | } 832 | }, 833 | "metadata": { 834 | "filterMetadata": { 835 | "envoy.transport_socket_match": { 836 | "tlsMode": "disabled" 837 | }, 838 | "istio": { 839 | "uid": "kubernetes://istio-tracing-cd67ddf8-wkkcq.istio-system" 840 | } 841 | } 842 | }, 843 | "loadBalancingWeight": 1 844 | } 845 | ], 846 | "loadBalancingWeight": 1 847 | } 848 | ] 849 | }, 850 | { 851 | "clusterName": "outbound|9411||zipkin.istio-system.svc.cluster.local", 852 | "endpoints": [ 853 | { 854 | "lbEndpoints": [ 855 | { 856 | "endpoint": { 857 | "address": { 858 | "socketAddress": { 859 | "address": "10.40.0.1", 860 | "portValue": 9411 861 | } 862 | } 863 | }, 864 | "metadata": { 865 | "filterMetadata": { 866 | "envoy.transport_socket_match": { 867 | "tlsMode": "disabled" 868 | }, 869 | "istio": { 870 | "uid": "kubernetes://istio-tracing-cd67ddf8-wkkcq.istio-system" 871 | } 872 | } 873 | }, 874 | "loadBalancingWeight": 1 875 | } 876 | ], 877 | "loadBalancingWeight": 1 878 | } 879 | ] 880 | }, 881 | { 882 | "clusterName": "outbound|9090||prometheus.istio-system.svc.cluster.local", 883 | "endpoints": [ 884 | { 885 | "lbEndpoints": [ 886 | { 887 | "endpoint": { 888 | "address": { 889 | "socketAddress": { 890 | "address": "10.40.0.11", 891 | "portValue": 9090 892 | } 893 | } 894 | }, 895 | "metadata": { 896 | "filterMetadata": { 897 | "envoy.transport_socket_match": { 898 | "tlsMode": "disabled" 899 | }, 900 | "istio": { 901 | "uid": "kubernetes://prometheus-586d4445c7-crjp4.istio-system" 902 | } 903 | } 904 | }, 905 | "loadBalancingWeight": 1 906 | } 907 | ], 908 | "loadBalancingWeight": 1 909 | } 910 | ] 911 | }, 912 | { 913 | "clusterName": "outbound_.15014_._.istio-policy.istio-system.svc.cluster.local", 914 | "endpoints": [ 915 | { 916 | "lbEndpoints": [ 917 | { 918 | "endpoint": { 919 | "address": { 920 | "socketAddress": { 921 | "address": "10.40.0.8", 922 | "portValue": 15014 923 | } 924 | } 925 | }, 926 | "metadata": { 927 | "filterMetadata": { 928 | "envoy.transport_socket_match": { 929 | "tlsMode": "disabled" 930 | }, 931 | "istio": { 932 | "uid": "kubernetes://istio-policy-9f78db4cb-52xmz.istio-system" 933 | } 934 | } 935 | }, 936 | "loadBalancingWeight": 1 937 | } 938 | ], 939 | "loadBalancingWeight": 1 940 | } 941 | ] 942 | }, 943 | { 944 | "clusterName": "outbound|15014||istio-galley.istio-system.svc.cluster.local", 945 | "endpoints": [ 946 | { 947 | "lbEndpoints": [ 948 | { 949 | "endpoint": { 950 | "address": { 951 | "socketAddress": { 952 | "address": "10.40.0.10", 953 | "portValue": 15014 954 | } 955 | } 956 | }, 957 | "metadata": { 958 | "filterMetadata": { 959 | "envoy.transport_socket_match": { 960 | "tlsMode": "disabled" 961 | }, 962 | "istio": { 963 | "uid": "kubernetes://istio-galley-5bcd89bd9c-52rgh.istio-system" 964 | } 965 | } 966 | }, 967 | "loadBalancingWeight": 1 968 | } 969 | ], 970 | "loadBalancingWeight": 1 971 | } 972 | ] 973 | }, 974 | { 975 | "clusterName": "outbound|443||istio-galley.istio-system.svc.cluster.local", 976 | "endpoints": [ 977 | { 978 | "lbEndpoints": [ 979 | { 980 | "endpoint": { 981 | "address": { 982 | "socketAddress": { 983 | "address": "10.40.0.10", 984 | "portValue": 9443 985 | } 986 | } 987 | }, 988 | "metadata": { 989 | "filterMetadata": { 990 | "envoy.transport_socket_match": { 991 | "tlsMode": "disabled" 992 | }, 993 | "istio": { 994 | "uid": "kubernetes://istio-galley-5bcd89bd9c-52rgh.istio-system" 995 | } 996 | } 997 | }, 998 | "loadBalancingWeight": 1 999 | } 1000 | ], 1001 | "loadBalancingWeight": 1 1002 | } 1003 | ] 1004 | }, 1005 | { 1006 | "clusterName": "outbound|443||kubernetes.default.svc.cluster.local", 1007 | "endpoints": [ 1008 | { 1009 | "lbEndpoints": [ 1010 | { 1011 | "endpoint": { 1012 | "address": { 1013 | "socketAddress": { 1014 | "address": "172.17.0.19", 1015 | "portValue": 6443 1016 | } 1017 | } 1018 | }, 1019 | "metadata": { 1020 | "filterMetadata": { 1021 | "envoy.transport_socket_match": { 1022 | "tlsMode": "disabled" 1023 | }, 1024 | "istio": { 1025 | "uid": "kubernetes://kube-scheduler-master.kube-system" 1026 | } 1027 | } 1028 | }, 1029 | "loadBalancingWeight": 1 1030 | } 1031 | ], 1032 | "loadBalancingWeight": 1 1033 | } 1034 | ] 1035 | }, 1036 | { 1037 | "clusterName": "outbound_.15030_._.istio-ingressgateway.istio-system.svc.cluster.local", 1038 | "endpoints": [ 1039 | { 1040 | "lbEndpoints": [ 1041 | { 1042 | "endpoint": { 1043 | "address": { 1044 | "socketAddress": { 1045 | "address": "10.40.0.5", 1046 | "portValue": 15030 1047 | } 1048 | } 1049 | }, 1050 | "metadata": { 1051 | "filterMetadata": { 1052 | "envoy.transport_socket_match": { 1053 | "tlsMode": "disabled" 1054 | }, 1055 | "istio": { 1056 | "uid": "kubernetes://istio-ingressgateway-7d6b9b5ffc-2r8b5.istio-system" 1057 | } 1058 | } 1059 | }, 1060 | "loadBalancingWeight": 1 1061 | } 1062 | ], 1063 | "loadBalancingWeight": 1 1064 | } 1065 | ] 1066 | }, 1067 | { 1068 | "clusterName": "outbound|14250||jaeger-collector.istio-system.svc.cluster.local", 1069 | "endpoints": [ 1070 | { 1071 | "lbEndpoints": [ 1072 | { 1073 | "endpoint": { 1074 | "address": { 1075 | "socketAddress": { 1076 | "address": "10.40.0.1", 1077 | "portValue": 14250 1078 | } 1079 | } 1080 | }, 1081 | "metadata": { 1082 | "filterMetadata": { 1083 | "envoy.transport_socket_match": { 1084 | "tlsMode": "disabled" 1085 | }, 1086 | "istio": { 1087 | "uid": "kubernetes://istio-tracing-cd67ddf8-wkkcq.istio-system" 1088 | } 1089 | } 1090 | }, 1091 | "loadBalancingWeight": 1 1092 | } 1093 | ], 1094 | "loadBalancingWeight": 1 1095 | } 1096 | ] 1097 | }, 1098 | { 1099 | "clusterName": "outbound|14267||jaeger-collector.istio-system.svc.cluster.local", 1100 | "endpoints": [ 1101 | { 1102 | "lbEndpoints": [ 1103 | { 1104 | "endpoint": { 1105 | "address": { 1106 | "socketAddress": { 1107 | "address": "10.40.0.1", 1108 | "portValue": 14267 1109 | } 1110 | } 1111 | }, 1112 | "metadata": { 1113 | "filterMetadata": { 1114 | "envoy.transport_socket_match": { 1115 | "tlsMode": "disabled" 1116 | }, 1117 | "istio": { 1118 | "uid": "kubernetes://istio-tracing-cd67ddf8-wkkcq.istio-system" 1119 | } 1120 | } 1121 | }, 1122 | "loadBalancingWeight": 1 1123 | } 1124 | ], 1125 | "loadBalancingWeight": 1 1126 | } 1127 | ] 1128 | }, 1129 | { 1130 | "clusterName": "outbound_.9091_._.istio-policy.istio-system.svc.cluster.local", 1131 | "endpoints": [ 1132 | { 1133 | "lbEndpoints": [ 1134 | { 1135 | "endpoint": { 1136 | "address": { 1137 | "socketAddress": { 1138 | "address": "10.40.0.8", 1139 | "portValue": 9091 1140 | } 1141 | } 1142 | }, 1143 | "metadata": { 1144 | "filterMetadata": { 1145 | "envoy.transport_socket_match": { 1146 | "tlsMode": "disabled" 1147 | }, 1148 | "istio": { 1149 | "uid": "kubernetes://istio-policy-9f78db4cb-52xmz.istio-system" 1150 | } 1151 | } 1152 | }, 1153 | "loadBalancingWeight": 1 1154 | } 1155 | ], 1156 | "loadBalancingWeight": 1 1157 | } 1158 | ] 1159 | }, 1160 | { 1161 | "clusterName": "outbound_.14268_._.jaeger-collector.istio-system.svc.cluster.local", 1162 | "endpoints": [ 1163 | { 1164 | "lbEndpoints": [ 1165 | { 1166 | "endpoint": { 1167 | "address": { 1168 | "socketAddress": { 1169 | "address": "10.40.0.1", 1170 | "portValue": 14268 1171 | } 1172 | } 1173 | }, 1174 | "metadata": { 1175 | "filterMetadata": { 1176 | "envoy.transport_socket_match": { 1177 | "tlsMode": "disabled" 1178 | }, 1179 | "istio": { 1180 | "uid": "kubernetes://istio-tracing-cd67ddf8-wkkcq.istio-system" 1181 | } 1182 | } 1183 | }, 1184 | "loadBalancingWeight": 1 1185 | } 1186 | ], 1187 | "loadBalancingWeight": 1 1188 | } 1189 | ] 1190 | }, 1191 | { 1192 | "clusterName": "outbound|15014||istio-telemetry.istio-system.svc.cluster.local", 1193 | "endpoints": [ 1194 | { 1195 | "lbEndpoints": [ 1196 | { 1197 | "endpoint": { 1198 | "address": { 1199 | "socketAddress": { 1200 | "address": "10.40.0.3", 1201 | "portValue": 15014 1202 | } 1203 | } 1204 | }, 1205 | "metadata": { 1206 | "filterMetadata": { 1207 | "envoy.transport_socket_match": { 1208 | "tlsMode": "disabled" 1209 | }, 1210 | "istio": { 1211 | "uid": "kubernetes://istio-telemetry-fc488f958-7mpsx.istio-system" 1212 | } 1213 | } 1214 | }, 1215 | "loadBalancingWeight": 1 1216 | } 1217 | ], 1218 | "loadBalancingWeight": 1 1219 | } 1220 | ] 1221 | }, 1222 | { 1223 | "clusterName": "outbound|15004||istio-telemetry.istio-system.svc.cluster.local", 1224 | "endpoints": [ 1225 | { 1226 | "lbEndpoints": [ 1227 | { 1228 | "endpoint": { 1229 | "address": { 1230 | "socketAddress": { 1231 | "address": "10.40.0.3", 1232 | "portValue": 15004 1233 | } 1234 | } 1235 | }, 1236 | "metadata": { 1237 | "filterMetadata": { 1238 | "envoy.transport_socket_match": { 1239 | "tlsMode": "disabled" 1240 | }, 1241 | "istio": { 1242 | "uid": "kubernetes://istio-telemetry-fc488f958-7mpsx.istio-system" 1243 | } 1244 | } 1245 | }, 1246 | "loadBalancingWeight": 1 1247 | } 1248 | ], 1249 | "loadBalancingWeight": 1 1250 | } 1251 | ] 1252 | }, 1253 | { 1254 | "clusterName": "outbound|15014||istio-pilot.istio-system.svc.cluster.local", 1255 | "endpoints": [ 1256 | { 1257 | "lbEndpoints": [ 1258 | { 1259 | "endpoint": { 1260 | "address": { 1261 | "socketAddress": { 1262 | "address": "10.40.0.6", 1263 | "portValue": 15014 1264 | } 1265 | } 1266 | }, 1267 | "metadata": { 1268 | "filterMetadata": { 1269 | "envoy.transport_socket_match": { 1270 | "tlsMode": "disabled" 1271 | }, 1272 | "istio": { 1273 | "uid": "kubernetes://istio-pilot-678b45584b-nnmbm.istio-system" 1274 | } 1275 | } 1276 | }, 1277 | "loadBalancingWeight": 1 1278 | } 1279 | ], 1280 | "loadBalancingWeight": 1 1281 | } 1282 | ] 1283 | }, 1284 | { 1285 | "clusterName": "outbound|15029||istio-ingressgateway.istio-system.svc.cluster.local", 1286 | "endpoints": [ 1287 | { 1288 | "lbEndpoints": [ 1289 | { 1290 | "endpoint": { 1291 | "address": { 1292 | "socketAddress": { 1293 | "address": "10.40.0.5", 1294 | "portValue": 15029 1295 | } 1296 | } 1297 | }, 1298 | "metadata": { 1299 | "filterMetadata": { 1300 | "envoy.transport_socket_match": { 1301 | "tlsMode": "disabled" 1302 | }, 1303 | "istio": { 1304 | "uid": "kubernetes://istio-ingressgateway-7d6b9b5ffc-2r8b5.istio-system" 1305 | } 1306 | } 1307 | }, 1308 | "loadBalancingWeight": 1 1309 | } 1310 | ], 1311 | "loadBalancingWeight": 1 1312 | } 1313 | ] 1314 | }, 1315 | { 1316 | "clusterName": "outbound|15019||istio-galley.istio-system.svc.cluster.local", 1317 | "endpoints": [ 1318 | { 1319 | "lbEndpoints": [ 1320 | { 1321 | "endpoint": { 1322 | "address": { 1323 | "socketAddress": { 1324 | "address": "10.40.0.10", 1325 | "portValue": 15019 1326 | } 1327 | } 1328 | }, 1329 | "metadata": { 1330 | "filterMetadata": { 1331 | "envoy.transport_socket_match": { 1332 | "tlsMode": "disabled" 1333 | }, 1334 | "istio": { 1335 | "uid": "kubernetes://istio-galley-5bcd89bd9c-52rgh.istio-system" 1336 | } 1337 | } 1338 | }, 1339 | "loadBalancingWeight": 1 1340 | } 1341 | ], 1342 | "loadBalancingWeight": 1 1343 | } 1344 | ] 1345 | }, 1346 | { 1347 | "clusterName": "outbound_.443_._.istio-egressgateway.istio-system.svc.cluster.local", 1348 | "endpoints": [ 1349 | { 1350 | "lbEndpoints": [ 1351 | { 1352 | "endpoint": { 1353 | "address": { 1354 | "socketAddress": { 1355 | "address": "10.40.0.2", 1356 | "portValue": 443 1357 | } 1358 | } 1359 | }, 1360 | "metadata": { 1361 | "filterMetadata": { 1362 | "envoy.transport_socket_match": { 1363 | "tlsMode": "disabled" 1364 | }, 1365 | "istio": { 1366 | "uid": "kubernetes://istio-egressgateway-75cb89bd7f-knpm8.istio-system" 1367 | } 1368 | } 1369 | }, 1370 | "loadBalancingWeight": 1 1371 | } 1372 | ], 1373 | "loadBalancingWeight": 1 1374 | } 1375 | ] 1376 | }, 1377 | { 1378 | "clusterName": "outbound_.16686_._.jaeger-query.istio-system.svc.cluster.local", 1379 | "endpoints": [ 1380 | { 1381 | "lbEndpoints": [ 1382 | { 1383 | "endpoint": { 1384 | "address": { 1385 | "socketAddress": { 1386 | "address": "10.40.0.1", 1387 | "portValue": 16686 1388 | } 1389 | } 1390 | }, 1391 | "metadata": { 1392 | "filterMetadata": { 1393 | "envoy.transport_socket_match": { 1394 | "tlsMode": "disabled" 1395 | }, 1396 | "istio": { 1397 | "uid": "kubernetes://istio-tracing-cd67ddf8-wkkcq.istio-system" 1398 | } 1399 | } 1400 | }, 1401 | "loadBalancingWeight": 1 1402 | } 1403 | ], 1404 | "loadBalancingWeight": 1 1405 | } 1406 | ] 1407 | }, 1408 | { 1409 | "clusterName": "outbound_.14250_._.jaeger-collector.istio-system.svc.cluster.local", 1410 | "endpoints": [ 1411 | { 1412 | "lbEndpoints": [ 1413 | { 1414 | "endpoint": { 1415 | "address": { 1416 | "socketAddress": { 1417 | "address": "10.40.0.1", 1418 | "portValue": 14250 1419 | } 1420 | } 1421 | }, 1422 | "metadata": { 1423 | "filterMetadata": { 1424 | "envoy.transport_socket_match": { 1425 | "tlsMode": "disabled" 1426 | }, 1427 | "istio": { 1428 | "uid": "kubernetes://istio-tracing-cd67ddf8-wkkcq.istio-system" 1429 | } 1430 | } 1431 | }, 1432 | "loadBalancingWeight": 1 1433 | } 1434 | ], 1435 | "loadBalancingWeight": 1 1436 | } 1437 | ] 1438 | }, 1439 | { 1440 | "clusterName": "outbound|9080||ratings.default.svc.cluster.local", 1441 | "endpoints": [ 1442 | { 1443 | "lbEndpoints": [ 1444 | { 1445 | "endpoint": { 1446 | "address": { 1447 | "socketAddress": { 1448 | "address": "10.40.0.15", 1449 | "portValue": 9080 1450 | } 1451 | } 1452 | }, 1453 | "metadata": { 1454 | "filterMetadata": { 1455 | "envoy.transport_socket_match": { 1456 | "tlsMode": "istio" 1457 | }, 1458 | "istio": { 1459 | "uid": "kubernetes://ratings-v1-f745cf57b-wv5ts.default" 1460 | } 1461 | } 1462 | }, 1463 | "loadBalancingWeight": 1 1464 | } 1465 | ], 1466 | "loadBalancingWeight": 1 1467 | } 1468 | ] 1469 | }, 1470 | { 1471 | "clusterName": "outbound|15011||istio-pilot.istio-system.svc.cluster.local", 1472 | "endpoints": [ 1473 | { 1474 | "lbEndpoints": [ 1475 | { 1476 | "endpoint": { 1477 | "address": { 1478 | "socketAddress": { 1479 | "address": "10.40.0.6", 1480 | "portValue": 15011 1481 | } 1482 | } 1483 | }, 1484 | "metadata": { 1485 | "filterMetadata": { 1486 | "envoy.transport_socket_match": { 1487 | "tlsMode": "disabled" 1488 | }, 1489 | "istio": { 1490 | "uid": "kubernetes://istio-pilot-678b45584b-nnmbm.istio-system" 1491 | } 1492 | } 1493 | }, 1494 | "loadBalancingWeight": 1 1495 | } 1496 | ], 1497 | "loadBalancingWeight": 1 1498 | } 1499 | ] 1500 | }, 1501 | { 1502 | "clusterName": "outbound|15030||istio-ingressgateway.istio-system.svc.cluster.local", 1503 | "endpoints": [ 1504 | { 1505 | "lbEndpoints": [ 1506 | { 1507 | "endpoint": { 1508 | "address": { 1509 | "socketAddress": { 1510 | "address": "10.40.0.5", 1511 | "portValue": 15030 1512 | } 1513 | } 1514 | }, 1515 | "metadata": { 1516 | "filterMetadata": { 1517 | "envoy.transport_socket_match": { 1518 | "tlsMode": "disabled" 1519 | }, 1520 | "istio": { 1521 | "uid": "kubernetes://istio-ingressgateway-7d6b9b5ffc-2r8b5.istio-system" 1522 | } 1523 | } 1524 | }, 1525 | "loadBalancingWeight": 1 1526 | } 1527 | ], 1528 | "loadBalancingWeight": 1 1529 | } 1530 | ] 1531 | }, 1532 | { 1533 | "clusterName": "outbound_.15032_._.istio-ingressgateway.istio-system.svc.cluster.local", 1534 | "endpoints": [ 1535 | { 1536 | "lbEndpoints": [ 1537 | { 1538 | "endpoint": { 1539 | "address": { 1540 | "socketAddress": { 1541 | "address": "10.40.0.5", 1542 | "portValue": 15032 1543 | } 1544 | } 1545 | }, 1546 | "metadata": { 1547 | "filterMetadata": { 1548 | "envoy.transport_socket_match": { 1549 | "tlsMode": "disabled" 1550 | }, 1551 | "istio": { 1552 | "uid": "kubernetes://istio-ingressgateway-7d6b9b5ffc-2r8b5.istio-system" 1553 | } 1554 | } 1555 | }, 1556 | "loadBalancingWeight": 1 1557 | } 1558 | ], 1559 | "loadBalancingWeight": 1 1560 | } 1561 | ] 1562 | }, 1563 | { 1564 | "clusterName": "outbound_.80_._.istio-egressgateway.istio-system.svc.cluster.local", 1565 | "endpoints": [ 1566 | { 1567 | "lbEndpoints": [ 1568 | { 1569 | "endpoint": { 1570 | "address": { 1571 | "socketAddress": { 1572 | "address": "10.40.0.2", 1573 | "portValue": 80 1574 | } 1575 | } 1576 | }, 1577 | "metadata": { 1578 | "filterMetadata": { 1579 | "envoy.transport_socket_match": { 1580 | "tlsMode": "disabled" 1581 | }, 1582 | "istio": { 1583 | "uid": "kubernetes://istio-egressgateway-75cb89bd7f-knpm8.istio-system" 1584 | } 1585 | } 1586 | }, 1587 | "loadBalancingWeight": 1 1588 | } 1589 | ], 1590 | "loadBalancingWeight": 1 1591 | } 1592 | ] 1593 | }, 1594 | { 1595 | "clusterName": "outbound_.15019_._.istio-galley.istio-system.svc.cluster.local", 1596 | "endpoints": [ 1597 | { 1598 | "lbEndpoints": [ 1599 | { 1600 | "endpoint": { 1601 | "address": { 1602 | "socketAddress": { 1603 | "address": "10.40.0.10", 1604 | "portValue": 15019 1605 | } 1606 | } 1607 | }, 1608 | "metadata": { 1609 | "filterMetadata": { 1610 | "envoy.transport_socket_match": { 1611 | "tlsMode": "disabled" 1612 | }, 1613 | "istio": { 1614 | "uid": "kubernetes://istio-galley-5bcd89bd9c-52rgh.istio-system" 1615 | } 1616 | } 1617 | }, 1618 | "loadBalancingWeight": 1 1619 | } 1620 | ], 1621 | "loadBalancingWeight": 1 1622 | } 1623 | ] 1624 | }, 1625 | { 1626 | "clusterName": "outbound|42422||istio-telemetry.istio-system.svc.cluster.local", 1627 | "endpoints": [ 1628 | { 1629 | "lbEndpoints": [ 1630 | { 1631 | "endpoint": { 1632 | "address": { 1633 | "socketAddress": { 1634 | "address": "10.40.0.3", 1635 | "portValue": 42422 1636 | } 1637 | } 1638 | }, 1639 | "metadata": { 1640 | "filterMetadata": { 1641 | "envoy.transport_socket_match": { 1642 | "tlsMode": "disabled" 1643 | }, 1644 | "istio": { 1645 | "uid": "kubernetes://istio-telemetry-fc488f958-7mpsx.istio-system" 1646 | } 1647 | } 1648 | }, 1649 | "loadBalancingWeight": 1 1650 | } 1651 | ], 1652 | "loadBalancingWeight": 1 1653 | } 1654 | ] 1655 | }, 1656 | { 1657 | "clusterName": "outbound|15443||istio-ingressgateway.istio-system.svc.cluster.local", 1658 | "endpoints": [ 1659 | { 1660 | "lbEndpoints": [ 1661 | { 1662 | "endpoint": { 1663 | "address": { 1664 | "socketAddress": { 1665 | "address": "10.40.0.5", 1666 | "portValue": 15443 1667 | } 1668 | } 1669 | }, 1670 | "metadata": { 1671 | "filterMetadata": { 1672 | "envoy.transport_socket_match": { 1673 | "tlsMode": "disabled" 1674 | }, 1675 | "istio": { 1676 | "uid": "kubernetes://istio-ingressgateway-7d6b9b5ffc-2r8b5.istio-system" 1677 | } 1678 | } 1679 | }, 1680 | "loadBalancingWeight": 1 1681 | } 1682 | ], 1683 | "loadBalancingWeight": 1 1684 | } 1685 | ] 1686 | }, 1687 | { 1688 | "clusterName": "outbound_.15014_._.istio-telemetry.istio-system.svc.cluster.local", 1689 | "endpoints": [ 1690 | { 1691 | "lbEndpoints": [ 1692 | { 1693 | "endpoint": { 1694 | "address": { 1695 | "socketAddress": { 1696 | "address": "10.40.0.3", 1697 | "portValue": 15014 1698 | } 1699 | } 1700 | }, 1701 | "metadata": { 1702 | "filterMetadata": { 1703 | "envoy.transport_socket_match": { 1704 | "tlsMode": "disabled" 1705 | }, 1706 | "istio": { 1707 | "uid": "kubernetes://istio-telemetry-fc488f958-7mpsx.istio-system" 1708 | } 1709 | } 1710 | }, 1711 | "loadBalancingWeight": 1 1712 | } 1713 | ], 1714 | "loadBalancingWeight": 1 1715 | } 1716 | ] 1717 | }, 1718 | { 1719 | "clusterName": "outbound_.15443_._.istio-egressgateway.istio-system.svc.cluster.local", 1720 | "endpoints": [ 1721 | { 1722 | "lbEndpoints": [ 1723 | { 1724 | "endpoint": { 1725 | "address": { 1726 | "socketAddress": { 1727 | "address": "10.40.0.2", 1728 | "portValue": 15443 1729 | } 1730 | } 1731 | }, 1732 | "metadata": { 1733 | "filterMetadata": { 1734 | "envoy.transport_socket_match": { 1735 | "tlsMode": "disabled" 1736 | }, 1737 | "istio": { 1738 | "uid": "kubernetes://istio-egressgateway-75cb89bd7f-knpm8.istio-system" 1739 | } 1740 | } 1741 | }, 1742 | "loadBalancingWeight": 1 1743 | } 1744 | ], 1745 | "loadBalancingWeight": 1 1746 | } 1747 | ] 1748 | }, 1749 | { 1750 | "clusterName": "outbound_.15014_._.istio-galley.istio-system.svc.cluster.local", 1751 | "endpoints": [ 1752 | { 1753 | "lbEndpoints": [ 1754 | { 1755 | "endpoint": { 1756 | "address": { 1757 | "socketAddress": { 1758 | "address": "10.40.0.10", 1759 | "portValue": 15014 1760 | } 1761 | } 1762 | }, 1763 | "metadata": { 1764 | "filterMetadata": { 1765 | "envoy.transport_socket_match": { 1766 | "tlsMode": "disabled" 1767 | }, 1768 | "istio": { 1769 | "uid": "kubernetes://istio-galley-5bcd89bd9c-52rgh.istio-system" 1770 | } 1771 | } 1772 | }, 1773 | "loadBalancingWeight": 1 1774 | } 1775 | ], 1776 | "loadBalancingWeight": 1 1777 | } 1778 | ] 1779 | }, 1780 | { 1781 | "clusterName": "outbound_.8060_._.istio-citadel.istio-system.svc.cluster.local", 1782 | "endpoints": [ 1783 | { 1784 | "lbEndpoints": [ 1785 | { 1786 | "endpoint": { 1787 | "address": { 1788 | "socketAddress": { 1789 | "address": "10.40.0.9", 1790 | "portValue": 8060 1791 | } 1792 | } 1793 | }, 1794 | "metadata": { 1795 | "filterMetadata": { 1796 | "envoy.transport_socket_match": { 1797 | "tlsMode": "disabled" 1798 | }, 1799 | "istio": { 1800 | "uid": "kubernetes://istio-citadel-6dc789bc4c-bjgh5.istio-system" 1801 | } 1802 | } 1803 | }, 1804 | "loadBalancingWeight": 1 1805 | } 1806 | ], 1807 | "loadBalancingWeight": 1 1808 | } 1809 | ] 1810 | }, 1811 | { 1812 | "clusterName": "outbound_.443_._.kubernetes.default.svc.cluster.local", 1813 | "endpoints": [ 1814 | { 1815 | "lbEndpoints": [ 1816 | { 1817 | "endpoint": { 1818 | "address": { 1819 | "socketAddress": { 1820 | "address": "172.17.0.19", 1821 | "portValue": 6443 1822 | } 1823 | } 1824 | }, 1825 | "metadata": { 1826 | "filterMetadata": { 1827 | "envoy.transport_socket_match": { 1828 | "tlsMode": "disabled" 1829 | }, 1830 | "istio": { 1831 | "uid": "kubernetes://kube-scheduler-master.kube-system" 1832 | } 1833 | } 1834 | }, 1835 | "loadBalancingWeight": 1 1836 | } 1837 | ], 1838 | "loadBalancingWeight": 1 1839 | } 1840 | ] 1841 | }, 1842 | { 1843 | "clusterName": "outbound_.9080_._.productpage.default.svc.cluster.local", 1844 | "endpoints": [ 1845 | { 1846 | "lbEndpoints": [ 1847 | { 1848 | "endpoint": { 1849 | "address": { 1850 | "socketAddress": { 1851 | "address": "10.40.0.18", 1852 | "portValue": 9080 1853 | } 1854 | } 1855 | }, 1856 | "metadata": { 1857 | "filterMetadata": { 1858 | "envoy.transport_socket_match": { 1859 | "tlsMode": "istio" 1860 | }, 1861 | "istio": { 1862 | "uid": "kubernetes://productpage-v1-c7765c886-j8dlw.default" 1863 | } 1864 | } 1865 | }, 1866 | "loadBalancingWeight": 1 1867 | } 1868 | ], 1869 | "loadBalancingWeight": 1 1870 | } 1871 | ] 1872 | }, 1873 | { 1874 | "clusterName": "outbound_.15031_._.istio-ingressgateway.istio-system.svc.cluster.local", 1875 | "endpoints": [ 1876 | { 1877 | "lbEndpoints": [ 1878 | { 1879 | "endpoint": { 1880 | "address": { 1881 | "socketAddress": { 1882 | "address": "10.40.0.5", 1883 | "portValue": 15031 1884 | } 1885 | } 1886 | }, 1887 | "metadata": { 1888 | "filterMetadata": { 1889 | "envoy.transport_socket_match": { 1890 | "tlsMode": "disabled" 1891 | }, 1892 | "istio": { 1893 | "uid": "kubernetes://istio-ingressgateway-7d6b9b5ffc-2r8b5.istio-system" 1894 | } 1895 | } 1896 | }, 1897 | "loadBalancingWeight": 1 1898 | } 1899 | ], 1900 | "loadBalancingWeight": 1 1901 | } 1902 | ] 1903 | }, 1904 | { 1905 | "clusterName": "outbound|15443||istio-egressgateway.istio-system.svc.cluster.local", 1906 | "endpoints": [ 1907 | { 1908 | "lbEndpoints": [ 1909 | { 1910 | "endpoint": { 1911 | "address": { 1912 | "socketAddress": { 1913 | "address": "10.40.0.2", 1914 | "portValue": 15443 1915 | } 1916 | } 1917 | }, 1918 | "metadata": { 1919 | "filterMetadata": { 1920 | "envoy.transport_socket_match": { 1921 | "tlsMode": "disabled" 1922 | }, 1923 | "istio": { 1924 | "uid": "kubernetes://istio-egressgateway-75cb89bd7f-knpm8.istio-system" 1925 | } 1926 | } 1927 | }, 1928 | "loadBalancingWeight": 1 1929 | } 1930 | ], 1931 | "loadBalancingWeight": 1 1932 | } 1933 | ] 1934 | }, 1935 | { 1936 | "clusterName": "outbound|443||istio-sidecar-injector.istio-system.svc.cluster.local", 1937 | "endpoints": [ 1938 | { 1939 | "lbEndpoints": [ 1940 | { 1941 | "endpoint": { 1942 | "address": { 1943 | "socketAddress": { 1944 | "address": "10.40.0.12", 1945 | "portValue": 9443 1946 | } 1947 | } 1948 | }, 1949 | "metadata": { 1950 | "filterMetadata": { 1951 | "envoy.transport_socket_match": { 1952 | "tlsMode": "disabled" 1953 | }, 1954 | "istio": { 1955 | "uid": "kubernetes://istio-sidecar-injector-7d65c79dd5-xrlbh.istio-system" 1956 | } 1957 | } 1958 | }, 1959 | "loadBalancingWeight": 1 1960 | } 1961 | ], 1962 | "loadBalancingWeight": 1 1963 | } 1964 | ] 1965 | }, 1966 | { 1967 | "clusterName": "outbound|20001||kiali.istio-system.svc.cluster.local", 1968 | "endpoints": [ 1969 | { 1970 | "lbEndpoints": [ 1971 | { 1972 | "endpoint": { 1973 | "address": { 1974 | "socketAddress": { 1975 | "address": "10.40.0.4", 1976 | "portValue": 20001 1977 | } 1978 | } 1979 | }, 1980 | "metadata": { 1981 | "filterMetadata": { 1982 | "envoy.transport_socket_match": { 1983 | "tlsMode": "disabled" 1984 | }, 1985 | "istio": { 1986 | "uid": "kubernetes://kiali-7964898d8c-p6mvr.istio-system" 1987 | } 1988 | } 1989 | }, 1990 | "loadBalancingWeight": 1 1991 | } 1992 | ], 1993 | "loadBalancingWeight": 1 1994 | } 1995 | ] 1996 | }, 1997 | { 1998 | "clusterName": "outbound|16686||jaeger-query.istio-system.svc.cluster.local", 1999 | "endpoints": [ 2000 | { 2001 | "lbEndpoints": [ 2002 | { 2003 | "endpoint": { 2004 | "address": { 2005 | "socketAddress": { 2006 | "address": "10.40.0.1", 2007 | "portValue": 16686 2008 | } 2009 | } 2010 | }, 2011 | "metadata": { 2012 | "filterMetadata": { 2013 | "envoy.transport_socket_match": { 2014 | "tlsMode": "disabled" 2015 | }, 2016 | "istio": { 2017 | "uid": "kubernetes://istio-tracing-cd67ddf8-wkkcq.istio-system" 2018 | } 2019 | } 2020 | }, 2021 | "loadBalancingWeight": 1 2022 | } 2023 | ], 2024 | "loadBalancingWeight": 1 2025 | } 2026 | ] 2027 | }, 2028 | { 2029 | "clusterName": "outbound|8080||istio-pilot.istio-system.svc.cluster.local", 2030 | "endpoints": [ 2031 | { 2032 | "lbEndpoints": [ 2033 | { 2034 | "endpoint": { 2035 | "address": { 2036 | "socketAddress": { 2037 | "address": "10.40.0.6", 2038 | "portValue": 8080 2039 | } 2040 | } 2041 | }, 2042 | "metadata": { 2043 | "filterMetadata": { 2044 | "envoy.transport_socket_match": { 2045 | "tlsMode": "disabled" 2046 | }, 2047 | "istio": { 2048 | "uid": "kubernetes://istio-pilot-678b45584b-nnmbm.istio-system" 2049 | } 2050 | } 2051 | }, 2052 | "loadBalancingWeight": 1 2053 | } 2054 | ], 2055 | "loadBalancingWeight": 1 2056 | } 2057 | ] 2058 | }, 2059 | { 2060 | "clusterName": "outbound|80||tracing.istio-system.svc.cluster.local", 2061 | "endpoints": [ 2062 | { 2063 | "lbEndpoints": [ 2064 | { 2065 | "endpoint": { 2066 | "address": { 2067 | "socketAddress": { 2068 | "address": "10.40.0.1", 2069 | "portValue": 16686 2070 | } 2071 | } 2072 | }, 2073 | "metadata": { 2074 | "filterMetadata": { 2075 | "envoy.transport_socket_match": { 2076 | "tlsMode": "disabled" 2077 | }, 2078 | "istio": { 2079 | "uid": "kubernetes://istio-tracing-cd67ddf8-wkkcq.istio-system" 2080 | } 2081 | } 2082 | }, 2083 | "loadBalancingWeight": 1 2084 | } 2085 | ], 2086 | "loadBalancingWeight": 1 2087 | } 2088 | ] 2089 | }, 2090 | { 2091 | "clusterName": "outbound_.9080_._.ratings.default.svc.cluster.local", 2092 | "endpoints": [ 2093 | { 2094 | "lbEndpoints": [ 2095 | { 2096 | "endpoint": { 2097 | "address": { 2098 | "socketAddress": { 2099 | "address": "10.40.0.15", 2100 | "portValue": 9080 2101 | } 2102 | } 2103 | }, 2104 | "metadata": { 2105 | "filterMetadata": { 2106 | "envoy.transport_socket_match": { 2107 | "tlsMode": "istio" 2108 | }, 2109 | "istio": { 2110 | "uid": "kubernetes://ratings-v1-f745cf57b-wv5ts.default" 2111 | } 2112 | } 2113 | }, 2114 | "loadBalancingWeight": 1 2115 | } 2116 | ], 2117 | "loadBalancingWeight": 1 2118 | } 2119 | ] 2120 | }, 2121 | { 2122 | "clusterName": "outbound_.15014_._.istio-pilot.istio-system.svc.cluster.local", 2123 | "endpoints": [ 2124 | { 2125 | "lbEndpoints": [ 2126 | { 2127 | "endpoint": { 2128 | "address": { 2129 | "socketAddress": { 2130 | "address": "10.40.0.6", 2131 | "portValue": 15014 2132 | } 2133 | } 2134 | }, 2135 | "metadata": { 2136 | "filterMetadata": { 2137 | "envoy.transport_socket_match": { 2138 | "tlsMode": "disabled" 2139 | }, 2140 | "istio": { 2141 | "uid": "kubernetes://istio-pilot-678b45584b-nnmbm.istio-system" 2142 | } 2143 | } 2144 | }, 2145 | "loadBalancingWeight": 1 2146 | } 2147 | ], 2148 | "loadBalancingWeight": 1 2149 | } 2150 | ] 2151 | }, 2152 | { 2153 | "clusterName": "outbound_.15011_._.istio-pilot.istio-system.svc.cluster.local", 2154 | "endpoints": [ 2155 | { 2156 | "lbEndpoints": [ 2157 | { 2158 | "endpoint": { 2159 | "address": { 2160 | "socketAddress": { 2161 | "address": "10.40.0.6", 2162 | "portValue": 15011 2163 | } 2164 | } 2165 | }, 2166 | "metadata": { 2167 | "filterMetadata": { 2168 | "envoy.transport_socket_match": { 2169 | "tlsMode": "disabled" 2170 | }, 2171 | "istio": { 2172 | "uid": "kubernetes://istio-pilot-678b45584b-nnmbm.istio-system" 2173 | } 2174 | } 2175 | }, 2176 | "loadBalancingWeight": 1 2177 | } 2178 | ], 2179 | "loadBalancingWeight": 1 2180 | } 2181 | ] 2182 | }, 2183 | { 2184 | "clusterName": "outbound_.15443_._.istio-ingressgateway.istio-system.svc.cluster.local", 2185 | "endpoints": [ 2186 | { 2187 | "lbEndpoints": [ 2188 | { 2189 | "endpoint": { 2190 | "address": { 2191 | "socketAddress": { 2192 | "address": "10.40.0.5", 2193 | "portValue": 15443 2194 | } 2195 | } 2196 | }, 2197 | "metadata": { 2198 | "filterMetadata": { 2199 | "envoy.transport_socket_match": { 2200 | "tlsMode": "disabled" 2201 | }, 2202 | "istio": { 2203 | "uid": "kubernetes://istio-ingressgateway-7d6b9b5ffc-2r8b5.istio-system" 2204 | } 2205 | } 2206 | }, 2207 | "loadBalancingWeight": 1 2208 | } 2209 | ], 2210 | "loadBalancingWeight": 1 2211 | } 2212 | ] 2213 | }, 2214 | { 2215 | "clusterName": "outbound_.20001_._.kiali.istio-system.svc.cluster.local", 2216 | "endpoints": [ 2217 | { 2218 | "lbEndpoints": [ 2219 | { 2220 | "endpoint": { 2221 | "address": { 2222 | "socketAddress": { 2223 | "address": "10.40.0.4", 2224 | "portValue": 20001 2225 | } 2226 | } 2227 | }, 2228 | "metadata": { 2229 | "filterMetadata": { 2230 | "envoy.transport_socket_match": { 2231 | "tlsMode": "disabled" 2232 | }, 2233 | "istio": { 2234 | "uid": "kubernetes://kiali-7964898d8c-p6mvr.istio-system" 2235 | } 2236 | } 2237 | }, 2238 | "loadBalancingWeight": 1 2239 | } 2240 | ], 2241 | "loadBalancingWeight": 1 2242 | } 2243 | ] 2244 | }, 2245 | { 2246 | "clusterName": "outbound|9080||productpage.default.svc.cluster.local", 2247 | "endpoints": [ 2248 | { 2249 | "lbEndpoints": [ 2250 | { 2251 | "endpoint": { 2252 | "address": { 2253 | "socketAddress": { 2254 | "address": "10.40.0.18", 2255 | "portValue": 9080 2256 | } 2257 | } 2258 | }, 2259 | "metadata": { 2260 | "filterMetadata": { 2261 | "envoy.transport_socket_match": { 2262 | "tlsMode": "istio" 2263 | }, 2264 | "istio": { 2265 | "uid": "kubernetes://productpage-v1-c7765c886-j8dlw.default" 2266 | } 2267 | } 2268 | }, 2269 | "loadBalancingWeight": 1 2270 | } 2271 | ], 2272 | "loadBalancingWeight": 1 2273 | } 2274 | ] 2275 | }, 2276 | { 2277 | "clusterName": "outbound|53||kube-dns.kube-system.svc.cluster.local", 2278 | "endpoints": [ 2279 | { 2280 | "lbEndpoints": [ 2281 | { 2282 | "endpoint": { 2283 | "address": { 2284 | "socketAddress": { 2285 | "address": "10.88.0.3", 2286 | "portValue": 53 2287 | } 2288 | } 2289 | }, 2290 | "metadata": { 2291 | "filterMetadata": { 2292 | "envoy.transport_socket_match": { 2293 | "tlsMode": "disabled" 2294 | }, 2295 | "istio": { 2296 | "uid": "kubernetes://coredns-fb8b8dccf-zftvx.kube-system" 2297 | } 2298 | } 2299 | }, 2300 | "loadBalancingWeight": 1 2301 | }, 2302 | { 2303 | "endpoint": { 2304 | "address": { 2305 | "socketAddress": { 2306 | "address": "10.88.0.4", 2307 | "portValue": 53 2308 | } 2309 | } 2310 | }, 2311 | "metadata": { 2312 | "filterMetadata": { 2313 | "envoy.transport_socket_match": { 2314 | "tlsMode": "disabled" 2315 | }, 2316 | "istio": { 2317 | "uid": "kubernetes://coredns-fb8b8dccf-rdtkl.kube-system" 2318 | } 2319 | } 2320 | }, 2321 | "loadBalancingWeight": 1 2322 | } 2323 | ], 2324 | "loadBalancingWeight": 2 2325 | } 2326 | ] 2327 | }, 2328 | { 2329 | "clusterName": "outbound_.9080_._.reviews.default.svc.cluster.local", 2330 | "endpoints": [ 2331 | { 2332 | "lbEndpoints": [ 2333 | { 2334 | "endpoint": { 2335 | "address": { 2336 | "socketAddress": { 2337 | "address": "10.40.0.14", 2338 | "portValue": 9080 2339 | } 2340 | } 2341 | }, 2342 | "metadata": { 2343 | "filterMetadata": { 2344 | "envoy.transport_socket_match": { 2345 | "tlsMode": "istio" 2346 | }, 2347 | "istio": { 2348 | "uid": "kubernetes://reviews-v1-75b979578c-pw8zs.default" 2349 | } 2350 | } 2351 | }, 2352 | "loadBalancingWeight": 1 2353 | }, 2354 | { 2355 | "endpoint": { 2356 | "address": { 2357 | "socketAddress": { 2358 | "address": "10.40.0.16", 2359 | "portValue": 9080 2360 | } 2361 | } 2362 | }, 2363 | "metadata": { 2364 | "filterMetadata": { 2365 | "envoy.transport_socket_match": { 2366 | "tlsMode": "istio" 2367 | }, 2368 | "istio": { 2369 | "uid": "kubernetes://reviews-v3-54c6c64795-wbls7.default" 2370 | } 2371 | } 2372 | }, 2373 | "loadBalancingWeight": 1 2374 | }, 2375 | { 2376 | "endpoint": { 2377 | "address": { 2378 | "socketAddress": { 2379 | "address": "10.40.0.17", 2380 | "portValue": 9080 2381 | } 2382 | } 2383 | }, 2384 | "metadata": { 2385 | "filterMetadata": { 2386 | "envoy.transport_socket_match": { 2387 | "tlsMode": "istio" 2388 | }, 2389 | "istio": { 2390 | "uid": "kubernetes://reviews-v2-597bf96c8f-l2fp8.default" 2391 | } 2392 | } 2393 | }, 2394 | "loadBalancingWeight": 1 2395 | } 2396 | ], 2397 | "loadBalancingWeight": 3 2398 | } 2399 | ] 2400 | }, 2401 | { 2402 | "clusterName": "outbound_.3000_._.grafana.istio-system.svc.cluster.local", 2403 | "endpoints": [ 2404 | { 2405 | "lbEndpoints": [ 2406 | { 2407 | "endpoint": { 2408 | "address": { 2409 | "socketAddress": { 2410 | "address": "10.40.0.7", 2411 | "portValue": 3000 2412 | } 2413 | } 2414 | }, 2415 | "metadata": { 2416 | "filterMetadata": { 2417 | "envoy.transport_socket_match": { 2418 | "tlsMode": "disabled" 2419 | }, 2420 | "istio": { 2421 | "uid": "kubernetes://grafana-5f798469fd-sss4g.istio-system" 2422 | } 2423 | } 2424 | }, 2425 | "loadBalancingWeight": 1 2426 | } 2427 | ], 2428 | "loadBalancingWeight": 1 2429 | } 2430 | ] 2431 | }, 2432 | { 2433 | "clusterName": "outbound|9091||istio-telemetry.istio-system.svc.cluster.local", 2434 | "endpoints": [ 2435 | { 2436 | "lbEndpoints": [ 2437 | { 2438 | "endpoint": { 2439 | "address": { 2440 | "socketAddress": { 2441 | "address": "10.40.0.3", 2442 | "portValue": 9091 2443 | } 2444 | } 2445 | }, 2446 | "metadata": { 2447 | "filterMetadata": { 2448 | "envoy.transport_socket_match": { 2449 | "tlsMode": "disabled" 2450 | }, 2451 | "istio": { 2452 | "uid": "kubernetes://istio-telemetry-fc488f958-7mpsx.istio-system" 2453 | } 2454 | } 2455 | }, 2456 | "loadBalancingWeight": 1 2457 | } 2458 | ], 2459 | "loadBalancingWeight": 1 2460 | } 2461 | ] 2462 | }, 2463 | { 2464 | "clusterName": "outbound|15014||istio-citadel.istio-system.svc.cluster.local", 2465 | "endpoints": [ 2466 | { 2467 | "lbEndpoints": [ 2468 | { 2469 | "endpoint": { 2470 | "address": { 2471 | "socketAddress": { 2472 | "address": "10.40.0.9", 2473 | "portValue": 15014 2474 | } 2475 | } 2476 | }, 2477 | "metadata": { 2478 | "filterMetadata": { 2479 | "envoy.transport_socket_match": { 2480 | "tlsMode": "disabled" 2481 | }, 2482 | "istio": { 2483 | "uid": "kubernetes://istio-citadel-6dc789bc4c-bjgh5.istio-system" 2484 | } 2485 | } 2486 | }, 2487 | "loadBalancingWeight": 1 2488 | } 2489 | ], 2490 | "loadBalancingWeight": 1 2491 | } 2492 | ] 2493 | }, 2494 | { 2495 | "clusterName": "outbound|8060||istio-citadel.istio-system.svc.cluster.local", 2496 | "endpoints": [ 2497 | { 2498 | "lbEndpoints": [ 2499 | { 2500 | "endpoint": { 2501 | "address": { 2502 | "socketAddress": { 2503 | "address": "10.40.0.9", 2504 | "portValue": 8060 2505 | } 2506 | } 2507 | }, 2508 | "metadata": { 2509 | "filterMetadata": { 2510 | "envoy.transport_socket_match": { 2511 | "tlsMode": "disabled" 2512 | }, 2513 | "istio": { 2514 | "uid": "kubernetes://istio-citadel-6dc789bc4c-bjgh5.istio-system" 2515 | } 2516 | } 2517 | }, 2518 | "loadBalancingWeight": 1 2519 | } 2520 | ], 2521 | "loadBalancingWeight": 1 2522 | } 2523 | ] 2524 | }, 2525 | { 2526 | "clusterName": "outbound_.80_._.istio-ingressgateway.istio-system.svc.cluster.local", 2527 | "endpoints": [ 2528 | { 2529 | "lbEndpoints": [ 2530 | { 2531 | "endpoint": { 2532 | "address": { 2533 | "socketAddress": { 2534 | "address": "10.40.0.5", 2535 | "portValue": 80 2536 | } 2537 | } 2538 | }, 2539 | "metadata": { 2540 | "filterMetadata": { 2541 | "envoy.transport_socket_match": { 2542 | "tlsMode": "disabled" 2543 | }, 2544 | "istio": { 2545 | "uid": "kubernetes://istio-ingressgateway-7d6b9b5ffc-2r8b5.istio-system" 2546 | } 2547 | } 2548 | }, 2549 | "loadBalancingWeight": 1 2550 | } 2551 | ], 2552 | "loadBalancingWeight": 1 2553 | } 2554 | ] 2555 | }, 2556 | { 2557 | "clusterName": "outbound|15031||istio-ingressgateway.istio-system.svc.cluster.local", 2558 | "endpoints": [ 2559 | { 2560 | "lbEndpoints": [ 2561 | { 2562 | "endpoint": { 2563 | "address": { 2564 | "socketAddress": { 2565 | "address": "10.40.0.5", 2566 | "portValue": 15031 2567 | } 2568 | } 2569 | }, 2570 | "metadata": { 2571 | "filterMetadata": { 2572 | "envoy.transport_socket_match": { 2573 | "tlsMode": "disabled" 2574 | }, 2575 | "istio": { 2576 | "uid": "kubernetes://istio-ingressgateway-7d6b9b5ffc-2r8b5.istio-system" 2577 | } 2578 | } 2579 | }, 2580 | "loadBalancingWeight": 1 2581 | } 2582 | ], 2583 | "loadBalancingWeight": 1 2584 | } 2585 | ] 2586 | }, 2587 | { 2588 | "clusterName": "outbound_.15010_._.istio-pilot.istio-system.svc.cluster.local", 2589 | "endpoints": [ 2590 | { 2591 | "lbEndpoints": [ 2592 | { 2593 | "endpoint": { 2594 | "address": { 2595 | "socketAddress": { 2596 | "address": "10.40.0.6", 2597 | "portValue": 15010 2598 | } 2599 | } 2600 | }, 2601 | "metadata": { 2602 | "filterMetadata": { 2603 | "envoy.transport_socket_match": { 2604 | "tlsMode": "disabled" 2605 | }, 2606 | "istio": { 2607 | "uid": "kubernetes://istio-pilot-678b45584b-nnmbm.istio-system" 2608 | } 2609 | } 2610 | }, 2611 | "loadBalancingWeight": 1 2612 | } 2613 | ], 2614 | "loadBalancingWeight": 1 2615 | } 2616 | ] 2617 | }, 2618 | { 2619 | "clusterName": "outbound_.15020_._.istio-ingressgateway.istio-system.svc.cluster.local", 2620 | "endpoints": [ 2621 | { 2622 | "lbEndpoints": [ 2623 | { 2624 | "endpoint": { 2625 | "address": { 2626 | "socketAddress": { 2627 | "address": "10.40.0.5", 2628 | "portValue": 15020 2629 | } 2630 | } 2631 | }, 2632 | "metadata": { 2633 | "filterMetadata": { 2634 | "envoy.transport_socket_match": { 2635 | "tlsMode": "disabled" 2636 | }, 2637 | "istio": { 2638 | "uid": "kubernetes://istio-ingressgateway-7d6b9b5ffc-2r8b5.istio-system" 2639 | } 2640 | } 2641 | }, 2642 | "loadBalancingWeight": 1 2643 | } 2644 | ], 2645 | "loadBalancingWeight": 1 2646 | } 2647 | ] 2648 | }, 2649 | { 2650 | "clusterName": "outbound|9080||reviews.default.svc.cluster.local", 2651 | "endpoints": [ 2652 | { 2653 | "lbEndpoints": [ 2654 | { 2655 | "endpoint": { 2656 | "address": { 2657 | "socketAddress": { 2658 | "address": "10.40.0.14", 2659 | "portValue": 9080 2660 | } 2661 | } 2662 | }, 2663 | "metadata": { 2664 | "filterMetadata": { 2665 | "envoy.transport_socket_match": { 2666 | "tlsMode": "istio" 2667 | }, 2668 | "istio": { 2669 | "uid": "kubernetes://reviews-v1-75b979578c-pw8zs.default" 2670 | } 2671 | } 2672 | }, 2673 | "loadBalancingWeight": 1 2674 | }, 2675 | { 2676 | "endpoint": { 2677 | "address": { 2678 | "socketAddress": { 2679 | "address": "10.40.0.16", 2680 | "portValue": 9080 2681 | } 2682 | } 2683 | }, 2684 | "metadata": { 2685 | "filterMetadata": { 2686 | "envoy.transport_socket_match": { 2687 | "tlsMode": "istio" 2688 | }, 2689 | "istio": { 2690 | "uid": "kubernetes://reviews-v3-54c6c64795-wbls7.default" 2691 | } 2692 | } 2693 | }, 2694 | "loadBalancingWeight": 1 2695 | }, 2696 | { 2697 | "endpoint": { 2698 | "address": { 2699 | "socketAddress": { 2700 | "address": "10.40.0.17", 2701 | "portValue": 9080 2702 | } 2703 | } 2704 | }, 2705 | "metadata": { 2706 | "filterMetadata": { 2707 | "envoy.transport_socket_match": { 2708 | "tlsMode": "istio" 2709 | }, 2710 | "istio": { 2711 | "uid": "kubernetes://reviews-v2-597bf96c8f-l2fp8.default" 2712 | } 2713 | } 2714 | }, 2715 | "loadBalancingWeight": 1 2716 | } 2717 | ], 2718 | "loadBalancingWeight": 3 2719 | } 2720 | ] 2721 | }, 2722 | { 2723 | "clusterName": "outbound|15010||istio-pilot.istio-system.svc.cluster.local", 2724 | "endpoints": [ 2725 | { 2726 | "lbEndpoints": [ 2727 | { 2728 | "endpoint": { 2729 | "address": { 2730 | "socketAddress": { 2731 | "address": "10.40.0.6", 2732 | "portValue": 15010 2733 | } 2734 | } 2735 | }, 2736 | "metadata": { 2737 | "filterMetadata": { 2738 | "envoy.transport_socket_match": { 2739 | "tlsMode": "disabled" 2740 | }, 2741 | "istio": { 2742 | "uid": "kubernetes://istio-pilot-678b45584b-nnmbm.istio-system" 2743 | } 2744 | } 2745 | }, 2746 | "loadBalancingWeight": 1 2747 | } 2748 | ], 2749 | "loadBalancingWeight": 1 2750 | } 2751 | ] 2752 | }, 2753 | { 2754 | "clusterName": "outbound|443||istio-ingressgateway.istio-system.svc.cluster.local", 2755 | "endpoints": [ 2756 | { 2757 | "lbEndpoints": [ 2758 | { 2759 | "endpoint": { 2760 | "address": { 2761 | "socketAddress": { 2762 | "address": "10.40.0.5", 2763 | "portValue": 443 2764 | } 2765 | } 2766 | }, 2767 | "metadata": { 2768 | "filterMetadata": { 2769 | "envoy.transport_socket_match": { 2770 | "tlsMode": "disabled" 2771 | }, 2772 | "istio": { 2773 | "uid": "kubernetes://istio-ingressgateway-7d6b9b5ffc-2r8b5.istio-system" 2774 | } 2775 | } 2776 | }, 2777 | "loadBalancingWeight": 1 2778 | } 2779 | ], 2780 | "loadBalancingWeight": 1 2781 | } 2782 | ] 2783 | }, 2784 | { 2785 | "clusterName": "outbound|80||istio-ingressgateway.istio-system.svc.cluster.local", 2786 | "endpoints": [ 2787 | { 2788 | "lbEndpoints": [ 2789 | { 2790 | "endpoint": { 2791 | "address": { 2792 | "socketAddress": { 2793 | "address": "10.40.0.5", 2794 | "portValue": 80 2795 | } 2796 | } 2797 | }, 2798 | "metadata": { 2799 | "filterMetadata": { 2800 | "envoy.transport_socket_match": { 2801 | "tlsMode": "disabled" 2802 | }, 2803 | "istio": { 2804 | "uid": "kubernetes://istio-ingressgateway-7d6b9b5ffc-2r8b5.istio-system" 2805 | } 2806 | } 2807 | }, 2808 | "loadBalancingWeight": 1 2809 | } 2810 | ], 2811 | "loadBalancingWeight": 1 2812 | } 2813 | ] 2814 | }, 2815 | { 2816 | "clusterName": "outbound_.42422_._.istio-telemetry.istio-system.svc.cluster.local", 2817 | "endpoints": [ 2818 | { 2819 | "lbEndpoints": [ 2820 | { 2821 | "endpoint": { 2822 | "address": { 2823 | "socketAddress": { 2824 | "address": "10.40.0.3", 2825 | "portValue": 42422 2826 | } 2827 | } 2828 | }, 2829 | "metadata": { 2830 | "filterMetadata": { 2831 | "envoy.transport_socket_match": { 2832 | "tlsMode": "disabled" 2833 | }, 2834 | "istio": { 2835 | "uid": "kubernetes://istio-telemetry-fc488f958-7mpsx.istio-system" 2836 | } 2837 | } 2838 | }, 2839 | "loadBalancingWeight": 1 2840 | } 2841 | ], 2842 | "loadBalancingWeight": 1 2843 | } 2844 | ] 2845 | }, 2846 | { 2847 | "clusterName": "outbound_.9901_._.istio-galley.istio-system.svc.cluster.local", 2848 | "endpoints": [ 2849 | { 2850 | "lbEndpoints": [ 2851 | { 2852 | "endpoint": { 2853 | "address": { 2854 | "socketAddress": { 2855 | "address": "10.40.0.10", 2856 | "portValue": 9901 2857 | } 2858 | } 2859 | }, 2860 | "metadata": { 2861 | "filterMetadata": { 2862 | "envoy.transport_socket_match": { 2863 | "tlsMode": "disabled" 2864 | }, 2865 | "istio": { 2866 | "uid": "kubernetes://istio-galley-5bcd89bd9c-52rgh.istio-system" 2867 | } 2868 | } 2869 | }, 2870 | "loadBalancingWeight": 1 2871 | } 2872 | ], 2873 | "loadBalancingWeight": 1 2874 | } 2875 | ] 2876 | }, 2877 | { 2878 | "clusterName": "outbound_.15014_._.istio-citadel.istio-system.svc.cluster.local", 2879 | "endpoints": [ 2880 | { 2881 | "lbEndpoints": [ 2882 | { 2883 | "endpoint": { 2884 | "address": { 2885 | "socketAddress": { 2886 | "address": "10.40.0.9", 2887 | "portValue": 15014 2888 | } 2889 | } 2890 | }, 2891 | "metadata": { 2892 | "filterMetadata": { 2893 | "envoy.transport_socket_match": { 2894 | "tlsMode": "disabled" 2895 | }, 2896 | "istio": { 2897 | "uid": "kubernetes://istio-citadel-6dc789bc4c-bjgh5.istio-system" 2898 | } 2899 | } 2900 | }, 2901 | "loadBalancingWeight": 1 2902 | } 2903 | ], 2904 | "loadBalancingWeight": 1 2905 | } 2906 | ] 2907 | }, 2908 | { 2909 | "clusterName": "outbound|9153||kube-dns.kube-system.svc.cluster.local", 2910 | "endpoints": [ 2911 | { 2912 | "lbEndpoints": [ 2913 | { 2914 | "endpoint": { 2915 | "address": { 2916 | "socketAddress": { 2917 | "address": "10.88.0.3", 2918 | "portValue": 9153 2919 | } 2920 | } 2921 | }, 2922 | "metadata": { 2923 | "filterMetadata": { 2924 | "envoy.transport_socket_match": { 2925 | "tlsMode": "disabled" 2926 | }, 2927 | "istio": { 2928 | "uid": "kubernetes://coredns-fb8b8dccf-zftvx.kube-system" 2929 | } 2930 | } 2931 | }, 2932 | "loadBalancingWeight": 1 2933 | }, 2934 | { 2935 | "endpoint": { 2936 | "address": { 2937 | "socketAddress": { 2938 | "address": "10.88.0.4", 2939 | "portValue": 9153 2940 | } 2941 | } 2942 | }, 2943 | "metadata": { 2944 | "filterMetadata": { 2945 | "envoy.transport_socket_match": { 2946 | "tlsMode": "disabled" 2947 | }, 2948 | "istio": { 2949 | "uid": "kubernetes://coredns-fb8b8dccf-rdtkl.kube-system" 2950 | } 2951 | } 2952 | }, 2953 | "loadBalancingWeight": 1 2954 | } 2955 | ], 2956 | "loadBalancingWeight": 2 2957 | } 2958 | ] 2959 | }] 2960 | -------------------------------------------------------------------------------- /code/concepts/bookinfo-bookinfo-config-dump/productpage-envoy-rev0.json: -------------------------------------------------------------------------------- 1 | { 2 | "node": { 3 | "id": "sidecar~10.32.0.14~productpage-v1-7d6cfb7dfd-rdlsh.default~default.svc.cluster.local", 4 | "cluster": "productpage.default", 5 | "locality": { 6 | 7 | 8 | 9 | }, 10 | "metadata": {"CLUSTER_ID":"Kubernetes","CONFIG_NAMESPACE":"default","EXCHANGE_KEYS":"NAME,NAMESPACE,INSTANCE_IPS,LABELS,OWNER,PLATFORM_METADATA,WORKLOAD_NAME,CANONICAL_TELEMETRY_SERVICE,MESH_ID,SERVICE_ACCOUNT","INSTANCE_IPS":"10.32.0.14","INTERCEPTION_MODE":"REDIRECT","ISTIO_PROXY_SHA":"istio-proxy:73f240a29bece92a8882a36893ccce07b4a54664","ISTIO_VERSION":"1.5.0","LABELS":{"app":"productpage","pod-template-hash":"7d6cfb7dfd","security.istio.io/tlsMode":"istio","service.istio.io/canonical-name":"productpage","service.istio.io/canonical-revision":"v1","version":"v1"},"MESH_ID":"cluster.local","NAME":"productpage-v1-7d6cfb7dfd-rdlsh","NAMESPACE":"default","OWNER":"kubernetes://apis/apps/v1/namespaces/default/deployments/productpage-v1","POD_NAME":"productpage-v1-7d6cfb7dfd-rdlsh","POD_PORTS":"[{\"containerPort\":9080,\"protocol\":\"TCP\"}]","SDS":"true","SERVICE_ACCOUNT":"bookinfo-productpage","TRUSTJWT":"true","WORKLOAD_NAME":"productpage-v1"} 11 | }, 12 | "stats_config": { 13 | "use_all_default_tags": false, 14 | "stats_tags": [ 15 | { 16 | "tag_name": "cluster_name", 17 | "regex": "^cluster\\.((.+?(\\..+?\\.svc\\.cluster\\.local)?)\\.)" 18 | }, 19 | { 20 | "tag_name": "tcp_prefix", 21 | "regex": "^tcp\\.((.*?)\\.)\\w+?$" 22 | }, 23 | { 24 | "regex": "(response_code=\\.=(.+?);\\.;)|_rq(_(\\.d{3}))$", 25 | "tag_name": "response_code" 26 | }, 27 | { 28 | "tag_name": "response_code_class", 29 | "regex": "_rq(_(\\dxx))$" 30 | }, 31 | { 32 | "tag_name": "http_conn_manager_listener_prefix", 33 | "regex": "^listener(?=\\.).*?\\.http\\.(((?:[_.[:digit:]]*|[_\\[\\]aAbBcCdDeEfF[:digit:]]*))\\.)" 34 | }, 35 | { 36 | "tag_name": "http_conn_manager_prefix", 37 | "regex": "^http\\.(((?:[_.[:digit:]]*|[_\\[\\]aAbBcCdDeEfF[:digit:]]*))\\.)" 38 | }, 39 | { 40 | "tag_name": "listener_address", 41 | "regex": "^listener\\.(((?:[_.[:digit:]]*|[_\\[\\]aAbBcCdDeEfF[:digit:]]*))\\.)" 42 | }, 43 | { 44 | "tag_name": "mongo_prefix", 45 | "regex": "^mongo\\.(.+?)\\.(collection|cmd|cx_|op_|delays_|decoding_)(.*?)$" 46 | }, 47 | { 48 | "regex": "(reporter=\\.=(.+?);\\.;)", 49 | "tag_name": "reporter" 50 | }, 51 | { 52 | "regex": "(source_namespace=\\.=(.+?);\\.;)", 53 | "tag_name": "source_namespace" 54 | }, 55 | { 56 | "regex": "(source_workload=\\.=(.+?);\\.;)", 57 | "tag_name": "source_workload" 58 | }, 59 | { 60 | "regex": "(source_workload_namespace=\\.=(.+?);\\.;)", 61 | "tag_name": "source_workload_namespace" 62 | }, 63 | { 64 | "regex": "(source_principal=\\.=(.+?);\\.;)", 65 | "tag_name": "source_principal" 66 | }, 67 | { 68 | "regex": "(source_app=\\.=(.+?);\\.;)", 69 | "tag_name": "source_app" 70 | }, 71 | { 72 | "regex": "(source_version=\\.=(.+?);\\.;)", 73 | "tag_name": "source_version" 74 | }, 75 | { 76 | "regex": "(destination_namespace=\\.=(.+?);\\.;)", 77 | "tag_name": "destination_namespace" 78 | }, 79 | { 80 | "regex": "(destination_workload=\\.=(.+?);\\.;)", 81 | "tag_name": "destination_workload" 82 | }, 83 | { 84 | "regex": "(destination_workload_namespace=\\.=(.+?);\\.;)", 85 | "tag_name": "destination_workload_namespace" 86 | }, 87 | { 88 | "regex": "(destination_principal=\\.=(.+?);\\.;)", 89 | "tag_name": "destination_principal" 90 | }, 91 | { 92 | "regex": "(destination_app=\\.=(.+?);\\.;)", 93 | "tag_name": "destination_app" 94 | }, 95 | { 96 | "regex": "(destination_version=\\.=(.+?);\\.;)", 97 | "tag_name": "destination_version" 98 | }, 99 | { 100 | "regex": "(destination_service=\\.=(.+?);\\.;)", 101 | "tag_name": "destination_service" 102 | }, 103 | { 104 | "regex": "(destination_service_name=\\.=(.+?);\\.;)", 105 | "tag_name": "destination_service_name" 106 | }, 107 | { 108 | "regex": "(destination_service_namespace=\\.=(.+?);\\.;)", 109 | "tag_name": "destination_service_namespace" 110 | }, 111 | { 112 | "regex": "(request_protocol=\\.=(.+?);\\.;)", 113 | "tag_name": "request_protocol" 114 | }, 115 | { 116 | "regex": "(response_flags=\\.=(.+?);\\.;)", 117 | "tag_name": "response_flags" 118 | }, 119 | { 120 | "regex": "(grpc_response_status=\\.=(.*?);\\.;)", 121 | "tag_name": "grpc_response_status" 122 | }, 123 | { 124 | "regex": "(connection_security_policy=\\.=(.+?);\\.;)", 125 | "tag_name": "connection_security_policy" 126 | }, 127 | { 128 | "regex": "(permissive_response_code=\\.=(.+?);\\.;)", 129 | "tag_name": "permissive_response_code" 130 | }, 131 | { 132 | "regex": "(permissive_response_policyid=\\.=(.+?);\\.;)", 133 | "tag_name": "permissive_response_policyid" 134 | }, 135 | { 136 | "regex": "(cache\\.(.+?)\\.)", 137 | "tag_name": "cache" 138 | }, 139 | { 140 | "regex": "(component\\.(.+?)\\.)", 141 | "tag_name": "component" 142 | }, 143 | { 144 | "regex": "(tag\\.(.+?)\\.)", 145 | "tag_name": "tag" 146 | }, 147 | { 148 | "regex": "(source_canonical_service=\\.=(.+?);\\.;)", 149 | "tag_name": "source_canonical_service" 150 | }, 151 | { 152 | "regex": "(destination_canonical_service=\\.=(.+?);\\.;)", 153 | "tag_name": "destination_canonical_service" 154 | }, 155 | { 156 | "regex": "(source_canonical_revision=\\.=(.+?);\\.;)", 157 | "tag_name": "source_canonical_revision" 158 | }, 159 | { 160 | "regex": "(destination_canonical_revision=\\.=(.+?);\\.;)", 161 | "tag_name": "destination_canonical_revision" 162 | } 163 | ], 164 | "stats_matcher": { 165 | "inclusion_list": { 166 | "patterns": [ 167 | { 168 | "prefix": "reporter=" 169 | }, 170 | { 171 | "prefix": "component" 172 | }, 173 | { 174 | "prefix": "cluster_manager" 175 | }, 176 | { 177 | "prefix": "listener_manager" 178 | }, 179 | { 180 | "prefix": "http_mixer_filter" 181 | }, 182 | { 183 | "prefix": "tcp_mixer_filter" 184 | }, 185 | { 186 | "prefix": "server" 187 | }, 188 | { 189 | "prefix": "cluster.xds-grpc" 190 | }, 191 | { 192 | "suffix": "ssl_context_update_by_sds" 193 | }, 194 | ] 195 | } 196 | } 197 | }, 198 | "admin": { 199 | "access_log_path": "/dev/null", 200 | "address": { 201 | "socket_address": { 202 | "address": "127.0.0.1", 203 | "port_value": 15000 204 | } 205 | } 206 | }, 207 | "dynamic_resources": { 208 | "lds_config": { 209 | "ads": {} 210 | }, 211 | "cds_config": { 212 | "ads": {} 213 | }, 214 | "ads_config": { 215 | "api_type": "GRPC", 216 | "grpc_services": [ 217 | { 218 | "envoy_grpc": { 219 | "cluster_name": "xds-grpc" 220 | } 221 | } 222 | ] 223 | } 224 | }, 225 | "static_resources": { 226 | "clusters": [ 227 | { 228 | "name": "prometheus_stats", 229 | "type": "STATIC", 230 | "connect_timeout": "0.250s", 231 | "lb_policy": "ROUND_ROBIN", 232 | "hosts": [ 233 | { 234 | "socket_address": { 235 | "protocol": "TCP", 236 | "address": "127.0.0.1", 237 | "port_value": 15000 238 | } 239 | } 240 | ] 241 | }, 242 | { 243 | "name": "sds-grpc", 244 | "type": "STATIC", 245 | "http2_protocol_options": {}, 246 | "connect_timeout": "10s", 247 | "lb_policy": "ROUND_ROBIN", 248 | "hosts": [{ 249 | "pipe": { 250 | "path": "/etc/istio/proxy/SDS" 251 | } 252 | }] 253 | }, 254 | { 255 | "name": "xds-grpc", 256 | "type": "STRICT_DNS", 257 | "dns_refresh_rate": "300s", 258 | "dns_lookup_family": "V4_ONLY", 259 | "connect_timeout": "10s", 260 | "lb_policy": "ROUND_ROBIN", 261 | 262 | 263 | "tls_context": { 264 | "common_tls_context": { 265 | "alpn_protocols": [ 266 | "h2" 267 | ], 268 | 269 | "tls_certificate_sds_secret_configs":[ 270 | { 271 | "name":"default", 272 | "sds_config":{ 273 | "api_config_source":{ 274 | "api_type":"GRPC", 275 | "grpc_services":[ 276 | { 277 | "envoy_grpc":{ 278 | "cluster_name": "sds-grpc" 279 | } 280 | } 281 | ] 282 | } 283 | } 284 | } 285 | ], 286 | "validation_context": { 287 | "trusted_ca": { 288 | 289 | "filename": "./var/run/secrets/istio/root-cert.pem" 290 | 291 | }, 292 | "verify_subject_alt_name": ["istiod.istio-system.svc"] 293 | } 294 | 295 | }, 296 | }, 297 | 298 | 299 | "hosts": [ 300 | { 301 | "socket_address": {"address": "istiod.istio-system.svc", "port_value": 15012} 302 | } 303 | ], 304 | "circuit_breakers": { 305 | "thresholds": [ 306 | { 307 | "priority": "DEFAULT", 308 | "max_connections": 100000, 309 | "max_pending_requests": 100000, 310 | "max_requests": 100000 311 | }, 312 | { 313 | "priority": "HIGH", 314 | "max_connections": 100000, 315 | "max_pending_requests": 100000, 316 | "max_requests": 100000 317 | } 318 | ] 319 | }, 320 | "upstream_connection_options": { 321 | "tcp_keepalive": { 322 | "keepalive_time": 300 323 | } 324 | }, 325 | "max_requests_per_connection": 1, 326 | "http2_protocol_options": { } 327 | } 328 | 329 | , 330 | { 331 | "name": "zipkin", 332 | "type": "STRICT_DNS", 333 | "dns_refresh_rate": "300s", 334 | "dns_lookup_family": "V4_ONLY", 335 | "connect_timeout": "1s", 336 | "lb_policy": "ROUND_ROBIN", 337 | "hosts": [ 338 | { 339 | "socket_address": {"address": "zipkin.istio-system", "port_value": 9411} 340 | } 341 | ] 342 | } 343 | 344 | 345 | 346 | ], 347 | "listeners":[ 348 | { 349 | "address": { 350 | "socket_address": { 351 | "protocol": "TCP", 352 | "address": "0.0.0.0", 353 | "port_value": 15090 354 | } 355 | }, 356 | "filter_chains": [ 357 | { 358 | "filters": [ 359 | { 360 | "name": "envoy.http_connection_manager", 361 | "config": { 362 | "codec_type": "AUTO", 363 | "stat_prefix": "stats", 364 | "route_config": { 365 | "virtual_hosts": [ 366 | { 367 | "name": "backend", 368 | "domains": [ 369 | "*" 370 | ], 371 | "routes": [ 372 | { 373 | "match": { 374 | "prefix": "/stats/prometheus" 375 | }, 376 | "route": { 377 | "cluster": "prometheus_stats" 378 | } 379 | } 380 | ] 381 | } 382 | ] 383 | }, 384 | "http_filters": { 385 | "name": "envoy.router" 386 | } 387 | } 388 | } 389 | ] 390 | } 391 | ] 392 | } 393 | ] 394 | } 395 | 396 | , 397 | "tracing": { 398 | "http": { 399 | "name": "envoy.zipkin", 400 | "config": { 401 | "collector_cluster": "zipkin", 402 | "collector_endpoint": "/api/v2/spans", 403 | "collector_endpoint_version": "HTTP_JSON", 404 | "trace_id_128bit": "true", 405 | "shared_span_context": "false" 406 | } 407 | } 408 | } 409 | 410 | 411 | 412 | } 413 | -------------------------------------------------------------------------------- /istio-quick-start-pathway.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "快速开始 Istio", 3 | "description": "在线阅读 Istio Handbook/Istio 服务网格进阶实践:https://www.servicemesher.com/istio-handbook/", 4 | "courses": [ 5 | { 6 | "course_id": "install-istio-using-istioctl", 7 | "title": "安装 istio", 8 | "description": "介绍使用 istioctl 安装 istio 的方法" 9 | } 10 | ] 11 | } 12 | -------------------------------------------------------------------------------- /istio-quick-start/install-istio-using-istioctl/finish.md: -------------------------------------------------------------------------------- 1 | 恭喜您已经完成了《安装 istio》的课程,接下来可以进入 Bookinfo 示例,体检 Istio 的流量路由、故障注入、速率限制等功能。 2 | 3 | 在线阅读 Istio Handbook/Istio 服务网格进阶实践:https://www.servicemesher.com/istio-handbook/ 4 | -------------------------------------------------------------------------------- /istio-quick-start/install-istio-using-istioctl/index.json: -------------------------------------------------------------------------------- 1 | { 2 | "title": "安装 istio", 3 | "icon": "fa-istio", 4 | "description": "介绍使用 istioctl 安装 istio 的方法", 5 | "difficulty": "Beginner", 6 | "time": "10 minutes", 7 | "authenticated": false, 8 | "details": { 9 | "steps": [ 10 | { 11 | "title": "Step 1 - 检查 Kubernetes 集群", 12 | "text": "step1.md" 13 | }, 14 | { 15 | "title": "Step 2 - 下载 istio", 16 | "text": "step2.md" 17 | }, 18 | { 19 | "title": "Step 3 - 快速开始", 20 | "text": "step3.md" 21 | }, 22 | { 23 | "title": "Step 4 - 简单运行 Bookinfo 示例", 24 | "text": "step4.md" 25 | } 26 | ], 27 | "intro": { 28 | "text": "intro.md" 29 | }, 30 | "finish": { 31 | "text": "finish.md" 32 | } 33 | }, 34 | "environment": { 35 | "uilayout": "terminal" 36 | }, 37 | "backend": { 38 | "imageid": "kubernetes-cluster-running" 39 | } 40 | } -------------------------------------------------------------------------------- /istio-quick-start/install-istio-using-istioctl/intro.md: -------------------------------------------------------------------------------- 1 | 在本课程中,我们将学习如何使用 `istiotcl` 将 istio 部署到 Kubernetes 集群中,并进行简单的应用。 2 | 3 | 在线阅读 Istio Handbook/Istio 服务网格进阶实践:https://www.servicemesher.com/istio-handbook/ 4 | -------------------------------------------------------------------------------- /istio-quick-start/install-istio-using-istioctl/step1.md: -------------------------------------------------------------------------------- 1 | 本教程将自动帮您启动一个包含2个节点的 Kubernetes 集群(包含一个 master 节点,一个 worker 节点),Kubernetes 版本为 v1.14.0 2 | 3 | #### 检查 Kubernetes 集群 4 | 5 | 使用前,检查 Kubernetes 集群状态:`kubectl cluster-info`{{execute}} 6 | 7 | 如果集群未启动,请执行:`launch.sh`{{execute}} 8 | 9 | 检查 `katacoda-cloud-provider`,这个会影响到环境是否能正常提供外部负载均衡: 10 | 11 | `kubectl get deploy -n kube-system katacoda-cloud-provider`{{execute}} 12 | 13 | 还可以使用 `kubectl` 命令执行一些其他命令,检查 Kubernetes 集群的完整性。 14 | 15 | 正常启动了就可进入下一步了。 16 | -------------------------------------------------------------------------------- /istio-quick-start/install-istio-using-istioctl/step2.md: -------------------------------------------------------------------------------- 1 | 从 istio v1.15 版本开始,[使用 helm 安装](https://istio.io/zh/docs/setup/install/helm/)的方式已经废弃,需改用 [istioctl 安装](https://istio.io/zh/docs/setup/install/istioctl/)。 2 | 3 | ## 下载 istio 4 | 5 | 可在 [istio release](https://github.com/istio/istio/releases/tag/1.5.1) 页面下载与您操作系统匹配的压缩文件,该文件中包含:安装文件、示例和 istioctl 命令行工具。 6 | 7 | 使用如下命令来下载 istio: 8 | 9 | `curl -L https://istio.io/downloadIstio | sh -`{{execute}} 10 | 11 | 下载的 istio 包名为 `istio-1.6.*`(istio 1.6 的最新版本),包含: 12 | - `install/kubernetes`:包含 Kubernetes 相关的 YAML 安装文件。 13 | - `examples/`:包含示例应用程序。 14 | - `bin/`:包含 istioctl 的客户端文件。 15 | 16 | 切换到 istio 包所在目录: 17 | `cd istio-*/`{{execute}} 18 | 19 | 使用如下命令将 `istioctl` 客户端路径加入 $PATH 中: 20 | `export PATH=$PATH:$(pwd)/bin`{{execute}} 21 | 22 | 截止目前,我们已经可以使用高度自定义 Istio 控制平面和数据平面的 `istioctl` 命令行工具。 该命令行工具具有用户输入校验功能,可以防止错误的安装和自定义选项。 23 | 24 | 使用如下命令,查看更多关于 `istioctl` 的信息: 25 | `istioctl -h`{{execute}} 26 | -------------------------------------------------------------------------------- /istio-quick-start/install-istio-using-istioctl/step3.md: -------------------------------------------------------------------------------- 1 | 使用 `demo` 配置快速安装一套 istio。 2 | 3 | ### 安装 demo 示例 4 | 5 | 使用 `demo` 配置安装 istio: 6 | 7 | `istioctl manifest apply --set profile=demo`{{execute}} 8 | 9 | 检查 Kubernetes 服务是否部署正常,检查除 `jaeger-agent` 服务外的其他服务,是否均有正确的 `CLUSTER-IP`。 10 | 11 | **注意**:这里要观察 `istio-ingressgateway` 的 `EXTERNAL-IP`,如果为 ``,则环境暂时不能正常提供外部负载均衡,无法使用 ingress gateway。 在这种情况下,可以等待一段时间,如果一段时间后还是 `` 状态,建议刷新页面,重新开启课程安装 istio: 12 | 13 | `kubectl get svc -n istio-system`{{execute}} 14 | 15 | 检查相关 pod 是否部署成功,并且 `STATUS` 为 `Running`: 16 | 17 | `kubectl get pods -n istio-system`{{execute}} 18 | 19 | 如果都正常部署,就可以部署自己的服务了。 20 | 21 | ### 后续步骤 22 | 23 | 部署成功后,就可以进入 Bookinfo 示例了,但这里不会展开介绍 Istio 的流量路由、故障注入、速率限制等功能,相关内容会在 Bookinfo 部分介绍,这里只做简单介绍。 24 | 25 | -------------------------------------------------------------------------------- /istio-quick-start/install-istio-using-istioctl/step4.md: -------------------------------------------------------------------------------- 1 | 2 | 为 `default` 命名空间打上 `istio-injection=enabled` 标签,将该命名空间设置为自动注入 Sidecar: 3 | 4 | `kubectl label namespace default istio-injection=enabled`{{execute}} 5 | 6 | ## 部署应用 7 | 8 | `kubectl apply -f samples/bookinfo/platform/kube/bookinfo.yaml`{{execute}} 9 | 10 | 确认所有服务和 pod 都已经正常启动了,请耐心等待: 11 | 12 | `kubectl get services`{{execute}} 13 | 14 | `kubectl get pods`{{execute}} 15 | 16 | 确认 Bookinfo 正常运行: 17 | 18 | `kubectl exec -it $(kubectl get pod -l app=ratings -o jsonpath='{.items[0].metadata.name}') -c ratings -- curl productpage:9080/productpage | grep -o ".*"`{{execute}} 19 | 20 | ## 部署 ingress 21 | 22 | 定义 Ingress 网关: 23 | 24 | `kubectl apply -f samples/bookinfo/networking/bookinfo-gateway.yaml`{{execute}} 25 | 26 | 确认网关成功创建: 27 | 28 | `kubectl get gateway`{{execute}} 29 | 30 | 设置 ingress IP: 31 | 32 | `export INGRESS_HOST=$(kubectl -n istio-system get service istio-ingressgateway -o jsonpath='{.status.loadBalancer.ingress[0].ip}')`{{execute}} 33 | 34 | 设置 ingress 端口: 35 | 36 | `export INGRESS_PORT=$(kubectl -n istio-system get service istio-ingressgateway -o jsonpath='{.spec.ports[?(@.name=="http2")].port}')`{{execute}} 37 | 38 | 设置 `GATEWAY_URL`: 39 | 40 | `export GATEWAY_URL=$INGRESS_HOST:$INGRESS_PORT`{{execute}} 41 | 42 | ## 确认访问 43 | 44 | 可以用 curl 命令来确认是否能够从集群外部访问 Bookinfo 应用程序: 45 | 46 | `curl -s http://${GATEWAY_URL}/productpage | grep -o ".*"`{{execute}} 47 | 48 | 可以点击下面的连接查看: 49 | 50 | https://[[HOST_SUBDOMAIN]]-80-[[KATACODA_HOST]].environments.katacoda.com/productpage 51 | 52 | ## 卸载 istio 53 | 54 | 卸载程序将删除 `RBAC` 权限、`istio-system` 命名空间和所有相关资源。可以忽略那些不存在的资源的报错,因为它们可能已经被删除掉了。 55 | 56 | `istioctl manifest generate --set profile=demo | kubectl delete -f -`{{execute}} --------------------------------------------------------------------------------