quarta-feira, 11 de novembro de 2009

Alta-Disponibilidade no SharePoint 2010 - Introdução

 

imageGerenciamento de continuidade e disponibilidade do serviço é um assunto recorrente para IT Pro em SharePoint desde sua verão 2003. Com o lançamento do MOSS 2007 tivemos algumas melhorias bem importantes neste assunto com a criação do Shared Services Providers (SSP) e a segmentação mais clara das roles envolvidas em uma Farm SharePoint. Agora, com o lançamento da nova versão do produto e sua nova arquitura orientada a serviços, a discução novamente é reaberta e a flexibilidade no projeto de Farms de grande disponibilidade possibilitam um trabalho mais apurado por parte dos responsáveis por garantir a disponibilidade das aplicações de negócios.

Garantir a disponibilidade de um ambiente envolve diversas camadas de recursos de TI e, em geral, envolve também diversas equipes de TI, principalmente em grandes organizações. Dificilmente a equipe responsável pela implementação de hardware e infra-estrutura básica é a mesma que implementa e gerencia software base, sistema operacional e segurança. Normalmente temos , além destas duas equipes, outras áreas responsáveis por Banco de Dados, Software aplicativo (sistema) e finalmente, information workers. Orquestrar todas estas equipes e engajar todos pela mesma causa - implementar um ambiente que atenda os níveis de serviço que a organização necessita - não é tarefa fácil e exige um projeto bastante consistente que possa ser entendido e apoiado pelas áreas envolvidas.

Criando um plano de disponibilidade

Criar um plano eu reflita em altos níveis de disponibilidade envolvem diversos aspecots que passam desde a disponibilidade de energia até a capacidade de restaurar um ambiente em caso de disastre. Obviamente, alcançar altos níveis de disponibilidade implica em aumentar exponencialmente o custo deste ambiente. Devem ser contabilizados aqui tanto os custos de implementação, como aquisição de hardware e licenças, como custo manutenção e gerenciamento pós-implantação de carater recorrente. Estabelecer a melhor relação custo x beneficio é uma tarefa que deve ser excutada em conjunto com todos os envolvidos, principalmente pelo usuário final, com o apoio do especialista neste tipo de ambiente. Algumas perguntas simples podem ser colocadas na mesa para auxilio na tomada de decisão:

Quanto tempo meu negócio suporta com o ambiente indisponível?

Existem aplicações vitais para o negocio da organização hospedados neste ambiente?

A indisponilidade destas informações podem deixar usuários ociosos?

Estas informações são importantes para a continuidade das atividades da organização?

Qual o custo de cada hora de indisponiblidade?

É possivel calcular o custo da indisponiblidade (queda em sistema de vendas, profissionais ociosos, transações fechadas sem subsidio de informações importantes)?

Qual o custo intangível da indisponibilidade?

A parada do ambiente pode afetar direta ou indiretamente a imagem da organização?

A indisponibilidade do ambiente pode afetar a credibilidade dos usuários no sistema, reduzindo assim sua utilização?

Temos janelas de indisponibilidade para manutenção e aplicação de patches?

Qual o regime de disponibilidade do ambiente?

Qual o custo relacionado à perda de informação?

As respostas destas perguntas não irão definir quais os dispositivos de reduncia devem ser implementados, mas podem nortear o planejamento bem como ajudar a organização a definir qual o valor do investimento em infraestrutura e seu retorno para o negocio. Tão importante quanto a implementação de um portal qua atenda aos requisitos de negocio da organização é a disponibilidade destas aplicações aderente aos níveis esperados de disponibilidade. Regras claras estabelecidas antes da implantação de um portal garantem o nivelamento das expectativas entre todos os envolvidos com as cartas na mesa.

Com os objetivos alinhados, a próxima etapa e analizar cada um dos fatores que impactam na disponbilidade do ambiente, relacionados:

  • Redundancia de Hardware e Rede
    • Diversos são os fatores de redundancia em nível de Hardware e rede. Entre eles, merecem especial atenção a utilização de discos em RAID5, especialmente para aqueles que armazenam dados de aplicativos. Reduncia de fontes de energia, Agregation Link para interfaces de rede, redundancia de servidores, roteadores e swithes, site backup, etc. Não entraremos em detalhe nestes itens pois não é o foco do estudo.
  • Redundancia de Software
    • Cada uma das roles envolvidas em um ambiente SharePoint (componentes do Farm e roles externas ao Farm) deve ter sua redundancia planejada e, em caso de pontos de falha, estes devem estar explicitos e documentados.
  • Capacity Planning
    • Um portal implementado em SharePoint deve estar pronto para suportar a carga prevista de usuários concorrentes sob pena de termos uma super-utilização dos servidores e consequentemente indisponibilidade de serviço.
  • Plano de Backup e recuperação de informações
    • A recuperação dos dados em caso de falha ou exclusão indevida é de grande importancia para o estabelecimento de um ambiente confiável. As diversas granularidades, tempo de restore de cada forma de backup e realizar backup das informações corretas vão nortear um plano de backup e, principalmente, um plano de restore eficiente.
  • Plano de manutenção e path
    • A administração do ambiente com recorrentes checkagens de seus indicadores de "saúde" bem com um plano de patching consistente atuam como ações proativas na manutenção de um ambiende crítico. O gerenciamento das atualizações de sistema (application update) também é fundamental para a garantia de disponibilidade.
  • Plano de Disaster Recovery
    • Ter um plano de Disaster recovery corretamente documentado e, acima de tudo, testado, são a garantia de um reestabelecimento no menor tempo possivel em caso de disastre.

Cada um dos fatores listados serão discutidos em detalhes nos proximos posts. Espero que este material tenha servido como um ponto de partida e que possa ter ilustrado a complexidade envolvida em um ambiente de alta-disponibilidade, indo alem da simples configuração de Web Servers em NLB :)

Abraço,

Backer

quinta-feira, 29 de outubro de 2009

Yes, @Dallas

S6302750 Algumas pessoas tem me perguntado o que estou fazendo aqui em Dallas. Pois bem, trata-se de um programa de treinamento para parceiros especializados chamado SharePoint Server 2010 Ignit. Até onde sei, somos os primeiros brasileiros não-Microsoft a receber o treinamento de configuração e implementação na ferramenta e a primeira turma a ter acesso ao Beta 2 a ser lançado em novembro deste ano. Assim que o TAP permitir, posto detalhes que agora são confidenciais ;)

E para quem tem curiosidade, seguem fotos da Microsoft de Dallas (Microsoft Las Colinas and Microsoft Technology Center):

Microsoft - CPD Microsoft - CPD Microsoft - LC2Microsoft - Visão dos fundosMicrosoft - LC1 Microsoft - Sala de Treinamento  

Abraço!!!

SharePoint 2010 Administration: Part 2

Pessoal,

Seguindo a série de novidades na administração do SharePoint 2010 em relação a sua versão anterior, vou continuar comentando algumas outras features e capacidades importantes.

Backup e restore granular

Esta é uma reclamação antiga e justificada dos administradores de ambiente SharePoint em relação a sua antiga versão. Com a necessidade de conceder permissões e poderes avançados ao usuário, surgem também os riscos e dificuldade de mitigá-los. Como realizar o backup ou o restore de um Site Collection ou uma lista excluida acidentalmente pelo usuário sem afetar toda a aplicação? Boas práticas recomendam a criação de Content Databases exclusivos para Site Collections muito grandes, isto facilitaria a manutenção destes restores, mas o mesmo não vale para as listas. Com o SharePoint 2010, este problema foi resolvido com a possibilidade de realizar backups e restores num nível de granularidade não disponível no MOSS2010.

Restore de DB Off-line

Uma opção para resolver o problema acima, e restaurar um item específico de uma aplicação SharePoint era restaurar um backup de uma aplicação inteira em outra aplicação paralela. Assim o usuário poderia selecionar o que interessava e trazer novamente para o ambiente oficial. Com o SharePoint 2010, é possivel restaurar backups de bases não "atachadas" de forma granular, navegando por seus objetos.

Administração via PowerShell

Alguns administradores (ou IT Pró, como queiram) vão torcer o naris para esta novidade, mas na minha opinião, esta é uma alteração que não tem mais volta. A administração do SharePoint será feita cada vez mais pela poderosa ferramenta PowerShell da Microsoft. Muito familiar para usuários de sistemas baseados em Unix, o PowerShell dá muito mais produtividade e flexibilidade para realização de tarefas administrativas. Para quem ainda tem dúvida, tente imaginar como ativar uma feature em cada um dos MySites de um ambiente sem o PowerShell. Diversas operações para um comando STSADM se transformam em uma linha sucinta na nova ferramente. É a morte anunciada batendo a porta do velho conhecido dos administradores STSADM (que agora fica no 14, não mais no 12 :D).

Administração de Listas

A possibilidade de utilizar o SharePoint como repositório para um volume de dados bem grande, traz para o administrador a responsabilidade de administrar alguns aspectos destas listas. A estimativa de suportar até 50 mi de itens em uma lista requer que o administrador determine quantos itens podem ser retornados simultaneamente sem paginação pela interface e até mesmo programaticamente, via Object Model.

Granularidade de permissões

