这次在微软的SharePoint 2010 Ignite培训中着重介绍了sharepoint 2010中的Fast Search功能,这是微软花了12亿美元收购了挪威OSLO搜索技术公司Fast Search and Transfer(FAST),并应用到我们的sharepoint 2010当中,FAST Search for SharePoint将针对企业用户并可以脱离庞大的SharePoint文件库工作,可扩展性是FAST软件的一个最大优势,是微软收购FAST时就认为它是唯一一家可以提供统一企业搜索平台而且能够快速分类和搜索数十亿文件的公司。
      而我们先前使用MOSS(Microsoft Office SharePoint Server)的现状却与FAST相差甚远,MOSS中的搜索功能在文件超过5000万份时就无法正常工作了,微软企业搜索产品经理Andersen表示,微软最新研究的FAST Search for SharePoint将拥有先进的语义搜索能力,对结构化和非结构化的内容都拥有强大的处理能力。
      那让我们现在去看一下,微软花大价钱购买的Fast Search功能将如何在我们企业中进行部署!
1.1 下载安装所需的软件包
从以下网址下载Microsoft FAST Search Server 2010 for SharePoint Beta
将下载下来的FastSearchServer.exe文件运行,它会将相关文件自动扩展至C:\Program Files (x86)\MSECache\FastSearchServer2010.en-us\路径下
1.2 安装FAST Search Server 2010 for SharePoint
运行Prerequisite Installer
  • 运行C:\Program Files (x86)\MSECache\FastSearchServer2010.en-us\PrerequisiteInstaller文件
  • 双击安装,出现安装界面,进行安装,直到安装完成
       p_w_picpath
  • 下载windows server 2008更新文件
    如果当前系统是 Windows Server 2008 SP2,请下载FIX: A hotfix that provides a method to support the token authentication without transport security or message encryption in WCF is available for the .NET Framework 3.5 SP1 (http://go.microsoft.com/fwlink/?LinkID=160770).,并进行安装
如果当前系统是Windows Server 2008 R2, 请下载 FIX: A hotfix that provides a method to support the token authentication without transport security or message encryption in WCF is available for the .NET Framework 3.5 SP1 ( http://go.microsoft.com/fwlink/?LinkID=166231).,并进行安装
安装FAST Search Server 2010 for SharePoint
  • 运行C:\Program Files (x86)\MSECache\FastSearchServer2010.en-us\fsserver.msi.
  • 缺省的安装路径为C:\FASTSearch
  • 在C:\FASTSearch手工建立如下路径
    data
    data\data_security
    data\data_security\admin
    data\data_security\worker
运行设置脚本
  • 通过“开始“菜单选择Microsoft FAST Search Server 2010 for SharePoint shell
  • 输入以下命令
    Set-ExecutionPolicy RemoteSigned
     p_w_picpath
  • 点击”Y”
  • 进入以下路径C:\FastSearch\installer\scripts路径
  • 运行以下命令
     p_w_picpath
  • 重启服务器
  • 运行nctrl status命令检查服务器安装状态
添加FAST Search Server 2010作为Microsoft SharePoint Server作为后端服务器
  • 第一步:创建并设置内容搜索服务应用
    • 前提:查看C:\FastSearch\install_info.txt文件内容
          p_w_picpath
    • 使用Microsoft FAST Search Server 2010 for SharePoint shell查看相关信息
           p_w_picpath
    • 从管理中心-选择“管理服务器应用程序”,根据下图进行操作
          p_w_picpath
    • 在出现的页面中,输入以下信息
        p_w_picpath 
        p_w_picpath
在此,我遇到了一个问题,没有解决了,原来计划使用新建的应用程序池,而不是使用现有的程序池,但是确定以后报如下错误(见下图)
           p_w_picpath
我当时使用默认的应用程序池,跳过了错误,但后来有个高手同事通过邮件帮我解决了这个问题,解决方案如下
在设置Fast Search Connector之前先在  fast search for sharepoint powershell中执行
.\ConfigureSharePointAuthorization –installedMode Advanced
这个脚本文件在fastsearch\installer\script下,大家可以试一下
正确界面如下
             p_w_picpath
    • 现在点击内容源,新建爬网的内容源,此步骤比较简单,省略不写了,建立完成以后启动完全爬网。
  • 第二步:创建并设置查询搜索服务应用(与第一步步骤有些接近)
    • 从管理中心-选择“管理服务器应用程序”,根据下图进行操作
          p_w_picpath
    • 在出现的页面中,选择FAST Search Query
           p_w_picpath  
             p_w_picpath
  • 创建完成以后,进入“管理中心”选择“应用程序管理”,在下面的界面中选择“配置服务器应用关联”
    p_w_picpath
  • 在出现的窗口,点击“默认”,在以下对话框中进行如下设定:
    p_w_picpath
  • 验证一下相关应用与我们所建立的FAST Search Query关联起来
      p_w_picpath
  • 第三步:建立一个网站集(使用“企业”模板中的“FAST搜索中心”)此步骤省略
  • 第四步:点击“开始”按钮,选择Microsoft FAST Search Server for SharePoint 2010,进入PS界面,输入以下命令
        p_w_picpath
  • 第五步:启用HTTP查询
    • 将以下命令拷贝到记事本中
$currentdir = pwd
$sharepointSTSCertFilename = Join-Path -Path $currentdir -ChildPath 'MOSS_STS.cer'
$fastsearchqrserver = 'sharepoint.contoso.com'
$fastSSAName = 'FAST Search Query'
$stsCert = (Get-SPSecurityTokenService).LocalLoginProvider.SigningCertificate
$stsCert.Export("cert") | Set-Content -encoding byte $sharepointSTSCertFilename
$queryServiceLocationValue = "http://" + $fastsearchqrserver + ":13287"
Set-SPEnterpriseSearchExtendedQueryProperty -SearchApplication $fastSSAName -Identity "FASTSearchQueryServiceLocation" -Value $queryServiceLocationValue
Set-SPEnterpriseSearchExtendedQueryProperty -SearchApplication $fastSSAName -Identity " FASTSearchQueryServiceWinAuth" -Value “false”
Get-SPEnterpriseSearchExtendedQueryProperty -SearchApplication $fastSSAName
IISReset
    • 将记事本的命令拷贝至SharePoint2010管理控制台执行
                   p_w_picpath
    • 拷贝MOSS_STS.cer文件到c:\tools下
    • 修改C:\FASTSearch\ bin\QRProxyService.exe.config文件,将下面两个语句块的注释标识符去掉(注释标识符为<!-- -->)
binding name="HTTP_CLAIMS_INSECURE"&gt; <security authenticationMode="IssuedTokenOverTransport" allowInsecureTransport="true"/> <binaryMessageEncoding> <readerQuotas maxStringContentLength="1048576" maxArrayLength="2097152"/> </binaryMessageEncoding> <httpTransport maxReceivedMessageSize="2162688" authenticationScheme="Anonymous" useDefaultWebProxy="false" transferMode="StreamedResponse"/> </binding>
...
<endpoint address="http://localhost:13287/qrsproxyClaims" binding="customBinding" bindingConfiguration="HTTP_CLAIMS_INSECURE" contract="Microsoft.SharePoint.Search.Extended.QRServer.IProxyRemote "> </endpoint>
    • 在记事本中输入以下命令
$sharepointSTSCertFilename = 'c:\tools\MOSS_STS.cer'
# Import SharePoint Security Token Service Certificate
$trustedPeopleCertStore = new-object System.Security.Cryptography.X509Certificates.X509Store('TrustedPeople', [System.Security.Cryptography.X509Certificates.StoreLocation]::LocalMachine)
$trustedPeopleCertStore.Open([System.Security.Cryptography.X509Certificates.OpenFlags]::ReadWrite)
$sharepointSTSCert = new-object System.Security.Cryptography.X509Certificates.X509Certificate2
$sharepointSTSCert.Import($sharepointSTSCertFilename)
$trustedPeopleCertStore.Add($sharepointSTSCert)
$trustedPeopleCertStore.Close()
# Configure FAST Search Server to trust SharePoint Security Token Service certificate
Set-FASTSearchQRProxyMOSSConfiguration -STSThumbprint $sharepointSTSCert.Thumbprint -RestartServices true
  • 将上面的命令拷贝至Microsoft FAST Search Server for SharePoint 2010 PS界面中
                  p_w_picpath
  • 设置Configure FAST Search Authorization (FSA)
                p_w_picpath
  •  FAST Search到此设置完成,看一下效果
                p_w_picpath