Перед установкой кластера global необходимо подготовить оборудование, сеть и ОС, соответствующие требованиям.
global в существующую среду Kubernetes. Если в вашей среде уже есть кластер Kubernetes, пожалуйста, сделайте резервную копию данных и очистите среду перед установкой.В этом разделе приведены рекомендации по планированию ресурсов перед установкой .
Выберите подходящий сценарий развертывания в зависимости от вашей среды и потребностей, и подготовьте ресурсы соответственно.
Следующие рекомендации охватывают только минимальные ресурсы, необходимые для успешной установки глобального кластера.
Они не включают ресурсы, требуемые для любых дополнительных расширений или компонентов, развернутых на глобальном кластере.
Для подробных требований каждого расширения обратитесь к соответствующей документации компонента.
Для архитектур ARM (например, Kunpeng 920) рекомендуется увеличить конфигурацию в 2 раза по сравнению с минимальной конфигурацией для x86, но не менее чем в 1.5 раза.
Например: если для x86 требуется 8 ядер и 16 ГБ памяти, то для ARM должно быть не менее 12 ядер и 24 ГБ, а рекомендуемая конфигурация — 16 ядер и 32 ГБ.
Перед установкой необходимо определить, какая архитектура развертывания лучше всего подходит для вашего случая использования.
поддерживает следующие три распространённые архитектуры развертывания:
Мультикластерная
Выберите эту архитектуру, если необходимо централизованно управлять несколькими кластерами Kubernetes.
В этом режиме состоит из одного глобального кластера и нескольких кластеров рабочих нагрузок.
Запуск рабочих нагрузок, не относящихся к платформе, на глобальном кластере может ухудшить стабильность и производительность платформы, и этого следует избегать.
Одиночный кластер
Выберите эту архитектуру, если планируете установить только один кластер и запускать рабочие нагрузки непосредственно на нём.
В этом режиме глобальный кластер также выполняет роль кластера рабочих нагрузок, поэтому требует больше ресурсов по сравнению с чисто глобальной установкой в мультикластерном режиме.
Одиночный узел
Эта архитектура предназначена исключительно для тестирования или демонстрационных целей и не должна использоваться в продуктивной среде.
В следующей таблице приведены минимальные требования к оборудованию для установки в режиме Одиночного узла.
| Ресурс | Минимальное требование |
|---|---|
| CPU | 12 ядер |
| Память | 24 ГБ |
| Хранилище | Емкость хранилища |
В этом режиме глобальный кластер выполняет функции как управляющей плоскости, так и кластера рабочих нагрузок.
Количество узлов управляющей плоскости глобального кластера ДОЛЖНО быть 3.
Общее требование к ресурсам состоит из двух частей:
Требования к ресурсам для высокодоступного глобального кластера следующие:
| Ресурс | Минимальное требование |
|---|---|
| CPU | 8 ядер |
| Память | 16 ГБ |
| Хранилище | Емкость хранилища |
Для оценки дополнительных ресурсов, необходимых для ваших рабочих нагрузок, обратитесь к разделу
Оценка ресурсов для кластера рабочих нагрузок
При управлении несколькими кластерами рабочих нагрузок использование ресурсов глобального кластера пропорционально увеличивается с числом управляемых кластеров.
Дополнительные накладные расходы связаны в основном с регистрацией кластеров, мониторингом и синхронизацией управляющей плоскости.
Для оценки ресурсов, необходимых для вашего глобального кластера в зависимости от количества управляемых кластеров, обратитесь к разделу Оценка ресурсов для глобального кластера
Перед установкой необходимо предварительно настроить следующие сетевые ресурсы. Если аппаратный LoadBalancer предоставить невозможно, установщик поддерживает настройку haproxy + keepalived в качестве программного балансировщика нагрузки, однако следует понимать:
global, устранение проблем займет много времени и серьёзно повлияет на надежность платформы.| Ресурс | Обязательность | Количество | Описание |
|---|---|---|---|
global VIP | Обязательно | 1 | Используется для доступа узлов к kube-apiserver, настраивается в устройстве балансировки нагрузки для обеспечения высокой доступности. Этот IP также может использоваться в качестве адреса доступа к Web UI платформы. Кластеры рабочих нагрузок в той же сети, что и global кластер, могут обращаться к global кластеру через этот IP. |
| Внешний IP | Опционально | По необходимости | Если есть кластеры рабочих нагрузок, находящиеся вне сети global кластера, например в гибридном облаке, этот IP должен быть предоставлен. Кластеры рабочих нагрузок в других сетях обращаются к global кластеру через этот IP. Этот IP необходимо настроить в устройстве балансировки нагрузки для обеспечения высокой доступности. Этот IP также может использоваться в качестве адреса доступа к Web UI платформы. |
| Доменное имя | Опционально | По необходимости | Если требуется доступ к global кластеру или Web UI платформы по доменному имени, предоставьте его заранее и убедитесь в корректности разрешения доменного имени. |
| Сертификат | Опционально | По необходимости | Рекомендуется использовать доверенный сертификат для избежания предупреждений безопасности в браузере; если не предоставлен, установщик сгенерирует самоподписанный сертификат, но при использовании HTTPS возможны риски безопасности. |
Доменное имя должно быть предоставлено в следующих случаях:
global должен поддерживать доступ по IPv6.global.Если платформе необходимо настроить несколько адресов доступа (например, для внутренней и внешней сети), подготовьте соответствующие IP-адреса или доменные имена заранее согласно таблице выше. Их можно будет указать в параметрах установки или добавить после установки согласно документации продукта.
| Тип | Описание требования |
|---|---|
| Скорость сети | Скорость между global кластером и кластерами рабочих нагрузок в одной сети ≥1 Гбит/с (рекомендуется 10 Гбит/с); скорость между сетями ≥100 Мбит/с (рекомендуется 1 Гбит/с). Недостаточная скорость значительно снизит производительность запросов данных. |
| Задержка сети | Задержка ≤10 мс внутри одного кластера; задержка ≤100 мс (рекомендуется ≤30 мс) между кластерами. |
| Сетевая политика | Пожалуйста, ознакомьтесь с разделом LoadBalancer Forwarding Rules для обеспечения открытия необходимых портов; при использовании Calico CNI убедитесь, что протокол IP-in-IP включён. |
| Диапазон IP-адресов | Узлы кластера global должны избегать использования сетевого сегмента 172.16-32. Если он уже используется, настройте конфигурацию Docker (добавьте параметр bip) для предотвращения конфликтов. |
Это правило предназначено для обеспечения нормального приёма трафика кластером global от LoadBalancer. Проверьте сетевую политику согласно таблице ниже, чтобы убедиться, что соответствующие порты открыты.
| Исходный IP | Протокол | IP назначения | Порт назначения | Описание |
|---|---|---|---|---|
global VIP, Внешний IP | TCP | Все IP узлов управляющей плоскости | 443 | Обеспечивает доступ к Web UI платформы, репозиторию образов и Kubernetes API Server через протокол HTTPS. Порт по умолчанию —
|
global VIP, Внешний IP | TCP | Все IP узлов управляющей плоскости | 6443 | Этот порт обеспечивает доступ к Kubernetes API Server для узлов внутри кластера. |
global VIP, Внешний IP | TCP | Все IP узлов управляющей плоскости | 11443 | Этот порт обеспечивает доступ к репозиторию образов для узлов внутри кластера. |
global, необходимо открыть порт 2379 для всех узлов управляющей плоскости для синхронизации данных ETCD между основным и аварийным кластерами.