Refinamentos nos níveis de permissão permitem ao administrador conceder poderes suficientes para o usuário realizar suas tarefas administrativas e de design, não ter o controle total sobre a aplicação, permitindo diferentes níveis de acesso para o administrar da aplicação e administrador do ambiente.

Thresholds Controle

A fim de evidar ataques de DDOS, bem como gerenciar momentos de picos de utilização, é possíviel estabelecer Load Thresholds Control por aplicação, indicando limites de utilização para incidentes como erros de sistema, time jobs não inciados corretamente entre outros eventos. Quando um Threshold é violado, o sistema deixa de responder as requisições excedentes, garantindo a resposta às outras requisições.

Isolamento de gargalos

Com o SharePoint 2007 a tarefa de identificar cargalos na aplicação como um todo era bastante complexa, principalmente quando tinhamos WepParts customizadas instaladas no ambiemte. O SharePoint 2010 dispoe de uma ferramenta chamada Developer Dashboard que pode ser ativada por PowerShell ou STSADM. Quando ativada (sob demanda ou automaticamente), apresenta um Dashboard com informações sobre o processamento da página como tempo de carregamente dos componentes, consultas SQL realizadas, tempo de resposta do banco de dados e uma série de informações uteis para o diagnóstico de gargalos. Sua utilização fica mais eficiente quando as WebParts customizadas são codificadas para facilitar o monitoramento do Dashboard.

Best Practice Analyzer

A Microsoft havia liberado uma ferramente chamada Best Pratices Analyzer para o SharePoint 2007. Esta ferramente analiza alguns pontos da implementação do ambiente SharePoint e indicava correções e ajustes. Esta ferramenta agora foi incorporada e melhorada, trazendo indicações de problemas, propondo soluções e, em alguns casos, realizando a correção. Além disto, o Best Pratices Analyzer pode trabalhar em conjunto com o SCOM agora tem uma função de auto correção. Como a ferramenta está completamente integrada do SharePoint, suas regras podem ser atualizadas atuomaticamente pela Microsoft a partir de atualizações do produto.

Evolução dos Timer jobs

A parte de agendamento de tarefas no SharePoint 2010 sofreu grandes alterações e este tópico precisa de um post a parte. Para não deixar passar em branco, vou citar rapidamente algumas das alterações mais importantes. Agora é possivel desiginar um servidor específico para realizar todos os jobs agendados atraves do Server affinity. Com isto é possível liberar servidores com tarefas importantes como Web Front Ends, por exemplo, e concentrar estes jobs em uma máquina menos importantes. Também é possivel executar tarefas agendadas imediatamente, sob demanda, e acompanhar sua progração visualmente (progress bar).

Por enquanto, estou apenas passando alguns aspactos importantes que foram divulgados na SPC09 (SharePoint Conference 2009). No entando, estou realizando um treinamento que explora em detalhe estes e muitos outros aspectos deste produto que está sensacional. Infelizmente, por conta de um acordo de confidencialidade, não posso postar detalhes mais apuradas ou prints da ferramenta, mas em breve teremos novidades interessantes por aqui.

Abraço a todos e confiem que o produto está espetacular!

terça-feira, 27 de outubro de 2009

SPC09 - Facts

Alguns dados interessantes sobre o SharePoint Conference 2009:
Total de inscritos: 7.500
Horas de conferencia: 300 h
Partners presentes: 160
Partner lead: 30
Casamentos: 2 (Las Vegas e seus cartórios :))


;)

domingo, 25 de outubro de 2009

#SPC09: Awesome

Acabou-se o SharePoint Conference 2009 (ou #SPC09, como queiram) e na minha avaliação o saldo é positivo. A organização não deixou nada a desejar, os temas abordados e a profundidade técnica foram ótimos e as apresentações, em sua maioria, não foram empolgantes mas foram satisfatórias. Se bem que não deve ser tarefa fácil tirar um indiano do fundo da pilha de códigos, o cara que conhece o produto, e tranformá-lo em um grande orador que empolga as multidões. Por este motivo, minha classificação das apresentações é “satisfatória”.

Não estive em no SharePoint Conference 2008, mas o relato dos que lá estiveram é de que o evento cresceu muito. Pessoalmente, fiquei bastante impressionado com a quantidade de pessoas de todas as partes do mundo, em especial do Brasil. No último dia conseguimos reunir parte dos brasileiros em um almoço de despedida e estávamos em aproximadamente 20 pessoas. Isto mostra que o SharePoint segue em franca expansão e que sua nova versão está chamando atenção de consultorias e usuários.

Durante a conferencia, participei principalmente das palestras que tratavam de implementação e infra-estrutura e foi evidente que a “bola da vez” tanto em relação a desenvolvimento quando implementação é Fast for SharePoint. Todas as sessões que tratavam sobre o assunto estavam em grandes auditórios e completamente lotadas. Implementadores, IT users e programadores preenchiam todos os lugares disponíveis, esparramavam-se pelo chão. Acredito que este interesse tenha duas origens: 1 – pessoas que conhecem o SharePoint 2007 mas não conhecem o Fast. Neste caso, temos uma revolução na arquitetura da busca que precisa ser conhecida; 2 – Pessoas que conhecem Fast (que é meu caso) e estavam muito curiosas para ver em que nível se encontra a integração entre os produtos, já que são produtos bastante heterogeneos. Já adianto que está surpreendentemente avançada esta integração, mas publico mais detalhes em outro post.

Fica agora o desafio para a Microsoft de acertar definitivamente as pontas das migrações de MOSS2007 para SP2010 e lançar a versão beta do produto que está fantastico. A adesão dos usuários, na minha opinião, vai ser diretamente proporcional a capacidade de migração, já que um provavel acréscimo no valor da licença seria bem justificavel com o aumento significativo de funcionalidades.

Que venha 2010 e com ele muitas migrações!

quinta-feira, 22 de outubro de 2009

System Operation Manager – Amigo dos administradores

S6302513 O mais impressionante na palestra sobre SCOM, na minha opinião, não foi o SCOM em si. Ele continua fazendo bem o que fazia antes: Monitorar o ambiente SharePoint em detalhes, incluindo serviços, servidores e aplicações. Mas o impressionante aqui é a sincronia orquestrada pela Microsoft para lançamento do SharePoint 2010 beta. Para ficar apenas em dois exemplos, teremos dois novos Management Pack para o SharePoint 2010 Server e para o SharePoint Foundation. Ambos estão prontos e serão lançados em conjunto com a versão beta. Outro bom exemplo, é o SQL Server 2008 SP2. Este SP tem algumas funcionalidades importantes para o funcionamento do SharePoint 2010 e também será lançado em novembro, junto com o SharePoint 2010.

Voltando para o SCOM, não é uma ferramenta que eu conheça em detalhes, então tudo é novidade para mim, mas é impressionante o nivel de controle que ele prove ao administrador do ambiente. É muito comum grandes clientes já terem sistemas de monitoramento de serviços e disponibilidade, mas o SCOM, juntamente com o Management Pack para SharePoint 2010 dá um nivel de detalhamento que dificilmente alcansariamos com outras ferramentas. O novo Management Pack já está preparado para monitorar os serviços da nova arquitetura do SharePoint 2010. A estrutura hierarquica visual facilita a visualização e identificação de problemas, mostrando a origem do problema e provendo soluções para os problemas mais simples, como um serviço parado, por exemplo.

Potencializando ainda mais a capacidade de identificação de problemas, é possivel criar novas tarefas de diagnostico personlizadas, associando alertas e ações de correção. Também é possivel criar regras de alerta de utilização de serviços. Por exemplo, podemos criar regras de crescimento, gerando um alerta quando determinado serviço alcanse um estado especifico (utilização, disponibilidade, etc)

Resumindo, o SCOM é uma ferramenta importante no monitoramento e resolução de problemas em um ambiente SharePoint. O desafio, na minha opinião, não é provar que ele funciona, mas sim que ele alcança um nivel de detalhamento no monitoramento destes ambientes que outras ferramentas não cobrem. O objetivo não é necessáriamente substituir as ferramentas de monitoramento disponíveis na organização, mas complementar com o SCOM. Mais do que a correta utilização, o desafio é de evangelização. Este é um assundo que me interessou bastante e certamente vou pesquisar e postar mais detalhes por aqui sobre esta ferramenta.

;)

quarta-feira, 21 de outubro de 2009

Interatividade escondida

Pouca gente notou, mas na entrada do evento a organização colocou um painel projetado na parede que, em conjunto com algumas cameras, produzem um efeito muito bacana reagindo às pessoas que passam por aqui. Coloquei no youtube um video com meu colega Rogério brincando com o painel.


The Power of Love!

Ontem tivemos a Beach Party da conferencia na piscina do Mandalay Bay. Festa bacana com muita gente e direito a show do Huey Lewis & the News. Para quem não lembra, é o pessoal da música do “Back to the Future”. Seguem algumas fotos do evento - algumas meio blur, mas é efeito do photoshop <:º)

Show de fogos


terça-feira, 20 de outubro de 2009

SharePoint 2010 Administration: Part 1

Não foram poucas as novidades na parte de implementação e administração do SharePoint 2010. Assim como tivemos uma revolução com o MOSS2007 em relação do SPS2003, novamente temos diversos novos conceitos e conceitos abandonados. Novamente o formato de tópicos comentados me parece uma boa abordagem para tentar explicar o que está acontecendo neste sentido:

