Краткое руководство: развертывание одного сервера в изолированной среде Hyper-V (SharePoint Foundation 2010)

 

Применимо к: SharePoint Foundation 2010

Последнее изменение раздела: 2016-11-30

Можно использовать изолированную и безопасную виртуальную машину Hyper-V, чтобы протестировать компоненты и поведение SharePoint Foundation 2010. Такой подход требует минимальных ресурсов оборудования и позволяет изолировать тестовую систему SharePoint Foundation 2010 от рабочей среды. Такая изоляция рекомендуется, чтобы устранить потенциальные угрозы безопасности для корпоративной сети и среды серверов.

Выполнив ручные операции или команды Windows PowerShell 2,0, представленные в этой статье, можно быстро развернуть SharePoint Foundation 2010 на отдельном сервере, на котором используется любая из следующих баз данных:

  • Встроенная база данных SQL Server 2008 Express и SQL Server 2008 R2 Express, поставляемая с SharePoint Foundation.

  • Установленный Microsoft SQL Server 2005 с пакетом обновления 3 (SP3) и накопительным обновлением 3.

  • Microsoft SQL Server 2008 с пакетом обновления 1 (SP1) и накопительным обновлением 2 (CU)

Важно!

В этой статье описывается развертывание SharePoint Foundation с одним сервером, которое предназначено исключительно для оценки возможностей и тестирования и не должно использоваться в рабочей среде.

Содержание:

  • Требования и рекомендации

  • Требуемые разрешения

  • Действия перед развертыванием

  • Развертывание SharePoint Foundation 2010 вручную

  • Развертывание SharePoint Foundation 2010 с помощью скриптов Windows PowerShell

Требования и рекомендации

Приведенные ниже требования и рекомендации для сервера виртуализации, виртуальной машины и среды развертывания Hyper-V относятся только к сценарию развертывания с одним сервером, который описывается в этой статье.

Конфигурация сервера виртуализации и виртуальной машины

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

Ресурс Минимальные требования Рекомендуемые требования

ЦП

Двухъядерный процессор с тактовой частотой 2,0 гигагерц (ГГц)

Двухъядерный процессор с тактовой частотой 2,0 гигагерц (ГГц)

Память

4 ГБ

8 ГБ

Жесткий диск

Виртуальный жесткий диск фиксированного размера объемом 40 ГБ

Совет

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

Виртуальный жесткий диск фиксированного размера объемом 80 ГБ

Тип сетевого адаптера

Виртуальный

Виртуальный

Тип сети

Внутренняя сеть для обеспечения изоляции виртуальной машины и включения взаимодействия между сервером виртуализации и виртуальной машиной

Совет

Для облегчения доступа к необходимому и рекомендуемому программному обеспечению и упрощения его установки следует использовать внешнюю сеть. Затем перед установкой SharePoint Foundation необходимо настроить виртуальные машины на использование внутренней сети.

Внутренняя сеть для обеспечения изоляции виртуальной машины и включения взаимодействия между сервером виртуализации и виртуальной машиной

Для сервера виртуализации предоставляются следующие рекомендации по настройке:

  • Соотношение логических процессоров к виртуальным (ядро) должно быть как можно более низким. Оптимальное соотношение — 1:1.

  • При использовании соотношения логических и виртуальных процессоров 1:1 рекомендуется настроить сервер виртуализации так, чтобы полное число процессоров на виртуальных машинах было меньше, чем полное число физических ядер. Например, если используется четырехъядерный сервер виртуализации, рекомендуется создавать три виртуальных машины, использующих один процессор или одну виртуальную машину с двумя процессорами и одну виртуальную машину с одним процессором. Во всех этих конфигурациях остается свободным одно ядро для процессов сервера виртуализации.

Кроме описанных выше требований для виртуальной среды, просмотрите статью Требования к оборудованию и программному обеспечению (SharePoint Foundation 2010) перед началом развертывания SharePoint Foundation 2010 на виртуальной машине.

