Можно ли смешивать уровни настроек серверов Configuration Levels в отказоустойчивом кластере Windows Server 2016 Failover Cluster?

Комбинирование вариантов развертывания Server Core и Server with Desktop в одном кластере поддерживается, как и в Windows Server 2012 R2, хотя и не рекомендуется. Можно также добавлять вариант Nano Server в среду со смешанными настройками серверов, однако, повторяю, это нежелательно. Ваш кластер должен запускать ту же самую операционную систему, тот же самый уровень настроек, тот же самый стек хранилища данных (адаптеры, аппаратно-программное обеспечение, драйверы и т. д.), то же самое сетевое аппаратное обеспечение. Любое отклонение от постоянного состояния должно быть временным, как часть сценария перемещения, а не как вариант долговременного использования.

Как задействовать мгновенные двоичные снимки в виртуальных машинах Azure IaaS?

Виртуальные машины Azure не предусматривают встроенной технологии контрольных точек, при помощи которой можно задать момент времени, когда нужно сохранить состояние виртуальной машины. Некоторые решения включают в себя возможность выполнения снимка виртуальной машины VM Capture или резервного копирования через Azure Backup. Если вы хотите лишь сохранить состояние диска, то можете использовать мгновенные двоичные снимки, которые сохраняют состояние двоичного файла, представляющего файлы VHD, поскольку они сохраняются в страничных двоичных файлах. Если виртуальная машина работает, то этот процесс станет причиной постоянных сбоев, поэтому сначала остановите виртуальную машину для получения мгновенного снимка. Показанный ниже код PowerShell создает мгновенный снимок указанного двоичного файла:

$Container = 'vhds'
                              $VHDName = 'DummyVM201656141318.vhd'
                              $AzStorAccName = 'savtechsalrsscus'
                              $AzResGroup = 'rg-scusa'
                              $AzStrKey = Get-AzureRmStorageAccountKey
                              -Name $AzStorAccName
                              -ResourceGroupName $AzResGroup
                              $AzStrCtx = New-AzureStorageContext
                              $AzStorAccName -StorageAccountKey
                              $AzStrKey[0].Value
                              $VMblob = Get-AzureRMStorageAccount
                              -Name savtechsalrsscus
                              -ResourceGroupName rg-scusa |
                              Get-AzureStorageContainer | where {$_.Name
                              -eq $Container} | Get-AzureStorageBlob | where
                              {$_.Name -eq $VHDName -and
                              $_.ICloudBlob.IsSnapshot -ne $true}
                              $VMsnap = $VMblob.ICloudBlob.CreateSnapshot()
                             
                              #View all snapshots
                              Get-AzureStorageBlob -Context $AzStrCtx
                               -Container $Container | Where-Object
                              {$_.ICloudBlob.IsSnapshot -and
                              $_.SnapshotTime -ne $null }

Можно создать множественные мгновенные снимки и просмотреть использование последнего мгновенного снимка:

$VMsnaps = Get-AzureStorageBlob -Context $AzStrCtx
-Container $Container | Where-Object {$_.ICloudBlob.IsSnapshot
-and $_.Name -eq $VHDName -and $_.SnapshotTime -ne $null }
                              $VMsnaps[$VMsnaps.Count -1].ICloudBlob

Впоследствии мгновенные снимки можно копировать в другие двоичные файлы для использования другими виртуальными машинами. Копирование можно выполнить при помощи Start-AzureStorageBlobCopy. Вы не сможете восстановить мгновенный снимок до исходного двоичного файла, который содержит присоединенный к виртуальной машине диск, поскольку у виртуальной машины есть указатель на двоичный файл, который не позволяет выполнять его перезапись. Сначала требуется отсоединить диск от виртуальной машины, что возможно для диска данных, но не предусмотрено для диска операционной системы. Если вы хотите вернуть состояние диска операционной системы к состоянию мгновенного снимка, вам придется удалить виртуальную машину, восстановить двоичный файл из мгновенного снимка, а затем вновь создать виртуальную машину. Например, чтобы скопировать последний мгновенный снимок двоичного файла для создания нового двоичного файла, выполните команду (обратите внимание, что в данном случае я выполняю копирование в ту же самую учетную запись хранилища, однако вы можете использовать контекстный идентификатор хранилища, для того чтобы копировать в другую учетную запись):

