欢迎投稿

今日深度:

ElasticSearch安装和配置,elasticsearch配置

ElasticSearch安装和配置,elasticsearch配置


ElasticSearch安装和配置详情首先是安装:基于mac系统官网下载文件:https://www.elastic.co/products/elasticsearch官方教程:https://es.xiaoleilu.com/010_Intro/10_Installing_ES.html网站可能有点慢,耐心等候!!
点击下载tar文件1.单实例安装:解压之后进入bin目录:./elasticsearch启动服务如果想在后台以守护进程模式运行,添加-d参数。
看到以上信息表明启动成功!浏览器中中输入:127.0.0.1:9200
上述结果都出现表示服务正常运行集群健康 让我们以基本的健康检查作为开始,我们可以利用它来查看我们集群的状态。此过程中,我们使用curl,当然,你也可以使用任何可以创建HTTP/REST 调用的工具。我们假设我们还在我们启动Elasticsearch的节点上并打开另外一个shell窗口。 要检查集群健康,我们将使用_cat API。需要事先记住的是,我们的节点HTTP的端口是9200: curl 'localhost:9200/_cat/health?v' 相应的响应是:

可以看到,我们集群的名字是“elasticsearch”,正常运行,并且状态是绿色。 当我们询问集群状态的时候,我们要么得到绿色、黄色或红色。绿色代表一切正常(集群功能齐全),黄色意味着所有的数据都是可用的,但是某些复制没有被分配 (集群功能齐全),红色则代表因为某些原因,某些数据不可用。注意,即使是集群状态是红色的,集群仍然是部分可用的(它仍然会利用可用的分片来响应搜索请 求),但是可能你需要尽快修复它,因为你有丢失的数据。 也是从上面的响应中,我们可以看到,一共有一个节点,由于里面没有数据,我们有0个分片。注意,由于我们使用默认的集群名字 (elasticsearch),并且由于Elasticsearch默认使用网络多播(multicast)发现其它节点,如果你在你的网络中启动了多 个节点,你就已经把她们加入到一个集群中了。在这种情形下,你可能在上面的响应中看到多个节点。 我们也可以获得节集群中的节点列表:curl 'localhost:9200/_cat/nodes?v' 对应的响应是:
我们可以看到我们叫做“JOzgyFK”的节点,这个节点是我们集群中的唯一节点。列出所有的索引 让我们看一下我们的索引: curl 'localhost:9200/_cat/indices?v' 响应是:
这个结果意味着,在我们的集群中,我们没有任何索引。首先创建一个索引
然后列出所有索引
第二个命令的结果告知我们,我们现在有一个叫做customer的索引,并且它有5个主分片和1份复制(都是默认值),其中包含0个文档。 你可能也注意到了这个customer索引有一个黄色健康标签。回顾我们之前的讨论,黄色意味着某些复制没有(或者还未)被分配。这个索引之所以这样,是 因为Elasticsearch默认为这个索引创建一份复制。由于现在我们只有一个节点在运行,那一份复制就分配不了了(为了高可用),直到当另外一个节 点加入到这个集群后,才能分配。一旦那份复制在第二个节点上被复制,这个节点的健康状态就会变成绿色
由于控制台管理不方便 需要安装一个插件,便于web端管理2.elasticSearch-head插件安装教程从https://github.com/mobz/elasticsearch-head下载ZIP包。下载文件放到和elasticsearch同一目录在以下目录elasticsearch/config/elasticsearch.yml添加代码
http.cors.enabled: truehttp.cors.allow-origin: "*"允许插件访问es由于head插件本质上还是一个nodejs的工程,因此需要安装node,使用npm来安装依赖的包。(npm可以理解为maven)检查 node -v



安装head插件所依赖的包,使用npm run start 命令启动head浏览器显示:


2.分布式安装步骤:修改配置文件:

新建两个文件夹es_slave1 es_slave2两个文件夹,分别拷贝es文件到两个文件夹。修改配置文件:
修改节点1的配置文件,配置端口 防止端口冲突,配置主节点的地址,可以让主节点发现子节点。一定要注意冒号后面有空格修改节点2的配置文件:

启动子节点报错如下:[2017-10-27T22:33:17,999][INFO ][o.e.d.z.ZenDiscovery ] [slave1] failed to send join request to master [{master}{RgFbOiteR12g-4XdaR8x9w}{J4Jj2QoqT6-AkIMDjz_BRQ}{127.0.0.1}{127.0.0.1:9300}], reason [RemoteTransportException[[master][127.0.0.1:9300][internal:discovery/zen/join]]; nested: IllegalArgumentException[can't add node {slave1}{RgFbOiteR12g-4XdaR8x9w}{6TixW_PdQvGwI8vhCzHQcQ}{127.0.0.1}{127.0.0.1:9301}, found existing node {master}{RgFbOiteR12g-4XdaR8x9w}{J4Jj2QoqT6-AkIMDjz_BRQ}{127.0.0.1}{127.0.0.1:9300} with the same id but is a different node instance]; ]主要原因是由于:是因为直接复制了文件到子节点文件夹,将elsticsearch文件夹下的data文件夹一并复制了。而在前面测试时,data文件夹下已经产生了data数据,于是报上面的错误。解决办法:删除elsticsearch文件夹下的data文件夹数据,问题解决!结果展示:
分布式安装成功!ES基础概念讲解:
3.ES基本使用:RESTful APIAPI基本格式:http://<ip>:<port>/<索引>/<类型>/<文档Id>常用http动词:GET PUT POST DELETE创建索引-》〉》
判断索引是结构化和非结构化的方式
红色标示为空是非结构化索引创建结构化的索引:

结构化的索引创建成功!在postman(一款可视化请求发送工具,搜索下载即可)中创建
创建成功!!
数据插入方式:指定文档ID插入
自动文档ID插入
数据删除方式:如何删除文档:
如何删除索引:
数据修改方式:直接修改文档:
脚本修改文档:

数据查询方式:简单查询:

条件查询:

聚合查询:高级查询:子条件查询(特定字段查询所指特定值):复合条件查询:等在下篇文章讲。

www.htsjk.Com true http://www.htsjk.com/Elasticsearch/27767.html NewsArticle ElasticSearch安装和配置,elasticsearch配置 ElasticSearch安装和配置详情 首先是安装:基于mac系统 官网下载文件: https://www.elastic.co/products/elasticsearch 官方教程: https://es.xiaoleilu.com/010_Intro/1...
相关文章
    暂无相关文章
评论暂时关闭