Posso usar um script do powershell para instalar o db / website quando o banco de dados for separado do servidor da web?

3

Meu chefe está de férias e eu tenho que fazer esse script de instalação quando ele retornar. Infelizmente, percebi que o script que desenvolvi não funcionará na configuração do servidor de destino e não sei o suficiente para saber como descobrir isso.

O servidor está executando o SP1 padrão do SQL Server 2008 R2 e meu script de instalação é o PowerShell v1 e requer acesso a dois snap-ins no servidor de banco de dados e um snap-in no servidor da Web.

Ele tem o servidor da Web separado do servidor de dados de forma que o servidor de dados seja acessível somente por meio do RDP da área de trabalho do servidor da web. O script que desenvolvi na minha configuração funciona bem, mas isso é porque o meu servidor web e o servidor de dados não estão separados. Em sua configuração, posso executar a parte do banco de dados da instalação no dataserver com êxito, e a parte do site no servidor da Web com êxito, mas ele espera que eu tenha um único script para a instalação.

Não consigo descobrir como fazer com que as duas instâncias conversem entre si para que isso aconteça. É possível fazer isso funcionar como um script único? Eu nem sei como começar.

    
por Kit Z. Fox 15.01.2013 / 18:42

2 respostas

2

Configure as sessões remotas do PowerShell nos servidores relevantes:

Enable-PSRemoting

Seu script pode se conectar a eles:

$s = New-PSSession server.domain.local
Import-PSSession $s
... continue script, remote cmdlets will now be available ...

Se você quiser uma experiência "shell" interativa, basta executar

Enter-PSSession server.domain.local

Dependendo do que você deseja fazer, provavelmente há outras opções, argumentos e comandos que você deseja chamar; mas isso deve, pelo menos, dar-lhe um strong empurrão na direção certa.

    
por 15.01.2013 / 20:58
3

Existem toneladas de opções aqui. Qualquer pesquisa no Google por "instalação remota", "remote powershell", "exec remoto" e assim por diante irá ajudá-lo.

Como a coisa toda está no PowerShell, provavelmente você deve usar o WinRM: link

The Windows PowerShell remoting features are supported by the WS-Management protocol and the Windows Remote Management (WinRM) service that implements WS-Management in Windows. Computers running Windows 7 and later include WinRM 2.0 or later. On computers running earlier versions of Windows, you need to install WinRM 2.0 or later as appropriate and if supported. Currently, remoting is supported on Windows Vista with Service Pack 1 or later, Windows 7, Windows Server 2008, and Windows Server 2008 Release 2.

    
por 15.01.2013 / 20:47