$VMsnaps = Get-AzureStorageBlob -Context $AzStrCtx
-Container $Container | Where-Object {$_.ICloudBlob.IsSnapshot
-and $_.Name -eq $VHDName -and $_.SnapshotTime -ne $null }
                              $VMsnaps[$VMsnaps.Count -1].ICloudBlob

Как мне прекратить получение писем по электронной почте о ежедневном обновлении календаря Outlook Calendar?

В Office 365 предусмотрена функция, которая в начале каждого дня отсылает электронное сообщение, содержащее информацию о предстоящих встречах. Это сообщение игнорирует любые правила, которые вы можете создать для его удаления, отсылки в папку Junk и т. д. Если вы хотите избавиться от этого сообщения, перейдите по ссылке: https://outlook.office365.com/owa/?path=/options/calendarreminders. Уберите флажок у параметра Get a daily agenda for calendars and tasks («Получать ежедневные повестки календаря и задания»), как показано на экране 1.

 

Настройка напоминаний в Office 365
Экран 1. Настройка напоминаний в Office 365

Могу ли я совмещать серверы Hyper-V, которые являются встроенными виртуальными машинами, с серверами Hyper-V на хосте без операционной системы в кластере?

Отказоустойчивая кластеризация Failover Clustering не различает типы узлов, которые добавлены к кластеру, так что тип узлов сам по себе не может блокировать поддержку кластера. Если вы запускаете процесс валидации и он пройден, тогда кластер будет поддерживаться, но вы, вероятно, будете получать много предупреждений, поскольку стеки сети и хранилища будут разными. Валидация будет пройдена, однако такой вариант не подходит для производственных целей.

Как мне изменить размер диска Azure Resource Manager?

Обычные команды для изменения размера дисков операционной системы и данных в учетной записи хранилища данных ASM не работают с учетными записями хранилища ARM. Размер дисков изменяется через настройки виртуальной машины.

$vm = Get-AzureRmVM -Name testvm -ResourceGroupName RG-SCUSA
                              $vm.StorageProfile.OsDisk.DiskSizeGB = 1023
                              $vm.StorageProfile.OsDisk.Caching = 'None' # or
                              ReadOnly ReadWrite
                              Update-AzureRmVM -VM $VM
                              -ResourceGroupName RG-SCUSA

В профиле хранилища виртуальной машины можно изменить размер диска данных, например:

$vm.StorageProfile.DataDisks [0].DiskSizeGB = 1023

Каким образом я могу задать параметры обновления кластера в Configuration Manager 2016?

В Windows Server предусмотрен встроенный механизм обновления кластера со времен выпуска Windows Server 2012, который дает возможность обновить весь кластер одним щелчком мыши. Одним щелчком узел освобождается от его ролей, обновляется, роли возвращаются обратно, а затем процесс повторяется для следующего узла и т. д. Менеджер System Center Virtual Machine Manager имеет такую же функцию, однако и встроенное обновление для кластера, и SCVMM используют службы WSUS или Windows Update, а не Configuration Manager. Configuration Manager 2016 имеет собственную функцию управления процессом обновления кластера, предусматривающую возможность задавать процент узлов кластера, которые могут оставаться активными во время операции. Кроме того, можно настраивать сценарии предварительной и последующей настройки по мере выполнения действий на каждом узле. Для настройки выполните следующие шаги:

  1. Поместите все узлы в кластере в их коллекцию Configuration Manager.
  2. Откройте свойства коллекции и на вкладке General установите флажок All devices are part of the same server cluster («Все устройства являются частью одного и того же кластера»), как показано на экране 2. Это действие активирует кнопку настроек Settings.
  3. Нажмите кнопку Settings.
  4. Задайте процент узлов кластера, которые не будут работать, и определите, нужно ли будет выполнять сценарии до освобождения ресурсов и последующего восстановления состояния (см. экран 3). Также можно указать, нужно ли выполнять сценарии, если возникает перезагрузка. Нажмите ОК.

 

