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 Shawn Heisey <ap...@elyograg.org> on 2017/12/01 17:13:19 UTC

Re: [EXTERNAL] - Re: Basic SolrCloud help

On 11/30/2017 8:53 AM, Steve Pruitt wrote:
> I took the hint and looked at both solr.in.cmd and solr.in.sh.  Clearly setting ZK_HOST is a first step.  I am sure this is explained somewhere, but I overlooked it.
> From here, once I have Solr installed, I can run the Control Script to upload a config set either when creating a collection or independent of creating the collection.
>
> When I install Solr on the three nodes I have planned, I run the Control Script and just point to somewhere on disk I have the config set stored.
>
> One question buried in my first missive was about mixing the Solr machines.  I was thinking of installing Solr on two VM's running Centos and then make my third Solr node on my local machine, i.e. Windows.  I can't think of why this could be an issue,  as long as everything is setup with the right ZK hosts, etc.  Does anyone know of any potential issues doing this?

There shouldn't be any issue with different nodes running on different
operating systems.  There is no service install script for Windows, so
you would have to do that yourself (usually people use NSSM or SRVANY)
or you'd just have to start it manually, which I think means the include
script (solr.in.cmd) will be in the bin directory.

If the local machine you're describing is your personal machine, that is
not something I would do.  Personal machines typically need to be taken
down and/or rebooted for various reasons on a frequent basis.  Also, if
the system resources on the local machine are significantly different
than the VMs, SolrCloud's load balancing can't take that into account
and send a different number of requests to each machine.  Things work
best when all the machines are substantially similar to each other.

Also, since it's likely a personal Windows machine will be running a
client OS like Windows 7 or Windows 10, I have heard from multiple
sources that client operating systems from Microsoft are intentionally
crippled in ways that the server operating systems (which cost a LOT
more) aren't, so that they don't run server loads very well.  I've never
been able to find concrete information about exactly how Microsoft
limits the functionality in the client OS.  If anybody on this list has
a source for concrete information, I'd love to see it.

Last, I will mention my personal feelings about Windows compared to
Linux.  Performance seems to be generally better in Linux.  NTFS is not
as good as the native filesystems in Linux, although Lucene tends
towards large files, which aren't as problematic as tons of little
files.  Memory management appears to me to be much better in Linux.  The
single biggest complaint I have about Windows is cost, especially for
the server operating systems, which I think are the only good choice for
a program like Solr.

> I am not sure what "definition" and *config* are referencing.  When I initially install Solr it will not have a config set.  I haven't created a Collection yet.   The running Solr instance upon initial install has no config yet.  But, I think I am not understanding what "definition" and "*config*" mean.

When I said "definition" I was talking about ZK_HOST or the argument to
the -z option.  The "config" would be the include script (usually
solr.in.sh or solr.in.cmd) -- providing configuration options for Solr
startup like heap size, zk info, gc tuning, etc.

Thanks,
Shawn