Olá Pessoal, Neste post quero mostrar como o PowerShell pode agilizar o nosso trabalho. Imagine o seguinte cenário: Um ambiente corporativo onde temos uma ou até mesmo mais de uma Farm do Microsoft SharePoint com um nível de maturidade bem avançada, ou seja, um ambiente complexo e bem arquitetado. Em algum momento do seu trabalho seu chefe te fala o seguinte: “Fulano preciso que você crie X Aplicações Web e X Coleções de Site” Imagine que este X, seja um número bem grande de aplicações web e coleções de site, o que você logo imagina? Isso vai demorar bastante para ser concluído utilizando a Central de Administração do SharePoint… Então temos que encontrar uma forma mais prática e produtiva de fazer este trabalho, para esse tipo de tarefa temos o PowerShell. Para praticamente tudo que se faz na Central de Administração do Microsoft SharePoint temos uma solução em PowerShell a vantagem é que você pode gerar Scripts .ps1, gravá-los e quando precisar da mesma solução você já tem pronto, com isso você vai automatizando todas as suas taferas e seu trabalho ganha um excelente nível de produtividade, ou seja, coisas que você levaria 30 minutos para fazer você faz em 5 minutos. Então, vamos a solução:
Para criarmos um script em PowerShell podemos utilizar o próprio bloco de notas. Abra o bloco de notas e digite copie e cole o script abaixo, surigo que leiam os comentários que estão a frente do sustenido #. Para maiores explicações consulte os links de referência no final do post. # Variáveis para a Aplicação Web # nome que deseja dar ao seu site no IIS $WebAppName = "SharePoint2012" # caso a porta de comunicação da Aplicação Web for diferente da porta 80, insira a porta desejada $WebAppPort = 81 # nome que deseja dar ao seu Pool de Aplicativo $WebAppAppPool = "SharePoint2012" # identidade do pool de aplicativos $WebAppAppPoolAccount = "cit\sp_farm" # nome do banco de dados $WebAppDatabaseName = "WSS_Content_PowerShell" # nome da server\instância do SQL $WebAppDatabaseServer = "server2008r2\sharepoint" # permissão de autenticação anônima: false=desabilitado; true=habilitado $allowAnonymous = $false # tipo do provedor de autênticação $authenticationMethod = “NTLM” # utilização do protocolo SSL $ssl = $false # Cria a nova Aplicação Web New-SPWebApplication -Name $WebAppName -Port $WebAppPort -ApplicationPool $WebAppAppPool -ApplicationPoolAccount (Get-SPManagedAccount $WebAppAppPoolAccount) -DatabaseName $WebAppDatabaseName -DatabaseServer $WebAppDatabaseServer -AllowAnonymousAccess: $allowAnonymous -AuthenticationMethod $authenticationMethod -SecureSocketsLayer:$ssl ATENÇÃO: DIGITE O SCRIPT ACIMA EM UMA ÚNICA LINHA! # Váriaveis para a Coleção de Sites # nome da Coleção de Sites $SiteCollectionName = "Portal PowerShell" # url da Coleção de Sites $SiteCollectionURL = http://server2008r2:81/ # template ID da Coleção de Sites $SiteCollectionTemplate = "STS#0" # language ID da Coleção de Sites $SiteCollectionLanguage = 1046 # administrador do conjunto de sites $SiteCollectionOwner = "cit\sp_farm"
# Cria a nova Coleção de Sites do SharePoint New-SPSite -URL $SiteCollectionURL -OwnerAlias $SiteCollectionOwner -Language $SiteCollectionLanguage -Template $SiteCollectionTemplate -Name $SiteCollectionName
OBS: Reparem que separei as variáveis da Aplicação Web com as da Coleção de Sites, poderíamos deixar tudo junto, separei para que fique mais claro o entendimento. Após colar o script acima no bloco de notas, salve o arquivo com um nome sugestivo, ex. criaWApp_SColl.ps1 O nome pode ser o que você achar que fica melhor, o importante é gravar com a extensão .ps1 Para executar o scritp, abra o Shell de Gerenciamento do SharePoint acesse o diretório que contém o arquivo de script execute o comando da seguinte forma: .\criaWApp_SColl.ps1 e pressione ENTER Pronto, é só aguardar o PowerShell executar o script. Ao final da execução do script vai aparecer para você uma tela parecida com essa:
Após aparecer uma tela como essa para você é só você testar, provavelmente será solicitado usuário e senha de acesso que é o administrador do conjunto de sites que foi definido anteriormente, até que você insira novos usuários. Explicando em detalhes: Primeiro definimos variáveis necessárias para que o processo esteja 100% automatizado e não seja necessário a intervenção humana após a execução do script. Em seguida é gerado e configurado o pool de aplicativos no IIS Em seguida é gerado e configurado o site do IIS Em seguida é gerado o banco de dados na instância referenciada Pronto, sua Aplicação da Web está criada Em seguida é criado a Coleção de Sites com as variáveis que você definiu. Bem pessoal, é isso, espero que ajude vocês em seu trabalho! Este artigo foi originalmente escrito por: Carlos Carvalho Citrangulo Junior Microsoft Community Contributor Award 2011 Microsoft Certified Professional Microsoft Certified Desktop Support Technician MCTS Microsoft Windows Vista Configuration MCTS SharePoint 2010 Configuration MCITP Enterprise Support Technician Profissional 5 Estrelas Microsoft Top Ten Student MVA in Brazil http://carloscitrangulo.wordpress.com http://citrangulosharepoint.wordpress.com
Carlos Carvalho Citrangulo Junior edited Revision 1. Comment: Adicionado referências do autor.
Fernando Lugão Veltem edited Original. Comment: alterado titulo e tags, adicionado pt-BR. adicionado o artigo no guia de sobrevivencia do sharepoint