Настройка параметров обновления кластера
Экран 2. Настройка параметров обновления кластера

 

Настройка последовательности обновления
Экран 3. Настройка последовательности обновления

Теперь процесс обновления будет учитывать эти параметры.

Как мне просмотреть папки запуска в Windows 10?

В Windows 10 существуют разнообразные папки запуска. Вот команды, которые вы можете ввести в окне Run, чтобы открыть их:

  • shell: startup — папка запуска конкретного пользователя (%appdata%\Microsoft\Windows\Start Menu\Programs\Startup);
  • shell: common startup — папка запуска всех пользователей (%programdata%\Microsoft\Windows\Start Menu\Programs\StartUp).

Как задействовать мое собственное адресное пространство для сети NAT с контейнерами Windows?

По умолчанию сеть NAT создается тогда, когда запускается служба Docker, а в RTM-версии Windows Server 2016 может существовать только одна сеть NAT, поскольку поддерживается только один экземпляр WinNAT на хосте, который обеспечивает работу сети NAT.

Существует две возможности на тот случай, если вы не хотите задействовать имеющееся по умолчанию адресное пространство 172.16.0.0/12, которое использует сеть NAT (например, если вы используете это адресное пространство в своей обычной сети).

Первая возможность — это изменение адресного пространства, которое используется сетью NAT по умолчанию.

1. Остановите работу службы docker:

stop-service docker.

2. Удалите сеть, имеющуюся по умолчанию:

Get-ContainerNetwork | Remove-ContainerNetwork.

3. Убедитесь, что коммутатор по умолчанию и экземпляр WinNAT исчезли, запустив Get-VMSwitch и Get-NetNat.

4. Отредактируйте файл daemon.json службы в папке C:\ProgramData\docker\config. Если этого файла не существует, создайте его. Более подробную информацию по настройке docker можно найти в статье по адресу: https://msdn.microsoft.com/en-us/virtualization/windowscontainers/docker/configure_docker_daemon.

5. Добавьте в файл следующий код JSON, но измените его так, чтобы он соответствовал диапазону IP-адресов, который вы хотите использовать:

{
"fixed-cidr": "192.168.1.0/24"
}

6. Перезапустите docker:

start-service docker

Другая возможность — запретить службе Docker создавать сеть NAT по умолчанию, повторив все шаги, описанные выше, но на шаге 5 нужно добавить такой код:

{
   "bridge": "none"
}

Теперь вы можете создать собственную сеть NAT с желаемым адресным пространством (обратите внимание, что при запуске экземпляра docker нужно будет задать вручную сеть, к которой он будет подключаться):

docker network create -d nat — subnet=192.168.1.0/24 NatNetwork1

Может ли служба Intune устанавливать приложения, не принадлежащие Microsoft, на устройствах iOS и Android?

Да. Во время презентаций всегда используются приложения Office для показа процессов развертывания и установки блокировки на корпоративные данные в корпоративных приложениях. И для них не стоит вопрос совместимости с Intune. К службе Intune может быть добавлено любое приложение для iOS или Android, поскольку всякое приложение делается доступным либо через ссылку на него в магазине приложений, либо через загрузку исполняемых двоичных файлов в службу Intune для развертывания напрямую.

Как создать загружаемый накопитель USB с Windows Server 2016?

Приведенные ниже инструкции помогут сделать накопитель USB загружаемым. Измените буквы диска и тех дисков, которые имеются в вашей системе. Обратите особое внимание на диск для USB, поскольку он будет очищен и все данные будут удалены! В данном случае диск F: содержит установочные файлы, принадлежащие Windows Server 2016, а диск Е: является моим диском USB.

