[Документация Yandex Cloud](../../index.md) > [Yandex Managed Service for Kubernetes](../index.md) > [Концепции](index.md) > Сеть в Managed Service for Kubernetes

# Сеть в Managed Service for Kubernetes

При [создании кластера Kubernetes](../operations/kubernetes-cluster/kubernetes-cluster-create.md) вы можете задать:
* [Сеть и подсеть](../../vpc/concepts/network.md#network) для [мастера](index.md#master).
* Диапазон IP-адресов для [подов](index.md#pod).
* Диапазон IP-адресов для [сервисов](index.md#service).
* Маску подсети узлов.

Дополнительно вы можете:
* Запросить [публичный IP-адрес](../../vpc/concepts/ips.md) для доступа к [кластеру](index.md#kubernetes-cluster) извне Yandex Cloud.
* Настроить [контроллеры сетевых политик](network-policy.md) для управления адресным пространством внутри кластера.

{% note warning %}

Не изменяйте и не удаляйте ресурсы Virtual Private Cloud, которые используются кластером Managed Service for Kubernetes. Это может привести к некорректной работе кластера и невозможности его последующего удаления.

{% endnote %}

## Сетевые ресурсы {#network-resources}

При работе с кластером Kubernetes на инфраструктуре Yandex Cloud задействуются следующие ресурсы:
* Подсети.

  При создании кластера без туннельного режима Managed Service for Kubernetes резервирует две подсети: для подов и сервисов. Для кластера с [туннельным режимом](network-policy.md#cilium) подсети в адресном пространстве облачной сети не резервируются.
* Публичные IP-адреса.

  При [создании кластера](../operations/kubernetes-cluster/kubernetes-cluster-create.md) с публичным доступом мастеру будет присвоен публичный IP-адрес.
  
  При [создании группы узлов](../operations/node-group/node-group-create.md) с публичным доступом каждому узлу в группе будет присвоен публичный IP-адрес.

## Управление адресным пространством {#address-space}

Для кластеров Kubernetes, не использующих туннельный режим, установлены следующие ограничения:
* Диапазоны создаваемых подсетей не должны пересекаться с уже существующими диапазонами.
* Для подов, узлов и сервисов доступна только половина возможного диапазона подсетей. Ограничение связано с особенностями [Virtual Private Cloud](../../vpc/index.md) и вводится, чтобы точно обеспечить диапазон свободных IP-адресов для распределения сервисов кластера.

Для подов, узлов и сервисов таких кластеров доступны диапазоны подсетей:
* `10.0.0.0/8`.
* `172.16.0.0/12`.
* `192.168.0.0/16`.

Маска подсети узлов и размер подсети для подов определяет максимальное количество узлов в кластере и максимальное количество подов на узле.

Также действует [стандартное ограничение Kubernetes](https://kubernetes.io/docs/setup/best-practices/cluster-large/) в 110 подов на один узел.

Для кластеров в [туннельном режиме](network-policy.md#cilium) доступны диапазоны подсетей:
* `10.0.0.0/8`.
* `172.16.0.0/12`.
* `192.168.0.0/16`.

{% note info %}

Для таких кластеров не действуют ограничения в половину возможного диапазона подсетей и пересечения диапазонов.

{% endnote %}

Например, при [создании кластера](../operations/kubernetes-cluster/kubernetes-cluster-create.md) со следующими параметрами:
* Туннельный режим не задействован.
* Диапазон IP-адресов для подов: `10.1.0.0/16`.
* Диапазон IP-адресов для сервисов: `10.2.0.0/16`.
* Маска подсети узлов: `24`.

Для кластера будут доступны:
* Диапазоны IP-адресов для узлов: `10.1.128.0/24` – `10.1.255.0/24`.
* IP-адреса для подов на каждом узле: `10.1.128.2` – `10.1.128.255`, `10.1.129.2` – `10.1.129.255`, и т. д.

## Имя узла и FQDN {#hostname}

Managed Service for Kubernetes генерирует имя для каждого узла при его создании. Это имя будет являться [доменным именем узла (FQDN)](../../compute/concepts/network.md#hostname). Имя узла и FQDN невозможно изменить.

Используйте FQDN для доступа к узлу в рамках одной облачной сети. Подробнее в разделе [Адреса облачных ресурсов](../../vpc/concepts/address.md).

## Публичный доступ в кластере {#public-access-to-a-host}

{% note tip %}

Можно включить публичный доступ только для мастера, только для узлов в группе или одновременно для мастера и узлов.

{% endnote %}

Если для мастера или узлов в группе узлов включен публичный доступ, то они будут доступны из интернета по своим [публичным IP-адресам](../../vpc/concepts/address.md#public-addresses).

Включить публичный доступ можно:
* для мастера только при [создании кластера](../operations/kubernetes-cluster/kubernetes-cluster-create.md);
* для узлов в группе при [создании](../operations/node-group/node-group-create.md) или [изменении](../operations/node-group/node-group-update.md#node-internet-access) группы.

Если для мастера или узлов выключен публичный доступ, то они будут доступны только по своим [внутренним IP-адресам](../../vpc/concepts/address.md#internal-addresses) из облачной сети, в которой находится кластер.

## Доступ в интернет для рабочих узлов кластера {#nodes-internet}

Для подключения к внешним ресурсам, например реестрам Docker-образов [Container Registry](../../container-registry/concepts/index.md), [Cloud Registry](../../cloud-registry/concepts/index.md) или [Docker Hub](https://hub.docker.com/), а также бакетам [Object Storage](../../storage/concepts/bucket.md), у узлов группы должен быть доступ в интернет.

Чтобы обеспечить доступ в интернет, [назначьте](../operations/node-group/node-group-update.md#node-internet-access) узлам публичный IP-адрес и [настройте](../operations/connect/security-groups.md#rules-internal-nodegroup) группу безопасности. Также в качестве альтернативы публичным IP-адресам можно создать и настроить в подсети узлов [NAT-шлюз](../../vpc/operations/create-nat-gateway.md) или [NAT-инстанс](../../vpc/tutorials/nat-instance/index.md).

Если кластер [создан без доступа в интернет](../tutorials/k8s-cluster-with-no-internet.md), то подключение к внешним ресурсам с узлов кластера будет невозможно.

Исключение — следующие сервисы Yandex Cloud, к которым можно организовать доступ по [внутренним IP-адресам](../../vpc/concepts/address.md#internal-addresses):

* Object Storage: для доступа к бакетам [используйте сервисное подключение VPC](../../storage/operations/buckets/access-via-vpc.md) или [создайте необходимую инфраструктуру вручную](../../storage/tutorials/storage-vpc-access.md).
* Container Registry: для доступа к реестрам [создайте необходимую инфраструктуру вручную](../../container-registry/tutorials/vpc-cr-access.md).

### Влияние групп безопасности {#nodes-internet-traffic-rules}

[Группы безопасности](../../vpc/concepts/security-groups.md), которые назначаются группам узлов, [содержат базовое правило, разрешающее подключаться к внешним ресурсам](../operations/connect/security-groups.md#rules-internal-nodegroup).

При использовании более гранулярных правил, которые существенно ограничивают сетевой трафик, они могут препятствовать доступу узлов в интернет. Доступ может отсутствовать как полностью, так и частично — на уровне отдельных внешних ресурсов.

Если наблюдаются проблемы с доступом в интернет для узлов, то [скорректируйте правила](../../vpc/operations/security-group-add-rule.md) в группах безопасности, чтобы нужный трафик был разрешен.