Fim do Shared Services Provider

O conceito de Shared Services Provider nasceu junto com o MOSS 2007 e morre junto com ele. Um conjunto de serviços que poderiam ter diversas instancias para um Farm se mostrou eficiente por um tempo mas apresentava algumas deficiecias que foram sanadas com a seu novo formato. No SharePoint 2010 temos toda sua arquitetura orientada a serviços de forma isolada, acessando Databases isoladas e que agora podem ter implementados alguns requisitos importantes como tolerança a falha, por exemplo. Para resumir, o SSP se desmembrou e pode ser utilizado em farms remotos. Torna a atividade de projetar ambientes SharePoint em larga escala uma atividade mais complexa mas muito mais flexivel . As vantagens são evidentes.

Disponibilidade para SQL Server 2005

Outra boa noticia é que o Beta já será compativel com SQL Server 2005 SP2+ 64 bits. Isto facilita muito a migração entre plataforma e aumenta a compatibiliade. O requisito de arquitetura 64 bits, no entanto, continua.

Instalação de pré-requisitos

Não é mais uma tarefa tão trabalhosa instalar o SharePoint 2010. Pelo menos não em relação aos seus pré-requisitos de software. A instalação do SharePoint agora tras junto todos os seus pré-requisitos de software. .net Framework, IIS, etc. Todos os SharePointers que instalam o MOSS 2007 com frequencia estão agradecendo esta gentileza :)

Segurança entre servidores incrementada com Passphrase

Com o MOSS 2007, para adicionar um servidor ao Farm e estabelecer a comunicação entre eles, bastava ter o usuário de serviço adequado e com permissão adequada (SharePoint credentials). Para reforçar a segurança da comunicação entre as maquinas que compoem o farm, o SharePoint 2010 adiciona a Passphrase, uma palavra-chave criptografada com alta segurança. O problema é: de nada adianta incrementar a segurança com mais uma senha se os administradores não utilizarem senhas fortes e armazenadas de forma correta.

Farm Configuration Wizard

A fim de facilitar a tarefa de configuração do Farm, o SharePoint 2010 agora conta um mais um wizard: Farm Configuration Wizard. Ele inicia serviços, cria bancos de dados de serviços automaticamente, associa serviços a servidores, etc. Bom para newbes :)

Gerenciamento facilitado de contas de serviço

Quem já não perdeu uma senha de um usuário importante de serviço? Ou então precisou trocar a senha por conta de uma GPO ou porque a senha foi divulgada indevidamente? Alterar as senhas de usuários de serviço do SharePoint não era tarefa das mais fáceis e os arquigos da Microsoft em relação a isto costumam arrepiar na primeira olhada (http://technet.microsoft.com/en-us/library/cc263445.aspx). O SharePoint 2010 conta com uma central de gerenciamento de usuários de serviço que torna esta tarefa muito mais tranquila. Todos os usuários, os serviços associados e um campo para preencher a nova senha. Ótimo!!

Fail Over Server

Todos os serviços e Web Aplications, bem como o SharePoint_Config database possuem agora uma configuração extra: Fail Over Server. Aqui é possivel indicar um servidor de banco de dados alternativo para onde o SharePoint vai apontar suas requisições em caso de falha do servidor principal. Esta configuração é feita individualmente para cada serviço ou web aplication e, se não substitue o Cluster SQL Fail Over, pelo menos lança uma alternativas para implementações onde não temos um cluster a disposição.

#SPC09 : Por dentro do evento

Pessoal,

Estou postando algumas fotos extra-oficiais do evento. Bom proveito!!

Enterprise Search Overview (updated)

S6302458 A compra da Fast e a integração do ESP com o SharePoint trouxe um conjunto de recursos poderosos para o SharePoint em relação a interface e capacidade de busca e indexação. A session "Enterprise Search Overview", além de reforçar a estratégia de Web Search da Microsoft, baseada em Search Server Express, SharePoint 2010 e Fast Search, também apresentou uma série de interfaces que integram o tão heterogenio Fast ESP com o SharePoint. Agora temos a "carinha" Microsoft num produto espetacular mas que até então era um tanto quanto "indomável". Não se falou sobre o Search Server Express 2010, então de tudo que foi apresentado, vou listar e comentar apenas o que achei realmente revolucionário, divido em Busca por Fast (impressionante) e busca com SharePoint (legal):

Fast Search

  • Navegadores prontos para SharePoint, no mesmo formato dos disponibilizados pelo ESP. A vantagem é que são Web Parts prontas para serem usadas e configuradas. Para quem não se localizou, os navegadores permitem filtrar o resultado da pesquisa por categorias de informações e no Fast Search for SharePoint, podem ser construídos a partir de qualquer metadado extraído automaticamente do documento indexado.

  • People Search ganha nova interface em um formato "crachá", possibilitando incluir outras informações da pessoa e outros itens de Social Network como "Adicionar como colega", etc..

  • A busca passa a encontrar eu mesmo, disponibilizando uma interface para realizar diversas operações e ver outras várias como meus ultimos documentos enviados no site, minhas atualizações, atualizações dos meus colegas, entre outras coisas.

  • Os navegadores também estão presentes no People Search, filtrando pelas propriedades do profile (title, projects, etc). Sim, já tinhamos navegadores no People Search do MOSS2007, mas eram indomáveis. Agora podemos configurá-los :)

  • O conjunto de resultados agora mostra um prewiew dos documentos conhecidos, como office, por exemplo. A integração fica especialmente interessante quando vemos o preview de apresentações Power Point, já que podemos navegar pelo arquivo sem perder o conjunto de resultados

  • O MOSS 2007 já tinha opção de ordenação por data e relevancia, mas na sua versão integrada com Fast, é possivel ordenar por qualquer uma das propriedades mapeadas.

  • A possibiliadde de Best Bet visuais dão a possibilidade de ligar uma busca especifica a um banner ou uma imagem. Agora sim temos anuncios de verdade na busca do SharePoint.

  • Os best bets visuais ganham mais poder e facilitam a administração com a implementação dos sinonimos Two-way (os usuários agradecem)

  • Surpreendentemente, a administração do Fast Search Query é feita via Central Admin (achei que isto não estaria pronto ainda nesta versão);

  • E agora, o que na minha opinião é a cereja do bolo: O conjunto de resultados e os best bets podem ser associados ao User Context. Por exemplo, eu posso fazer com que o conjunto de resultados que aparece para os usuarios de uma unidade, seja diferente do conjunto de resultados apresentados para outra unidade da empresa. O mesmo para o perfil de usuários. Usuários com perfil técnico, não veem o mesmo conjunto de resultados que usuários de marketing ou administração. S E N S A C I O N A L ! ! !

SharePoint

A busca do SharePoint também apresenta diversas novidades interessantes, algumas delas listadas abaixo:

  • Navegadores baseados em metadados do SharePoint são disponibilizados automaticamente, prontos para serem usados.

  • Possibilidade de Multiplos crawls em paralelo para fontes de dados isoladas.

  • Particionamento e mirror do query index, garantindo querys mais eficiente e maior nível de disponibilidade de serviço.

  • Conexão para diversas fontes através de busca federada e conectores prontos.

  • Maior facilidade de indexar dados externos.

  • Fault tolerance. Só quem já implementou um ambiente importante de busca sabe dos malabarismos feitos para implementar Fault tolerance para a busca do SharePoint, principalmente pela estrutura SSP, extinta no SP2010.

Sobre o overview, é isto. Abraço a todos!

segunda-feira, 19 de outubro de 2009

SPC09 – Begin

Pessoal,

Começou oficialmente o evento mais esperado do ano para os SharePointers e já tivemos a session do Steve Ballmer e alguns outros rápidos overwies. Como não tivemos nada assim tão especial, vou apenas dar alguns pontos altos do evento até agora:

- É impressionante o número de brasileiro por aqui este ano. Só ontem, num outlet, estamos entre mais de 10..

- Na recepção que tivemos ontem, alguns standes interessante, com brindes legais, mas nada de SP2010, por enquanto. Nem o stand da Nintex estava apresentando a nova versão do produto ainda;

- Os stands da Microsoft ainda não estão abertos ao público. Só hoje saberei que Labs vou fazer;

- O lançamento oficial do SP2010 Beta 2 está marcado para novembro deste ano, quando oficialmente estará acessível para a comunidade;

- O discurso do CEO, Steve Ballmer teve o termo “Cloud Computing” a cada 5 palavras. É uma boa dica dos rumos que a cia está tomando.

- O site da comunidade participante do SPC09 (MySPC) está sensacional. É possivel pesquisar o profile das pessoas presentes na Conf e conferir o que ta rolando por um Twitter consolidado. Muito bom!!

image

Por enquanto, isto é o que tivemos de “relevante”, mas os eventos ainda não começaram de fato.

Abraço a todos!

terça-feira, 13 de outubro de 2009

SPC09 – Chegada a hora

Pessoal,

Alguns acompanharam o calvario que foi agilizar todos os detalhes da minha viagem, mas resumindo, deu MUITO trabalho conseguir meu passaporte e visto para viabilizar minha ida ao SharePoint Conference 2009. Todo este esforço se justifica no proprio evento, que este ano será muito especial em função do lançamento do SharePoint 2010, além de aprofundar outras questões bem interessantes como Fast, para citar apenas exemplos que me interessam.

