转自:http://blog.fpweb.net/move-sharepoint-2013-search-components-to-new-server/#.V_w4JZH_6uh

In this post, I’ll detail how to move all SharePoint 2013 search components to a different server in the SharePoint farm. Unlike SharePoint 2010, there are no topology options in Central Administration so the entire operation must be performed in PowerShell.

Although that may stress some admins out, I’ve found that moving the topology via PowerShell in SharePoint 2013 works much better than moving it via the UI in SharePoint 2010. As you should assume, there is no PowerShell command like:

MOVE-SPSEARCHTOPOLOGY –COMPONENTS ALL –DESTINATION NEWSERVER.

That’d be nice. And too easy. And honestly, it probably wouldn’t work anyway.

I’m going to assume you have a working Search Service in your (at least) two server SharePoint farm. I’m also going to assume you have rudimentary knowledge of using PowerShell with SharePoint.

Before performing any operation, your Search Administration topology section should look like this:

CLEAR THE SHAREPOINT CACHE ON ALL SHAREPOINT SERVERS

Although this isn’t necessary, performing this simple operation will avoid future potential headaches. Trust me.

CLONE THE EXISTING TOPOLOGY

The first real step is to clone the existing topology to move all the search components except for the Admin component. The Admin component must remain online to move all other components, so this particular component has to be moved separately.

You could choose to move the admin component first and then all others after it is moved. I prefer moving it last, because if there’s going to be an issue, I’d prefer it not to be with the admin component. Recovering from a failed move of the admin component can be a complete nightmare.

If it’s going to fail, fail on one of the other components. It’s much easier to troubleshoot.

Anyway, execute the following lines to clone the existing service:

$SSA = GET-SPENTERPRISESEARCHSERVICEAPPLICATION
$ACTIVE = GET-SPENTERPRISESEARCHTOPOLOGY -SEARCHAPPLICATION $SSA –ACTIVE
$CLONE = NEW-SPENTERPRISESEARCHTOPOLOGY -SEARCHAPPLICATION $SSA -CLONE –SEARCHTOPOLOGY $ACTIVE

START THE SEARCH SERVICE ON THE NEW SERVER

Before you can move the components, a search service must exist on the new server. Run the following (obviously, you need to replace the NewServerName):

$NEWSERVER = GET-SPENTERPRISESEARCHSERVICEINSTANCE -IDENTITY “NEWSERVERNAME“

Now that you have identified the new server, start the service on the server by:

START-SPENTERPRISESEARCHSERVICEINSTANCE -IDENTITY $NEWSERVER

The next step is where a lot of people get stuck. Now that the service has been started, they assume they are good to start creating the new components on the server (which is the next step). But before doing so, you must ensure the new search service is online on the new server.

Type this:

GET-SPENTERPRISESEARCHSERVICEINSTANCE -IDENTITY $NEWSERVER

You should see something similar to the following in the console:

If the Status says anything other than online, wait a few minutes and retry the command. Repeat until you see something like this:

Now the Status is online, we can continue.

CREATE NEW SEARCH COMPONENTS ON THE NEW SEARCH SERVER

Now you want to create all Search components except for the admin component. Use the following:

NEW-SPENTERPRISESEARCHQUERYPROCESSINGCOMPONENT -SEARCHTOPOLOGY $CLONE -SEARCHSERVICEINSTANCE $NEWSERVER
NEW-SPENTERPRISESEARCHANALYTICSPROCESSINGCOMPONENT -SEARCHTOPOLOGY $CLONE -SEARCHSERVICEINSTANCE $NEWSERVER
NEW-SPENTERPRISESEARCHCONTENTPROCESSINGCOMPONENT -SEARCHTOPOLOGY $CLONE -SEARCHSERVICEINSTANCE $NEWSERVER
NEW-SPENTERPRISESEARCHCRAWLCOMPONENT -SEARCHTOPOLOGY $CLONE -SEARCHSERVICEINSTANCE $NEWSERVER
NEW-SPENTERPRISESEARCHINDEXCOMPONENT -SEARCHTOPOLOGY $CLONE -INDEXPARTITION 0 -SEARCHSERVICEINSTANCE $NEWSERVER

There are options on the Index Component that you may be interested in researching. But those are really beyond the scope of the article. Look here for more information:https://technet.microsoft.com/en-us/library/jj219721.aspx.

For now though, let’s assume you’re happy with the parameters. To actually create the components, use this:

SET-SPENTERPRISESEARCHTOPOLOGY -IDENTITY $CLONE

And wait…

When it’s finally completed, your topology page should now look like this:

REMOVE COMPONENTS FROM ORGINAL SEARCH SERVER

Now let’s remove components from the original server. First, close the topology again. Do this:

