Инструменты пользователя

Инструменты сайта


k8s:istio

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Следующая версия
Предыдущая версия
k8s:istio [2025/03/23 13:44]
admin создано
k8s:istio [2025/03/26 12:24] (текущий)
admin
Строка 39: Строка 39:
 kind: Gateway kind: Gateway
 metadata: metadata:
- name: demo-gtwy+  name: demo-gtwy
 spec: spec:
- selector: +  selector: 
- app: demo +    app: demo 
- services: +  services: 
- - port: +    - port: 
- number: 443 +      number: 443 
- name: https +      name: https 
- protocol: HTTPS +      protocol: HTTPS 
- hosts: +    hosts: 
- - demo.vs.com +      - demo.vs.com 
- tls: +    tls: 
- mode: SIMPLE +      mode: SIMPLE 
- credentialName: demo-tls-cert+      credentialName: demo-tls-cert
 </code> </code>
   * как только веб-трафик попадает на балансировщик нагрузки, он направляется на Istio gateway, тот позволяет трафику входить в сервис-меш через указанный порт (в даном случае 443)    * как только веб-трафик попадает на балансировщик нагрузки, он направляется на Istio gateway, тот позволяет трафику входить в сервис-меш через указанный порт (в даном случае 443) 
Строка 98: Строка 98:
 kind: VirtualService kind: VirtualService
 metadata: metadata:
- name: demo-vs+  name: demo-vs
 spec: spec:
- hosts: +  hosts: 
- - demo.vs.com +    - demo.vs.com 
- http: +  http: 
- - match: +    - match: 
- - headers: +      - headers: 
- end-user: +          end-user: 
- exact: /api +            exact: /api 
- route: +      route: 
- - destination: +        - destination: 
- host: /+          host: /
 </code> </code>
   * запись **hosts** включает домен (или CNAME) приложения   * запись **hosts** включает домен (или CNAME) приложения
Строка 154: Строка 154:
  
 ==== ServiceEntry ==== ==== ServiceEntry ====
-Позволяет добавить дополнительные записи во внутренний реестр служб Istio, чтобы автоматически обнаруженные службы в сетке могли получать доступ/маршрутизировать эти вручную указанные службы\\+Позволяет добавить дополнительные записи во внутренний реестр служб Istio, чтобы автоматически обнаруженные службы в сетке могли получать доступ/маршрутизировать эти вручную указанные службы. Например добавление сервисов в сеть ISTIO, которые не находятся в вашем кластере k8s\\
  
-Например добавление сервисов в сеть ISTIO, которые не находятся в вашем кластере k8s\\ +Может открыть прямой трафик на внешнюю службу, если не применить связку "Gateway", "VirtualService"\\ 
  
  
Строка 166: Строка 166:
 # Можно указать только hosts, тогда по нему и порту будет доступно # Можно указать только hosts, тогда по нему и порту будет доступно
 # можно еще указать addresses, тогда и по этому адресу будет доступ из пода # можно еще указать addresses, тогда и по этому адресу будет доступ из пода
-# Впринципе для минимального доступа к "10.20.28.9" из пода, достаточно только такого SE (хотя видимо в моем случае есть что то дефолтное) 
 --- ---
 apiVersion: networking.istio.io/v1beta1 apiVersion: networking.istio.io/v1beta1
Строка 208: Строка 207:
 </details> </details>
  
- 
-<details> 
-<summary>:!: Параметры</summary> 
-**hosts** (обязат)\\ 
-Хосты связанные с ServiceEntry. Используется для выбора соответствующих хостов в VirtualService и DestinationRule (SNI в т.ч.)\\ 
-Если "resolution" == "DNS" и "endpoints" не указаны то "hosts" будет использоваться в качестве DNS имени для маршрутизации\\ 
- 
-**ports** (обязат)\\ 
-порты связанные с внешней службой\\ 
- 
-**addresses**\\ 
-Вирт IP адреса связанные со службой. Если указано то используется при маршрутизации, если нет то маршрутизация к этой точке будет только по порту 
- 
-**location*\\ 
-Считать ли службу внешней по отношению к мешу или внутренней\\ 
-Видимо тут только два варианта: "MESH_EXTERNAL" и "MESH_INTERNAL"\\ 
- 
-**resolution** (обязат)\\ 
-Режим обнаружения служб для хостов\\ 
-Если указать "None" без сопутствующих IP-адресов, то будет рпзрешен трафик на любой IP по этому порту (т.е. 0.0.0.0:<port>)\\ 
- 
-**endpoints**\\ 
-Одна или несколько конечных точек связанных с сервисом\\ 
- 
-**exportTo**\\ 
-Неймспейсы для применения политик, текущий - "." по умолчанию глобальный ("*")\\ 
- 
-**subjectAltNames**\\ 
-Для проверки альтернативного имени 
-</details> 
  
  
Строка 285: Строка 254:
 </details> </details>
  
 +
 +
 +<details>
 +<summary>:!: Параметры ServiceEntry</summary>
 +**hosts** (обязат)\\
 +Хосты связанные с ServiceEntry. Используется для выбора соответствующих хостов в VirtualService и DestinationRule (SNI в т.ч.)\\
 +Если "resolution" == "DNS" и "endpoints" не указаны то "hosts" будет использоваться в качестве DNS имени для маршрутизации\\
 +
 +**ports** (обязат)\\
 +порты связанные с внешней службой\\
 +
 +**addresses**\\
 +Вирт IP адреса связанные со службой. Если указано то используется при маршрутизации, если нет то маршрутизация к этой точке будет только по порту
 +
 +**location**\\
 +Считать ли службу внешней по отношению к мешу или внутренней\\
 +Видимо тут только два варианта: "MESH_EXTERNAL" и "MESH_INTERNAL"\\
 +
 +**resolution** (обязат)\\
 +Режим обнаружения служб для хостов\\
 +Если указать "None" без сопутствующих IP-адресов, то будет разрешен трафик на любой IP по этому порту (т.е. 0.0.0.0:port)\\
 +
 +**endpoints**\\
 +Одна или несколько конечных точек связанных с сервисом\\
 +
 +**exportTo**\\
 +Неймспейсы для применения политик, текущий (.) по умолчанию глобальный (*) \\
 +
 +**subjectAltNames**\\
 +Для проверки альтернативного имени\\
 +</details>
  
  
Строка 384: Строка 384:
 </code> </code>
 </details> </details>
- 
- 
- 
- 
  
  
Строка 399: Строка 395:
 </code> </code>
 </details> </details>
 +
 +
 +
  
  
  
  
k8s/istio.1742737459.txt.gz · Последнее изменение: 2025/03/23 13:44 — admin