Este blog anda parado, eu sei, mas aqui temos uma promessa pública de retomada. Vou postar pelo menos 1 vez ao dia abordando os assuntos discutidos na palestra que acabei de assisir. Além disto, estarei postando informações de menor folego no Twitter (@sharepointiando).

Agora, linkando com o post do Hélio, segue minha programação:

O que: SharePoint Conference 2009.

Quando: O evento começa oficialmente no dia 19/10. Credenciais entregues no dia 18. Eu voo no dia 17 (sábado) pela manhã, pela American Airlines.

Roteiro: Estarei em Las Vegas de 18/10 até 22/10 na conferencia. Dia 22/10 saio de Las Vegas a caminho de Dallas, de carro, passando pelo Grand Canion e atravessando o deserto. Se alguém se interessar em vir junto e rachar alguma despesa, entra em contato :) Estarei relatando experiencias pessoais no meu Space. Em Dallas farei um treinamento relacionado a implementação de SharePoint 2010 e seguirei com os posts. Portanto, previsão de 15 dias de atividade intensa por aqui.

Onde: Ainda não tenho o endereçoo certo onde estarei hospedado em Dallas, mas em Las Vegas ficarei no Wild Wild West Gambling Hall and Hotel. Sim, o hotel fica ha 2km de distancia do evento e não, eu não terei carro. portanto, é possivel que volte um pouco mais magro para São Paulo. :P

Neste link, uma provável programação das minhas atividades durante o evento e que, consequentemente, guiarão meus posts. Portanto, a partir disto voces conseguem saber o que virá por aqui a partir da próxima semana. Vou atualizando conforme necessário.

Bem, por hora é isto. Conforme as coisas forem acontecendo, vou postando por aqui.Ainda não sei a frequencia pois a promessa é termos Wi-Fi no evento, mas só saberei a real disponibilidade quando chegar lá. Algumas outras informações podem ser acompanhadas pelo site da Conectt, que além de posts meus, terá também postes de alguns colegas de empresa que estarão por lá.

Abraço!!!

Print

SPC09 – Agenda

Esta agenda não é definitiva e a minha vontade de participar de alguma palestra não basta. Então atualizarei constantemente esta área.

;)

Monday, October 19th, 2009

9:00 AM

Keynote: Unveiling Microsoft SharePoint 2010

Mandalay Bay BallroomSpeaker: Steve Ballmer

10:30 AM

Keynote: Microsoft SharePoint 2010 Drilldown

Mandalay Bay BallroomSpeaker: Jeff Teper

1:15 PM

Syntergy: Benefits and Scenarios of Enterprise Replication for...

SurfSpeaker: David Seaman

2:45 PM

SharePoint 2010 Administration: Part 1

Mandalay Bay FSpeaker: Shane Young, Todd Klindt

4:30 PM

SharePoint 2010 Administration: Part 2

Mandalay Bay FSpeaker: Shane Young, Todd Klindt

Tuesday, October 20th, 2009

9:00 AM

Creating High Productivity LOB Applications With SharePoint And xRM

Lagoon JSpeaker: Barry Givens

10:30 AM

Fast Search For SharePoint: Capabilities Deep Dive

South Seas BSpeaker: Adam Harmetz

1:15 PM

Deploying SharePoint Server 2010 Search

Islander ISpeaker: Brion Stone

1:15 PM

Seeing Microsoft Unified Communications and Collaboration in action!

South Pacific FSpeaker: Albert Kooiman, Amit Gupta

2:45 PM

Deploying FAST Search for SharePoint

Islander ISpeaker: Barry Waldbaum, Dan Harrington

2:45 PM

Deep Dive into SharePoint 2010 My Sites and Social Networking...

Islander GSpeaker: Gaurav Doshi, Venky Veeraraghavan

4:30 PM

Securing SharePoint 2010 for Internet Deployments

Lagoon HSpeaker: Chris Gideon, Luca Bandinelli

Wednesday, October 21th, 2009

9:00 AM

SharePoint 2010: Geo-Distributed Deployments

Lagoon HSpeaker: Doron Bar-Caspi

10:30 AM

Capacity and Performance Planning for SharePoint 2010

Mandalay Bay FSpeaker: kfir ami-ad, Zohar Raz

10:30 AM

SharePoint Backup, Recovery & Disaster Recovery with Data Protection...

Mandalay Bay GSpeaker: Karandeep Anand, Saurabh Bansal

1:15 PM

Business Continuity Management with SharePoint 2010

Mandalay Bay GSpeaker: Bill Baer, Doron Bar-Caspi

2:45 PM

Solving Information Chaos: Advanced Content Processing with FAST...

Lagoon JSpeaker: Sven Arne Gylterud

4:30 PM

SQL Server Best Practices for SharePoint Deployments

Mandalay Bay FSpeaker: Burzin Patel

4:30 PM

Building high scale, high availabilty websites on SharePoint 2010

Mandalay Bay GSpeaker: Ben Robb

4:30 PM

Social Search in SharePoint 2010

Mandalay Bay HSpeaker: Jessica Alspaugh

4:30 PM

Performance Best Practices for Forms Applications

Lagoon LSpeaker: Rick Severson

Thursday, October 22th, 2009

9:00 AM

Customizing Search in SharePoint: Building Great Sites with Search

Mandalay Bay KSpeaker: Harneet Sidhana

9:00 AM

Unveiling New Management Tools for Administering SharePoint 2010

South Seas BSpeaker: Zach Rosenfield

10:30 AM

Managing your SharePoint 2010 deployment using System Center...

Mandalay Bay HSpeaker: Durgesh Nandan

12:00 PM

Tools and Techniques for Integrating and/or migrating Lotus Notes...

South Pacific CSpeaker: Gary Devendorf

12:00 PM

Authentication Scenarios for Business Connectivity Services

Mandalay Bay HSpeaker: Mohammed Nazeeruddin

12:00 PM

FedEx: Integration using FedEx Web Services for On-Demand Printing...

Breakers ESpeaker: Agustin Aguilera, Don Gibson

terça-feira, 8 de setembro de 2009

Pessoal,


Post rápido de quem ta sem tempo nem pra se coçar... :) mas pode ajudar alguém que esteja por ai sofrendo com o mesmo que eu sofri. Durante a execução do Wizard configuration, em um ambiente MOSS 2007, encontrei o erro abaixo, sem uma descrição muito clara do problema ou referencias na Internet:

Event Type: Error
Event Source: SharePoint Products and Technologies Configuration Wizard
Event Category: None
Event ID: 104
Date: 05/08/2009
Time: 16:55:04
User: N/A
Computer: NOMEDOSERVER
Description:
Falha ao conectar ao banco de dados de configuração.
Uma exceção do tipo System.Runtime.InteropServices.COMException foi descartada. Informações adicionais de exceção: Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))
System.Runtime.InteropServices.COMException (0x80040154): Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))
at System.DirectoryServices.DirectoryEntry.CommitChanges()
at Microsoft.SharePoint.Administration.SPMetabaseObject.Provision()
at Microsoft.SharePoint.Administration.SPProvisioningAssistant.ProvisionApplicationPool(String applicationPoolId, Int32 identityType, String username, SecureString secStrPassword)
at Microsoft.SharePoint.Administration.SPApplicationPool.ProvisionInternal(SecureString sstrPassword)
at Microsoft.SharePoint.Administration.SPApplicationPool.Provision()
at Microsoft.SharePoint.Administration.SPWebServiceInstance.Provision()
at Microsoft.SharePoint.Administration.SPFarm.Join()
at Microsoft.SharePoint.PostSetupConfiguration.ConfigurationDatabaseTask.CreateOrConnectConfigDb()
at Microsoft.SharePoint.PostSetupConfiguration.ConfigurationDatabaseTask.Run()
at Microsoft.SharePoint.PostSetupConfiguration.TaskThread.ExecuteTask


Depois de bastante sofrimento, descobri que o Windows 2003 Server teve seu IIS instalado de forma incorreta. Windows com SP2 e IIS de uma versão anterior ou o contrario. Ainda não descobri exatamente qual o conjunto de variaveis que gera este erro, mas descobri que instalando o IIS corretamente, o Wizard roda sem problemas :)
Boa sorte!!!

quinta-feira, 16 de julho de 2009

External Blob - StoragePoint

Já tinha lido no blog do meu amigo Helio, SharePointBrasil.net, sobre o assunto e hoje li no blog oficial do time de produto. E não canso de me surpreender com o StoragePoint.
Assista o video e veja como é facil armazenar os aquivos do SharePoint em uma unidade de disco, fora do banco de dados de conteúdo da aplicação.



As vantagens são claras, trabalhar com bancos de dados menores facilita a manutenção, melhora a performance, etc, etc, etc..

terça-feira, 14 de julho de 2009

E chegou o grande dia!!

Pessoal,

Depois do Win7, nenhum dia foi tão agitado quando o dia de hoje. Isto porque a Microsoft liberou publicamente os primeiros prints e videos com conteúdos referentes ao SharePoint 2010, lançamento tão esperado por todos que trabalham com esta plataforma. No site http://sharepoint.microsoft.com/2010/Sneak_Peek/Pages/default.aspx tem um monte de informações, videos, prints.. Além disto, a Microsoft liberou hoje também a versão Beta do produto para Gold Partners, mas procurando com vontade já dá para encontrar por ali no mercado negro :)
Divirtam-se!



