Add, Update, and Remove Child Servers Dynamically
You can add, edit, and remove child servers by using the EngineManagement action. This action updates the DIH configuration file, so that the changes are persistent.
Add a Child Server Dynamically
You can add a new child server to the DIH by using the EngineManagement action.
NOTE: You can add a child server only in certain distribution modes.
To add a child server
-
Send the EngineManagement action, with EngineAction set to
Add
. Set Host and Port to the host name and port of the child server.You can optionally also set other parameters for the child server, such as Disabled, Weight, UpdateOnly, and Polling.
TIP: By default, when you add a child server in this way, the DIH pings the specified host and port. The
Add
action fails if the child server is not running. Set Disabled toTrue
to skip this step and add the child server in the offline state.
Remove a Child Server Dynamically
In mirror mode, you can remove a child Content engine with the DREREDISTRIBUTE index action. Use the RemoveGroup
parameter to specify the group ID of the Content engine to remove.
In simple distribution mode, either with or without DistributeSendMinimal, you can remove a child Content engine or group and the DIH will automatically redistribute its documents among the remaining servers. To do this, run the DREREDISTRIBUTE index action and use the RemoveGroup parameter to specify the ID of the Content engine or group to remove. The DIH does not index any more data into the specified engine, and its content is exported back to the DIH for redistribution. When redistribution is complete, the Content engine is removed from the DIH automatically, so you do not need to edit the configuration file.
Consistent hashing mode also supports engine removal with automatic redistribution. To remove a child server in this mode, you must first use the EngineManagement action to set the server Weight to 0
(zero), and then use the DREREDISTRIBUTE index action to redistribute the virtual nodes. For more information, see Remove a Child Server. For more information about consistent hashing mode, see Use Consistent Hashing.
Update a Child Server Dynamically
You can use the EngineManagement action to dynamically change the settings for a child server.
To update a child server
-
Send the EngineManagement action, with EngineAction set to
Edit
. Set the ID parameter to the ID of the child server that you want to modify.Set any of the optional parameters that you want to change for the child server, such as Disabled, Weight, UpdateOnly, and Polling.
You can also update the host and port of the server, for example replace a server that has become permanently inaccessible. In consistent hashing mode, you can use stored replicas to rebuild the lost server. For more information, see Restore Child Servers in Consistent Hashing Mode.