- Настройка DNS-сервера на Windows Server 2012 и старше
- Настройка сетевого адаптера для DNS-сервера
- Установка роли DNS-сервера
- Создание зон прямого и обратного просмотра
- Создание зоны прямого просмотра
- Создание зоны обратного просмотра
- Создание A-записи
- Проверка
- Настройка параметров производительности контейнеров Windows Server Performance tuning Windows Server containers
- Введение Introduction
- Контейнеры Windows Server и контейнеры Hyper-V Windows Server Container and Hyper-V Containers
- Server Core и Nano Server Nano Server and Server Core
- Время запуска контейнера Container Start Up Time
- Первый вход в систему First Logon
- Расположение области для временных файлов Scratch Space Location
- Вложенные контейнеры Hyper-V Nested Hyper-V Containers
- Хранение Storage
- Подключенные тома данных Mounted Data Volumes
- Область временных файлов Scratch Space
- сеть; Networking
- Преобразование сетевых адресов Windows (WinNAT) Windows Network Address Translation (WinNAT)
- Прозрачный режим Transparent
- Мост второго уровня L2 Bridge
Настройка DNS-сервера на Windows Server 2012 и старше
DNS (Domain Name System, Система Доменных имен) – система, позволяющая преобразовать доменное имя в IP-адрес сервера и наоборот.
DNS-сервер – это сетевая служба, которая обеспечивает и поддерживает работу DNS. Служба DNS-сервера не требовательна к ресурсам машины. Если не подразумевается настройка иных ролей и служб на целевой машине, то минимальной конфигурации будет вполне достаточно.
Настройка сетевого адаптера для DNS-сервера
Установка DNS-сервера предполагает наличие доменной зоны, поэтому необходимо создать частную сеть в личном кабинете и подключить к ней виртуальные машины.
После того, как машина будет присоединена к двум сетям, важно не перепутать, какое из подключений требует настройки. Первичный сетевой адаптер настроен автоматически с самого начала, через него открыт доступ к интернету, в то время как на дополнительно подключенных сетевых адаптерах доступа в интернет нет, пока не будет произведена ручная настройка:
Наведя курсор на значок сети в системном трее, можно вызвать всплывающую подсказку с краткими сведениями о сетях. Из примера выше видно, что присоединённая сеть это Network 3.
Далее предстоит проделать цепочку действий:
- Нажать правой клавишей мыши Пуск, в выпадающем меню выбрать пункт Сетевые подключения;
- Правой кнопкой мыши нажать на необходимый сетевой адаптер, в меню выбрать Свойства;
- В окне свойств выбрать IPv4 и нажать на кнопку Свойства;
- Заполнить соответствующие поля необходимыми данными:
Здесь в качестве предпочитаемого DNS-сервера машина назначена сама себе, альтернативным назначен dns.google [8.8.8.8].
Установка роли DNS-сервера
Для установки дополнительных ролей на сервер используется Мастер Добавления Ролей и Компонентов, который можно найти в Диспетчере Сервера.
На верхней навигационной панели Диспетчера сервера справа откройте меню Управление, выберите опцию Добавить Роли и Компоненты:
Откроется окно Мастера, в котором рекомендуют убедиться что:
1. Учётная запись администратора защищена надёжным паролем.
2. Настроены сетевые параметры, такие как статические IP-адреса.
3. Установлены новейшие обновления безопасности из центра обновления Windows.
Убедившись, что все условия выполнены, нажимайте Далее;
Выберите Установку ролей и компонентов и нажмите Далее:
Выберите необходимый сервер из пула серверов и нажмите Далее:
Отметьте чек-боксом роль DNS-сервер и перейдите Далее:
Проверьте список компонентов для установки, подтвердите нажатием кнопки Добавить компоненты:
Оставьте список компонентов без изменений, нажмите Далее:
Прочитайте информацию и нажмите Далее:
В последний раз проверьте конфигурацию установки и подтвердите решение нажатием кнопки Установить:
Финальное окно Мастера сообщит, что установка прошла успешно, Мастер установки можно закрыть:
Создание зон прямого и обратного просмотра
Доменная зона — совокупность доменных имён в пределах конкретного домена.
Зоны прямого просмотра предназначены для сопоставления доменного имени с IP-адресом.
Зоны обратного просмотра работают в противоположную сторону и сопоставляют IP-адрес с доменным именем.
Создание зон и управление ими осуществляется при помощи Диспетчера DNS.
Перейти к нему можно в правой части верхней навигационной панели, выбрав меню Средства и в выпадающем списке пункт DNS:
Создание зоны прямого просмотра
- Выделите каталог Зоны Прямого Просмотра, запустите Мастер Создания Новой Зоны с помощью кнопки Новая зона на панели инструментов сверху:
- Откроется окно Мастера с приветствием, нажмите Далее:
- Из предложенных вариантов выберите Основная зона и перейдите Далее:
- Укажите имя зоны и нажмите Далее:
- При необходимости поменяйте название будущего файла зоны и перейдите Далее:
- Выберите, разрешить динамические обновления или нет. Разрешать не рекомендуется в силу значимой уязвимости. Перейдите Далее:
- Проверьте правильность выбранной конфигурации и завершите настройку, нажав кнопку Готово:
Создание зоны обратного просмотра
- Выделите в Диспетчере DNS каталог Зоны Обратного Просмотра и нажатием кнопки Новая зона на панели инструментов сверху запустите Мастер Создания Новой Зоны:
- Выберите тип Основная Зона, перейдите Далее:
- Выберите назначение для адресов IPv4, нажмите Далее:
- Укажите идентификатор сети (первые три октета сетевого адреса) и следуйте Далее:
- При необходимости поменяйте название будущего файла зоны и перейдите Далее:
- Выберите, разрешить динамические обновления или нет. Разрешать не рекомендуется в силу значимой уязвимости. Перейдите Далее:
- Проверьте правильность выбранной конфигурации и завершите настройку, нажав кнопку Готово:
Создание A-записи
Данный раздел инструкции в большей степени предназначен для проверки ранее проделанных шагов.
Ресурсная запись — единица хранения и передачи информации в DNS, заключает в себе сведения о соответствии какого-либо имени с определёнными служебными данными.
Запись A — запись, позволяющая по доменному имени узнать IP-адрес.
Запись PTR — запись, обратная A записи.
- В Диспетчере DNS выберите каталог созданной ранее зоны внутри каталога Зон Прямого Просмотра. В правой части Диспетчера, где отображается содержимое каталогов, правой кнопки мыши вызовите выпадающее меню и запустите команду «Создать узел (A или AAAA)…»:
- Откроется окно создания Нового Узла, где понадобится вписать в соответствующие поля имя узла (без доменной части, в качестве доменной части используется название настраиваемой зоны) и IP-адрес. Здесь же имеется чек-бокс Создать соответствующую PTR-запись — чтобы проверить работу обеих зон (прямой и обратной), чек-бокс должен быть активирован:
Если поле имени остается пустым, указанный адрес будет связан с именем доменной зоны.
- Также можно добавить записи для других серверов:
- Добавив все необходимые узлы, нажмите Готово.
Проверка
- Проверьте изменения в каталогах обеих зон (на примере ниже в обеих зонах появилось по 2 новых записи):
- Откройте командную строку (cmd) или PowerShell и запустите команду nslookup:
Из вывода команды видно, что по умолчанию используется DNS-сервер example-2012.com с адресом 10.0.1.6.
Чтобы окончательно убедиться, что прямая и обратная зоны работают как положено, можно отправить два запроса:
- Запрос по домену;
- Запрос по IP-адресу:
В примере получены подходящие ответы по обоим запросам.
- Можно попробовать отправить запрос на какой-нибудь внешний ресурс:
В дополнение к имени домена и адресам появилась строчка «Non-authoritative answer», это значит, что наш DNS-сервер не обладает необходимой полнотой информации по запрашиваемой зоне, а информация выведенная ниже, хоть и получена от авторитетного сервера, но сама в таком случае не является авторитетной.
Для сравнения все те же запросы выполнены на сервере, где не были настроены прямая и обратная зоны:
Здесь машина сама себе назначена предпочитаемым DNS-сервером. Доменное имя DNS-сервера отображается как неопознанное, поскольку нигде нет ресурсных записей для IP-адреса (10.0.1.7). По этой же причине запрос 2 возвращает ошибку (Non-existent domain).
Настройка параметров производительности контейнеров Windows Server Performance tuning Windows Server containers
Введение Introduction
Windows Server 2016 — это первая версия ОС Windows со встроенной поддержкой технологии контейнеров. Windows Server 2016 is the first version of Windows to ship support for container technology built in to the OS. В Windows Server 2016 доступны два типа контейнеров: контейнеры Windows Server и контейнеры Hyper-V. In Server 2016, two types of containers are available: Windows Server Containers and Hyper-V Containers. Каждый тип поддерживает номера SKU Server Core и или Nano Server Windows Server 2016. Each container type supports either the Server Core or Nano Server SKU of Windows Server 2016.
Эти конфигурации по-разному влияют на производительность. Мы подробно рассмотрим их, чтобы вы могли выбрать подходящий вариант для своих сценариев. These configurations have different performance implications which we detail below to help you understand which is right for your scenarios. Кроме того, мы подробно опишем конфигурации, влияющие на производительность, и компромиссные решения с использованием каждого из этих вариантов. In addition, we detail performance impacting configurations, and describe the tradeoffs with each of those options.
Контейнеры Windows Server и контейнеры Hyper-V Windows Server Container and Hyper-V Containers
Контейнер Windows Server и контейнеры Hyper-V предоставляют сходные возможности, предоставляющие сходные возможности переносимости и согласованности. Но они отличаются в контексте гарантий изоляции и показателей производительности. Windows Server Container and Hyper-V containers offer many of the same portability and consistency benefits but differ in terms of their isolation guarantees and performance characteristsics.
Контейнеры Windows Server обеспечивают изоляцию приложений используя соответствующую технологию в отношении процессов и пространств имен. Windows Server Containers provide application isolation through process and namespace isolation technology. Контейнер Windows Server использует ядро совместно с узлом контейнера и всеми остальными контейнерами на этом узле. A Windows Server container shares a kernel with the container host and all containers running on the host.
Контейнеры Hyper-V расширяют возможности изоляции, предоставляемые контейнерами Windows Server, ведь каждый контейнер запускается в высокооптимизированной виртуальной машине. Hyper-V Containers expand on the isolation provided by Windows Server Containers by running each container in a highly optimized virtual machine. В этой конфигурации ядро узла контейнера не используется совместно с контейнерами Hyper-V. In this configuration the kernel of the container host is not shared with the Hyper-V Containers.
Дополнительная изоляция, предоставляемая контейнерами Hyper-V, во многом достигается благодаря предоставляемому гипервизором уровню изоляции между контейнером и узлом контейнера. The additional isolation provided by Hyper-V containers is achieved in large part by a hypervisor layer of isolation between the container and the container host. Это влияет на плотность контейнеров (в отличие от контейнеров Windows Server системные и двоичные файлы используются совместно в меньшей степени), увеличивая общий объем хранилища и памяти. This affects container density as, unlike Windows Server Containers, less sharing of system files and binaries can occur, resulting in an overall larger storage and memory footprint. Кроме того, использование некоторых режимов использования сети, операций ввода-вывода для хранилища и ЦП может быть сопряжено с дополнительными издержками. In addition there is the expected additional overhead in some network, storage io, and CPU paths.
Server Core и Nano Server Nano Server and Server Core
Контейнеры Windows Server и контейнеры Hyper-V поддерживают Server Core, а для нового режима установки, доступного в Windows Server 2016, еще и Nano Server. Windows Server Containers and Hyper-V containers offer support for Server Core and for a new installation option available in Windows Server 2016 : Nano Server.
Nano Server: это удаленно управляемая серверная ОС, оптимизированная для частных облаков и центров обработки данных. Nano Server is a remotely administered server operating system optimized for private clouds and datacenters. Этот вариант аналогичен Windows Server в режиме основных серверных компонентов, однако значительно меньше по размеру, не имеет функций локального входа и поддерживает только 64-разрядные приложения, средства и агенты. It is similar to Windows Server in Server Core mode, but significantly smaller, has no local logon capability, and only supports 64-bit applications, tools, and agents. Он занимает гораздо меньше места на диске и запускается быстрее. It takes up far less disk space and starts faster.
Время запуска контейнера Container Start Up Time
Время запуска контейнера является важнейшей метрикой во многих ситуациях, когда использование контейнеров является неоспоримым преимуществом. Container start up time is a key metric in many of the scenarios that containers offer the greatest benefit. Крайне важно понимать, как можно ускорить запуск контейнера, As such, understanding how to best optimize for container start up time is critical. поэтому ниже описаны некоторые компромиссные решения. Below are some tuning trade-offs to understand to achieve improved start up time.
Первый вход в систему First Logon
Корпорация Майкрософт предоставляет базовый образ для Nano Server и Server Core. Microsoft ships a base image for both Nano Server and Server Core. Базовый образ для Server Core оптимизирован путем устранения издержек при запуске, связанных с первым входом в систему (запуск при первом включении компьютера). The base image which ships for Server Core has been optimized by removing the start-up time overhead associated with first logon (OOBE). Для базового образа Nano Server такая оптимизация не применялась. This is not the case with Nano Server base image. Но эти издержки можно устранить и в образах на основе Nano Server, зафиксировав хотя бы один слой в образе контейнера. However, this cost can be removed from Nano Server based images by committing at least one layer to the container image. В этом случае при последующих запусках контейнера из образа не будет использоваться столько ресурсов, как при первом запуске. Subsequent container starts from the image will not incur the first logon cost.
Расположение области для временных файлов Scratch Space Location
По умолчанию контейнеры используют область на системном диске узла контейнера для хранения временных файлов во время существования запущенного контейнера. Containers, by default, use a temporary scratch space on the container host’s system drive media for storage during the lifetime of the running container. Эта область выполняет роль системного диска контейнера, поэтому к ней обращаются очень многие операции записи и чтения в контейнере. This serves as the container’s system drive, and as such many of the writes and reads done in container operation follow this path. Если система узла использует системный диск на вращающемся магнитом носителе (HDD), но располагает и более быстрым носителем для хранения данных (быстрый HDD или любой SSD), вы можете переместить область для временных файлов на другой диск. For host systems where the system drive exists on spinning disk magnetic media (HDDs) but faster storage media is available (faster HDDs or SSDs), it is possible to move the container scratch space to a different drive. Для этого примените команду dockerd –g. This is achieved by using the dockerd –g command. Эта команда имеет глобальный охват, влияя на все запущенные в системе контейнеры. This command is global, and will affect all containers running on the system.
Вложенные контейнеры Hyper-V Nested Hyper-V Containers
В Hyper-V для Windows Server 2016 добавлена поддержка вложенных гипервизоров. Hyper-V for Windows Server 2016 introduces nested hypervisor support. Теперь вы можете запустить виртуальную машину внутри другой виртуальной машины. That is, it is now possible to run a virtual machine from within a virtual machine. Это позволяет реализовать множество полезных сценариев, но одновременно и усиливает влияние гипервизоров на производительность, ведь на физическом узле работает сразу два уровня гипервизоров. This opens up many useful scenarios but also exaggerates some performance impact that the hypervisor incurs, as there are two level of hypervisors running above the physical host.
Для контейнеров это важно, когда контейнер Hyper-V работает внутри виртуальной машины. For containers, this has an impact when running a Hyper-V container inside a virtual machine. Контейнер Hyper-V обеспечивает изоляцию на уровне гипервизора между собой и узлом контейнера, а узел контейнера представляет собой виртуальную машину на основе Hyper-V. Поэтому наблюдается снижение производительности, связанное с временем запуска контейнера, операциями ввода-вывода хранилища и сети, пропускной способностью сети и производительностью ЦП. Since a Hyper-V Container offers isolation through a hypervisor layer between itself and the container host, when the container host is a Hyper-V based virtual machine, there is performance overhead associated in terms of container start-up time, storage io, network io and throughput, and CPU.
Хранение Storage
Подключенные тома данных Mounted Data Volumes
Контейнеры позволяют использовать системный диск узла контейнера для размещения области временных файлов контейнера. Containers offer the ability to use the container host system drive for the container scratch space. Но срок жизни файлов в этой области совпадает со сроком жизни контейнера. However, the container scratch space has a life span equal to that of the container. Это означает, что область временных файлов и все данные в ней очищаются при остановке контейнера. That is, when the container is stopped, the scratch space and all associated data goes away.
Но во многих сценариях требуется сохранять данные независимо от времени существования контейнера. However, there are many scenarios in which having data persist independent of container lifetime is desired. Для таких ситуаций мы реализовали возможность подключения к контейнеру томов данных из узла контейнера. In these cases, we support mounting data volumes from the container host into the container. Для контейнеров Windows Server использование подключенных томов данных незначительно влияет на операции ввода-вывода (производительность соответствует внутренним показателям). For Windows Server Containers, there is negligible IO path overhead associated with mounted data volumes (near native performance). Но при подключении томов данных к контейнерам Hyper-V в этом режиме наблюдается некоторое снижение производительности. However, when mounting data volumes into Hyper-V containers, there is some IO performance degradation in that path. Более того, это влияние усиливается при работе контейнеров Hyper-V внутри виртуальных машин. In addition, this impact is exaggerated when running Hyper-V containers inside of virtual machines.
Область временных файлов Scratch Space
Контейнеры Windows Server и контейнеры Hyper-V предоставляют динамический виртуальный жесткий диск объемом 20 ГБ в качестве области временных файлов контейнера по умолчанию. Both Windows Server Containers and Hyper-V containers provide a 20GB dynamic VHD for the container scratch space by default. В контейнерах обоих типов часть этой области занимает ОС контейнера, и это справедливо для каждого запущенного контейнера. For both container types, the container OS takes up a portion of that space, and this is true for every container started. Поэтому важно помнить, что каждый запущенный контейнер занимает часть физического хранилища и в зависимости от рабочей нагрузки может использовать для записи до 20 ГБ. Thus it is important to remember that every container started has some storage impact, and depending on the workload can write up to 20GB of the backing storage media. Это следует учитывать при планировании конфигураций хранилища для сервера. Server storage configurations should be designed with this in mind. (Можно ли настроить размер области временных файлов?) (can we configure scratch size)
сеть; Networking
Контейнеры Windows Server и контейнеры Hyper-V предоставляют несколько разных сетевых режимов, позволяя выбрать наиболее подходящий для разных сетевых конфигураций. Windows Server Containers and Hyper-V containers offer a variety of networking modes to best suit the needs of differing networking configurations. Каждый из этих режимов оказывает определенное влияние на производительность. Each of these options present their own performance characteristics.
Преобразование сетевых адресов Windows (WinNAT) Windows Network Address Translation (WinNAT)
Каждый контейнер получает IP-адрес из внутреннего частного пространства IP-адресов (например, 172.16.0.0/12). Each container will receive an IP address from an internal, private IP prefix (e.g. 172.16.0.0/12). Перенаправление и сопоставление портов из узла контейнера в конечные точки контейнера поддерживается. Port forwarding / mapping from the container host to container endpoints is supported. При первом запуске dockerd подсистема Docker создает сеть NAT. Docker creates a NAT network by default when the dockerd first runs.
Из этих трех режимов конфигурация NAT больше других влияет на операции сетевого ввода-вывода, но требует меньшего объема настроек. Of these three modes, the NAT configuration is the most expensive network IO path, but has the least amount of configuration needed.
Для подключения к виртуальному коммутатору контейнеры Windows Server используют виртуальный сетевой адаптер узла. Windows Server containers use a Host vNIC to attach to the virtual switch. Для подключения к виртуальному коммутатору контейнеры Hyper-V используют сетевой адаптер синтетической виртуальной машины (не предоставляется служебной виртуальной машине). Hyper-V Containers use a Synthetic VM NIC (not exposed to the Utility VM) to attach to the virtual switch. Когда контейнеры обмениваются данными с внешней сетью, пакеты направляются через WinNAT с применением преобразования адресов, что влечет за собой дополнительные издержки. When containers are communicating with the external network, packets are routed through WinNAT with address translations applied, which incurs some overhead.
Прозрачный режим Transparent
Каждая конечная точка контейнера подключена напрямую к физической сети. Each container endpoint is directly connected to the physical network. IP-адреса из физической сети могут назначаться статически или динамически с помощью внешнего DHCP-сервера. IP addresses from the physical network can be assigned statically or dynamically using an external DHCP server.
Прозрачный режим наиболее экономичен с точки зрения сетевого ввода-вывода, так как внешние пакеты передаются напрямую на виртуальный сетевой адаптер контейнера, предоставляя прямой доступ к внешней сети. Transparent mode is the least expensive in terms of the network IO path, and external packets are directly passed through to the container virtual NIC giving direct access to the external network.
Мост второго уровня L2 Bridge
Каждая конечная точка контейнера будет находиться в той же IP-подсети, что и узел контейнера. Each container endpoint will be in the same IP subnet as the container host. IP-адреса должны назначаться статически из того же префикса, что и узел контейнера. The IP addresses must be assigned statically from the same prefix as the container host. Все конечные точки контейнера на узле будут иметь одинаковый MAC-адрес из-за преобразования адресов второго уровня. All container endpoints on the host will have the same MAC address due to Layer-2 address translation.
Режим моста второго уровня обеспечивает более высокую производительность, чем режим WinNAT, так как он предоставляет прямой доступ к внешней сети. При этом его производительность ниже по сравнению с прозрачным режимом, так как выполняется преобразование MAC-адресов. L2 Bridge Mode is more performant than WinNAT mode as it provides direct access to the external network, but less performant than Transparent mode as it also introduces MAC address translation.