Среда развертывания

Для развертывания SharePoint Foundation 2010 требуется домен.

Если отсутствует изолированный виртуальный домен, доступный для развертывания SharePoint Foundation 2010, необходимо создать виртуальный домен в узле Hyper-V, который настроен на использование следующих компонентов:

  • Контроллер домена с установленными доменными службами Active Directory (AD DS).

  • Контроллер домена с DNS-сервером.

SharePoint Foundation можно развертывать на контроллере домена. Однако требуется некоторая настройка. Запустите Windows PowerShell с параметром запуска от имени администратора и выполните следующие команды, чтобы разрешить развертывание на контроллере домена:

$acl = Get-Acl HKLM:\System\CurrentControlSet\Control\ComputerName 
$person = [System.Security.Principal.NTAccount]"Users" 
$access = [System.Security.AccessControl.RegistryRights]::FullControl 
$inheritance = [System.Security.AccessControl.InheritanceFlags]"ContainerInherit, ObjectInherit" 
$propagation = [System.Security.AccessControl.PropagationFlags]::None 
$type = [System.Security.AccessControl.AccessControlType]::Allow 
$rule = New-Object System.Security.AccessControl.RegistryAccessRule($person, $access, $inheritance, $propagation, $type) 
$acl.AddAccessRule($rule) 
Set-Acl HKLM:\System\CurrentControlSet\Control\ComputerName $acl

Требуемые разрешения

Чтобы установить SharePoint Foundation 2010, учетная запись входа, которая используется на виртуальной машине, должна быть участником следующих групп:

  • локальная группа администраторов на виртуальной машине;

  • предопределенная роль сервера SQL Server dbcreator;

  • роль сервера SQL Server securityadmin.

Дополнительные сведения см. в разделе Административные и служебные учетные записи, необходимые для первоначального развертывания (SharePoint Foundation 2010).

Действия перед развертыванием

Выполните следующие задачи перед развертыванием SharePoint Foundation 2010.

  • На сервере виртуализации создайте точку установки, которая содержит программное обеспечение SharePoint Foundation, или предоставьте носитель, такой как образ ISO, к которому можно получить доступ из виртуальной машины.

  • Создайте виртуальную машину, удовлетворяющую минимальным требованиям, приведенным в разделе "Требования и рекомендации" ранее в этой статье.

  • На виртуальной машине:

Ручное развертывание SharePoint Foundation 2010

Дополнительные сведения о ручном развертывании SharePoint Foundation 2010 на отдельном сервере см. в статье Развертывание одного сервера со встроенной базой данных (SharePoint Foundation 2010) или Развертывание одного сервера с SQL Server (SharePoint Foundation 2010).

Развертывание SharePoint Foundation 2010 с помощью скриптов Windows PowerShell

Можно использовать скрипты Windows PowerShell для развертывания SharePoint Foundation 2010 на отдельном сервере.

