Elasticsearch-Indexierung funktioniert nicht und Fehlermeldung: Knoten null ist nicht Teil des Clusters Cluster [elasticsearch], ignoriert
Ich habe gerade die elastische Suchverteilung heruntergeladen und ausgeführt.
curl 'localhost:9200'
{
"status" : 200,
"name" : "cbs",
"cluster_name" : "elasticsearch",
"version" : {
"number" : "1.4.1",
"build_hash" : "89d3241d670db65f994242c8e8383b169779e2d4",
"build_timestamp" : "2014-11-26T15:49:29Z",
"build_snapshot" : false,
"lucene_version" : "4.10.2"
},
"tagline" : "You Know, for Search"
}
Und ich versuche mit spring-data darauf zuzugreifen. Die folgenden Zeilen im Anwendungskontext (gemäß der Dokumentation zu den Quelldaten) mit dem XML-Namespace wurden hinzugefügt:
<elasticsearch:repositories base-package="com.cbs" />
<elasticsearch:transport-client id="client" cluster-nodes="127.0.0.1:9300" cluster-name="elasticsearch" />
<bean name="elasticsearchTemplate" class="org.springframework.data.elasticsearch.core.ElasticsearchTemplate">
<constructor-arg name="client" ref="client" />
</bean>
Hier ist die Entität und der Repository-Code:
@org.springframework.data.elasticsearch.annotations.Document(indexName = "product", type = "product", shards = 1, replicas = 0, indexStoreType = "memory", refreshInterval = "-1")
public class Product {
@Id
private String id;
private String name;
}
@Repository
public class ProductSearchDaoImpl implements IProductSearchDao {
@Autowired
private ElasticsearchOperations elasticsearchOperations;
@Override
public void index(Product product) {
elasticsearchOperations.createIndex(Product.class);
elasticsearchOperations.putMapping(Product.class);
IndexQuery indexQuery = new IndexQueryBuilder().withId(product.getId()).withObject(product).build();
elasticsearchOperations.index(indexQuery);
elasticsearchOperations.refresh(Product.class, true);
}
}
Wenn ich jetzt den Testfall zur Indizierung des Produkts ausführe, erhalte ich eine konsistente Warnmeldung (etwa alle 2 Sekunden) als
[Neuronne] node null not part of the cluster Cluster [elasticsearch], ignoring...
[Neuronne] node null not part of the cluster Cluster [elasticsearch], ignoring...
Und das Produkt wird nicht indiziert (auch der Index wird nicht erstellt)
curl 'localhost:9200/_cat/indices?v'
health status index pri rep docs.count docs.deleted store.size pri.store.size
Kann mir jemand dabei helfen?