Windows server cpu cores

Управление числом vCPU и ядер в виртуальной машине

При создании виртуальных машин на различных гипервизорах (VMWare, KVM, Hyper-V и т.д.) вы можете обратить внимание, что иногда виртуальная машина может не видеть все выделенные ей виртуальные ядра (vCPU). В нашем случае виртуальной машине на KVM были выделены 8 vCPU, на нее установлена Windows 10. Однако Windows определяла эти ядра как отдельные процессоры, из которых можно использовать только 2 vCPU.

Виртуальная машина Windows 10 не видит все ядра

Если открыть диспетчер устройств Windows, можно убедится, что все выделенные ядра видны в качестве 8 отдельных виртуальных процессоров типа QEMU Virtual CPU version 2,5.

При этом в свойствах Windows 10 (Computer -> Properties) и в Task Manage видно, что на компьютере доступны только 2 процессора QEMU Virtual CPU.

То есть сколько бы вы не добавили виртуальных ядер, Windows 10 все равно сможет использовать только два. При этом соседний виртуальный сервер с Window Server 2016 на этом же гипервизоре видит все 16 выделенных ему vCPU.

Количество поддерживаемых процессоров в Windows 10

Проблема заключается в том, что в десктопных редакциях Windows (Windows 10/8.1/7) есть ограничение на максимальное количество физических процессоров (сокетов), которое компьютер может использовать:

  • Windows 10 Home – 1 CPU
  • Windows 10 Professional – 2 CPU
  • Windows 10 Workstation – до 4 CPU
  • Windows Server 2016 – до 64 CPU

Однако это ограничение не распространяется на ядра. Т.е. для повышения производительности вы можете использовать процессор с большим количеством ядер. Большинство гипервизоров умеют предоставлять vCPU в виде процессоров, процессорных ядер или даже потоков. Т.е. вместо 8 виртуальных CPU вы можете предоставить vCPU в виде 2 сокетов по 4 ядра в каждом. Рассмотрим, как в различных системах виртуализации выделить виртуальные процессоры в виде ядер и как это связать с архитектурой NUMA, использующейся в современных процессорах.

Управление виртуальными ядрами и vCPU в KVM

В моей виртуальной машине KVM c Windows 10, все назначенные виртуальные ядра считаются отдельными процессорами.

Чтобы использовать все ресурсы CPU, выделенные виртуальной машине нужно, чтобы виртуальная машина видела не 8 процессоров, а один 8-ядерный процессор, 2 процессора по 4 ядра или 1 процессор с 4 ядрами по 2 потока. Попробуем изменить способ назначения виртуальных ядер для ВМ на KVM.

Выключите виртуальную машину:

# virsh shutdown server.vpn.ru – где server.vpn.ru это имя виртуальной машины.

Выведите текущую XML конфигурацию виртуальной машины KVM:

# virsh dumpxml server.vpn.ru

Нам интересен блок с описанием процессоров:

Как видим, у нас указано просто 8 vCPU. Изменим конфигурацию:

# virsh edit server.vpn.ru

И после добавим:

  • host-passthrough — режим эмуляции при котором на виртуальной машине будет показан физический процессор узла кластера (ноды).
  • sockets=’1′ — указываем что процессор 1
  • cores=’4′ — указываем, что процессор имеет 4 ядра
  • threads=’2′ — указываем, что ядра у нас по 2 потока

Сохраните конфигурационный файл и запустите ВМ. Авторизуйтесь в гостевой ВМ с Windows 10 и в Task Manager или Resource Monitor проверьте, что ОС видит все выделенные виртуальные ядра.

Читайте также:  Виджет языка windows 10

Также в свойства системы теперь стал отображаться физический процессор хоста Intel(R) Xeon(R) Silver 4114 CPU, а не виртуальный.

Так нам удалось решить проблему с нагрузкой на ВМ, так как двух ядер не хватало для полноценной работы приложений.

Настройка виртуальных процессоров и количества ядер в VMWare

Вы можете изменить способ презентации vCPU для виртуальной машины VMWare из интерфейса vSphere Client.

  1. Выключите ВМ и откройте ее настройки;
  2. Разверните секцию CPU;
  3. Изменим конфигурацию ВМ так, чтобы гостевая ОС видела 2 процессора по 4 ядра. Измените значение Cores per Socket на 4. Это означает, что гостевая ОС будет видеть два четырех –ядерных процессора (2 сокета по 4 ядра);
  4. Сохраните изменения и запустите ВМ.

Архитектура NUMA и виртуальные vCPU

Есть еще несколько аспектов назначения vCPU и ядер виртуальным машинам, которые нужно понимать.

При назначении ядер на сокете учитывайте наличие NUMA архитектуры (используется в большинстве современных CPU). Не рекомендуется назначать вашей ВМ количество ядер на сокет (и общее количество vCPU) больше, чем доступно ядер на вашем физическом сокете/процессоре (ноде NUMA). При размещении на одной физической ноде NUMA, виртуальная машина сможет использовать быструю локальную RAM, доступную на конкретной ноде NUMA. Иначе для выполнения операции процессам придется ждать ответа от другой ноды NUMA (что несколько более долго).

