You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-user@lucene.apache.org by Kelly Rusk <Ke...@rackspace.com> on 2018/08/10 02:37:11 UTC

Solr Multiple Hostnames

Hello all,

Is it possible to have mutiple hostnames for a single Solr node, akin to an IIS Website with multiple host headers?

My scenario is that I have a Master/Slave configuration with a load balancer in front. The Master has a url of https://master-solr.mydomain.com and the Slave a url of https://slave-solr.mydomain.com.

The Slave node looks to the Master URL in its config for replication.

The load balancer routes to either the Master or Slave node. To date, I put an domain name on the load balancer and pointed traffic to that endpoint to then route to either Master or Slave. (Using a SANS Cert that has the Master, Slave, and LB URL).

What I want is to add a second hostname to each Solr server, such as https://solr.mydomain.com so that I target this endpoint and it routes through the LB instead of needing a domain name on the LB for the endpoint.

What I have found so far is that I can only set a single hostname in Solr.

Any ideas? What have others done?

Regards,

Kelly

Re: Solr Multiple Hostnames

Posted by Kelly Rusk <Ke...@rackspace.com>.
Thank you Shawn!

Kelly
________________________________
From: Shawn Heisey <ap...@elyograg.org>
Sent: Saturday, August 11, 2018 12:01:21 AM
To: solr-user@lucene.apache.org
Subject: Re: Solr Multiple Hostnames

On 8/10/2018 11:12 AM, Kelly Rusk wrote:
> I want traffic passed over https to flow through the load balancer and resolve on the Solr servers by an address of https://solr.mydomain.com:8983/solr. The hostname I have set for the Solr Master is master.mydomain.com and the Slave is slave.mydomain.com.
>
> So, are you stating that so long as my DNS has an entry for the domain of  https://solr.mydomain.com:8983/solr it should work, even if the individual Solr servers have their host set as master.mydomain.com or slave.mydomain.com.

Any request you send that's properly formatted will be answered.  If DNS
sends it to Solr, the port is correct, the protocol is correct, and all
that, it should work.  You could have the following host header in the
HTTP request that Solr receives and it would work:

Host: wibble.frongle.spoof

The *load balancer* might care about the host header, but unless you
tweak the jetty config to accomplish something different than Solr ships
with, Solr will not care what the host header contains.  You won't even
*need* a Host header.

When you configure a replication slave, you give it a URL for the
master.  That must be a good URL, of course.  The master doesn't get
told about the slaves.

Thanks,
Shawn


Re: Solr Multiple Hostnames

Posted by Shawn Heisey <ap...@elyograg.org>.
On 8/10/2018 11:12 AM, Kelly Rusk wrote:
> I want traffic passed over https to flow through the load balancer and resolve on the Solr servers by an address of https://solr.mydomain.com:8983/solr. The hostname I have set for the Solr Master is master.mydomain.com and the Slave is slave.mydomain.com.
>
> So, are you stating that so long as my DNS has an entry for the domain of  https://solr.mydomain.com:8983/solr it should work, even if the individual Solr servers have their host set as master.mydomain.com or slave.mydomain.com.

Any request you send that's properly formatted will be answered.  If DNS 
sends it to Solr, the port is correct, the protocol is correct, and all 
that, it should work.  You could have the following host header in the 
HTTP request that Solr receives and it would work:

Host: wibble.frongle.spoof

The *load balancer* might care about the host header, but unless you 
tweak the jetty config to accomplish something different than Solr ships 
with, Solr will not care what the host header contains.  You won't even 
*need* a Host header.

When you configure a replication slave, you give it a URL for the 
master.  That must be a good URL, of course.  The master doesn't get 
told about the slaves.

Thanks,
Shawn


RE: Solr Multiple Hostnames

Posted by Kelly Rusk <Ke...@rackspace.com>.
Hi Shawn,

I want traffic passed over https to flow through the load balancer and resolve on the Solr servers by an address of https://solr.mydomain.com:8983/solr. The hostname I have set for the Solr Master is master.mydomain.com and the Slave is slave.mydomain.com.

So, are you stating that so long as my DNS has an entry for the domain of  https://solr.mydomain.com:8983/solr it should work, even if the individual Solr servers have their host set as master.mydomain.com or slave.mydomain.com.

Regards,

Kelly

-----Original Message-----
From: Shawn Heisey <ap...@elyograg.org> 
Sent: Thursday, August 9, 2018 11:00 PM
To: solr-user@lucene.apache.org
Subject: Re: Solr Multiple Hostnames

On 8/9/2018 8:37 PM, Kelly Rusk wrote:
> Is it possible to have mutiple hostnames for a single Solr node, akin to an IIS Website with multiple host headers?

Solr doesn't pay attention to any host header in the HTTP request.  If Solr receives the traffic on its TCP port, it will answer, no matter what host value you send.  It's not possible to configure even one name, let alone multiple names.

What is it that you're trying to accomplish that has you thinking you need to add another hostname?  I read your message, but I do not see the end goal.

https://home.apache.org/~hossman/#xyproblem

Thanks,
Shawn


Re: Solr Multiple Hostnames

Posted by Shawn Heisey <ap...@elyograg.org>.
On 8/9/2018 8:37 PM, Kelly Rusk wrote:
> Is it possible to have mutiple hostnames for a single Solr node, akin to an IIS Website with multiple host headers?

Solr doesn't pay attention to any host header in the HTTP request.  If 
Solr receives the traffic on its TCP port, it will answer, no matter 
what host value you send.  It's not possible to configure even one name, 
let alone multiple names.

What is it that you're trying to accomplish that has you thinking you 
need to add another hostname?  I read your message, but I do not see the 
end goal.

https://home.apache.org/~hossman/#xyproblem

Thanks,
Shawn