$SSA = GET-SPENTERPRISESEARCHSERVICEAPPLICATION
$ACTIVE = GET-SPENTERPRISESEARCHTOPOLOGY -SEARCHAPPLICATION $SSA -ACTIVE
$CLONE = NEW-SPENTERPRISESEARCHTOPOLOGY -SEARCHAPPLICATION $SSA -CLONE –SEARCHTOPOLOGY $ACTIVE

Now you need to get the identity of the search components. Type this:

GET-SPENTERPRISESEARCHCOMPONENT -SEARCHTOPOLOGY $CLONE

The console spits out all the search components in the farm. You’ll need to look through the output to find the values applicable to your SharePoint farm. Here’s a portion of what the console should look like:

You need the NAME of all components for the old Search Server. In my SharePoint farm, SP2013Demo101 is the old search server and SP2013Demo112 is the new search server. So, the CrawlCompont0 and QueryProcessingComponent1 are some of the names I need.

So now you’ll use the following to remove these components.

Obviously, you’ll want to change the identity for the Names of the components in your environment. Use the output from Get-SPEnterpriseSearchComponent to ensure you have a Remove-SPEnterpriseSearchComponent for all components on the old server, except for the admin component.

Be careful, the names are case sensitive!

Also, notice there is no admin component in the below list.

REMOVE-SPENTERPRISESEARCHCOMPONENT -IDENTITY QUERYPROCESSINGCOMPONENT1 -SEARCHTOPOLOGY $CLONE -CONFIRM:$FALSE
REMOVE-SPENTERPRISESEARCHCOMPONENT -IDENTITY CRAWLCOMPONENT0 -SEARCHTOPOLOGY $CLONE -CONFIRM:$FALSE
REMOVE-SPENTERPRISESEARCHCOMPONENT -IDENTITY INDEXCOMPONENT1 -SEARCHTOPOLOGY $CLONE -CONFIRM:$FALSE
REMOVE-SPENTERPRISESEARCHCOMPONENT -IDENTITY ANALYTICSPROCESSINGCOMPONENT1 -SEARCHTOPOLOGY $CLONE -CONFIRM:$FALSE
REMOVE-SPENTERPRISESEARCHCOMPONENT -IDENTITY CONTENTPROCESSINGCOMPONENT1 -SEARCHTOPOLOGY $CLONE -CONFIRM:$FALSE

SET-SPENTERPRISESEARCHTOPOLOGY -IDENTITY $CLONE

You’ll have to wait for a while to let SharePoint do its thing.

When it’s done, your topology will look like this:

Great! The only thing left is move the admin component. It’s pretty much identical to the other components, so I won’t go into great detail.

START AN ADMIN COMPONENT ON THE NEW SERVER

First, clone the topology:

$SSA = GET-SPENTERPRISESEARCHSERVICEAPPLICATION
$ACTIVE = GET-SPENTERPRISESEARCHTOPOLOGY -SEARCHAPPLICATION $SSA –ACTIVE
$CLONE = NEW-SPENTERPRISESEARCHTOPOLOGY -SEARCHAPPLICATION $SSA -CLONE –SEARCHTOPOLOGY $ACTIVE

Second, identify the destination server:

$NEWSERVER = GET-SPENTERPRISESEARCHSERVICEINSTANCE -IDENTITY “NEWSERVERNAME“

Start a new admin component on the new server.

NEW-SPENTERPRISESEARCHADMINCOMPONENT -SEARCHTOPOLOGY $CLONE -SEARCHSERVICEINSTANCE $NEWSERVER
SET-SPENTERPRISESEARCHTOPOLOGY -IDENTITY $CLONE

Again, you wait.

When it’s done the topology will look like this:

DELETE THE OLD ADMIN COMPONENT

Now you have to delete the old admin component. First, clone the topology:

$SSA = GET-SPENTERPRISESEARCHSERVICEAPPLICATION
$ACTIVE = GET-SPENTERPRISESEARCHTOPOLOGY -SEARCHAPPLICATION $SSA -ACTIVE
$CLONE = NEW-SPENTERPRISESEARCHTOPOLOGY -SEARCHAPPLICATION $SSA -CLONE –SEARCHTOPOLOGY $ACTIVE

Remove the admin component. If you have to, run Get-SPEnterpriseSearchComponent to get the proper name of the admin component running on the old server.

REMOVE-SPENTERPRISESEARCHCOMPONENT -IDENTITY ADMINCOMPONENT1 -SEARCHTOPOLOGY $CLONE -CONFIRM:$FALSE
SET-SPENTERPRISESEARCHTOPOLOGY -IDENTITY $CLONE

When this is done, your Topology will look like:

Congratulations! All search components are now online on the new server.

