Модель сети VPC бесшовно сочетает маршрутизацию VPC с базовой сетью, что делает её идеальной для сценариев с высокой производительностью. Однако максимальное количество узлов, разрешённое в кластере, определяется VPC route quota. В модели сети VPC блоки CIDR контейнеров отделены от блоков CIDR узлов. Для назначения IP‑адресов pod‑ам, работающим на узле в кластере, каждому узлу в кластере выделяется pod IP range с фиксированным числом адресов. Модель сети VPC превосходит модель container tunnel network model по производительности, поскольку не имеет накладных расходов на туннельную инкапсуляцию. При использовании модели сети VPC в кластере маршруты между блоками CIDR контейнеров и блоками CIDR VPC автоматически настраиваются в VPC route table. Это означает, что pod‑ы внутри кластера могут быть доступны напрямую с облачных серверов в том же VPC, даже если они находятся за пределами кластера. Рис. 1 модель сети VPC
В кластере, использующем модель сети VPC, пути сетевого взаимодействия следующие:
Преимущества
Аналогично, если VPC доступен другим VPC или дата‑центрам и VPC route table содержит маршруты к блокам CIDR контейнеров, ресурсы в других VPC или дата‑центрах могут напрямую взаимодействовать с контейнерами в кластере, при условии отсутствия конфликтов между сетевыми блоками CIDR.
Недостатки
Сеть VPC распределяет IP‑адреса pod согласно правилам ниже. Основное правило — предварительно выделять pod CIDR‑блоки из контейнерного CIDR‑блока узлам, а затем распределять IP‑адреса из pod CIDR‑блоков pod‑ам.
Figure 2 Управление IP‑адресами VPC‑сети

Максимальное количество узлов, которые можно создать в кластере с использованием VPC network = Number of IP addresses in the container CIDR block/Number of IP addresses in the CIDR block allocated to the node by the container CIDR block
Например, если контейнерный CIDR‑блок — 172.16.0.0/16, количество IP‑адресов составляет 65 536. Маска контейнерного CIDR‑блока, выделенного узлу, равна 25. То есть количество pod IP‑адресов на каждом узле составляет 128. Следовательно, можно создать максимум 512 (65536/128) узлов. Количество узлов, которое можно добавить в кластер, также определяется доступными IP‑адресами в подсети узла и масштабом кластера. Подробнее см. Recommendation for CIDR Block Planning.
Как объясняется в Cluster Network Structure, в кластере существует три сети: cluster network, container network и Service network. При планировании сетевых адресов учитывайте следующее:
Предположим, что кластер содержит 200 узлов, а модель сети — VPC network.
В этом случае количество доступных IP‑адресов в выбранной подсети должно превышать 200. В противном случае узлы не могут быть созданы из‑за недостаточного количества IP‑адресов.
CIDR‑блок контейнера — 172.16.0.0/16, количество доступных IP‑адресов — 65 536. Как описано в Pod IP Address Management, VPC network получает CIDR‑блок фиксированного размера (маска используется для определения максимального количества IP‑адресов pod, выделяемых каждому узлу). Например, если верхний предел равен 128, кластер поддерживает максимум 512 (65536/128) узлов.
В этом примере создаётся кластер, использующий модель сети VPC, и кластер содержит один узел.
В консоли VPC найдите VPC, к которому относится кластер, и проверьте таблицу маршрутизации VPC.
Вы можете увидеть, что CCE создал пользовательский маршрут в таблице маршрутизации. Этот маршрут имеет адрес назначения, соответствующий CIDR‑блоку контейнера, назначенному узлу, а следующий переход направлен к целевому узлу. В примере CIDR‑блок контейнера для кластера — 172.16.0.0/16, с 128 IP‑адресами pod, назначенными каждому узлу. Следовательно, CIDR‑блок контейнера узла — 172.16.0.0/25, что обеспечивает в общей сложности 128 IP‑адресов pod.
Когда обращаются к IP‑адресу pod, маршрут VPC перенаправит трафик к узлу‑следующему переходу, соответствующему адресу назначения. Ниже приведён пример:
Создайте deployment.yaml файл. Ниже приведён пример:
Создайте рабочую нагрузку.
kubectl apply -f deployment.yaml
kubectl get pod -owide
Вывод команды:
kubectl exec -it example-86b9779494-l8qrw -- curl 172.16.0.7
Если отображается следующая информация, к рабочей нагрузке можно получить доступ:
<!DOCTYPE html><html><head><title>Welcome to nginx!</title><style>body {width: 35em;margin: 0 auto;font-family: Tahoma, Verdana, Arial, sans-serif;}</style></head><body><h1>Welcome to nginx!</h1><p>If you see this page, the nginx web server is successfully installed andworking. Further configuration is required.</p><p>For online documentation and support please refer to<a href="http://nginx.org/">nginx.org</a>.<br/>Commercial support is available at<a href="http://nginx.com/">nginx.com</a>.</p><p><em>Thank you for using nginx.</em></p></body></html>