A propósito, outros lançamentos também importantes mas que, para mim não tiveram a mesma repercução:
Visual Studio 2010 beta
.net Framework 4.0 beta
Team Foundation Server 2010 beta

quarta-feira, 29 de abril de 2009

WSS Service Pack 2 – agora é pra valer!

Já está disponível o tão esperado SP2 do WSS 3.0, entre outras tecnologias Office (como o SP do SharePoint Designer, por exemplo).

Anuncio da Equipe Office

http://blogs.technet.com/office_sustained_engineering/default.aspx

KB do SharePoint Designer

http://support.microsoft.com/kb/953292

KB Office Server

http://support.microsoft.com/kb/953334

KB WSS

http://support.microsoft.com/kb/953338

WSS + SP2

http://www.support.microsoft.com/kb/968170

No momento estou fazendo alguns testes e lendo a documentação. Assim que tiver os resultados, posto mais detalhes.

:)

sexta-feira, 24 de abril de 2009

Desapegue o SPSite e SPWeb sem traumas

Em teoria, o garbage collector do .net framework deveria gerenciar objetos não desalocados da memória, no entanto, nem sempre isto acontece com os objetos SPSite e SPWeb do SharePoint.

Em um caso especifico, encontrei muitas (MUITAS) linhas no LOG do SharePoint identicas a linha abaixo:

04/15/2009 18:24:35.17 w3wp.exe (0x0708)                       0x150C      Windows SharePoint Services     General                            8l1n  High        An SPRequest object was not disposed before the end of this thread.  To avoid wasting system resources, dispose of this object or its parent (such as an SPSite or SPWeb) as soon as you are done using it.  This object will now be disposed.  Allocation Id: {5BD3D587-6FD0-4923-BD8A-FB35D7B13149}  To determine where this object was allocated, create a registry key at HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Shared Tools\Web Server Extensions\HeapSettings.  Then create a new DWORD named SPRequestStackTrace with the value 1 under this key.

Para resolver o problema, é possivel fazer o que te manda o SharePoint (alterar a tal chave no registro e descobrir qual o componente está gerando tantas excessões). Mas em ambientes de produção, nem sempre o trobleshooting é assim tão facil de se fazer. Para estes casos, o desenvolvedor conta com uma ferramenta poderosa especifica para o SharePoint. O SPDisposeCheck. Com ele é possivel analisar DLL a DLL, gerando relatórios de não-conformidades.

exemplo de dados gerados pelo relatório:

ID: SPDisposeCheckID_110
Module: XXXXX.dll
Method: Intranet.DAL.Cardapio.CardapioProvider.#ctor(System.String)
Statement: local0 := new Microsoft.SharePoint.SPSite(rootSite)
Notes:   Disposable type not disposed: Microsoft.SharePoint.SPSite
         ***This may be a false positive depending on how the type was created or if it is disposed outside the current scope
More Information: http://blogs.msdn.com/rogerla/archive/2008/02/12/sharepoint-2007-and-wss-3-0-dispose-patterns-by-example.aspx#SPDisposeCheckID_110

Massa!!!!!

Boa sorte e vamos dar Dispose ai, gurizada!!

;)

quinta-feira, 23 de abril de 2009

WSS Service Pack 2 a vista

Pessoal, esta é pra marcar na agenda: 28 de abril é a provavel data para lançamento do SP2 para tecnologias Office (http://blogs.technet.com/office_sustained_engineering/archive/2009/04/16/service-pack-2-for-the-2007-microsoft-office-system-due-to-ship-april-28th.aspx). Além de fornecer maior desempenho e corrigir alguns bugs, a promessa são algumas novas funcionalidades. O jeito agora é aguardar :)

Pinçando as atualizações que mais afetam os SharePointers, em ingles:

Windows SharePoint Services 3.0 SP2 and Microsoft Office SharePoint Server SP2

include fixes and enhancements designed to improve performance, availability, and stability in your server farms. SP2 provides the groundwork for future major releases of SharePoint Products and Technologies.

An STSADM command line that scans your server farm to establish whether it is ready for upgrade to the next version of SharePoint and provides feedback and best practice recommendations on your current environment.
SP2 offers support for a broader range of Web browsers
.
Windows Server 2008 SP2 and Windows Server 2008 R2 will be supported on their release.

Enterprise Content Management (ECM)

The performance and stability of content deployment and variations feature has been improved.
A new tool has been added to the STSADM command-line utility that enables a SharePoint administrator to scan sites that use the variations feature for errors.

Excel Services

SP2 makes it easier to configure Excel Web Access Web Parts on new sites.
Several rendering, calculation, and security issues have been resolved.
Some display issues have been addressed.
Improved compatibility with Mozilla Firefox browsers.

Search Server

Improvements to the reliability and stability of very large corpus crawls.
Backup-restore has been improved.
A new command has been introduced to the stsadm.exe tool that lets a SharePoint Administrator to tune the Query processor multiplier parameter.
Improved accuracy in searches involving numbers.

quinta-feira, 2 de abril de 2009

Bizarrises do SharePoint em português

Um SharePoint em português é uma experiencia que eu não recomendo. Se precisa de sites em português, instale a versão do SharePoint em inglês e adicione o Language Pack PT-BR.

Mas se mesmo assim você optar por instalar o SharePoint em porguês, saiba que enfrentara bizarrices como esta: Ao tentar para o serviço de  busca do MOSS, o SharePoint pede uma confirmação “Tem certeza que deseja excluir permanentemente  todos os dados  no índice  de todos os SSPs? [s/n]”. Veja bem que as opções são bem claras. (S)im e (N)ão. No entando, pressionar o “s” ou o “n” não tem resultado nenhum. Simplesmente não processa nada. 

Só depois de algum tempo desconfiado me dei conta do improvável. Apesar de o sistema apresentar as opções em português, você deve responder em inglês. Sim!!! em inglês. Assim como deveria ser o SharePoint ;)

ingles_portugues

Assistente de Configuração com outra conta

 

É uma boa prática jamais logar nos servidores com qualquer conta de serviço do SharePoint. Conta de serviço é conta exclusiva de serviço. É a conta do SharePoint Credentials, conta de serviço do Pool de aplicação, do service de indexação, enfim, não é a conta do usuário. Se possível, o ideal é retirar a permissão para login destas contas.

Mas ai entramos encontramos um probleminha. É bastante comun que a conta do usuário, a sua conta, não tenha as permissões necessárias para realizar determinadas operações. E é aí que utilizamos o “run as”. Comandos STSADM? Fácil! no menu iniciar, ir até o icone do prompt do DOS, botão direito e “run as”. Uma janela aparece para inserir as credencias do usuário de serviço. Pronto, podemos rodar todos os STSADM sem problemas de permissão.

O problema aparece quando instalamos alguma atualização do SharePoint, como o SP1, por exemplo. Após a finalização da instalação, automaticamente se abre a janela de “Assistente de Configuração de Produtos e Tecnologias do SharePoint”. Só que esta janela se abre no contexto de segurança do usuário logado. Fechar a janela, encontrar este ícone no menu iniciar e “Run As” nele, certo? Errado! Este ícone fica nas ferramentas administrativas onde esta opção não está habilitada. Também não é possivel saber onde está o executável nas propriedades do ícone.

01

Erro encontrado ao tentar executar a ferramenta de configuração sem as permissões apropriadas.

Solução do problema: Para executar a ferramenta de configuração no contexto de segurança apropriado, vá até a pasta c:\program files\commun files\microsoft Shared\web server extensions\12\bin. Encontre o executável PSCONFIGUI.exe. Isto mesmo, PSCONFIGUI.exe, com “UI” no final. Botão direito, “Run As” e preencha as credencias do usuário de serviço.

02

quarta-feira, 1 de abril de 2009

ISA + SharePoint

Um arquitetura muito comun para publicação de sites SharePoint na internet, é utilizar um ISA Server como firewall e cache.
O ISA Server possui uma ferramenta de publicação chamada "SharePoint Site Publishing Rule".

image

No entanto, a regra pode ter sido criada por alguém que não tem o conhecimento necessário ou que por qualquer motivo criou um “Web Site Publishing Rule”. Neste caso, o site vai carregar, mas diversas funcionalidades vão estar comprometidas.

Para resolver o problema, não é necessário recriar a regra ou se desesperar. Basta desmarcar dois checkbox: Verify normalization e Block high bit  characters em Traffic / Filtering.

image

Ok / Apply e vai pra casa.

Boa sorte!

terça-feira, 10 de março de 2009

Gerenciar usuários de serviço: tarefa ardua!!

Pessoal,

Por questões de segurança e para facilitar a identificação de problemas, é recomendado ter um usuário de serviço para cada função dentro de um ambiente de SharePoint. Isto acaba gerando diversos usuários de serviço, cada um com o mínimo de permissão possível e com a sua senha exclusiva. Estas configurações estão todas descritas aqui e aqui .

Mas diante de todas estas configurações, não é difícil para administradores não muito organizados, perder a senha de um ou mais usuários. Em geral, isto causa uma dor de cabeça imensa com a troca dos usuários de serviço e / ou suas senhas. O processo de manutenção destes usuários de serviço e suas senhas está descrito neste artigo confuso. Neste artigo, o processo está descrito como "tedious and error-prone process".