Если вы назначаете для ВМ два отдельных виртуальных сокета, то гипервизор может их запускать на разных нодах NUMA. Что не лучшим образом скажется на производительности ВМ.

Если количество требуемых vCPU превышает количество ядер на 1 физическом сокете (ноде NUMA), нужно создать несколько виртуальных сокетов (процессоров) с необходимым количество ядер. Также не желательно использовать нечетное количество процессоров (лучше добавить 1 vCPU)

Это позволит сохранить производительность виртуальной машины.

Например, для 2 процессорного хоста с 10 ядрами (суммарно доступно 40 vCPU с учетом HyperThreading), при настройке vCPU для ВМ оптимально использовать такие конфигурации:

Требуемое количество vCPU Количество виртуальных сокетов в настройках ВМ Количество ядер на виртуальном процессоре в настройках ВМ
1 1 1
……
10 1 10
11 Не оптимально
12 2 6
……
20 2 10

Например, ВМ с Microsoft SQL Server 2016 Enterprise Edition 16 vCPU в конфигурации 8 сокетов по 2 ядра будет работать хуже, чем в конфигурации 2 сокета по 8 ядер.

Также не забывайте, что некоторые приложения лицензируются по физическим сокетам (так было в старых версиях SQL Server). Иногда вам просто выгоднее лицензировать один многоядерный процессор, чем несколько процессоров с меньшим количеством ядер.

Что такое вариант установки Server Core в Windows Server? What is the Server Core installation option in Windows Server?

Область применения: Windows Server 2019, Windows Server 2016 и Windows Server (половина ежегодного канала) Applies to: Windows Server 2019, Windows Server 2016, and Windows Server (Semi-Annual Channel)

Параметр Server Core — это минимальный вариант установки, доступный при развертывании выпуска Standard или Datacenter Edition Windows Server. The Server Core option is a minimal installation option that is available when you are deploying the Standard or Datacenter edition of Windows Server. Server Core включает большинство ролей сервера, но не все. Server Core includes most but not all server roles. Серверные ядра имеют меньше места на диске и, следовательно, менее подвержены атакам из-за меньшей базы кода. Server Core has a smaller disk footprint, and therefore a smaller attack surface due to a smaller code base.

Сервер (ядро) vs сервер с возможностями рабочего стола Server (Core) vs Server with Desktop Experience

При установке Windows Server устанавливаются только те роли сервера, которые были выбраны. Это позволяет сократить общий объем Windows Server. When you install Windows Server, you install only the server roles that you choose — this helps reduce the overall footprint for Windows Server. Однако при установке параметра «сервер с возможностями рабочего стола» устанавливается множество служб и других компонентов, которые часто не требуются для конкретного сценария использования. However, the Server with Desktop Experience installation option still installs many services and other components that are often not needed for a particular usage scenario.

Читайте также:  Патч для windows 10 для одновременных подключений

Дело в том, где приводятся основные серверные компоненты: Установка Server Core исключает все службы и другие функции, которые не являются обязательными для поддержки некоторых часто используемых ролей сервера. That’s where Server Core comes into play: the Server Core installation eliminates any services and other features that are not essential for the support of certain commonly used server roles. Например, серверу Hyper-V не нужен графический интерфейс пользователя (GUI), так как вы можете управлять практически всеми аспектами Hyper-V из командной строки с помощью Windows PowerShell или с помощью диспетчера Hyper-V. For example, a Hyper-V server doesn’t need a graphical user interface (GUI), because you can manage virtually all aspects of Hyper-V either from the command line using Windows PowerShell or remotely using the Hyper-V Manager.

Отличия ядра сервера от основных возможностей без простое The Server Core difference — core capabilities without the frills

После завершения установки Server Core в системе и входа в систему в первый раз вы сможете немного неожиданно. When you finish installing Server Core on a system and sign in for the first time, you’re in for a bit of a surprise. Основное различие между вариантами установки «сервер с возможностями рабочего стола» и «ядро сервера» состоит в том, что Server Core не включает следующие пакеты оболочки GUI: The main difference between the Server with Desktop Experience installation option and Server Core is that Server Core does not include the following GUI shell packages:

  • Microsoft-Windows-Server-Shell-Package Microsoft-Windows-Server-Shell-Package
  • Microsoft-Windows-Server-GUI-руководства-Package Microsoft-Windows-Server-Gui-Mgmt-Package
  • Microsoft-Windows-Server-ГИП-RSAT-Package Microsoft-Windows-Server-Gui-RSAT-Package
  • Microsoft-Windows-Кортана-PAL-Настольный-пакет Microsoft-Windows-Cortana-PAL-Desktop-Package

