Book Image

Mastering Elasticsearch 5.x - Third Edition

Book Image

Mastering Elasticsearch 5.x - Third Edition

Overview of this book

Elasticsearch is a modern, fast, distributed, scalable, fault tolerant, and open source search and analytics engine. Elasticsearch leverages the capabilities of Apache Lucene, and provides a new level of control over how you can index and search even huge sets of data. This book will give you a brief recap of the basics and also introduce you to the new features of Elasticsearch 5. We will guide you through the intermediate and advanced functionalities of Elasticsearch, such as querying, indexing, searching, and modifying data. We’ll also explore advanced concepts, including aggregation, index control, sharding, replication, and clustering. We’ll show you the modules of monitoring and administration available in Elasticsearch, and will also cover backup and recovery. You will get an understanding of how you can scale your Elasticsearch cluster to contextualize it and improve its performance. We’ll also show you how you can create your own analysis plugin in Elasticsearch. By the end of the book, you will have all the knowledge necessary to master Elasticsearch and put it to efficient use.
Table of Contents (20 chapters)
Mastering Elasticsearch 5.x - Third Edition
Credits
About the Author
Acknowledgements
About the Reviewer
www.PacktPub.com
Customer Feedback
Preface

Discovery and recovery modules


When an Elasticsearch node is started, it looks out for an initial list of hosts which are master eligible to perform discovery of other nodes in the cluster. The default list of master eligible hosts is ["127.0.0.1", "[::1]"], which means by default that each Elasticsearch node can only discover itself and cannot find another node. This behavior was introduced in Elasticsearch version 2.0. Before that, Elasticsearch, by default, used to assume that the cluster was automatically formed by the nodes that declare the same cluster.name setting and can communicate with each other using multicast requests.

The process of forming a cluster and finding nodes is called discovery. The module responsible for discovery has two main purposes: electing a master and discovering new nodes within a cluster.

After the cluster is formed, a process called recovery is started. During the recovery process, Elasticsearch reads the metadata and the indices from the gateway, and prepares...