Mas se a senha o usuário perdido forem usuários Identity do Application Pool, nem tudo está perdido... os comandos abaixo (devidamente executos no Dos) podem salvar algumas horas de manutenção do SharePoint:
Buscando o usuário do Application Pool
cscript adsutil.vbs get "w3svc/apppools/[App pool name] /wamusername"
Buscando a senha do usuário do Application Pool
cscript adsutil.vbs get "w3svc/apppools/[App pool name]/wamuserpass"

quinta-feira, 11 de dezembro de 2008

IFilter para PDF 64bits

Há meses falei sobre o IFilter para PDF em ambientes de arquitetura 64bits. Aquele iFilter realmente resolvia o problema de indexação de arquivos PDF nestes ambientes. No entanto, era pago. Pois agora (HOJE) a Adobe acaba de lançar o iFilter oficial para ambientes 64 bits. Prontinho para download em http://www.adobe.com/support/downloads/detail.jsp?ftpID=4025.

Bom proveito!!
Abraço!

Customizando Profile - o fim da chatisse

Quem ja precisou customizar diversas propriedades do profile em ambiente de desenvolvimento e, depois de diversos cadastros de novas propriedades, precisou ordenar uma-a-uma clicando naquelas setinhas azuis nada praticas, sabe exatamento como é uma tarefa chata. Imagine agora, ter que publicar estas alterações em mais de um ambiente. É certeza de perder horas da sua vida fazendo o bom o velho monkey-task.


Lista de properties e suas setinhas azuis

Pois graças a Gary Lapointe, esta tarefa pode ser feita apenas uma vez. Para quem não conhece, Gary é um MVP que mantem o STSADM Custom Extension, que é um conjunto de novas operações que podem ser agregadas ao STSADM. Entre as diversas funcionalidades do Custom Extensions, temos:

gl-enumprofilepropertiesEsta operação permite exportar todas properties armazenadas em um SSP para um arquivo XML.

gl-importprofileproperties
Esta operação importa os properties armazenados em um XML para o SSP especificado.

Pesquisando sobre o assunto, descobri um projeto do CodePlex: o MOSSProfileReplicate. No entanto, não encontrei nenhuma versão compilado do pacote. Preferi confiar no Gary :)

Para mais informações, acessar o site http://stsadm.blogspot.com/

Abraço e boas importações.

SharePoint + Cache 1 de 3

Depois de diversos problemas de desempenho em ambientes SharePoint extremamente customizados, precisei pesquisar sobre o assunto. O tema até tem bastante fonte de pesquisa, mas como fiquei positivamente impressionado, resolvi dar a minha visão do assunto. Vou dividir em 3 partes para facilitar o entendimento.

Neste post, vou falar sobre o cache de disco físico - BlobCache

