# Istio Kiali

### Kiali (Kubernetes add on for istio) 소개 

[![image.png](http://web.joang.com:8083/uploads/images/gallery/2023-09/scaled-1680-/MIMimage.png)](http://web.joang.com:8083/uploads/images/gallery/2023-09/MIMimage.png)

[![image.png](http://web.joang.com:8083/uploads/images/gallery/2023-09/scaled-1680-/DyWimage.png)](http://web.joang.com:8083/uploads/images/gallery/2023-09/DyWimage.png)

<video controls="controls" height="373" src="http://web.joang.com:8084/attachments/25?open=true" style="width: 666px; height: 373px;" width="666"></video>  
출처 : 이종하님

- [**Istio** ](https://istio.io/)+ [**Kiali**](https://kiali.io/) :   
    [Istio Install](https://istio.io/latest/docs/setup/install/istioctl/)   
    [Kiali Install](https://kiali.io/docs/installation/) 웹 대시보드 형태로 Istio 정책을 제어하고 Istio 동작을 확인할 수 있는 기능을 지원  
    [https://isn-t.tistory.com/43](https://isn-t.tistory.com/43)
- 오픈 소스 APM Pinpoint 도입 및 후기 :   
    [https://tech.trenbe.com/2022/02/22/pinpoint.html](https://tech.trenbe.com/2022/02/22/pinpoint.html)  
    [https://pinpoint-apm.github.io/pinpoint/index.html](https://pinpoint-apm.github.io/pinpoint/index.html)

### Pinpoint 소개 

Pinpoint는 분산 서비스 및 시스템의 성능 분석/진단/추적 플랫폼 서비스로서 “N” 계층의 SOA(Service Oriented Architecture) 및 Micro-Service로 구성된 아키텍처 서비스의 추적 및 분석 기능을 제공하고, 분산 애플리케이션의 트랜잭션 분석, Topology Detection, Bytecode Instrumentation을 활용한 진단 기능을 제공

[![image.png](http://web.joang.com:8083/uploads/images/gallery/2023-09/scaled-1680-/i1Kimage.png)](http://web.joang.com:8083/uploads/images/gallery/2023-09/i1Kimage.png)

[https://guide-fin.ncloud-docs.com/docs/pinpoint-pinpoint-1-1](https://guide-fin.ncloud-docs.com/docs/pinpoint-pinpoint-1-1)

<iframe allowfullscreen="allowfullscreen" height="314" src="https://www.youtube.com/embed/U4EwnB34Dus?si=h-BxZI9QcCpZ7MDS" width="560"></iframe>

### Istio 설치 시 선택 profile 

- <span style="color: rgb(255, 255, 255);">**default**</span>: 디폴트 프로필은 IstioOperator API의 기본 설정에 따라 구성 요소를 활성화합니다. 이 프로필은 프로덕션 배포 및 멀티클러스터 메시의 주요 클러스터에 권장됩니다. 디폴트 설정을 확인하려면 istioctl profile dump 명령을 실행할 수 있습니다.
- <span style="color: rgb(255, 255, 255);">**demo**</span>: 이 프로필은 Istio의 기능을 적은 자원 요구 사항으로 표시하기 위해 설계된 구성입니다. Bookinfo 애플리케이션과 관련 작업을 실행하는 데 적합합니다. 이 프로필은 높은 수준의 추적 및 액세스 로깅을 활성화하므로 성능 테스트에는 적합하지 않습니다.
- <span style="color: rgb(255, 255, 255);">**minimal**</span>: 디폴트 프로필과 동일하지만 제어 플레인 구성 요소만 설치됩니다. 이를 통해 제어 플레인 및 데이터 플레인 구성 요소 (예: 게이트웨이)를 별도의 프로필을 사용하여 구성할 수 있습니다.
- <span style="color: rgb(255, 255, 255);">**remote**</span>: 외부 제어 플레인 또는 멀티클러스터 메시의 주요 클러스터에서 관리되는 원격 클러스터를 구성하는 데 사용됩니다.
- <span style="color: rgb(255, 255, 255);">**empty**</span>: 아무 것도 배포하지 않습니다. 사용자 정의 구성을 위한 기본 프로필로 유용할 수 있습니다.
- <span style="background-color: rgb(0, 0, 0);">**preview**</span>: 프리뷰 프로필에는 실험적인 기능이 포함되어 있습니다. Istio에 새로운 기능을 탐색하기 위해 사용됩니다. 안정성, 보안 및 성능은 보장되지 않으므로 사용 시 주의가 필요합니다.
- <span style="color: rgb(255, 255, 255);">**ambient**</span>: 앰비언트 프로필은 앰비언트 메시를 시작하는 데 도움을 주도록 설계되었습니다.

### Kubernetes 버전에 따른 Istio 버전   


<table id="bkmrk-version-currently-su" style="width: 100%;"><thead><tr><th style="width: 8.69738%;">Version</th><th style="width: 18.3479%;">Currently Supported</th><th style="width: 12.6268%;">Release Date</th><th style="width: 12.9888%;">End of Life</th><th style="width: 22.3987%;">Supported Kubernetes Versions</th><th style="width: 24.9007%;">Tested, but not supported</th></tr></thead><tbody><tr><td style="width: 8.69738%;">master</td><td style="width: 18.3479%;">No, development only</td><td style="width: 12.6268%;"> </td><td style="width: 12.9888%;"> </td><td style="width: 22.3987%;">1.29, 1.30, 1.31, 1.32</td><td style="width: 24.9007%;">1.23, 1.24, 1.25, 1.26, 1.27, 1.28</td></tr><tr><td style="width: 8.69738%;">1.24</td><td style="width: 18.3479%;">Yes</td><td style="width: 12.6268%;">November 7, 2024</td><td style="width: 12.9888%;">~Aug 2025 (Expected)</td><td style="width: 22.3987%;">1.28, 1.29, 1.30, 1.31</td><td style="width: 24.9007%;">1.23, 1.24, 1.25, 1.26, 1.27</td></tr><tr><td style="width: 8.69738%;">1.23</td><td style="width: 18.3479%;">Yes</td><td style="width: 12.6268%;">Aug 14, 2024</td><td style="width: 12.9888%;">~May 2025 (Expected)</td><td style="width: 22.3987%;">1.27, 1.28, 1.29, 1.30</td><td style="width: 24.9007%;">1.23, 1.24, 1.25, 1.26</td></tr><tr><td style="width: 8.69738%;">1.22</td><td style="width: 18.3479%;">Yes</td><td style="width: 12.6268%;">May 13, 2024</td><td style="width: 12.9888%;">~Jan 2025 (Expected)</td><td style="width: 22.3987%;">1.27, 1.28, 1.29, 1.30</td><td style="width: 24.9007%;">1.23, 1.24, 1.25, 1.26</td></tr><tr><td style="width: 8.69738%;">1.21</td><td style="width: 18.3479%;">Yes</td><td style="width: 12.6268%;">Mar 13, 2024</td><td style="width: 12.9888%;">Sept 27, 2024</td><td style="width: 22.3987%;">1.26, 1.27, 1.28, 1.29</td><td style="width: 24.9007%;">1.23, 1.24, 1.25</td></tr><tr><td style="width: 8.69738%;">1.20</td><td style="width: 18.3479%;">No</td><td style="width: 12.6268%;">Nov 14, 2023</td><td style="width: 12.9888%;">Jun 25, 2024</td><td style="width: 22.3987%;">1.25, 1.26, 1.27, 1.28, 1.29</td><td style="width: 24.9007%;">1.23, 1.24</td></tr><tr><td style="width: 8.69738%;">1.19</td><td style="width: 18.3479%;">No</td><td style="width: 12.6268%;">Sept 5, 2023</td><td style="width: 12.9888%;">Apr 24, 2024</td><td style="width: 22.3987%;">1.25, 1.26, 1.27, 1.28</td><td style="width: 24.9007%;">1.21, 1.22, 1.23, 1.24</td></tr><tr><td style="width: 8.69738%;">1.18</td><td style="width: 18.3479%;">No</td><td style="width: 12.6268%;">Jun 3, 2023</td><td style="width: 12.9888%;">Jan 4, 2024</td><td style="width: 22.3987%;">1.24, 1.25, 1.26, 1.27</td><td style="width: 24.9007%;">1.20, 1.21, 1.22, 1.23</td></tr><tr><td style="width: 8.69738%;">1.17</td><td style="width: 18.3479%;">No</td><td style="width: 12.6268%;">Feb 14, 2023</td><td style="width: 12.9888%;">Oct 27, 2023</td><td style="width: 22.3987%;">1.23, 1.24, 1.25, 1.26</td><td style="width: 24.9007%;">1.16, 1.17, 1.18, 1.19, 1.20, 1.21, 1.22</td></tr><tr><td style="width: 8.69738%;">1.16</td><td style="width: 18.3479%;">No</td><td style="width: 12.6268%;">Nov 15, 2022</td><td style="width: 12.9888%;">Jul 25, 2023</td><td style="width: 22.3987%;">1.22, 1.23, 1.24, 1.25</td><td style="width: 24.9007%;">1.16, 1.17, 1.18, 1.19, 1.20, 1.21</td></tr><tr><td style="width: 8.69738%;">1.15</td><td style="width: 18.3479%;">No</td><td style="width: 12.6268%;">Aug 31, 2022</td><td style="width: 12.9888%;">Apr 4, 2023</td><td style="width: 22.3987%;">1.22, 1.23, 1.24, 1.25</td><td style="width: 24.9007%;">1.16, 1.17, 1.18, 1.19, 1.20, 1.21</td></tr><tr><td style="width: 8.69738%;">1.14</td><td style="width: 18.3479%;">No</td><td style="width: 12.6268%;">May 24, 2022</td><td style="width: 12.9888%;">Dec 27, 2022</td><td style="width: 22.3987%;">1.21, 1.22, 1.23, 1.24</td><td style="width: 24.9007%;">1.16, 1.17, 1.18, 1.19, 1.20</td></tr><tr><td style="width: 8.69738%;">1.13</td><td style="width: 18.3479%;">No</td><td style="width: 12.6268%;">Feb 11, 2022</td><td style="width: 12.9888%;">Oct 12, 2022</td><td style="width: 22.3987%;">1.20, 1.21, 1.22, 1.23</td><td style="width: 24.9007%;">1.16, 1.17, 1.18, 1.19</td></tr></tbody></table>

The components marked as ✔ are installed within each profile:

<table id="bkmrk-%C2%A0-default-demo-minim"><thead><tr><th> </th><th>default</th><th>demo</th><th>minimal</th><th>remote</th><th>empty</th><th>preview</th><th>ambient</th></tr></thead><tbody><tr><td>Core components</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr><tr><td> `istio-egressgateway`</td><td> </td><td>✔</td><td> </td><td> </td><td> </td><td> </td><td> </td></tr><tr><td> `istio-ingressgateway`</td><td>✔</td><td>✔</td><td> </td><td> </td><td> </td><td>✔</td><td> </td></tr><tr><td> `istiod`</td><td>✔</td><td>✔</td><td>✔</td><td> </td><td> </td><td>✔</td><td>✔</td></tr><tr><td> `CNI`</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td><td>✔</td></tr><tr><td> `Ztunnel`</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td><td>✔</td></tr></tbody></table>

To further customize Istio, a number of addon components can also be installed. Refer to [integrations](https://istio.io/latest/docs/ops/integrations) for more details.

### Istio 설치 

curl -L https://istio.io/downloadIstio | sh - &lt;-- 받아서 확인하고 실행 필요   
cd istio-1.9.1  
export PATH=$PWD/bin:$PATH

istioctl profile list  
istioctl install --set profile=demo -y

```bash
[hyunsu@2-RockyKubeMaster ~]$ istioctl install --set profile=default -y
✔ Istio core installed
✔ Istiod installed
✔ Ingress gateways installed
✔ Installation complete                                                                                                       Making this installation the default for injection and validation.

Thank you for installing Istio 1.17.  Please take a few minutes to tell us about your install/upgrade experience!  https://forms.gle/hMHGiwZHPU7UQRWe9
[hyunsu@2-RockyKubeMaster ~]$

```

  
kubectl label namespace **<span style="color: rgb(255, 255, 255);">showcase1-apps </span>**istio-injection=enabled

### Kiali 설치 

<div class="alert alert-success" id="bkmrk-kiali%EC%99%80-istio-%EB%B2%84%EC%A0%84-%EA%B4%80%EA%B3%84%C2%A0" role="alert">Kiali와 Istio 버전 관계 </div><table border="1" id="bkmrk-istio-kiali-min-kial" style="width: 105.595%;"><thead><tr><th style="width: 6.07625%;">Istio</th><th style="width: 8.22081%;">Kiali Min</th><th style="width: 8.22081%;">Kiali Max</th><th style="width: 77.4424%;">Notes</th></tr></thead><tbody><tr><td style="width: 6.07625%;">1.24</td><td style="width: 8.22081%;">2.0.0</td><td style="width: 8.22081%;"> </td><td style="width: 77.4424%;"> </td></tr><tr><td style="width: 6.07625%;">1.23</td><td style="width: 8.22081%;">1.87.0</td><td style="width: 8.22081%;">2.0.0</td><td style="width: 77.4424%;">Kiali v2 requires Kiali v1 non-default namespace management (i.e. accessible\_namespaces) to migrate to Discovery Selectors.</td></tr><tr><td style="width: 6.07625%;">1.22</td><td style="width: 8.22081%;">1.82.0</td><td style="width: 8.22081%;">1.86.2</td><td style="width: 77.4424%;">Kiali v1.86 is the recommended minimum for Istio Ambient users. v1.22 is required starting with Kiali v1.86.1.</td></tr><tr><td style="width: 6.07625%;">1.21</td><td style="width: 8.22081%;">1.79.0</td><td style="width: 8.22081%;">1.81.0</td><td style="width: 77.4424%;">Istio 1.21 is out of support.</td></tr><tr><td style="width: 6.07625%;">1.20</td><td style="width: 8.22081%;">1.76.0</td><td style="width: 8.22081%;">1.78.0</td><td style="width: 77.4424%;">Istio 1.20 is out of support.</td></tr><tr><td style="width: 6.07625%;">1.19</td><td style="width: 8.22081%;">1.72.0</td><td style="width: 8.22081%;">1.75.0</td><td style="width: 77.4424%;">Istio 1.19 is out of support.</td></tr><tr><td style="width: 6.07625%;">1.18</td><td style="width: 8.22081%;">1.67.0</td><td style="width: 8.22081%;">1.73.0</td><td style="width: 77.4424%;">Istio 1.18 is out of support.</td></tr><tr><td style="width: 6.07625%;">1.17</td><td style="width: 8.22081%;">1.63.2</td><td style="width: 8.22081%;">1.66.1</td><td style="width: 77.4424%;">Istio 1.17 is out of support. Avoid 1.63.0,1.63.1 due to a regression.</td></tr><tr><td style="width: 6.07625%;">1.16</td><td style="width: 8.22081%;">1.59.1</td><td style="width: 8.22081%;">1.63.2</td><td style="width: 77.4424%;">Istio 1.16 is out of support. Avoid 1.62.0,1.63.0,1.63.1 due to a regression.</td></tr><tr><td style="width: 6.07625%;">1.15</td><td style="width: 8.22081%;">1.55.1</td><td style="width: 8.22081%;">1.59.0</td><td style="width: 77.4424%;">Istio 1.15 is out of support.</td></tr><tr><td style="width: 6.07625%;">1.14</td><td style="width: 8.22081%;">1.50.0</td><td style="width: 8.22081%;">1.54</td><td style="width: 77.4424%;">Istio 1.14 is out of support.</td></tr><tr><td style="width: 6.07625%;">1.13</td><td style="width: 8.22081%;">1.45.1</td><td style="width: 8.22081%;">1.49</td><td style="width: 77.4424%;">Istio 1.13 is out of support.</td></tr><tr><td style="width: 6.07625%;">1.12</td><td style="width: 8.22081%;">1.42.0</td><td style="width: 8.22081%;">1.44</td><td style="width: 77.4424%;">Istio 1.12 is out of support.</td></tr><tr><td style="width: 6.07625%;">1.11</td><td style="width: 8.22081%;">1.38.1</td><td style="width: 8.22081%;">1.41</td><td style="width: 77.4424%;">Istio 1.11 is out of support.</td></tr><tr><td style="width: 6.07625%;">1.10</td><td style="width: 8.22081%;">1.34.1</td><td style="width: 8.22081%;">1.37</td><td style="width: 77.4424%;">Istio 1.10 is out of support.</td></tr><tr><td style="width: 6.07625%;">1.9</td><td style="width: 8.22081%;">1.29.1</td><td style="width: 8.22081%;">1.33</td><td style="width: 77.4424%;">Istio 1.9 is out of support.</td></tr><tr><td style="width: 6.07625%;">1.8</td><td style="width: 8.22081%;">1.26.0</td><td style="width: 8.22081%;">1.28</td><td style="width: 77.4424%;">Istio 1.8 removes all support for mixer/telemetry V1, as does Kiali 1.26.0. Use earlier versions of Kiali for mixer support.</td></tr><tr><td style="width: 6.07625%;">1.7</td><td style="width: 8.22081%;">1.22.1</td><td style="width: 8.22081%;">1.25</td><td style="width: 77.4424%;">Istio 1.7 istioctl no longer installs Kiali. Use the Istio samples/addons for quick demo installs. Istio 1.7 is out of support.</td></tr><tr><td style="width: 6.07625%;">1.6</td><td style="width: 8.22081%;">1.18.1</td><td style="width: 8.22081%;">1.21</td><td style="width: 77.4424%;">Istio 1.6 introduces CRD and Config changes, Kiali 1.17 is recommended for Istio &lt; 1.6.</td></tr></tbody></table>