迁移SharePoint搜索服务至新的服务器的更多相关文章

  1. 迁移TFS 2012服务至新的电脑硬件

    迁移TFS 2012的时候碰到一些问题, 中文记录很少, 英文的记录也比较零散. 这里记录最直接和简单的方法. 环境: 1. 公司域环境, 所有TFS用户都是公司域帐户. 2. TFS从一台服务器转移 ...

  2. SharePoint配置搜索服务和指定搜索范围

    转载:http://constforce.blog.163.com/blog/static/163881235201201211843334/ 一.配置SharePoint Foundation搜索 ...

  3. Sharepoint 2013搜索服务配置总结(实战)

    分享人:广州华软 星尘 一. 前言 SharePoint 2013集成了Fast搜索,相对于以前版本搜索的配置有了一些改变,在安装部署Sharepoint 2013时可以选择默认创建搜索服务,但有时候 ...

  4. SharePoint 2013 禁用搜索服务

    原文:SharePoint 2013 禁用搜索服务 前言,在SharePoint2013中,对于硬件需求的提升,让我们虚机里安装总是一筹莫展,尤其开启了搜索服务以后,对于内存的消耗就更加严重,尤其对于 ...

  5. SharePoint 2013 配置启用搜索服务

    原文:SharePoint 2013 配置启用搜索服务 1.安装完毕SharePoint 2013,新建网站集,点击搜索,出现如下错误(因为没配置,别激动). 2.尝试启动服务器场中的服务之Share ...

  6. SharePoint 无法删除搜索服务应用程序

    在SharePoint的使用中,经常会遇到某些服务创建失败,某些服务删除不成功的情况.这里,我们就遇到了搜索服务创建失败,然后删除也不成功,使用管理中心的UI无法删除,PowerShell命令也无法删 ...

  7. SharePoint 2013配置启用搜索服务

    1.安装完毕SharePoint 2013,新建网站集,点击搜索,出现如下错误(因为没配置,别激动). 2.尝试启动服务器场中的服务之SharePoint Server Search,提示新建搜索应用 ...

  8. SharePoint 2010:搜索服务当前处于脱机状态

    错误 搜索服务当前处于脱机状态.请访问 SharePoint 管理中心中的"服务器上的服务"页,以验证是否启用了该服务.这也可能是由于正在移动索引器所致.   正在配置网站集搜索关 ...

  9. 搜索服务solr 一二事(1) - solr-5.5 使用自带Jetty或者tomcat 搭建单机版搜索服务器

    solr,什么是solr,就是你要吃的东西“馊了”,不能吃了,out of date~ 嘛...开个玩笑,发音就是‘搜了’,专门用于搜索的一个开源框架,lunce就不说了,不好用,麻烦 来讲讲solr ...

随机推荐

  1. ubuntu16.04 安装jdk 错误解决

    错误 $ apt-get install openjdk-9-jdk Errors were encountered while processing: /var/cache/apt/archives ...

  2. 原生态在Hadoop上运行Java程序

    第一种:原生态运行jar包1,利用eclipse编写Map-Reduce方法,一般引入Hadoop-core-1.1.2.jar.注意这里eclipse里没有安装hadoop的插件,只是引入其匝包,该 ...

  3. 调整Linux最大打开文件数

    #!/bin/bash ## 文件数限制 ulimit -n ulimit -Sn ulimit -Hn ## fs.nr_open,进程级别 ## fs.file-max,系统级别 ## 最大文件描 ...

  4. stringBuilder类的一些用法

    对String对象进行处理的时候比如拼接.截取,会在内存中新建很多字符串对象.为了减少内存开支,可以使用StringBuilder类型. 创建StringBuiler实例: 用构造函数直接创建: St ...

  5. .NET控件名称缩写一览表

    转载自如下链接: https://www.cnblogs.com/xpvincent/p/9334851.html 字体实在是太小了,我看着好闹心,就复制过来自己放大下,谢谢. 标准控件1 btn B ...

  6. My Site Cleanup Job

    解决办法: The My Site of Linda Wang ??? is scheduled for deletion in 3 days. As their manager you are no ...

  7. docker查看容器

    1.查看启动成功的容器,这个命令看不见的说明已经炸了: # docker ps 2.查看所有容器,死的活的都能看见: # docker ps -a 3.查看容器日志: # docker logs c8 ...

  8. Set的总结

    Set最重要的操作是查找,为查找而设计.存入HashSet的元素必须定义hashCode(); Set不保存重复的元素,元素必须唯一.通过equals()方法一确保对象的唯一性. Set中最常被用于归 ...

  9. 数据结构:广义表的实现(Java)

    广义表的简单理解在这篇博文中:https://blog.csdn.net/lishanleilixin/article/details/87364496,在此不做赘述. Java实现广义表: pack ...

  10. 架构师养成记--34.Redis持久化

    ---恢复内容开始--- redis是一个支持持久化的内存数据库,也就是搜redis需要经常将内存中的数据同步到硬盘来保证持久化.redis持久化有两种方式. snapshotting(快照)默认方式 ...