63 lines
4.3 KiB
Markdown
63 lines
4.3 KiB
Markdown
---
|
||
title: Типы прокси-серверов в Kubernetes
|
||
content_type: concept
|
||
weight: 90
|
||
---
|
||
|
||
<!-- overview -->
|
||
На этой странице рассказывается о различных типах прокси-серверов, которые используются в Kubernetes.
|
||
|
||
|
||
<!-- body -->
|
||
|
||
## Прокси-серверы
|
||
|
||
При работе с Kubernetes можно столкнуться со следующими типами прокси-серверов:
|
||
|
||
1. [kubectl](/docs/tasks/access-application-cluster/access-cluster/#directly-accessing-the-rest-api):
|
||
|
||
- работает на локальной машине или в Pod'е;
|
||
- поднимает канал связи от локальной машины к интерфейсу API-сервера Kubernetes;
|
||
- данные от клиента к прокси-серверу передаются по HTTP;
|
||
- данные от прокси к серверу API передаются по HTTPS;
|
||
- отвечает за обнаружение сервера API;
|
||
- добавляет заголовки аутентификации.
|
||
|
||
1. [Прокси-сервер API](/docs/tasks/access-application-cluster/access-cluster-services/#discovering-builtin-services):
|
||
|
||
- бастион, встроенный в API-сервер;
|
||
- подключает пользователя за пределами кластера к IP-адресам кластера, которые в ином случае могут оказаться недоступными;
|
||
- входит в процессы сервера API;
|
||
- данные от клиента к прокси-серверу передаются по HTTPS (или по HTTP, если сервер API настроен соответствующим образом);
|
||
- данные от прокси-сервера к цели передаются по HTTP или HTTPS в зависимости от настроек прокси;
|
||
- используется для доступа к узлам, Pod'ам или сервисам;
|
||
- при подключении к сервису выступает балансировщиком нагрузки.
|
||
|
||
1. [kube proxy](/docs/concepts/services-networking/service/#ips-and-vips):
|
||
|
||
- работает на каждом узле;
|
||
- обрабатывает трафик UDP, TCP и SCTP;
|
||
- "не понимает" HTTP;
|
||
- выполняет функции балансировщика нагрузки;
|
||
- используется только для доступа к сервисам.
|
||
|
||
1. Прокси-сервер/балансировщик нагрузки перед API-сервером(-ами):
|
||
|
||
- наличие и тип (например, nginx) определяется конфигурацией кластера;
|
||
- располагается между клиентами и одним или несколькими серверами API;
|
||
- балансирует запросы при наличии нескольких серверов API.
|
||
|
||
1. Облачные балансировщики нагрузки на внешних сервисах:
|
||
|
||
- предоставляются некоторыми облачными провайдерами (например, AWS ELB, Google Cloud Load Balancer);
|
||
- создаются автоматически для сервисов Kubernetes с типом `LoadBalancer`;
|
||
- как правило, поддерживают только UDP/TCP;
|
||
- наличие поддержки SCTP зависит от реализации балансировщика нагрузки облачного провайдера;
|
||
- реализация варьируется в зависимости от поставщика облачных услуг.
|
||
|
||
Пользователи Kubernetes, как правило, в своей работе сталкиваются только с прокси-серверами первых двух типов. За настройку остальных типов обычно отвечает администратор кластера.
|
||
|
||
## Запросы на перенаправления
|
||
|
||
На смену функциям перенаправления (редиректам) пришли прокси-серверы. Перенаправления устарели.
|