Создание загружаемого накопителя USB с Windows Server 2016:

C:\WINDOWS\system32>diskpart
Microsoft DiskPart version 10.0.14393.0
Copyright (C) 1999-2013 Microsoft Corporation.
On computer: JOSAV
DISKPART> list disk
Disk ### Status Size Free Dyn Gpt
-------- ------------- ------- ------- --- ---
Disk 2 Online 476 GB 0 B *
Disk 3 Online 1853 GB 0 B *
Disk 4 Online 14 GB 0 B
DISKPART> select disk 4
Disk 4 is now the selected disk.
DISKPART> clean
DiskPart succeeded in cleaning the disk.
DISKPART> create partition primary
DiskPart succeeded in creating the specified partition.
DISKPART> select partition 1
Partition 1 is now the selected partition.
DISKPART> active
DiskPart marked the current partition as active.
DISKPART> format fs=ntfs quick label=»2016»
100 percent completed
DiskPart successfully formatted the volume.
DISKPART> exit
Leaving DiskPart...
C:\WINDOWS\system32>f:
F:\>cd boot
F:\boot>bootsect /nt60 e:
Target volumes will be updated with BOOTMGR compatible bootcode.
E: (\\?\Volume{1d782b00-383c-11e6-9bc5-f62fb78d6ab6})
Successfully updated NTFS filesystem bootcode.
Bootcode was successfully updated on all targeted volumes.
xcopy f:\* e: /H /F /E

Каким образом проще всего импортировать несколько виртуальных машин из набора папок и автоматически исправить основные ошибки, такие как неправильное имя коммутатора или наличие большего количества ядер, чем поддерживается системой?

Представленный далее сценарий импортирует все виртуальные машины, обнаруженные в указанном наборе папок, и автоматически настроит коммутатор на новое подключение, которое он создает (вы можете изменить эту настройку на использование текущего подключения, которое у вас есть). Сценарий также составит отчет о том, есть ли у виртуальных машин больше ядер, чем поддерживает система, и решит эту проблему, изменив их количество на 4.

Импорт нескольких виртуальных машин из набора папок:

