diff --git a/docs/INSTALL.md b/docs/INSTALL.md index 7166d8d280..a64e65e467 100644 --- a/docs/INSTALL.md +++ b/docs/INSTALL.md @@ -3,39 +3,133 @@ title: "Installation" weight: 15 --- -## DVP Requirements +> **Warning.** The platform components must be deployed on physical servers (bare-metal servers). +> +> Installation on virtual machines is allowed for demonstration purposes only, but nested virtualization must be enabled. If the platform is deployed on virtual machines, technical support will not be provided. -### Resource requirements: +## Platform scalability -The following minimum resources are recommended for infrastructure nodes, depending on their role in the cluster: +The platform supports the following configuration: -- Master node-4 CPUs, 8 GB of RAM, 60 GB of disk space on a fast disk (400+ IOPS); -- Worker node-the requirements are similar to those for the master node, but largely depend on the nature of the load running on the node (nodes). +- Maximum number of nodes: 1000. +- Maximum number of virtual machines: 50000. -> If you plan to use the virtualization module in a production environment, it is recommended to deploy it on physical servers. Deploying the module on virtual machines is also possible, but in this case you need to enable nested virtualization. +The platform has no other restrictions and is compatible with any hardware that is supported by [operating systems](#supported-os-for-platform-nodes) on which it can be installed. -### Requirements for platform nodes: +## Hardware Requirements -- Linux-based OS: - - CentOS 7, 8, 9 - - Debian 10, 11, 12 - - Rocky Linux 8, 9 - - Ubuntu 18.04, 20.04, 22.04, 24.04 -- Linux kernel version >= 5.7 -- CPU with x86_64 c architecture with support for Intel-VT (vmx) or AMD-V (svm) instructions +1. A dedicated **machine for installation**. -## Installation + This machine will run the Deckhouse installer. For example, it can be an administrator's laptop or any other computer that is not intended to be added to the cluster. Requirements for this machine: -1. Deploy the Deckhouse Kubernetes Platform cluster by [instruction](https://deckhouse.io/products/kubernetes-platform/gs/). + - OS: Windows 10+, macOS 10.15+, Linux (Ubuntu 18.04+, Fedora 35+); + - Installed Docker Engine or Docker Desktop (instructions for [Ubuntu](https://docs.docker.com/engine/install/ubuntu/), [macOS](https://docs.docker.com/desktop/mac/install/), [Windows](https://docs.docker.com/desktop/windows/install/)); + - HTTPS access to the container image registry at `registry.deckhouse.io`; + - SSH key-based access to the node that will serve as the **master node** of the future cluster; + - SSH key-based access to the node that will serve as the **worker node** of the future cluster (if the cluster will consist of more than one master node). + +1. **Server for the master node** + + There can be multiple servers running the cluster’s control plane components, but only one server is required at installation time. The others can be added later via node management mechanisms. + + Requirements for a physical bare-metal server: + + - Resources: + - CPU: + - x86_64 architecture; + - Support for Intel-VT (VMX) or AMD-V (SVM) instructions; + - At least 4 cores. + - RAM: At least 8 GB. + - Disk space: + - At least 60 GB; + - High-speed disk (400+ IOPS). + - OS [from the list of supported ones](#supported-os-for-platform-nodes): + - Linux kernel version `5.7` or newer. + - **Unique hostname** across all servers in the future cluster; + - Network access: + - HTTPS access to the container image registry at `registry.deckhouse.io`; + - Access to the package repositories of the chosen OS; + - SSH key-based access from the **installation machine** (see p.1); + - Network access from the **installation machine** (see p.1) on port `22322/TCP`. + - Required software: + - The `cloud-utils` and `cloud-init` packages must be installed (package names may vary depending on the chosen OS). + > **Warning.** The container runtime will be installed automatically, so do not pre-install any `containerd` or `docker` packages. + +1. **Servers for worker nodes** + + These nodes will run virtual machines, so the servers must have enough resources to handle the planned number of VMs. Additional disks may be required if you deploy a software-defined storage solution. + + Requirements for a physical bare-metal server: + + - Resources: + - CPU: + - x86_64 architecture; + - Support for Intel-VT (VMX) or AMD-V (SVM) instructions; + - At least 4 cores; + - RAM: At least 8 GB; + - Disk space: + - At least 60 GB; + - High-speed disk (400+ IOPS); + - Additional disks for software-defined storage; + - OS [from the list of supported ones](#supported-os-for-platform-nodes); + - Linux kernel version `5.7` or newer; + - **Unique hostname** across all servers in the future cluster; + - Network access: + - HTTPS access to the container image registry at `registry.deckhouse.io`; + - Access to the package repositories of the chosen OS; + - SSH key-based access from the **installation machine** (see p.1); + - Required software: + - The `cloud-utils` and `cloud-init` packages must be installed (package names may vary depending on the chosen OS). + > **Important.** The container runtime will be installed automatically, so do not pre-install any `containerd` or `docker` packages. + +1. **Storage hardware** + + Depending on the chosen storage solution, additional resources may be required. For details, refer to the section [Storage Management](/products/virtualization-platform/documentation/admin/platform-management/storage/sds/lvm-local.html). + +## Supported OS for platform nodes + +| Linux distribution | Supported versions | +| --------------------------- | ------------------------------- | +| CentOS | 7, 8, 9 | +| Debian | 10, 11, 12 | +| Ubuntu | 20.04, 22.04, 24.04 | -2. Enable the necessary modules. +## Supported guest operating systems - To store virtual machine data (virtual disks and images), you must enable one or more of the following modules according to the installation instructions: +The virtualization platform supports operating systems running on `x86` and `x86_64` architectures as guest operating systems. For correct operation in paravirtualization mode, `VirtIO` drivers must be installed to ensure efficient interaction between the virtual machine and the hypervisor. + +Successful startup of the operating system is determined by the following criteria: + + * correct installation and booting of the OS; + * uninterrupted operation of key components such as networking and storage; + * no crashes or errors during operation. + +For Linux family operating systems it is recommended to use guest OS images with `cloud-init` support, which allows initializing virtual machines after their creation. + +For Windows operating systems, the platform supports initialization using the built-in sysprep utility. + +## Supported virtual machine configurations + +Maximum number of cores supported: `254` +Maximum amount of RAM: `1024 GB` + +## Supported Storage Systems + +Virtual machines use `PersistentVolume` resources. To manage these resources and allocate disk space within the cluster, one or more supported storage systems must be installed: + +| Storage System | Disk Location | +|---------------------------------------------|----------------------------| +| LVM (Logical Volume Manager) | Local | +| DRBD (Distributed Replicated Block Device) | Replicas on cluster nodes | +| Ceph Cluster | External storage | +| NFS (Network File System) | External storage | +| TATLIN.UNIFIED (Yadro) | External storage | + +## Installation + +1. Deploy the Deckhouse Kubernetes Platform cluster by [instruction](https://deckhouse.io/products/kubernetes-platform/gs/). - - [SDS-Replicated-volume](https://deckhouse.io/modules/sds-replicated-volume/stable/) - - [SDS-Local-volume](https://deckhouse.io/modules/sds-local-volume/stable/) - - [CSI-nfs](https://deckhouse.io/modules/csi-nfs/stable/) - - [CEPH-CSI](/documentation/v1/modules/031-ceph-csi/) +2. To store virtual machine data (virtual disks and images), you must enable one or more supported [storage](#supported-storage-systems). 3. [Set](https://kubernetes.io/docs/tasks/administer-cluster/change-default-storage-class/) default `StorageClass`. 4. Turn on the [console](https://deckhouse.io/modules/console/stable/) module, which will allow you to manage virtualization components through via UI (This feature is available only to users of the EE edition). diff --git a/docs/INSTALL_RU.md b/docs/INSTALL_RU.md index bdca0191d7..16f6eacedf 100644 --- a/docs/INSTALL_RU.md +++ b/docs/INSTALL_RU.md @@ -3,45 +3,140 @@ title: "Установка" weight: 15 --- -## Требования к DVP +> **Внимание.** Компоненты платформы необходимо развертывать на физических серверах (bare-metal). +> +> Установка на виртуальные машины допустима только в демонстрационных целях, но при этом должна быть включена вложенная виртуализация (nested virtualization). Если платформа развернута на виртуальных машинах, техническая поддержка не предоставляется. + +## Возможности масштабирования платформы + +Платформа поддерживает следующую конфигурацию: + +- Максимальное количество узлов: 1000. +- Максимальное количество виртуальных машин: 50000. -### Требования к ресурсам: +Платформа не имеет дополнительных ограничений и совместима с любым оборудованием, которое поддерживается [операционными системами](#поддерживаемые-ос-для-узлов-платформы), на которые она может быть установлена. -Рекомендуются следующие минимальные ресурсы для инфраструктурных узлов в зависимости от их роли в кластере: +## Требования к аппаратному обеспечению -- Мастер-узел — 4 CPU, 8 ГБ RAM, 60 ГБ дискового пространства на быстром диске (400+ IOPS); -- Worker-узел — требования аналогичны требованиям к master-узлу, но во многом зависят от характера запускаемой на узле (узлах) нагрузки. +1. Отдельная **машина для установки**. -> Если вы планируете использовать модуль виртуализации в промышленной среде, рекомендуется развернуть его на физических серверах. Развертывание модуля на виртуальных машинах также возможно, но в этом случае необходимо включить вложенную виртуализацию. + Здесь будет запускаться установщик Deckhouse. Это может быть ноутбук администратора или любой другой компьютер, который не планируется добавлять в кластер. Требования к этой машине: -### Требования к узлам платформы: + - ОС: Windows 10+, macOS 10.15+, Linux (Ubuntu 18.04+, Fedora 35+); + - Установленный Docker Engine или Docker Desktop (инструкции [для Ubuntu](https://docs.docker.com/engine/install/ubuntu/), [macOS](https://docs.docker.com/desktop/mac/install/), [Windows](https://docs.docker.com/desktop/windows/install/)); + - HTTPS-доступ к хранилищу образов контейнеров `registry.deckhouse.ru`; + - SSH-доступ по ключу к узлу, который будет **master-узлом** будущего кластера; + - SSH-доступ по ключу к узлу, который будет **worker-узлом** будущего кластера (если кластер будет состоять не из одного master-узла). -- ОС на базе Linux: - - РЕД ОС 7.3, 8.0 - - РОСА Сервер 7.9, 12.4, 12.5.1 - - ALT Linux p10, 10.0, 10.1, 10.2, 11 - - Astra Linux Special Edition 1.7.2, 1.7.3, 1.7.4, 1.7.5 - - CentOS 7, 8, 9 - - Debian 10, 11, 12 - - Rocky Linux 8, 9 - - Ubuntu 18.04, 20.04, 22.04, 24.04 -- Версия ядра Linux >= 5.7 -- ЦП с архитектурой x86_64 c с поддержкой инструкций Intel-VT (vmx) или AMD-V (svm) +1. **Сервер для master-узла.** -## Порядок установки + Серверов для запуска управляющих компонентов кластера может быть несколько. Для установки достаточно одного сервера, а остальные нужно будет добавить через механизмы управления узлами. -1. Разверните кластер Deckhouse Kubernetes Platform [по инструкции](https://deckhouse.ru/gs/). + Требования к физическому bare metal-серверу: + + - Ресурсы: + - Процессор: + - Архитектура x86_64; + - Поддержка инструкций Intel-VT (VMX) или AMD-V (SVM); + - не менее 4 ядер; + - ОЗУ не менее 8 ГБ; + - Дисковое пространство: + - не менее 60 ГБ; + - быстрый диск (400+ IOPS); + - ОС [из списка поддерживаемых](#поддерживаемые-ос-для-узлов-платформы): + - ядро Linux версии `5.7` или новее; + - **Уникальный hostname** среди всех серверов будущего кластера; + - Сетевые доступы: + - HTTPS-доступ к хранилищу образов контейнеров `registry.deckhouse.ru`; + - доступ к репозиториям пакетов используемой ОС; + - SSH-доступ от **машины для установки** (см. п.1) по ключу; + - сетевой доступ от **машины для установки** (см. п.1) по порту `22322/TCP`; + - Требуемое ПО: + - пакеты `cloud-utils` и `cloud-init` должны быть установлены. + > **Важно.** Container runtime будет установлен автоматически, поэтому пакеты `containerd` и/или `docker` не должны быть установлены. + +1. **Серверы для worker-узлов.** + + Это узлы, где будут запускаться виртуальные машины, поэтому ресурсов на этих серверах должно хватать для запуска планируемого количества виртуальных машин. При использовании программно-определяемого хранилища могут потребоваться дополнительные диски. + + Требования к физическому bare metal-серверу: + + - Ресурсы: + - Процессор: + - Архитектура x86_64; + - Поддержка инструкций Intel-VT (VMX) или AMD-V (SVM); + - не менее 4 ядер. + - ОЗУ не менее 8 ГБ. + - Дисковое пространство: + - не менее 60 ГБ; + - быстрый диск (400+ IOPS); + - дополнительные диски для программно-определяемого хранилища. + - ОС [из списка поддерживаемых](#поддерживаемые-ос-для-узлов-платформы): + - ядро Linux версии `5.7` или новее. + - **Уникальный hostname** среди всех серверов будущего кластера; + - Сетевые доступы: + - HTTPS-доступ к хранилищу образов контейнеров `registry.deckhouse.ru`; + - доступ к репозиториям пакетов используемой ОС; + - SSH-доступ от **машины для установки** (см. п.1) по ключу. + - Требуемое ПО: + - пакеты `cloud-utils` и `cloud-init` должны быть установлены (названия могут отличаться в зависимости от выбранной ОС). + > **Важно.** Container runtime будет установлен автоматически, поэтому пакеты `containerd` и/или `docker` не должны быть установлены. + +1. **Оборудование для хранилища.** + + В зависимости от выбранного хранилища могут потребоваться дополнительные ресурсы. Подробности смотрите в разделе [Управление хранилищами](/products/virtualization-platform/documentation/admin/platform-management/storage/sds/lvm-local.html). + +## Поддерживаемые ОС для узлов платформы + +| Дистрибутив Linux | Поддерживаемые версии | +| --------------------------- | ------------------------------- | +| РЕД ОС | 7.3, 8.0 | +| РОСА Сервер | 7.9, 12.4, 12.5.1 | +| ALT Linux | p10, 10.0, 10.1, 10.2, 11 | +| Astra Linux Special Edition | 1.7.2, 1.7.3, 1.7.4, 1.7.5, 1.8 | +| CentOS | 7, 8, 9 | +| Debian | 10, 11, 12 | +| Ubuntu | 18.04, 20.04, 22.04, 24.04 | -2. Включите необходимые модули. +## Поддерживаемые гостевые ОС - Для хранения данных виртуальных машин (виртуальные диски и образы) необходимо включить один или несколько из следующих модулей согласно инструкции по их установке: +Платформа виртуализации поддерживает операционные системы, работающие на архитектурах `x86` и `x86_64`, в качестве гостевых ОС. Для корректной работы в режиме паравиртуализации необходимо установить драйверы `VirtIO`, обеспечивающие эффективное взаимодействие между виртуальной машиной и гипервизором. - - [SDS-Replicated-volume](https://deckhouse.ru/modules/sds-replicated-volume/stable/) - - [SDS-Local-volume](https://deckhouse.ru/modules/sds-local-volume/stable/) - - [CSI-nfs](https://deckhouse.ru/modules/csi-nfs/stable/) - - [CEPH-CSI](/documentation/v1/modules/031-ceph-csi/) +Успешный запуск операционной системы определяется следующими критериями: + + * корректная установка и загрузка ОС; + * бесперебойная работа основных компонентов, таких как сеть и хранилище; + * отсутствие сбоев или ошибок в процессе работы. + +Для операционных систем семейства Linux рекомендуется использовать образы гостевых ОС с поддержкой `cloud-init`, что позволяет выполнять инициализацию виртуальных машин после их создания. + +Для операционных систем семейства Windows платформа поддерживает инициализацию с помощью встроенной утилиты sysprep. + +## Поддерживаемые конфигурации виртуальных машин + +Максимальное число поддерживаемых ядер: `254` +Максимальный объем оперативной памяти: `1024 Гб` + +## Поддерживаемые хранилища + +Виртуальные машины используют ресурсы `PersistentVolume`. Для управления этими ресурсами и выделения дискового пространства в кластере должно быть установлено одно или несколько поддерживаемых хранилищ: + +| Хранилище | Расположение дисков | +|--------------------------------------------|----------------------------| +| LVM (Logical Volume Manager) | Локальное | +| DRBD (Distributed Replicated Block Device) | Реплики на узлах кластера | +| Ceph-кластер | Внешнее хранилище | +| NFS (Network File System) | Внешнее хранилище | +| TATLIN.UNIFIED (Yadro) | Внешнее хранилище | + +## Порядок установки + +1. Разверните кластер Deckhouse Kubernetes Platform [по инструкции](https://deckhouse.ru/gs/). + +2. Для хранения данных виртуальных машин (виртуальные диски и образы) необходимо включить один или несколько поддерживаемых [хранилищ](#поддерживаемые-хранилища). 3. [Установите](https://kubernetes.io/docs/tasks/administer-cluster/change-default-storage-class/) `StorageClass` по умолчанию. + 4. Включите модуль [console](https://deckhouse.ru/modules/console/stable/), который позволит управлять компонентами виртуализации через графический интерфейс (данная возможность доступна только пользователям EE-редакции). 5. Включите модуль `virtualization`: @@ -65,7 +160,7 @@ kind: ModuleConfig metadata: name: virtualization spec: - enabled: true # включить модуль + enabled: true # Включить модуль. settings: dvcr: storage: diff --git a/docs/USER_GUIDE_RU.md b/docs/USER_GUIDE_RU.md index 637f6ccafc..801d2962df 100644 --- a/docs/USER_GUIDE_RU.md +++ b/docs/USER_GUIDE_RU.md @@ -1057,7 +1057,7 @@ spec: disktype: ssd ``` -![](images/placement-node-affinity.ru.png) +![](images/placement-nodeselector.ru.png) В этом примере виртуальная машина будет размещена только на узлах, которые имеют метку `disktype` со значением `ssd`.