Иными словами, в архитектуре Server Core нет рабочего стола . In other words, there is no desktop in Server Core, by design. При поддержке функций, необходимых для поддержки традиционных бизнес-приложений и рабочих нагрузок на основе ролей, серверное ядро не имеет традиционного интерфейса рабочего стола. While maintaining the capabilities required to support traditional business applications and role-based workloads, Server Core does not have a traditional desktop interface. Вместо этого серверное ядро предназначено для удаленного управления с помощью командной строки, PowerShell или средства графического пользовательского интерфейса (например, RSAT или центра администрирования Windows). Instead, Server Core is designed to be managed remotely through the command line, PowerShell, or a GUI tool (like RSAT or Windows Admin Center).

В дополнение к отсутствию пользовательского интерфейса ядро сервера также отличается от сервера с возможностями рабочего стола следующим образом. In addition to no UI, Server Core also differs from the Server with Desktop Experience in the following ways:

  • Server Core не имеет специальных средств Server Core does not have any accessibility tools
  • Отсутствует OOBE (встроенное взаимодействие) для настройки ядра сервера No OOBE (out-of-box-experience) for setting up Server Core
  • Отсутствует поддержка звука No audio support

В следующей таблице показано, какие приложения доступны локально на сервере Server Core VS Server с возможностями рабочего стола. The following table shows which applications are available locally on Server Core vs Server with Desktop Experience. Важно. в большинстве случаев приложения, перечисленные ниже, могут быть запущены удаленно с клиентского компьютера Windows и использованы для управления установкой Server Core. Important: In most cases, applications that are listed as «not available» below can be run remotely from a Windows client computer and used to manage your Server Core installation.

Читайте также:  Acer aspire e1 522 установка windows

Этот список предназначен для краткого справочника — он не должен быть полным списком. This list is intended for quick reference — it is not intended to be a complete list.

Приложение Application Основные серверные компоненты Server Core Сервер с возможностями рабочего стола Server with Desktop Experience
С помощью командной строки Command prompt доступен available доступен available
Windows PowerShell или Microsoft .NET Windows PowerShell/ Microsoft .NET доступен available доступен available
Perfmon.exe Perfmon.exe недоступно not available доступен available
WinDbg (графический пользовательский интерфейс) Windbg (GUI) Поддерживается supported Поддерживается supported
Resmon.exe Resmon.exe недоступно not available доступен available
Regedit Regedit доступен available доступен available
Fsutil.exe Fsutil.exe доступен available доступен available
Disksnapshot.exe Disksnapshot.exe недоступно not available доступен available
Diskpart.exe Diskpart.exe доступен available доступен available
Diskmgmt. msc Diskmgmt.msc недоступно not available доступен available
Devmgmt. msc Devmgmt.msc недоступно not available доступен available
Диспетчер серверов Server Manager недоступно not available доступен available
Mmc.exe Mmc.exe недоступно not available доступен available
Файл eventvwr Eventvwr недоступно not available доступен available
Wevtutil (запросы событий) Wevtutil (Event queries) доступен available доступен available
Services.msc Services.msc недоступно not available доступен available
Панель управления Control Panel недоступно not available доступен available
Центр обновления Windows (графический пользовательский интерфейс) Windows Update (GUI) недоступно not available доступен available
Проводник Windows Explorer недоступно not available доступен available
Панель задач Taskbar недоступно not available доступен available
Уведомления на панели задач Taskbar notifications недоступно not available доступен available
Панели Диспетчер задач Taskmgr доступен available доступен available
Internet Explorer или пограничная Internet Explorer or Edge недоступно not available доступен available
Встроенная система справки Built-in help system недоступно not available доступен available
Оболочка Windows 10 Windows 10 Shell недоступно not available доступен available
Проигрыватель Windows Media Windows Media Player недоступно not available доступен available
PowerShell PowerShell доступен available доступен available
Интегрированная среда сценариев PowerShell PowerShell ISE недоступно not available доступен available
Редактор IME для PowerShell PowerShell IME доступен available доступен available
Mstsc.exe Mstsc.exe недоступно not available доступен available
Службы удаленных рабочих столов Remote Desktop Services доступен available доступен available
В диспетчере Hyper-V Hyper-V Manager недоступно not available доступен available
Программы* WordPad* недоступно not available доступен available

Дополнительные сведения о том, что входит в ядро сервера, см. в разделе роли, службы ролей и функции, включенные в Windows Server-Server Core. For more information about what is included in Server Core, see Roles, Role Services, and Features included in Windows Server — Server Core. Дополнительные сведения о том, что не включено в Server Core, см. в разделе роли, службы ролей и компоненты, не включенные в Server Core . And for information about what is not included in Server Core, see Roles, Role Services, and Features not included in Server Core

* Для чтения. Файлы RTF, локально хранящиеся на SKU Server Core, пользователи могут копировать файлы на другой компьютер Windows, где находится WordPad. * To read .RTF files locally stored on a Server Core SKU, users can copy the file(s) to a different Windows computer where WordPad is present.

Приступая к работе с Server Core Get started using Server Core

Используйте следующие сведения для установки, настройки и управления вариантом установки основных серверных компонентов Windows Server. Use the following information to install, configure, and manage the Server Core installation option of Windows Server.

Установка основных серверных компонентов: Server Core installation:

Использование Server Core: Using Server Core:

Оцените статью