É sabido para quem conhece SharePoint, que todos os elementos de conteúdo ficam armazenados em banco de dados. Isto inclui imagens, html, arquivos, enfim, tudo está lá guardadinho no SQL Server. Isto é positivo quando pensamos em centralização dos dados, praticidade no backup, versionamento, entre outras vantagens. Mas pensando em desempenho, armazenar em banco de dados imagens de topo, rodapé, JavaScripts, entre outras coisas, para ambientes de Farm (mais de uma máquina respondendo pelo ambiente), pode gerar alguns inconvenientes. Pense em uma imagem de topo que não muda com freqüência. Armazenar ela em um local físico causaria transtornos no gerenciamento dos dados. Armazená-la em banco de dados, traria os seguintes aspectos:
- Utilização desnecessária de rede entre Web Front End e Banco de dados (o banco de dados precisa enviar esta imagem para o WFE exibir);
- Processamento desnecessário do banco de dados (o DB Server precisa 'procurar' esta imagem para enviar ao WFE a cada exibição da home.

Isto pode não significar muito em um acesso único, mas quando lembramos que a pagina default do MOSS tem, em média, 600 Kb sem customização alguma, podemos começar a mendigar cada kb de rede disponível. Além disto, para um DB Server superutilizado, cada query pode significar aumento de desempenho.

Para resolver este problema, o SharePoint dispõe de um recurso muito interessante: o cache em disco físico BlobCache. Na pratica, trata-se de armazenar determinados tipos de arquivo em disco no WFE. Com isto, elimina-se a necessidade de buscar estes arquivos a cada acesso a página, reduzindo trafego de rede e processamento no DB Server.

Habilitando o BlogCache
- Em cada um dos WFE, abra o web.config da aplicação que deseja cachear
- Encontre a tag "BlobCache"
- Altere os parâmetros desta tag e salve o arquivo

Parâmetro de configuração do BlobCache
location: Local físico onde o WFE armazenará os arquivos de cache
path: Local virtual e tipos de arquivos a serem armazenados no cache. Insira novas extensões separadas por ""
maxSize: tamanho do cache em Gb. O padrão é 10. Verificar tamanho de base de conteúdo antes de configurar esta propriedade.
enablad: status do cache. Padrão é "false".

Exemplo de tag de blobCache habilitada



No próximo post sobre o assunto vou abordar o cache de saída de página.

Abraço!!

segunda-feira, 27 de outubro de 2008

Fazendo as pazes com o ForeFront

Há algum tempo eu postei sobre problemas que havia enfrentado na utilização do ForeFront for SharePoint. É com prazer que informo que estes problemas foram corrigidos no SP2 da ferramenta. E deve ter uma boa quantidade de correções contidas no SP2 do ForeFront, já que não é possível instalar o SP2 unicamente. É necessário reinstalar todo o produto para se ter a versão atualizada do ForeFront for SharePoint. Não se preocupe que nesta nova instalação ele mantém o Key de ativação, mesmo que seja instalada a versão Trial sobre uma versão legalizada.

O download pode ser feito diretamente no site da Microsoft --> http://technet.microsoft.com/en-us/bb738112.aspx

domingo, 31 de agosto de 2008

Instalando o SP1 WSS3 - resolvendo problemas

Nem sempre a instalação do SP1 do wss é tranquila e serena feito agua de poço. Para quem está encontrando problemas, duas dicas:
1. Após a falha na configuração, a ferramenta indica um arquivo de log que, na verdade, não ajuda muito. A melhor fonte de informações está no Event Viewer. Lá é possivel encontrar o link para o arquivo de log que realmente traz informações relevantes: C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\LOGS\Upgrade.log

2. Após ler o log cuidadosamente, leia a documentação oficial. Abaixo, os dois links mais relevantes:
How to troubleshoot common errors that occur when you run the SharePoint Products and Technologies Configuration Wizard on a computer that is running Windows SharePoint Services 3.0 or SharePoint Server 2007 - http://support.microsoft.com/?scid=kb%3Ben-us%3B944267&x=8&y=8
Artigo com a solução para os problemas "The Web.config file is read-only", "ASP.NET is registered incorrectly in the Internet Information Services (IIS) metabase" (este foi o meu problema. Mensagem de erro "InstallAspNet "), "The Web.config file is missing"

Deploy software updates for Windows SharePoint Services 3.0 - http://technet.microsoft.com/en-us/library/cc288269.aspx
Leitura obrigatória antes da instalação.

sábado, 19 de julho de 2008

Deus está nos detalhes

"An unexpected error occured processing your request. Check the logs
for details and correct the problem" ou em português "Erro inesperado ao processar sua solicitação. Verifique os logs para obter detalhes e corrija o problema". Estes erros do SharePoint são mesmo sensacionais em sua precisão e detalhamento.




Encontrei este erro no leitor de RSS nativo do SharePoint.



Parece obvio que, em se tratando de um RSS externo, o problema esteja na conexão do SharePoint com a internet. Ou esta conexão não existe por alguma restrição de rede ou precisa ser configurada para ser feita através de um proxy. Este caso era para ser configurado em um proxy.
A primeira ação é configurar a tag "Proxy" no web.config da aplicação da seguinte forma:

sussystemdefault: true ou false. Aqui é possível indicar se o SharePoint vai usar o proxy padrão da conexão de rede da máquina. sugiro deixar este falor como "false" para configurar de forma explicita a conexão com o proxy, evitando assim parada por alteração na configuração da maquina.

proxyadress: Endereço do servidor de proxy com o protocolo (http). Exemplo "http://meuproxy". Perdi bastante tempo nisto por falta do protocolo no valor do parametro.

bypassonlocal: dispensa comentarios. No meu caso foi "true".

Exemplo de tag configurada:

quinta-feira, 27 de março de 2008

Desenvolver WebParts remotamente

Um problema muito comum quando se desenvolve WebParts para MOSS e WSS é a necessidade de ter um ou outro instalado localmente a fim de fazer o deploy automatizado e debug da aplicação, além de utilizar corretamente as referencias Microsoft. Além de exigir um hardware mais robusto, estas instalações implicam em licença extra. Seja de MOSS, seja de Windows Server 2003 para WSS.

Diante disto, segue um roteiro que pode auxiliar o desenvolvimento, deploy e debug remotos, utilizando VS2005 e Windows XP sem WSS ou MOSS:

Procedimento para desenvolvimento local em WinXP
- Criar a chave [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Shared Tools\Web Server Extensions\12.0]. Criar o registro “Sharepoint” com o valor “Installed” (aqui temos uma pequena "gambiarra" a fim de possibilitar a instalação do VSeWSS);
- Instalar o VSeWSS (Extension para o VS2005 com os templates padrão de MOSS e WSS);
- Copiar as DLLs do SharePoint para dentro da pasta BIN do projeto e refazer as referências dentro do projeto;

Procedimento para deploy remoto
- Fazer o deploy da WebPart no servidor manualmente na primeira vez;
- Retirar a DLL do GAC do servidor;
- Configurar o Output Path do projeto para a pasta BIN da aplicação no servidor, através de compartilhamento de rede.



Procedimento para debug remoto
- Habilitar o Remote Debugger no servidor
- Adicionar processo ao Debug do VS na máquina do desenvolvedor
- Configurar o Qualifier com o endereço “DOMINIO\Usuario@Servidor”
- Na opção “Attach to”, selecionar “Managed” e “Native”
- Selecionar o processo w3wp.exe da aplicação que deseja fazer debug (PID correto).



Procedimento para descobrir o processo w3wp.exe correto
- Na linha de comando do servidor, ir até a pasta Windows\system32
- Executar o comando “cscript iisapp.vbs”.
- Será apresentada na tela a lista das aplicações web com os PID e aplicação / porta.


Pessoal, espero que esta informação lhes seja tão util quanto foi pra mim. Duvidas, comentem... Abraço

segunda-feira, 17 de março de 2008

Quando o ForeFront é o inimigo


Todo mundo que trabalha com SharePoint conhece ou já ouviu falar do ForeFront (http://www.microsoft.com/forefront/), antivírus que, entre outras coisas, se integra ao SharePoint varrendo todos os arquivos em busca de vírus. Este sistema da Microsoft utiliza diversas engines de busca que são atualizadas automaticamente.
Tudo isto funciona bem: o ForeFront analisa os arquivos que são enviados antes de armazená-los e analisa também os arquivos que já estão na tabela AllDocs do banco de dados de conteúdo do Sharepoint. Esta segunda ação é feita periodicamente.
O problema é quando esta verificação não funciona corretamente. A tabela AllDocs do banco de dados Content do SharePoint apresenta os campos abaixo (para maior informação sobre os campos da tabela AllDocs, acesso o endereço http://msdn2.microsoft.com/en-us/library/ms998690.aspx):
VirusVendorID – ID do antivírus.
VirusStatus – Campo inteiro que mostra qual o status atual do arquivo. Este campo é manipulado pelo ForeFront para marcar quais arquivos estão sendo verificados, quais arquivos estão infectados e quais arquivos estão limpos de vírus. O estado saudável para este campo é NULL que indica que o arquivo está livre de vírus e pronto para ser acessado pelo SharePoint.
VirusInfo – Campo de texto que armazena as informações sobre a verificação de vírus do arquivo. O estado natural para este campo também é NULL.
O problema está justamente nas verificações que não são finalizadas. Alguma indisponibilidade do serviço pode fazer, por exemplo, com que o ForeFront não atualize o campo VirusStatus para NULL e mantenha o valor “0”, que identifica arquivos que estão sendo verificados. Este status deixa o arquivo indisponível para uso do SharePoint e, conseqüentemente, resulta em problemas no site. Em geral, o erro é de permissão de acesso ou o erro HRESULT: 0x80041051.
Abaixo um exemplo de status que causa indisponibilidade do sistema:




Neste caso, o que causou o problema foi um estouro de limite de tempo de verificação, ocasionando indisponibilidade da Default.aspx, entre outros arquivos.

Corrigindo o problema
Como medida de emergência, desative o ForeFront e execute o script abaixo:
UPDATE AllDocs
SET VirusStatus = NULL,
VirusInfo = NULL
WHERE VirusStatus>0 AND VirusStatus IS NOT NULL
Em seguida, é necessário identificar o que está originando o problema no ForeFront para poder novamente ativá-lo.

Dog Food

Pessoal,

Apenas por curiosidade: como já é conhecido, a Microsoft usa o TFS para controlar o código diversos de seus de produtos. Esta prática de "provar do próprio veneneno" é conhecida como "Dog Food" (comida de cachorro, em tradução livre). Ha pouco tomei conhecimento de alguns números da base TFS da Microsoft. São eles:

-> Projetos no Team Foundation Server: 1.355 (taxa de crescimento de >100 novos projetos/mês)

-> Usuários Ativos: 8.452 (grupos que já usam TFS: MSIT, DevDiv, SQL, Office, Windows, MSCOM e Windows Live/MSN)

-> Work Items: 1.254.266

->Arquivos de Código-Fonte: 27.311.195 (isso mesmo, mais de 27 milhões de arquivos-fonte!)

Os números foram divuldagos por Joe Schwetz, Group Manager do time de TFS.

Chegou o Power Tools 2008 (até que enfim)


Visual Studio Team System 2008 Team Foundation Server Power Tools. Nome comprido para uma ferramenta com um monte de funcionalidades. Mais conhecido simplesmente por Power Tools, a versão das ferramentas adicionais para o novo Team Fundation Server estava sendo esperada ansiosamente.

Em resumo, o Power Tools do TFS é um conjunto de ferramentas que estende as funcionalidades do TFS e "tapa alguns buracos". Esta nova versão, além de trazer as funcionalidades já disponíveis no Porwer Tools 2005, traz algumas novidades:

Busca no Source control: permite, através do menu "Team Explorer", localizar arquivos e pastas no Source Control.

Quick Label: Interface que facilita a criação de labels a partir de uma seleção de arquivos e pastas.

Notificação de Builds: acompanhamento do status das builds através do Windows task bar.

Comandos adicionais no TFPT.EXE: tweakui, para administração das configurações de conexão à servidores TFS, destroyWI, para excluir permanentemente um work item e destroyWITD, para excluir permanentemente um Work Item Type Definition.

Além destas novas funcionalidades, o Power Tools 2008, conta com as antigas funcionalidades do Power Tools 2005:

Team Foundation Server Power Tool Commands: diversos itens de administração disponíveis por linha de comando.

Process Template Editor: Editor amigável para templates de processos. Sem este editor, os templates precisam ser editados diretamente nos XMLs que compõem o template

Check-in Police Pack: conjunto de polices extras para serem aplicadas ao check-in do source control.

Team Foundation Server Best Practices Analyzer: Ferramenta para analisar, entre outras coisas, para verificar se o TFS está devidamente configurado, se os recursos de hardware são suficientes...

Work Item Templates: Ajuda a gerenciar os Work Item Templates e automatizar a criação de WITD (Work Item Type Definition).

O restante, ainda estamos testando :D

Abraço!!

iFilter para PDF em 64-bit

Os iFilters contém informações utilizadas pelo indexadores de busca da Microsoft para saber como manipular e interpretar os diferentes tipos de arquivos disponíveis. Este serviço de indexação é utilizado por diversos sistemas da Microsoft. Por padrão, os indexadores Microsoft (Enterprise Search, Desktop Search) já tem instruções para indexar arquivos Office, HTML, Arquivos Texto, XML, entre outros.

Alguns tipos de arquivos, porém, não são reconhecidos de imediato. Para resolver este problema, é possível instalar iFilters personalizados.
Um problema bastante comum é necessitar indexar arquivos PDF. Até pouco tempo atrás, quando fosse necessário indexar este tipo de arquivo, havia a restrição de se trabalhar com a plataforma de 32-bit, já que o único iFilter disponibilizado pela Adobe trabalhava apenas nesta plataforma.

A Foxit, no entanto, disponibilizou um iFilter para PDF adaptado para a plataforma 64-bit (http://www.foxitsoftware.com/pdf/ifilter/). Vale lembrar que este produto não tem suporte da Adobe. A facilidade é paga e pode ser adquirida diretamente no site do fabricante.

Não mexa no que está funcionando


Semana passada, passei um aperto em um cliente durante uma POC (Proof of Concept) depois de um gesto simples e aparentemente fora que qualquer suspeita.
Depois de ter o Sharepoint instalado com configuração expansível para Farms, o serviço de indexação configurado e indexando informações de mais de 13 sites diferentes, estava me preparando para ir embora às 20h30min de uma véspera de feriado quando observei que o servidor estava com pouco espaço disponível na unidade "C". Apenas por "capricho", resolvi executar uma limpeza de disco do Windows. Aquele que já vem instalado com o Windows nas ferramentas do sistema. Optei por ele justamente para não ter problemas que poderiam ocorrem fazendo uma limpeza manual.
Após a limpeza um último teste antes de ir embora, apenas para ir com a consciência tranqüila... de tranqüilo, nem a consciência. Pronto! Nada mais funcionava. Nem busca, nem indexação, nada!
Depois de apanhar um pouco, desespero, a certeza de ter perdido o feriado prolongado, resolvi fazer o básico: consultar o log da aplicação.
O assistente para limpeza de disco havia acabado de apagar arquivos temporários usados pelo serviço de indexação. Por algum motivo, a ferramenta de limpeza não sabia que aqueles arquivos eram importantes. Nem o serviço de indexação do Sharepoint se preocupou em bloquear tais arquivos com extensão ".tmp".
Para solucionar o problema, bastou parar o serviço de indexação através da ferramenta de administração do Sharepoint e iniciá-lo novamente.
Resumo: Não execute a ferramenta de limpeza de disco do Windows em um servidor com serviço de indexação do Sharepoint em execução. Ou o bom e velho "não mexa no que está funcionando.
;)

Reduzindo custos com pesquisas usando MOSS 2007


Em maio de 2006 o IDC (www.idc.com) já apontava em seu estudo intitulado “The Hidden Cost of Information Work” o elevado custo que a busca por informações representa para as organizações. Segundo este estudo, um único funcionário gasta em média mais de 9 horas semanais em busca de informações específicas, figurando esta atividade em quarto lugar no ranking das que mais tomam tempo das pessoas nas organizações. Além disto, outras atividades relacionadas à busca por informações também são elencadas pela pesquisa: Consolidação dos múltiplos formatos de um mesmo documento, buscas infrutíferas, recriação de conteúdo não encontrado, publicação do mesmo documento em diferentes plataformas, controle de versões, entre outras. Somando a isto o crescimento exponencial na quantidade de informação produzida ano a ano, não é difícil imaginar que os custos com a busca por informações tende a aumentar.

Tudo isto, torna os requisitos de pesquisa em soluções de gerenciamento de conteúdo tão importantes quanto outros requisitos, sejam eles funcionais ou não. Entretanto, diversos são os problemas que tornam um sistema de pesquisa ineficiente para atenuar os problemas provenientes do excesso de informação.

Pesquisas restritas
Aplicativos capazes de realizar pesquisas apenas em seus próprios dados, pressupõem que os usuários ao menos saibam em que ponto devam iniciar suas pesquisas. Ou seja, o usuário precisa ao menos ter o conhecimento do sistema onde a informação está armazenada para, a partir daí, realizar a sua busca.

Indexação restrita
Ainda que um sistema de busca tenha acesso aos diversos sistemas envolvidos, também é necessário assegurar que todos os dados pertinentes estejam indexados e, desta forma, disponíveis às soluções de pesquisa. O usuário deve ser capaz de pesquisar e encontrar a informação necessária independentemente do local ou formato desta informação.

Classificação insatisfatória dos resultados da pesquisa
Os resultados mais relevantes para uma pesquisa devem estar disponíveis logo nos primeiros ítens apresentados pelo resultado da pesquisa. É necessário um sistema que classifique os conteúdos de forma eficaz para garantir uma boa experiência de busca ao usuário.

Pesquisa Web x Pesquisa Corporativa
A experiência do usuário com as pesquisas disponíveis na internet exige que os projetos de solução de pesquisa corporativa apresentem, no mínimo, os recursos já disponíveis por estes sistemas de busca. Além disto, existem fatores extras que devem ser considerados quando se trata de pesquisas corporativas:
Desempenho da pesquisa – quando se trata de ambiente corporativo, é importantíssimo considerar o tempo despedido para obter as informações necessárias.
Segurança e privacidade dos dados – Em ambientes corporativos, é necessário que a informação esteja acessível apenas para o publico correto. A confidencialidade da informação é um requisito importante nestes ambientes.
Escalabilidade – Os recursos de pesquisa devem estar aptos a acompanhar o crescimento da organização.

Flexibilidade – O resultado da pesquisa deve estar disponível de forma flexível para a manipulação.
Métricas – Constantes avaliações são necessárias para o aprimoramento do sistema de pesquisa. Desta forma é possível alcançar maior eficácia nos resultados apresentados.

Como Sharepoint Enterprise Search pode auxiliar
O Sharepoint Enterprise Search apresenta diversos mecanismos para implementar soluções eficazes de buscas corporativas.
Pesquisas em diversas fontes de dados
Além de pesquisar seus próprios dados e documentos gerenciados, o Microsoft Sharepoint é capaz de indexar informações em outros sistemas utilizando diversos protocolos:

HTTP – indexação de sites externos.

Exchange – indexação de pastas públicas do Exchange.

Arquivos compartilhados – indexação de arquivos localizados em compartilhamentos de rede.

Lotus Notes – Indexação de dados armazenados em sistemas Lotus Notes.

BDC (Business Data Catalog) – Indexação de sistemas mapeados no SharePoint como catálogos de dados relacionais externos.

Além disto, é possível desenvolver protocolos personalizados para comunicação com o Sharepoint.

Indexação abrangente
O Enterprise Search utiliza protocolos chamados de iFilters para manipular e indexar os diversos tipos de arquivos disponíveis para consulta. Para garantir flexibilidade na abrangência de indexação, além de disponibilizar iFilters padrão, é possível instalar novos iFilters para manipulação de arquivos proprietários e disponibilizados pelos seus fabricantes. Além disto, é possível desenvolver iFilters customizados. Por padrão, o Enterprise Search é capaz de indexar bases de dados relacionais, documentos Microsoft Office e arquivos HTML. A Adobe disponibiliza iFilter para indexação de arquivos do tipo PDF para a plataforma 32 bits.
Aprimorando o resultado de pesquisas

O Enterprise Search dispõe de métodos eficientes para a classificação dos resultados de uma pesquisa, baseados nas propriedades dos documentos e hierarquia do site. Em geral, não é necessário alterar tais métodos, mas é possível customizar a forma como estes resultados são classificados. Além disto, o Enterprise Search dispõe de ferramentas para aprimorar esta classificação e disponibilizar resultados satisfatórios:


Best Bets – Capacidade de cadastrar os melhores resultados para determinados critérios de busca.

Dicionário de sinônimos – É possível personalizar o dicionário de sinônimos, atribuindo significado aos termos pesquisados e melhorando a qualidade dos resultados.

Níveis prioritários – Capacidade de indicar os níveis hierárquicos que contêm as informações mais relevantes para as buscas realizadas.

Sugestão de ortografia – O Sharepoint é capaz de sugerir outra grafia para palavras digitadas incorretamente, baseada no corretor ortográfico da ferramenta.

Configuração de hierarquia baseada no tipo de arquivo – Capacidade de indicar os arquivos mais relevantes para os resultados das pesquisas.
Robustez e Escalabilidade

Através da configuração de clusters e farms é possível projetar soluções de alto desempenho para organizações de todos os portes. A arquitetura baseada em papéis definidos na solução de pesquisa permite distribuir as diversas tarefas envolvidas no serviço de pesquisa em diferentes servidores, permitindo flexibilidade e escalabilidade.

Acessibilidade dos resultados
A informação disponibilizada de diversos formatos se adapta aos usos freqüentes necessários dentro de uma organização.

Feeds RSS – O usuário pode acompanhar a atualização dos resultados de suas pesquisas através de qualquer leitor de RSS, como o próprio Outlook.
Alertas por e-mail – É possível se cadastrar para receber atualizações no resultado de pesquisas por e-mail.

Exportação dos dados – O Sharepoint dispõe de ferramentas para a exportação dos resultados das pesquisas para documentos Microsoft Office.
Ferramentas para customização

É possível customizar as buscas do Enterprise Search para se adaptar a sistemas externos de diversas formas.

Chamadas HTTP – Através de parâmetros padrão, é possível fazer chamadas HTTP do tipo GET à ferramenta de busca do Sharepoint a partir de sistemas externos ou webparts customizadas.

Customização da interface de busca – É possível customizar as interfaces de consulta e resultados de busca através de editores de arquivos XSL.

Extensão do sistema de busca – A estrutura de objetos do mecanismo de busca está disponível para a construção de webparts customizadas que estendam as ferramentas de busca padrão.

Busca de talentos
Em um ambiente organizacional, pode ser importante encontrar as pessoas através de capacidades e perfis. O Sharepoint permite customizar o cadastro de usuário criando novas propriedades, importando informações de usuários de diversas fontes (inclusive servidores de domínio) de forma sistemática, além de disponibilizar dados referentes à capacidade e atividades desenvolvidas dentro da organização.

Conclusão
O SharePoint Enterprise Search se apresenta como uma solução eficiente para sistemas de busca complexos e escaláveis a fim de prover soluções em ambientes complexos de gerenciamento de informações.

Coffee-break sem culpa

Pessoal, para quem ainda não conhece, eu apresento uma feature sensacional do site Microsoft TechNet: Os “Virtual Labs”!
Os Virtual Labs são módulos para execução dos “Labs” dos cursos oficiais Microsoft. Quem já fez algum destes cursos, sabe do que estou falando: são aqueles exercícios que metade da turma nem começa porque vai pro coffee-break ou sai mais cedo e a outra metade da turma começa e não termina porque o tempo excede o previsto. Agora temos uma segunda chance para fazer os tais Labs e, o melhor de tudo, gratuitamente.
A estrutura é simples: são laboratórios controlados por tempo, categorizados por produto ou por assunto (por exemplo, “Exchange Server”). Tudo é feito via browser, instalando um activeX. Todos os exercícios dispostos no curso oficial estão ali, disponíveis em uma barra de tarefas à direita. Acima, um menu identificador do laboratório, tempo disponível e outras informações. No miolo central, uma máquina virtual com o ambiente necessário para o teste já todo configurado.
Além de executar os exercícios, esta ferramenta é útil para execução de testes sem necessidade de instalação do produto ou downloads intermináveis. Utilizem sem dó ;)
Link: http://technet.microsoft.com/pt-br/bb467605.aspx





Exemplo: Um Virtual Lab de “Search Administration and Customization in Microsoft Office Sharepoint Server 2007”