• Установка Hyper-V Server 2008 R2 на серверную платформу HP ProLiant DL 360 G5

    Подготовка аппаратной платформы

    imageПеред началом установки Hyper-V Server мы должны провести подготовку аппаратной платформы. В силу того что Hyper-V Server 2008 R2 это относительно новая ОС, для обеспечения корректной работы аппаратных компонент нам потребуется использовать последние версии драйверов с сайта производителя оборудования. Это требование с точки зрения корректной работы последних версий драйверов влечет за собой необходимость обновления всех прошивок Firmware нашего сервера. Поэтому берём за хорошую практику всегда приводить версии Firmware в актуальное состояние перед установкой ОС и последующей установкой драйверов.

    При первоначальной загрузке сервера в BIOS первым делом выставляем порядок загрузки (Standard Boot Order) таким образом чтобы загрузка начиналась с CD.
    Так как у нашего сервера два сетевых адаптера, сразу определимся в том, что первый из них (NIC1) мы будем использовать для доступа к хостовой ОС Hyper-V Server а второй (NIC2) будем использовать для доступа к виртуальным машинам. И так как информация о сетевых адаптерах нам потребуется на этапе первоначального конфигурирования ОС, сразу выписываем на листочек MAC адрес сетевого адаптера NIC2.

    image

    Далее переходим к включению необходимых для Hyper-V аппаратных возможностей процессора.
    В Advanced Option > Processor Options > Включаем опции No-Execute Memory Protection и Intel(R) Virtualization Technology.

    imageСкачиваем с сайта тех.поддержки Hewlett-Packard свежий пакет обслуживания серверов HP ProLiant включающий в себя все последние версии Firmware для аппаратных компонент нашего сервера. На момент написания данной заметки этот пакет имеет название HP ProLiant Software Maintenance Pack и версию 8.70 [21.01.2010]

    image
    Записываем полученный пакет в виде ISO образа на CD диск, и выполнив с него загрузку сервера, запускаем процедуру обновления Firmware. Встроенная в пакет утилита HP Smart Update Manager автоматически выполнит опрос аппаратных компонент сервера и любезно предложит нам обновить необходимые компоненты. После обновления можно приступать непосредственно к этапу установки ОС.

    Установка Hyper-V Server 2008 R2

    Процесс установки Hyper-V Server 2008 R2 достаточно прост и интуитивно понятен. Сначала определяемся с языковыми параметрами. На первоначальном этапе эти параметры можно оставить по умолчанию.

    image
    Задаём дисковую конфигурацию и выбираем диск, на который будем производить установку ОС. В процессе установки инсталлятор автоматически создаст на этом диске два раздела. Первый раздел – служебный размером в 100 Mb будет предназначен для хранения загрузочных файлов ОС. Второй раздел – сам системный том с исполняемыми файлами ОС и предустановленной ролью Hyper-V Server размером всего оставшегося места на указанном диске.

    image
    Оставшиеся два диска в нашем случае мы будем использовать для хранения виртуальных жестких дисков VHD наших будущих виртуальных машин. Для обеспечения отказоустойчивости в нашем случае все три диска представляют собой массивы уровня RAID-1.

    Первоначальная настройка ОС

    После завершения процесса установки, задаем пароль локального администратора и попадаем в ОС.
    Первое что мы видим – это два консольных окна. Первое окно – окно командного интерпретатора cmd.exe запущенное в режиме повышенных привилегий, второе окно – командный файл базовой настройки сервера sconfig.cmd

    image
    Пройдём пошагово по всем этапам первоначальной настройки.
    Для начала зададим имя нашего Hyper-V хоста. Для этого выберем пункт 2 (Computer Name) и введём имя сервера, после чего нам будет предложено перезагрузить сервер. Перезагрузим сервер.

    image
    После перезагрузки сервера включим удаленное управление нашим сервером. Для этого выберем пункт 4 (Configure Remote Management) и последовательно выберем пункты:

    image

    1) Allow MMC remote management (разрешим удаленный административный доступ через консоли MMC, автоматически включив при этом необходимые правила Windows Firewall)
    2) Enable Windows Powershell (производится авто-установка фичи Windows Powershell и разрешается удаленное исполнение скриптов PS в режиме remotesigned). После выполнения этого действия потребуется перезагрузка сервера.
    После перезагрузки снова вернёмся в Configure Remote Management и выполним следующий пункт…
    3) Allow Server Manager Remote Management (включим удаленное управление сервером с помощью таких полезностей как PowerShell и WinRM)

    Далее вернёмся в главное меню и включим возможность доступа к нашему серверу по RDP. В пункте 7 (Remote Desktop) выберем соответствующий параметр Enabled и выберем тип допустимых подключений (Allow clients running any version of Remote Desktop) так как этот параметр позволит нам получать доступ к серверу по RDP с старых RDP клиентов, не поддерживающих NLA.

    image
    Далее вернёмся в главное меню и перейдём к настройкам сети в пункт 8 (Network Settings). Здесь мы обнаружим 2 сетевых адаптера, имеющихся на борту сервера. Нам необходимо выбрать адаптер NIC1, как мы обговорили ранее , и настроить на нём статический IP адрес, который будет использоваться для доступа к хостовой ОС Hyper-V Server 2008 R2 и управления виртуальными машинами.

    image
    В нашем примере оба наших адаптера получили IP адрес с DHCP. Для того чтобы понять какой именно адаптер по индексу нам нужно настраивать, в окне командной строки выполним команду

    ipconfig /all

    Из вывода утилиты ipconfig по MAC адресу сетевого адаптера (его мы выписали из BIOS на первоначальном этапе) можно понять какой адрес он использует в данный момент как выделено на рисунке снизу.

    image

    Соответственно в нашем случае получается, что NIC1 у нас находится на интерфейсе с текущим адресом 10.160.136.53, то есть в sconfig.cmd он будет отображаться как #2. Его то мы и должны выбрать и настроить.

    image

    Задаем статический IP адрес, маску сети, шлюз по умолчанию в пункте 1 (Set Network Adapter IP Address) а затем значения IP адресов серверов DNS в пункте 2 (Set DNS Servers). На этом основную настройку с помощью sconfig.cmd можно считать законченной (позже мы к ней вернёмся).

    Региональные настройки ОС.

    Для задания региональных настроек ОС из командной строки вызовем апплет панели управления командой

    intl.cpl

    и в открывшемся окне на закладке Formats выберем Russia

    image

    На закладке Location выберем Russia и применим изменения (Apply)

    image

    На закладке Administrative скопируем выставленные нами региональные настройки в настройки профиля «по умолчанию» используемого для новых пользователей

    image

    И что важно, выберем язык (system locale) для использования в программах, не поддерживающих Unicode. После чего нам потребуется перезагрузить сервер.

     imageimage
    После перезагрузки, мы сразу увидим результат наших новых региональных настроек – sconfig.cmd обрусеет :)

    image

    Теперь мы можем ввести наш сервер в домен. Для этого используем пункт 1 главного меню sconfig.cmd где укажем имя домена и учетные данные в домене с правом ввода компьютера в домен. После ввода в домен выполним перезагрузку сервера.

    image

    После перезагрузки сразу выполним установку всех последних системных обновлений с WSUS. Для этого воспользуемся пунктом 6 главного меню sconfig.cmd – Загрузка и установка обновлений.

    Среди обновлений сразу выполняем установку пакета Forefront Client Security , который будет выполнять функции антивирусной защиты на нашем Core сервере.

    image

    После установки всех обновлений и перезагрузки сервера переходим к этапу установки драйверов для аппаратных компонент нашего сервера.

    Установка и настройка SNMP Service

    В случае, если в нашем окружении для мониторинга аппаратных компонент сервера используется программный комплекс HP Systems Insight Manager (SIM), перед установкой драйверов и программного обеспечения HP нам необходимо будет произвести ряд дополнительных действий:

    - Установить и настроить службу SNMP;
    - Настроить брандмауэр для взаимодействия компонент мониторинга HP Systems Insight

    Службу SNMP в режиме Core устанавливаем следующей командой:

    start /w ocsetup SNMP-SC

    После установки службы её необходимо настроить, так как по умолчанию служба SNMP не отвечает на поступающие запросы сторонним хостам. Чтобы разрешить опрос клиентских компонент HP Systems Insight со стороны сервера HP Systems Insight Manager необходимо внести изменения в свойства службы SNMP. В силу того что сервер Core не имеет визуальных инструментов для управления службами, сделать это можно двумя альтернативными способами:

    1) удаленно подключиться к нашему серверу оснасткой управления службами (services.msc) с другого компьютера под управлением Windows 7/Windows Server 2008 R2, имеющего уже установленную службу SNMP.

    image

    2) С другого компьютера с ОС Windows 7/Windows Server 2008 R2, имеющего уже установленную и настроенную нужным образом службу SNMP экспортировать куст реестра HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservicesSNMPParameters
    и затем импортировать его на Core сервере c Hyper-V Server 2008 R2.
    Содержимое reg файла может быть примерно таким:
     
    Windows Registry Editor Version 5.00
    [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservicesSNMPParameters]
    ’NameResolutionRetries’=dword:00000010
    ’EnableAuthenticationTraps’=dword:00000001
    [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservicesSNMPParametersPermittedManagers]
    ’1’=’localhost’
    ’2’=’HP-SIM-SERVER’
    [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservicesSNMPParametersRFC1156Agent]
    ’sysServices’=dword:0000004c
    ’sysLocation’=’Syktyvkar, Gagarin str. 158, room 25’
    ’sysContact’=’Vasya Pupkin’
    [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservicesSNMPParametersTrapConfiguration]
    [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservicesSNMPParametersTrapConfigurationpublic]
    ’1’=’HP-SIM-SERVER’
    [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservicesSNMPParametersValidCommunities]
    ’public’=dword:00000004

    Как наверное уже стало понятно из примера, нам необходимо как минимум настроить разрешение опроса по протоколу SNMP с строкой сообщества ‘public’ с правами ‘READ ONLY’ а также включить возможность отсылки трапов на наш сервер HP Systems Insight Manager. После настройки службу SNMP необходимо перезапустить для вступления изменений в силу.
    Теперь нужно настроить брандмауэр для взаимодействия компонент мониторинга HP Systems Insight с сервером HP Systems Insight Manager. Для этого как минимум мы должны открыть в системе порты используемые для доступа к HP компонентам System Management Homepage, которые мы будем устанавливать в дальнейшем вместе с драйверами. Сделать это можно командами:
     
    netsh advfirewall firewall add rule name=’HP System Management Homepage (Secure Port)’ protocol=TCP dir=in localport=2381 action=allow
     
    netsh advfirewall firewall add rule name=’HP System Management Homepage (Insecure Port)’ protocol=TCP dir=in localport=2301 action=allow
     
    Дополнительно про настройку брандмауэра в режиме командной строки можно почитать в статье KB947709 How to use the "netsh advfirewall firewall" context instead of the "netsh firewall" context to control Windows Firewall behavior in Windows Server 2008 and in Windows Vista
     
    Установка драйверов
     
    Для установки всех необходимых драйверов на наш сервер HP ProLiant DL 360 G5 скачиваем с сайта тех.поддержки Hewlett-Packard свежий пакет поддержки серверов HP ProLiant включающий в себя все последние версии драйверов для аппаратных компонент нашего сервера. На момент написания данной заметки этот пакет имеет название HP ProLiant Support Pack for Microsoft Windows Server 2008 x64 R2 и версию 8.30 [14.09.2009]
    Полученный пакет драйверов распаковываем во временный каталог на сервере и запускаем из командной строки файл setup.exe. В силу того что инсталлятор пакета поддержки изначально позиционируется HP как мульти-платформенный, он без проблем заведётся и отработает на нашем сервере, работающем в режиме Core.

    image

    Обратите внимание на то, что если мы собираемся полноценно использовать функционал HP Systems Insight Manager, мы должны устанавливать весь набор предлагаемых программных компонент, даже не смотря на то что некоторые утилиты не смогут запускаться и работать интерактивно в режиме Server Core, так как зависят от наличия в системе браузера Internet Explorer, которого в режиме Core, как нам известно, нет.

    Основными используемыми нами интерактивно на сервере утилитами могут быть:

    - HP ProLiant Array Configuration Utility (CLI) for Windows - утилита командной строки для конфигурирования дисковых массивов на контроллерах семейства HP Smart Array;

    - HP Network Config Utility - для конфигурирования параметров сетевых интерфейсов (например если нам потребуется организация аппаратных VLAN).

    Утилита HP Network Config Utility представляет собой приложение с графическим интерфейсом, которое может быть вызвано командой

    ‘C:Program FilesHPNCUhpteam.cpl’

    (в вашем окружении этот путь может быть другим)

    image

    В нашем сценарии нам не приходится прибегать к работе с данной утилитой.

    Утилита HP ProLiant Array Configuration Utility (CLI) for Windows представляет собой приложение командной строки , которое может быть вызвано командой

    ‘C:Program Files (x86)CompaqHpacucliBinhpacucli.exe’

    (в вашем окружении этот путь может быть другим).

    Утилита сама по себе достаточно информативная и простая, имеет встроенный help по возможным комбинациям команд. Для того чтобы получить подробные сведения о конфигурации всех контроллеров HP SA в системе выполним команду

    controller all show config detail

    image

    Вывод этой команды достаточно большой, поэтому прокомментирую только основные данные о текущей конфигурации:
     
    Smart Array P400i in Slot 0 (Embedded)
    Bus Interface: PCI
    Slot: 0
    ....Array: A
    Interface Type: SAS
    ...Logical Drive: 1
    Size: 68.3 GB
    Fault Tolerance: RAID 1
    ...... Mirror Group 0:
    physicaldrive 1I:1:1 (port 1I:box 1:bay 1, SAS, 72 GB, OK)
    Mirror Group 1:
    physicaldrive 1I:1:2 (port 1I:box 1:bay 2, SAS, 72 GB, OK)
     
    Из вывода утилиты мы например можем понять, что у нас:
    - Используется контроллер HP Smart Array P400i (слот 0), он имеет два канала;
    - Корзина имеет 6 дисков. первые 4 диска расположены на канале "1I", остальные 2 диска расположены на канале "2I";
    - Создан массив RAID 1 на дисках 1 и 2 канала "1I"
     
    Если стоит задача создать из неиспользуемых 4 дисков массив RAID5, это можно сделать командой:
     
    controller slot=0 create type=ld drives=1I:1:3,1I:1:4,2I:1:5,2I:1:6 raid=5
     
    После успешной отработки команды можно снова запросить сведения о конфигурации, и убедиться в том, что наш массив создан и находится в стадии инициализации:
     
    controller all show config detail
     
    Если стоит задача удаления дискового массива, используем команду типа:
     
    controller slot=0 array C delete
     
    Включение ICMP
     
    В силу того что мы используем сервер с включенным Windows Firewall нам также нужно создать правило разрешающее ICMP трафик, чтобы мы могли пользоваться утилитой сетевой диагностики ping. Сделать это можно с помощью утилиты командной строки Netsh.
    Для систем Windows Server Core 2008 / Hyper-V Server 2008 это будет выглядеть так:
     
    netsh firewall set icmpsetting 8
     
    Для систем Windows Server Core 2008 R2 / Hyper-V Server 2008 R2 (как раз наш случай) это будет выглядеть так:
     
    netsh advfirewall firewall add rule name=’ICMP Allow incoming V4 echo request’ protocol=icmpv4:8,any dir=in action=allow

    image

    Включение удаленного доступа к Device Manager

    После установки драйверов мы должны убедиться в том, что для ОС больше не осталось неопознанных устройств. При попытке удаленного доступа к диспетчеру устройств (Device Manager) нашего сервера мы можем получить отказ в доступе:

    image

    Для того чтобы включить доступ к Device Manager нашего сервера мы должны сконфигурировать разрешающий параметр Групповой политики (GPO). Изменения могут быть внесены как на уровне доменной политики, так и на уровне локальной групповой политики сервера (как в нашем примере).

    Для этого с компьютера под управлением ОС не ниже Windows Vista или Windows Server 2008, откроем оснастку Local Group Policy Editor , подключимся к нашему Hyper-V серверу и внесём изменения в раздел GPO:

    Computer configurationAdminstrative TemplatesSystemDevice Installation

    параметр Allow remote access to the PnP interface установим в значение Enable

    image

    Для вступления данного параметра в силу потребуется перезагрузка сервера.
    Обратите внимание на то, что при удалённом доступе через консоль Device Manager в любом случае мы будем иметь доступ только в режиме чтения, то есть, таким образом, например, не получится переустановить драйвер какого либо устройства на удаленной системе.

    image

    Для выполнения административных задач с драйверами устройств, предполагается использование локальных утилит при доступе на сервер через удаленный рабочий стол по RDP. Если по какой-то причине драйвер не имеет собственного инсталлятора или же инсталлятор не работает в среде Server Core, для управления драйверами устройств можно воспользоваться набором скриптов PowerShell - Core Configurator 2.0.
    Для этого скачиваем архив
    Core Configurator 2.0, распаковываем в папку с именем не содержащим пробелов (например C:Tools) и запускаем стартовый скрипт Start_CoreConfig.wsf

    image image

    Набор скриптов Core Configurator 2.0 помимо управления драйверами может быть полезен нам также и при многих других операция в ОС, работающей в режиме Server Core.

    Удалённое управление томами NTFS

    Для удалённого управления дисковыми томами на нашем Core сервере можно воспользоваться оснасткой Управление компьютером (compmgmt.msc). Это будет возможно только в случае, если на этапе первоначального конфигурирования сервера мы включили возможности удаленного управления сервером.

    image

    Создание виртуальной сети Hyper-V

    Теперь для того, чтобы мы могли создавать на нашем Hyper-V сервере виртуальные машины, использующие доступ к внешней локальной сети, мы должны создать виртуальную сеть. Для этого можно использовать оснастку Hyper-V Manager (%ProgramFiles%Hyper-Vvirtmgmt.msc) входящую в состав Средств удаленного администрирования сервера.

    imageКак мы определились ранее, для виртуальных сетей Hyper-V мы будем использовать отдельный сетевой адаптер нашего сервера, чтобы отделить трафик VM от трафика хостовой ОС.

    image

    После создания виртуальной сети можно будет создавать виртуальные машины с привязкой к этой виртуальной сети.
    Вообще, справедливости ради, стоит отметить тот момент, что если в нашем окружении имеется мощное средство управления серверами Hyper-V - System Center Virtual Machine Manager, то управление виртуальными сетями и глобальными сетевыми параметрами Hyper-V хостов лучше всего выполнять именно из консоли SCVMM. Это позволит нам избежать возникновения ситуации дублирования MAC адресов в пулах разных Hyper-V серверов.

    Установка агента DPM 2007

    Для установки агента DPM 2007 SP1 на наш Hyper-V сервер с включенной службой Windows Firewall на консоли нашего Core сервера подключаем системный том с DPM сервера и запускаем установку клиента последней версии. В качестве параметра программе установки передаем имя нашего DPM сервера.

    net use X: \DPMSERVERC$
    cd /d ‘X:Program FilesMicrosoft DPMDPMAgentsRA2.0.8844.0amd641033’
    DPMAgentInstaller_KB970867_AMD64.exe DPMSERVER.Mydom.com

    image

    После того как команда отработала, перезагружаем Core сервер (DPM клиент). После того как клиент поднялся из ребута на DPM сервере открываем DPM Management Shell и выполняем команду аттача клиента:

    PS C:Program FilesMicrosoft DPMDPMbin> .Attach-ProductionServer.ps1
    DPMServer:: KOM-AD01-BCP02.Mydom.com
    PSName:: KOM-TPSY-VM02.Mydom.com
    UserName:: Admin
    Password:: *************
    Domain:: Mydom.com

    image

    На нашем клиентском сервере проверяем, чтобы в процессе, установки инсталлятором агента DPM в правила Windows Firewall было вписано правило dpmra, которое разрешает любую сетевую активность клиентскому приложению DPM.
    Если правило по какой-то причине не создано, можем добавить его руками примерно так:

    Netsh firewall add allowedprogram ‘C:Program FilesMicrosoft Data Protection ManagerDPMbinDPMRA.exe’ DPMRA

    Затем заходим на консоль DPM сервера и проверяем то, что наш Hyper-V сервер доступен как клиент DPM.

    Установка агентов SCOM 2007 и SCVMM 2008 R2

    В случае если на первоначальном этапе настройки ОС мы включили протоколы удаленного управления нашим сервером, в процессе удаленной установки агента SCOM 2007 с консоли SCOM не должно вызвать никаких затруднений.

    imageТоже самое можно сказать и про удаленную установку агента SCVMM 2008 R2 с консоли VMM

    imageПосле всех вышеописанных действий наш сервер с ОС Hyper-V Server 2008 R2 станет полноценным управляемым членом нашей IT инфраструктуры.

    На десерт…

    После того как все основные этапы конфигурирования нашего сервера выполнены, можно позволить себе немножко пострадать фигнёй ;)

    Давайте, к примеру, заменим пустую картинку экрана приветствия нашей ОС на какую-нибудь весёленькую бодрящую картинку. По умолчанию Windows 2008 хранит картинки пользователей в каталоге C:ProgramDataMicrosoftUser Account Pictures в виде файлов с именем DOMAIN+user.dat (например, Mydom+Admin.dat).
    Можно стянуть такой файл с любой полной ОС Vista/Win7/2008/2008R2 с GUI, создать подкаталог User Account Pictures в указанном каталоге, так как он в Core по умолчанию отсутствует, и закинуть туда этот файл.
    Теперь на экране приветствия нашей ОС мы будем видеть нашу жизнерадостную картинку ))).

    image

    Дополнительные ссылки:

     

    Microsoft® Hyper-V™ Server 2008 R2

    Microsoft Hyper-V Server 2008 Configuration Guide

    Hyper-V Getting Started Guide

    Server Core Installation Option Getting Started Guide

  • GPO: The client-side extension could not remove computer policy setting…because it failed with error code '0x8007000d The data is invalid.' (Event ID 8194 Source Group Policy Registry)

    imageВ один момент заметил, что на одном из контроллеров домена под управлением Windows Server 2008 перестал работать механизм GP Preferences. При этом в логе System периодически фиксировалась ошибка

    Log Name:      Application 
    Source:        Group Policy Registry 
    Date:          08.06.2010 6:04:43 
    Event ID:      8194 
    Task Category: (2) 
    Level:         Error 
    Keywords:      Classic 
    User:          SYSTEM 
    Computer:      DC02.mydom.com 
    Description: 
    The client-side extension could not remove computer policy settings for 'Default Domain Controllers Policy {6AC1786C-016F-11D2-945F-00C04fB984F9}' because it failed with error code '0x8007000d The data is invalid.' See trace file for more details.

    Как выяснилось, проблема связана с тем, что по какой-то причине ломается кэш преференций какой-либо групповой политики, что в дальнейшем приводит к проблеме обработки преференций и в других политиках применяемых на данном компьютере.

    Читать далее...

  • Установка DPM 2010 на Windows Server 2008 R2

    image Системные требования для установки DPM 2010

    Общие системные требования можно найти по ссылке - DPM 2010 System Requirements
    Отдельно стоит обратить внимание на то, что сервер DPM 2010 не может быть развернут в следующих конфигурациях:

    • компьютер с установленной ролью Application Server
    • компьютер, используемый в качестве сервера управления System Center Operations Manager
    • компьютер с установленным Exchange Server
    • компьютер, являющийся нодой кластера Служб кластеризации

     

    Читать далее...

  • Проблема репликации групповых политик (Event ID 13568 Source NtFrs)

    imageНарвался на ситуацию когда в домене Windows Server 2008 на одном из контроллеров домена перестали обновляться групповые политики после некорректного выключения ОС. При этом с логе File Replication Service периодически фиксировались события с кодом 13568

    image

    Читать далее...

  • Настройка IIS 7.0 на Windows Server 2008 для выполнения кода Silverlight 2.0 в ферме серверов SharePoint 2007

    Прежде всего устанавливаем в систему пакет Microsoft .NET Framework 3.5 Service Pack 1. После установки пакета .NET Framework 3.5 с пакетом обновления 1 необходимо сразу установить обновление KB959209, чтобы устранить ряд известных проблем совместимости приложений
    Если у вас работает WSUS то обновление KB959209 должно само прикатиться на сервер с WSUS сразу после установки .NET Framework 3.5 Service Pack 1.
     
    Далее проверяем настройки MIME типов на IIS 7.0. Для исполнения Silverlight должен быть разрешён тип application/x-silverlight-app с расширением файлов .xap
     
    Следующий шаг - регистрация библиотеки System.Web.Silverlight.dll в кэше глобальных сборок (GAC)
    Во первых для того чтобы получить саму библиотеку нам нужно скачать с MS пакет Microsoft Silverlight 2 Software Development Kit. Проблемы  в этом нет, так как на сайте Microsoft этот пакет находится в свободном для скачивания доступе.
    После скачивания устанавливаем данный пакет на сервере где работает наш IIS. После установки находим нужную нам библиотеку System.Web.Silverlight.dll в каталоге C:Program Files (x86)Microsoft SDKsSilverlightv2.0LibrariesServer
    Зарегистрировать библиотеку в GAC можно несколькими путями. Опишу 2 основных:
    • Первый и самый простой способ - через проводник Windows производим операцию копирования файла из каталога C:Program Files (x86)Microsoft SDKsSilverlightv2.0LibrariesServer в каталог C:Windowsassembly
      Если на сервере включена функция контроля UAC - для выполнения данной операции её придётся на время отключить в противном случае система нам просто не даст скопировать файл в каталог C:Windowsassembly,
      т.е. отключаем UAC > перезагружаем сервер > копируем через Проводник Windows библиотеку в C:Windowsassembly (GAC) >  включаем UAC > перезагружаем сервер.
    • Второй способ более изящный но более сложный, т.к. для его реализации нам понадобится утилита Global Assembly Cache Tool (Gacutil.exe) которую найти можно либо в составе пакета Microsoft Visual Studio либо в составе пакета NET Framework Software Development Kit (SDK)
      после того как мы нашли данную утилиту установка библиотеки System.Web.Silverlight.dll в GAC может быть выполнена без манипуляций с отключенем UAC следующей командой

      Gacutil.exe /i  "C:Program Files (x86)Microsoft SDKsSilverlightv2.0LibrariesServerSystem.Web.Silverlight.dll"

      Разумеется надо понимать, что данная команда должна выполняться с повышенными привилегиями, т.е. cmd должен быть запущен от имени администратора сервера.
      Вот в общем то и все основные действия.

    Теперь мы можем размещать в нашей ферме SharePoint контент Silverlight 2.0, т.е. можем кидать на страницы портала вэб-части с использованием Silverlight. Надо понимать, что если в ферме несколько вэб-серверов, то вышеописанные действия нужно выполнить на всех этих серверах.

  • Интересный параметр GPO: Удалить команду "Выполнить" из меню "Пуск"

    В процесс настройки ужесточенной групповой политики для применения на терминальных серверах наткнулся на интересное поведение одного из параметров GPO.

    Путь в GPO:
    Конфигурация пользователя/Административные шаблоны/Меню "Пуск" и панель задач

    Параметр:
    Удалить команду "Выполнить" из меню "Пуск"

    image 

    Cуть в том, что при включении данного параметра, как выяснилось, в системе перестает корректно работать переход по UNC пути не только в Explorer и IE но и во всех других приложениях, например в той же 1С…т.е. переход с диска на диск в GUI путём клацанья мышкой как бы работает, но например из командного интерпретатора Cmd.exe при попытке подключения сетевого диска утилитой net – возникают ошибки по типу ограничения доступа…что само по себе не очень логично, и мне пришлось убить почти час времени чтобы среди кучи выставленных параметров GPO на терминальном сервере найти виновника странного поведения системы…
    В описании к данному параметру GPO конечно есть какая-то далеко неоднозначная фраза что-то типа «перестает работать интерфейс»…но что она значит на деле приходиться узнавать путем хождения по граблям …

  • WSUS Troubleshooting: WebException: Базовое соединение закрыто: Не удалось установить доверительные отношения для защищенного канала SSL/TLS. ---> System.Security.Authentication.AuthenticationException

    При поднятии роли WSUS на только что установленном сервере Windows Server 2008 столкнулся с проблемой при попытке синхронизации с Microsoft:

    WebException: Базовое соединение закрыто: Не удалось установить доверительные отношения для защищенного канала SSL/TLS. ---> System.Security.Authentication.AuthenticationException: Удаленный сертификат недействителен согласно результатам проверки подлинности.

    Изучил лог клиента который напрямую обращается на MS WSUS (c:WindowsWindowsUpdate.log) и обнаружил что клиент обращается на узел https://update.microsoft.com.

    Решив воспроизвести ситуацию вручную, открыл этот узел в IE - и посмотрел свойства сертификата.
    Цепочка сетификатов ведёт к корневому сертификату ЦС - GTE CyberTrust Global Root
    Открыл на своем WSUS сервере остнастку certmgr.msc и выполнив поиск обнаружил что у меня нет такого корневого сертификата...

    Пришлось скачать отсюда http://support.microsoft.com/default.aspx/kb/931125 файл rootsupd.exe...далее, по причине того, что этот пакет предназанчен только для WinXP (по крайней мере в Win2008 он просто не запускался) - пришлось распаковать и оттуда открыть файл сauthroots.sst
    В нём то и оказался нужный мне сертификат КЦС - GTE CyberTrust Global Root..Импортировал этот сертификат через Мастер импорта сертификатов в хранилище Доверенные корневые центры сертификации (в хранилище Локальный компьютер)
    ...
    Открываю остнастку WSUS, запускаю синхронизацию с MS WSUS... синхронизация заработала

  • Установка сертификата от Windows Server CA на веб-сервер Apache

    imageРассмотрим пример установки цифрового сертификата X509 на веб-сервер Apache, выданного локальным корневым Центром сертификации, работающим на Windows Server 2008. Пошагово решение задачи состоит из нескольких последовательных шагов:

    • Генерация запроса на сертификат средствами OpenSSL к ЦС Windows;
    • Получение от ЦС файла сертификата (.cer) в формате DER X509
    • Конвертация полученного сертификата в .pem и прикручивание оного к веб-серверу Apache

    Читать далее...

  • Диспетчер устройств не отображает устройства, не подключенные к компьютеру под управлением Windows

    Бывало что меняли сетевую карточку на новую, а ОС Windows помнит старые настройки и мешает использовать их на новом устройстве?
    Или например несколько раз устанавливали какие-либо устройства, которые в дальнейшем использовать не планируется, а система оставляет после их использования в своих недрах "мусор"...

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

    1. В командной строке введите следующую команду и нажмите клавишу ВВОД:

    set devmgr_show_nonpresent_devices=1

    (Устанавливаем системную переменную для включения отображения устройств-призраков в оснастке "Диспетчер устройств")

    2. В командной строке введите следующую команду и нажмите клавишу ВВОД:

    start devmgmt.msc

    (Запускаем оснастку "Диспетчер устройств")

    Примечание. В открытой оснастке выберите пункт "Показать скрытые устройства" в меню "Вид" для того, чтобы отобразить устройства, которые не подключены к компьютеру.

    Обратите внимание, что после закрытия окна командной строки Windows обнуляет переменную devmgr_show_nonpresent_devices=1, установленную на шаге 2, и устройства-призраки перестают отображаться при выборе пункта Показать скрытые устройства.
    Если вы хотите чтобы неподключенные к компьютеру устройства отображались в диспетчере устройств всегда - задайте это в глобальных переменных системы.

    Описание данного вопроса освещено в статье KB315539 Базы знаний Microsoft