I can't find it in the Admin->Cloud->Tree part of the UI. Trying to "get" the file: [zk: localhost:2181(CONNECTED) 0] get /aliases.json Node does not exist: /aliases.json
So it didn't stick -- I'm guessing. I don't see an error message regarding the "alias" in my logs either. Anywhere else I should look? -- Chris On Thu, Oct 17, 2013 at 3:50 PM, Garth Grimm < garthgr...@averyranchconsulting.com> wrote: > Go to the admin screen for Cloud/Tree, and then click the node for > aliases.json. To the lower right, you should see something like: > > {"collection":{"AdWorksQuery":"AdWorks"}} > > Or access the Zookeeper instance, and do a 'get /aliases.json'. > > -----Original Message----- > From: Christopher Gross [mailto:cogr...@gmail.com] > Sent: Thursday, October 17, 2013 2:40 PM > To: solr-user > Subject: Re: Switching indexes > > Also, when I make an alias: > > http://index1:8080/solr/admin/collections?action=CREATEALIAS&name=test1-alias&collections=test1 > > I get a pretty useless response: > <response><lst name="responseHeader"><int name="status">0</int><int > name="QTime">0</int></lst></response> > > So I'm not sure if it is made. I tried going to: > http://index1:8080/solr/test1-alias/select?q=*:* > but that didn't work. How do I use an alias when it gets made? > > > -- Chris > > > On Thu, Oct 17, 2013 at 2:51 PM, Christopher Gross <cogr...@gmail.com > >wrote: > > > OK, super confused now. > > > > > > http://index1:8080/solr/admin/cores?action=CREATE&name=test2&collectio > > n=test2&numshards=1&replicationFactor=3 > > > > Nets me this: > > <response> > > <lst name="responseHeader"> > > <int name="status">400</int> > > <int name="QTime">15007</int> > > </lst> > > <lst name="error"> > > <str name="msg">Error CREATEing SolrCore 'test2': Could not find > > configName for collection test2 found:[xxx, xxx, xxxx, xxxxx, > > xxxxxx]</str> <int name="code">400</int> </lst> </response> > > > > For that node (test2), in my solr data directory, I have a folder with > > the conf files and an existing data dir (copied the index from another > > location). > > > > Right now it seems like the only way that I can add in a collection is > > to load the configs into zookeeper, stop tomcat, add it to the > > solr.xml file, and restart tomcat. > > > > Is there a primer that I'm missing for how to do this? > > > > Thanks. > > > > > > -- Chris > > > > > > On Wed, Oct 16, 2013 at 2:59 PM, Christopher Gross <cogr...@gmail.com > >wrote: > > > >> Thanks Shawn, the explanations help bring me forward to the "SolrCloud" > >> mentality. > >> > >> So it sounds like going forward that I should have a more complicated > >> name (ex: coll1-20131015) aliased to coll1, to make it easier to > >> switch in the future. > >> > >> Now, if I already have an index (copied from one location to > >> another), it sounds like I should just remove my existing (bad/old > >> data) coll1, create the "replicated" one (calling it coll1-<date>), > >> then alias coll1 to that one. > >> > >> This type of information would have been awesome to know before I got > >> started, but I can make do with what I've got going now. > >> > >> Thanks again! > >> > >> > >> -- Chris > >> > >> > >> On Wed, Oct 16, 2013 at 2:40 PM, Shawn Heisey <s...@elyograg.org> > wrote: > >> > >>> On 10/16/2013 11:51 AM, Christopher Gross wrote: > >>> > Ok, so I think I was confusing the terminology (still in a 3.X > >>> > mindset > >>> I > >>> > guess.) > >>> > > >>> > From the Cloud->Tree, I do see that I have "collections" for what > >>> > I was calling "core1", "core2", etc. > >>> > > >>> > So, to redo the above, > >>> > Servers: index1, index2, index3 > >>> > Collections: (on each) coll1, coll2 Collection (core?) on index1: > >>> > coll1new > >>> > > >>> > Each Collection has 1 shard (too small to make sharding worthwhile). > >>> > > >>> > So should I run something like this: > >>> > > >>> http://index1:8080/solr/admin/collections?action=CREATEALIAS&name=co > >>> ll1&collections=col11new > >>> > > >>> > Or will I need coll1new to be on each of the index1, index2 and > >>> > index3 instances of Solr? > >>> > >>> I don't think you can create an alias if a collection already exists > >>> with that name - so having a collection named core1 means you > >>> wouldn't want an alias named core1. I could be wrong, but just to > >>> keep things clean, I wouldn't recommend it, even if it's possible. > >>> > >>> That CREATEALIAS command will only work if coll1new shows up in > >>> /collections and shows green on the cloud graph. If it does, and > >>> you're using an alias name that doesn't already exist as a > >>> collection, then you're good. > >>> > >>> Whether coll1new is living on one server, two servers, or all three > >>> servers doesn't matter for CREATEALIAS, or for most other > >>> collection-related topics. Any query or update can be sent to any > >>> server in the cloud and it will be routed to the correct place > >>> according to the clusterstate. > >>> > >>> Where things live and how many replicas there are *does* matter for > >>> a discussion about redundancy. Generally speaking, you're going to > >>> want your shards to have at least two replicas, so that if a Solr > >>> instance goes down, or is taken down for maintenance, your cloud > >>> remains fully operational. In your situation, you probably want > >>> three replicas - so each collection lives on all three servers. > >>> > >>> So my general advice: > >>> > >>> Decide what name you want your application to use, make sure none of > >>> your existing collections are using that name, and set up an alias > >>> with that name pointing to whichever collection is current. Then > >>> change your application configurations or code to point at the alias > >>> instead of directly at the collection. > >>> > >>> When you want to do your reindex, first create a new collection > >>> using the collections API. Index to that new collection. When it's > >>> ready to go, use CREATEALIAS to update the alias, and your > >>> application will start using the new index. > >>> > >>> Thanks, > >>> Shawn > >>> > >>> > >> > > >