2016-08-31 3 views
0

私はSolr Webベースのアプリケーションを作成しています。その1つの機能は、Solrのコアとスキーマをユーザーが作成できることです。私の友人は、最初にSolrのディレクトリに行き、次に 'bin/solr create -c ...'コマンドを使って子プロセスを使ってそれを作った。コアを作成することができる。しかし、私はhttp apiリクエストを使うような別のアプローチを考えています。私はこれを見つけました。最初に設定ファイルを作成せずにSolrコアを作成するにはどうすればよいですか?

http://localhost:8983/solr/admin/cores?action=CREATE&name=mycore&instanceDir=path/to/instance&configSet=configset2 

明らかに、コアの設定ファイルを最初に作成する必要があるため、明らかに正しく動作しません。エラーは次のように表示されます。私が最初に設定を設定せずにコアを作ることができないように思えるので、

Error CREATEing SolrCore 'mycore': Unable to create core [mycore] Caused by: Could not load configuration from directory/opt/solr/server/solr/configsets/configset2 

は、だから私は、私にできるアプローチの種類を疑問に思って。または、create coreを使用して入力メニューを作成し、スキーマを作成し、ユーザーが「送信」をクリックした後でのみ、設定ファイルの作成からスキーマの作成、そして最後にコアの作成まで、すべてを処理する必要がありますか?私はそれが最善のアプローチかどうか疑問に思います。 私はどんな助けも楽しみにしています。

答えて

1

コアを作成するときは、常に設定を行う必要があります。

あなたの友人は、コマンドを実行し、それは実際にあなたがcreate_coreコマンドからの説明を読むことによって確認することができ、デフォルトの設定にdata_driven_schema_configsを使用(を作成する非クラウドのセットアップのためのcreate_coreの別名です) :

bin/solr create_core -h 

solrスクリプトは、その設定をコピーしてからコアを作成しました。

あなたが示した例は、SolrCloudに対してのみ有効です。 SolrCloudを使用していない場合は、Core Admin API directlyを使用し、手動でディレクトリを設定する必要があります。

configsetsは、同じconfigsetからいくつかのコアを作成すると、そのconfigsetが共有され、1つのコアによって変更されたconfigsetがすべて影響を及ぼしてしまうという点でちょっと難しいことに注意してください。したがって、あなたはそれらを使いたくないかもしれませんが、代わりに上記のように構成をコピーします。

+0

お返事ありがとうございます。上記のリンクのようにAPIを直接使用することを検討しています。しかし、私は始める方法を正確には分かりません。ですから、まずinstanceDirとconfigファイルを正しく作成する必要がありますか? APIを使ってどうすればいいですか?それを行う方法はありますか?私はコンソールでしか知りません。再度、感謝します。 –

+0

心配しないで、私は最終的にAPIを介してコアを作成する方法を見つけました。私が見つけたドキュメンテーションは、私がシングルコアである間にSolr Cloudモードのヒントを与えます。以下は、動作するAPIです。 'http:// localhost:8983/solr/admin/cores?action = CREATE&name = test_core&configSet = basic_configs' –

関連する問題