Заметка о безопасностиSecurity Note
Не рекомендуется запускать неподписанные скрипты.
Дополнительные сведения о подписывании скриптов Windows PowerShell см. в статье Язык скриптов Windows PowerShell. А вот тут, пожалуйста, подпись (https://go.microsoft.com/fwlink/?linkid=160357&clcid=0x419) в журнале TechNet. Дополнительные общие сведения о подписывании кода см. в статье Общие сведения о подписывании кода (Возможно, на английском языке) (https://go.microsoft.com/fwlink/?linkid=59273&clcid=0x419) (Возможно, на английском языке) на веб-сайте MSDN. Дополнительные сведения о настройке собственного центра сертификации (CA) см. в статье Службы сертификации Active Directory (Возможно, на английском языке) (https://go.microsoft.com/fwlink/?linkid=136444&clcid=0x419) (Возможно, на английском языке) в библиотеке TechNet.

Создайте и используйте один из следующих файлов скрипта Windows PowerShell для развертывания SharePoint Foundation на отдельном сервере.

  • simplesingleserver.ps1: устанавливает SharePoint Foundation 2010 с использованием встроенной базы данных для хранения конфигурационных данных и документов.

  • simplefarm.ps1: устанавливает SharePoint Foundation 2010 с использованием SQL Server 2005 или SQL Server 2008 для хранения конфигурационных данных и документов.

simplesingleserver.ps1

Этот скрипт выполняет развертывание SharePoint Foundation 2010 на одном сервере, который использует встроенную базу данных.

Скопируйте следующий код в текстовый редактор и сохраните файл с именем simplesingleserver.ps1 в произвольном каталоге:



$SetupPath         = Read-Host -Prompt "Please specify the path to the install media (D:)"
        
## Here is the script to install SharePoint Foundation 2010 with SQL Express and create Central Admin ##
& $SetupPath\PrerequisiteInstaller.exe /unattended | Write-Host
if( $lastexitcode -eq 0 ) {
    & $SetupPath\setup.exe /config $SetupPath\Files\SetupSilent\config.xml | Write-Host
    if( $lastexitcode -eq 0 ) {
        Write-Host "Install successful..."
    } else { Write-Error "ERROR: $lastexitcode" }
} else { Write-Error "ERROR: $lastexitcode" }

Запуск файла simplesingleserver.ps1

  1. Запустите Windows PowerShell 2,0 с использованием параметра запуска от имени администратора.

  2. Перейдите в папку, где сохранен файл simplesingleserver.ps1.

  3. Выполните команду .\simplesingleserver.ps1 в командной строке Windows PowerShell.

simplefarm.ps1

Этот скрипт выполняет развертывание SharePoint Foundation 2010 на отдельном сервере, на котором используется база данных SQL Server. Скопируйте следующий код в текстовый редактор и сохраните файл с именем simplefarm.ps1 в произвольном каталоге:


## Settings you may want to change ##
$err = $null
$SetupPath         = Read-Host -Prompt "Please specify the path to the install media (D:)"
Write-Host "Please specify the Farm Administrator credentials"
$FarmCredential    = Get-Credential "DOMAIN\<Farm Admin>"
$DBServer          = Read-Host -Prompt "Please enter the name of your database server"
$Passphrase        = Read-Host -Prompt "Please enter the farm passphrase (optional)" -AsSecureString
$FarmName          = Read-Host -Prompt "Please enter a farm name (optional)"
$CAPort            = Read-Host -Prompt "Please enter the Central Administration port number (optional)"

if ([String]::IsNullOrEmpty($SetupPath))
{
    Write-Error "You must enter the install media path"
    return
}
if ([String]::IsNullOrEmpty($FarmCredential))
{
    Write-Error "You must enter a Farm Administrator's user name and password"
    return
}
if ([String]::IsNullOrEmpty($DBServer))
{
    Write-Error "You must enter a database server"
    return
}
if ($Passphrase.Length -eq 0)
{
    Write-Warning "You didn't enter a farm passphrase, using the Farm Administrator's password instead"
    $Passphrase = $FarmCredential.Password
}
if ([String]::IsNullOrEmpty($FarmName))
{
    Write-Warning "You didn't enter a farm name, using the machine name instead"
    $FarmName = $env:COMPUTERNAME
}
if ([String]::IsNullOrEmpty($CAPort))
{
    Write-Warning "You didn't enter a Central Administration port number, using 5000 instead"
    $CAPort = 5000
}

## Here is the script to install SharePoint Foundation 2010 and create Central Admin ##
Write-Host "[1/15] Running prerequisite installer..." 
& $SetupPath\PrerequisiteInstaller.exe /unattended | Write-Host
if( $lastexitcode -eq 0 ) {
    Write-Host "[2/15] Running silent farm binary installation... (this will take some time)" 
    & $SetupPath\setup.exe /config $SetupPath\Files\SetupFarmSilent\config.xml | Write-Host
    Write-Host "[3/15] Completed silent farm binary installation." 
    if( $lastexitcode -eq 0 ) {
        Add-PSSnapin Microsoft.SharePoint.PowerShell -erroraction SilentlyContinue
        Write-Host "[4/15] Creating new configuration database..." 
        New-SPConfigurationDatabase -DatabaseName ("{0}_SharePoint_Configuration_DB" -f $FarmName) -DatabaseServer $DBServer -AdministrationContentDatabaseName ("{0}_AdminContent_DB" -f $FarmName) -FarmCredentials $FarmCredential -Passphrase $Passphrase -ErrorVariable err
        Write-Host "[5/15] Verifying farm creation..." 
        $spfarm = get-spfarm
            if ($spfarm -ne $null) {
            Write-Host "[6/15] ACLing SharePoint Resources..." 
            Initialize-SPResourceSecurity -ErrorVariable err
            if ([String]::IsNullOrEmpty($err) -eq $true) {
                Write-Host "[7/15] Installing Services..." 
                Install-SPService -ErrorVariable err
                    if ([String]::IsNullOrEmpty($err) -eq $true) {
                    Write-Host "[8/15] Installing Features..." 
                    Install-SPFeature -AllExistingFeatures -ErrorVariable err
                    if ([String]::IsNullOrEmpty($err) -eq $true) {
                        Write-Host "[9/15] Provisioning Central Administration..." 
                        New-SPCentralAdministration -Port $CAPort -WindowsAuthProvider "NTLM" -ErrorVariable err
                        if ([String]::IsNullOrEmpty($err) -eq $true) {
                            Write-Host "[10/15] Installing Help..." 
                            Install-SPHelpCollection -All -ErrorVariable err
                            if ([String]::IsNullOrEmpty($err) -eq $true) {
                                Write-Host "[11/15] Installing Application Content..." 
                                Install-SPApplicationContent -ErrorVariable err
                                if ([String]::IsNullOrEmpty($err) -eq $true) {
                                    Write-Host "[12/15] Basic configuration completed." 
                                    $SPManagedAccount = Get-SPManagedAccount $FarmCredential.UserName
                                    Write-Host "[13/15] Creating Web Application and Application Pool..." 
                                    $webApp = New-SPWebApplication -Name "SharePoint - 80" -ApplicationPool "SharePoint - 80" -ApplicationPoolAccount $SPManagedAccount -DatabaseServer $DBServer -DatabaseName ("{0}_Content_DB" -f $FarmName) -Url "https://localhost" -ErrorVariable err
                                    if ([String]::IsNullOrEmpty($err) -eq $true) {
                                        Write-Host "[14/15] Creating site collection..." 
                                        $SPSite = New-SPSite -url "https://localhost" -OwnerAlias $FarmCredential.UserName -ErrorVariable err
                                        if ([String]::IsNullOrEmpty($err) -eq $true) {
                                            Write-Host "[15/15] Port 80 Web application and site collect created.  Browse to https://localhost to pick a template for the Web..."
                                        } else { Write-Error "ERROR: $err" }
                                    } else { Write-Error "ERROR: $err" }
                                } else { Write-Error "ERROR: $err" }
                            } else { Write-Error "ERROR: $err" }
                        } else { Write-Error "ERROR: $err" }
                    } else { Write-Error "ERROR: $err" }
                } else { Write-Error "ERROR: $err" }
            } else { Write-Error "ERROR: $err" }
        } else { Write-Error "ERROR: $err" }
    } else { Write-Error "ERROR: $lastexitcode" }
} else { Write-Error "ERROR: $lastexitcode" }
 
$exitprompt = Read-Host -Prompt "Press Enter to exit..."

Запуск файла simplefarm.ps1

  1. Запустите Windows PowerShell 2,0 с использованием параметра запуска от имени администратора.

  2. Перейдите в папку, где сохранен файл simplefarm.ps1.

  3. Выполните команду .\simplefarm.ps1 в командной строке Windows PowerShell.