Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 12 Current »

Locator supports the deployment of multiple Locator servers, configured to work together to search and index documents from the various data sources within the customer environment. In a multi-server scenario, the primary Locator Server has the role holding the Locator database (if PostgresSQL), hosting the ZooKeeper of the SolrCloud, building the index, being the license host and being the Authority Service.

The primary Locator Server can act as search server only or both search and fetch server.

Prerequisites

Installing a Locator Primary Server in a multi-server environment

  1. In the Locator Installer choose Custom Install 
  2. On the Server Address page, use default
  3. For the ZooKeeper address, use default
  4. If using PostgreSQL, on the Database Information page, leave the drop down as PostgreSQL and the database name as Locator .
  5. If using Microsoft SQL, on the Database Information page, change the drop down as Microsoft SQL Server and fill in the database server hostname, database name and database user account credentials. Click Verify Connection
  6. Choose the following components
  7. Finish the installer and wait for the installation to complete.
  8. If you want the primary server to act as a fetch server, open the Locator Management Console and install the required connectors.

Configuring a Locator primary Server in a multi-server environment

  1. If using PostgreSQL, add a new rule to the Windows firewall allowing all traffic inbound to the PostgreSQL TCP port.  Run the following from an elevated command prompt.  This command will work on Windows Server 2008 R2 or later.  The default PostgreSQL TCP port is 5432.  Substitute this with the correct port in the following command if the port has been changed:

    netsh advfirewall firewall add rule name="PostgreSQL (TCP-In)" protocol=TCP localport=5432 action=allow dir=IN
  2. Add a new rule to the Windows firewall allowing all traffic inbound on TCP port 60010 for Locator licensing.  Run the following from an elevated command prompt.  This command will work on Windows Server 2008 R2 or later:

    netsh advfirewall firewall add rule name="Locator Licensing (TCP-In)" protocol=TCP localport=60010 action=allow dir=IN
  3. Add a new rule to the Windows firewall allowing all traffic inbound on TCP port 9983 for ZooKeeper.  Run the following from an elevated command prompt.  This command will work on Windows Server 2008 R2 or later:

    netsh advfirewall firewall add rule name="Locator ZooKeeper (TPC-In)" protocol=TCP localport=9983 action=allow dir=IN remoteip=xxx.xxx.xxx.xxx,yyy.yyy.yyy.yyy

    Replace xxx.xxx.xxx.xxx and yyy.yyy.yyy.yyy with the IP(s) of the search servers involved with the multi server setup.

    NOTE: This firewall rule can be skipped if you don't plan to configure Secondary Search servers. 

  4. Add a new rule to the Windows firewall allowing all traffic inbound on TCP port 9892 for ZooKeeper Admin.  Run the following from an elevated command prompt.  This command will work on Windows Server 2008 R2 or later:

    netsh advfirewall firewall add rule name="Locator ZooKeeper (TPC-In)" protocol=TCP localport=9892 action=allow dir=IN remoteip=xxx.xxx.xxx.xxx,yyy.yyy.yyy.yyy

    Replace xxx.xxx.xxx.xxx and yyy.yyy.yyy.yyy with the IP(s) of the search servers involved with the multi server setup.

    NOTE: This firewall rule can be skipped if you don't plan to configure Secondary Search servers. 

  5. Add a new rule to the Windows firewall allowing all traffic inbound on TCP port 8983 for Solr.  Run the following from an elevated command prompt.  This command will work on Windows Server 2008 R2 or later:

    netsh advfirewall firewall add rule name="Locator Solr (TPC-In)" protocol=TCP localport=8983 action=allow dir=IN remoteip=xxx.xxx.xxx.xxx,yyy.yyy.yyy.yyy

    Replace xxx.xxx.xxx.xxx and yyy.yyy.yyy.yyy with the IP(s) of the servers involved with the multi server setup.

    NOTE: This firewall rule can be skipped if you don't plan to configure Secondary Search servers.

  6. From Locator 2.11 and above. Add a new rule to the Windows firewall allowing all traffic inbound on TCP port 9889 for ayfie Authority Service. Use port 9789 if you run the ayfie Authority Service with https. Run the following from an elevated command prompt.  This command will work on Windows Server 2008 R2 or later:

    netsh advfirewall firewall add rule name="ayfie Authority Service (TPC-In)" protocol=TCP localport=9889 action=allow dir=IN remoteip=xxx.xxx.xxx.xxx,yyy.yyy.yyy.yyy

    Replace xxx.xxx.xxx.xxx and yyy.yyy.yyy.yyy with the IP(s) of the search servers involved with the multi server setup.

    NOTE: This firewall rule can be skipped if you don't plan to configure Secondary Search servers.


  7. Postgres only: steps 6-11
    Stop all Locator services in the specified order. This can be accomplished either manually, via the Windows Services UI, or from a PowerShell session.

    Windows Services UI Method

    From the Windows Services app, stop each Locator Service in the following order:

    • All Fetch Services, in any order (e.g. ayfie FileServer Fetch Service, ayfie Exchange Fetch Service, etc.)
    • Locator IndexBuilder Service
    • Locator Index Service
    • Locator Licensing Service
    • Locator Database Service 



    PowerShell Method

    Paste the following code into an elevated PowerShell session to stop all Locator services:

    # Create an array of Locator service names in the order they should be stopped. Get the fetch services first.
    $vwServices= Get-Service | Where { $_.DisplayName -like "*ViaWorks*Fetch*" -or $_.DisplayName -like "*Locator*Fetch*" -or $_.DisplayName -like "*ayfie*Fetch*"}
    
    # These services must be stopped in this order after fetch services are stopped.
    $vwServiceNames= @(
    "ViaWorksIndexBuilder",
    "Via.Index.Service",
    "Via.Licensing.Service",
    "ViaWorksDatabaseService"
    )
    # Add to the array of services for each of the additional services that are NOT fetch services
    foreach ($n in $vwServiceNames) {
    	$vwServices += (Get-Service -Name $n)
    }
    
    # Stop each Locator service
    $vwServices| ForEach-Object {
    	Stop-Service $_.Name -Verbose
    }
    
  8. From Locator 2.11 and above: The ayfie Authority Service is available from Locator 2.11. Stop the ayfie Authority service by executing the command in an elevated PowerShell session:

    $authorityService= Get-Service | Where {$_.DisplayName -like "ayfie Authority Service"}
    $authorityService| ForEach-Object {Stop-Service $_.Name -Verbose}
    
  9. From an elevated command prompt, edit the file %ProgramData%\ayfie\Locator\Database\pg_hba.conf
    (Note: If you customized where ProgramData was set during installation, you must enter that full path instead of using the system variable "%ProgramData%")

    Search for the “
    # IPv4 local connections” section and add a line like shown below to allow inbound traffic from the secondary server IP address where <IPv4_addr> is the IPv4 address  of the secondary Locator  server:


    host    all             all      <IPv4_addr>/32            trust
  10. From an elevated command prompt, edit the file %ProgramData%\ayfie\Locator\Database\postgresql.conf
    (Note: If you customized where ProgramData was set during installation, you must enter that full path instead of using the system variable "%ProgramData%")


    Search for “
    #listen_addresses = 'localhost'” and add the following line before it:

    listen_addresses='*'
  11. Start all Locator services in the reverse order that they were stopped in step #6.  Perform this manually from the Services UI or by pasting the following code into the same elevated PowerShell session to start all of the Locator services:

    [array]::Reverse($vwServices)
    $vwServices | Start-Service -Verbose
  12. From Locator 2.11 and above: Start the ayfie Authority Service. Perform this manually from the Services UI or by pasting the following code into the same elevated PowerShell session:

    $authorityService| Start-Service -Verbose
  13. If you plan to use the primary Locator server as a fetch server open Locator Management Console and install the required connectors.
  14. If you plan to set up secondary search servers  in the multi-node environment, install Locator on the secondary servers, see Installing/Configuring a Secondary Search Server first. And then continue setting up the SolrCloud for all search servers in the environment, see Web Server and Solr Cloud Configuration

See also

  • No labels