import-module hyper-v
                             
                              $VMRootPath = 'C:\Workshop'
                             
                              New-VMSwitch -Name "InternalSwitch" `
                                -SwitchType Internal
                             
                              $VMXMLFiles = Get-ChildItem -recurse
                              $VMrootPath\*.xml
                             
                              foreach($VMXMLFile in $VMXMLFiles)
                              {
                               #Import will fail as switch name is different
                               $report = Compare-VM -Path $VMXMLFile
                               foreach($incompatibility in
                               $report.Incompatibilities)
                               {
                                if($incompatibility.MessageId -eq '33012')
                                #Switch problem
                                {
                                 Write-Output "Binding to different VMSwitch"
                                 $incompatibility.Source |
                                 Connect-VMNetworkAdapter
                                 -SwitchName "InternalSwitch"
                                }
                                if($incompatibility.MessageId -eq '25014')
                                #Cannot restore saved state
                                {
                                 Write-Output "Removing saved state"
                                 $Report.VM | Remove-VMSavedState
                                }
                                if($incompatibility.MessageId -eq '14420')
                                #Too many cores
                                {
                                 Write-Output "Changing number of cores to 4"
                                 $Report.VM | Remove-VMSavedState
                                 #Need to remove saved state to change cores
                                 $Report.VM | Set-VM -ProcessorCount 4
                                }
                               }
                               $newvm = import-vm -CompatibilityReport $report
                               start-vm -VM $newvm
                              }

Какую можно увидеть скорость подключения синтетических сетевых адаптеров в Hyper-V 2016?

В отличие от vmNIC на хостах виртуальных машин до появления Windows Server 2016, которые видели заданную скорость, на Windows Server 2016 и более поздних версиях хосты Hyper-V видят реальную скорость подключения адаптеров vmNIC, обслуживающих коммутатор vSwitch. Например, vSwitch, подсоединенный к двум адаптерам с 10 Гбит/с, будет показывать скорость 20 Гбит/с для одного vmNIC (см. экран 4). Обратите внимание на то, что никакие ограничения службы QoS не учитываются при расчете скорости, выдаваемой для одной виртуальной машины. И, как в предыдущих версиях, эта скорость в реальности не гарантируется, и любой трафик, такой как трафик от одной виртуальной машины к другой на одном и том же хосте, никогда не будет иметь отношение к физическим сетевым адаптерам.

 

Скорость соединения для адаптера хоста
Экран 4. Скорость соединения для адаптера хоста

Как создать файл JSON из существующей ресурсной группы Resource Group в Azure?

Сказать по секрету, все, что связано с менеджером ресурсов Azure Resource Manager, хранится в формате JSON, однако, чтобы фактически создать ресурсы, вы можете использовать портал и PowerShell вместе с шаблонами JSON. Если вы создали ресурсы и хотите экспортировать их в файл JSON, который описывает развертывание Resource Group (впоследствии это может быть использовано для повторного развертывания), то вы можете сделать это при помощи команды PowerShell и современного портала Azure.

Используйте следующую команду PowerShell:

Export-AzureRmResourceGroup -ResourceGroupName
   

На портале просто откройте Resource Group (Browse, Resource Groups), а затем выберите сценарий Automation, который показывает полное содержимое файла JSON для этой Resource Group и включает вариант для загрузки или добавления в вашу личную библиотеку в Azure. Впоследствии то, что вы загрузили, вы сможете использовать повторно.

Что собой представляет Windows Store для бизнеса?

Магазин приложений Windows Store для бизнеса добавляет вкладку в приложение Windows Store, которая позволяет предлагать приложения другим пользователям в вашей компании, как определено в учетной записи абонента Azure AD. Windows Store for Business не только предоставляет отдельный список приложений, но и может использоваться для присвоения лицензий пользователям на основании членства в группе (критерий динамического членства в группе может применяться при интеграции с каким-либо решением для управления мобильными устройствами, например Intune). Windows Store for Business предоставляется через «облако» и по бесплатной подписке.

  1. Перейдите по ссылке https://www.microsoft.com/en-us/business-store и выберите Sign Up Now («подписаться сейчас»).
  2. Введите учетную запись Azure AD и зарегистрируйтесь.
  3. Примите соглашение об использовании.
  4. Вы будете зарегистрированы на сайте портала управления Windows Store for Business с адресом: https://businessstore.microsoft.com/en-us/Store/Apps.
  5. Здесь вы можете просматривать привычные приложения и добавлять их для получения доступа из вашего магазина приложений Windows Store for Business.
  6. После добавления новых приложений может пройти несколько дней до того момента, когда они будут видны в приложении Windows Store на компьютерах.

Что такое Mimikatz?

Mimikatz — это общедоступная утилита, которая активирует обзор информации об идентификационных данных службы Windows lsass (Local Security Authority Subsystem Service, LSASS) за счет использования модуля sekurlsa, включающего в себя пароли с простыми текстами и билетами Kerberos, которые впоследствии могут быть использованы для атак, таких как «подстановка хеша», pass-the-hash («атака повторного воспроизведения»), и «подстановка билета», pass-the-ticket. Большая часть антивирусных инструментов будет воспринимать присутствие Mimikatz как наличие угрозы и удалять ее, но тестирование системы защиты систем может принести интересные результаты.

Программа доступна по адресу: https://github.com/gentilkiwi/mimikatz. Я использую ее для показа отсутствия информации о билете при использовании средств безопасности, таких как защита учетных данных в удаленном режиме. Пример запуска поиска паролей в системе:

privilege:: debug
Sekurlsa:: logonpasswords