官方网站:https://www.elastic.co/guide/en/elasticsearch/reference/current/rpm.html

这里采用rpm的方式安装:

# wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.5.4.rpm

elasticsearch依赖java环境,于是在安装之前需要配置java:

# rpm -ivh jdk-8u191-linux-x64.rpm
# java -version

java环境安装完成后,安装elasticsearch:

# rpm --install elasticsearch-6.5.4.rpm

elasticsearch的配置文件:

[root@node1 ~]# cd /etc/elasticsearch/
[root@node1 elasticsearch]# ll
总用量 36
-rw-rw----. 1 root elasticsearch 207 12月 23 18:04 elasticsearch.keystore
-rw-rw----. 1 root elasticsearch 2869 12月 18 05:21 elasticsearch.yml
-rw-rw----. 1 root elasticsearch 3266 12月 18 05:21 jvm.options
-rw-rw----. 1 root elasticsearch 12423 12月 18 05:21 log4j2.properties
-rw-rw----. 1 root elasticsearch 473 12月 18 05:21 role_mapping.yml
-rw-rw----. 1 root elasticsearch 197 12月 18 05:21 roles.yml
-rw-rw----. 1 root elasticsearch 0 12月 18 05:21 users
-rw-rw----. 1 root elasticsearch 0 12月 18 05:21 users_roles

如果需要修改jvm参数,调整jvm.options这个配置文件就行:默认配置为1g

[root@node1 elasticsearch]# egrep "^-Xms|^-Xmx" jvm.options
-Xms1g
-Xmx1g

现在将elasticsearch做一下简单的配置如下:

[root@node1 elasticsearch]# egrep -v "^$|^#" elasticsearch.yml
cluster.name: es 集群的名字
node.name: node1 节点的名字
path.data: /var/lib/elasticsearch 数据目录
path.logs: /var/log/elasticsearch 日志目录
network.host: 0.0.0.0 服务监听的ip
http.port: 9200 服务监听的端口

然后启动elasticsearch服务:

# systemctl daemon-reload
# systemctl enable elasticsearch.service
# systemctl start elasticsearch.service
# systemctl status elasticsearch.service

查看监听状态:

[root@node1 elasticsearch]# netstat -tnlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 968/sshd
tcp6 0 0 :::9200 :::* LISTEN 2756/java
tcp6 0 0 :::9300 :::* LISTEN 2756/java
tcp6 0 0 :::22 :::* LISTEN 968/sshd

于是单节点的elasticsearch服务配置完成,现在做一些curl的操作,熟悉elasticsearch的一些查询:

1.关于cat API的使用:

[root@node1 elasticsearch]# curl -X GET "localhost:9200/_cat/nodes"
172.16.23.129 32 68 0 0.00 0.04 0.05 mdi * node1
[root@node1 elasticsearch]# curl -X GET "localhost:9200/_cat/nodes?v"
ip heap.percent ram.percent cpu load_1m load_5m load_15m node.role master name
172.16.23.129 28 68 2 0.02 0.07 0.05 mdi * node1

由于es集群只有一个节点,所以节点node1也是master节点:

[root@node1 elasticsearch]# curl -X GET "localhost:9200/_cat/master?v"
id host ip node
q95yZ4W4Tj6PaXyzLZZYDQ 172.16.23.129 172.16.23.129 node1

然后可以根据指定的字段获取结果:

[root@node1 elasticsearch]# curl -X GET "localhost:9200/_cat/nodes?v&h=id,ip,port,v,m"
id ip port v m
q95y 172.16.23.129 9300 6.5.4 *

指定的字段格式为:h=colume即可:这里的h代表为header

[root@node1 elasticsearch]# curl -X GET "localhost:9200/_cat/nodes?v&h=ram.percent"
ram.percent
69

具体header后面可以过滤哪些colume,请查看官网:https://www.elastic.co/guide/en/elasticsearch/reference/current/cat-nodes.html

查看health:

[root@node1 elasticsearch]# curl -X GET "localhost:9200/_cat/health?v"
epoch timestamp cluster status node.total node.data shards pri relo init unassign pending_tasks max_task_wait_time active_shards_percent
1545561036 10:30:36 es green 1 1 0 0 0 0 0 0 - 100.0%

elasticsearch下重要的index:

[root@node1 elasticsearch]# curl -X GET "localhost:9200/_cat/indices?v"
health status index uuid pri rep docs.count docs.deleted store.size pri.store.size

由上面返回结果来看,是没有数据的,表示es这个集群并没有构建索引

2.关于indices API的使用:

2.1创建一个index:

# curl -X PUT "localhost:9200/test1"        创建的索引全部以默认值,默认的shard等等

查看这个index:

[root@node1 elasticsearch]# curl -X GET "localhost:9200/_cat/indices?v"
health status index uuid pri rep docs.count docs.deleted store.size pri.store.size
yellow open test1 KqGrTZ7GQv6o5jEQPK-wwA 5 1 0 0 1.1kb 1.1kb

创建的index拥有默认的shards个数,5个,可以通过将indeices换为shards进行查看

查看索引test1的具体的默认配置,获取索引test1:

[root@node1 elasticsearch]# curl -X GET "localhost:9200/test1"
{"test1":{"aliases":{},"mappings":{},"settings":{"index":{"creation_date":"1545561578119","number_of_shards":"5","number_of_replicas":"1","uuid":"KqGrTZ7GQv6o5jEQPK-wwA","version":{"created":"6050499"},"provided_name":"test1"}}}}[root@node1 elasticsearch]#

由于上面的结果不利于查看,于是使用python的json工具转化一下:

[root@node1 elasticsearch]# curl -X GET "localhost:9200/test1" |python -m json.tool
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 229 100 229 0 0 6870 0 --:--:-- --:--:-- --:--:-- 7387
{
"test1": {
"aliases": {},
"mappings": {},
"settings": {
"index": {
"creation_date": "1545561578119",
"number_of_replicas": "1",
"number_of_shards": "5",
"provided_name": "test1",
"uuid": "KqGrTZ7GQv6o5jEQPK-wwA",
"version": {
"created": "6050499"
}
}
}
}
}

可以看见上面依然显示不是很友好,有下载的状态,curl的参数-s静默输出:

[root@node1 elasticsearch]# curl -X GET "localhost:9200/test1" -s|python -m json.tool
{
"test1": {
"aliases": {},
"mappings": {},
"settings": {
"index": {
"creation_date": "1545561578119",
"number_of_replicas": "1",
"number_of_shards": "5",
"provided_name": "test1",
"uuid": "KqGrTZ7GQv6o5jEQPK-wwA",
"version": {
"created": "6050499"
}
}
}
}
}

可以看出索引test1的shards数为5个,replicas数为1个等等信息

获取索引test1中结果的某指定字段:

[root@node1 elasticsearch]# curl -X GET "localhost:9200/test1/_settings" -s|python -m json.tool
{
"test1": {
"settings": {
"index": {
"creation_date": "1545561578119",
"number_of_replicas": "1",
"number_of_shards": "5",
"provided_name": "test1",
"uuid": "KqGrTZ7GQv6o5jEQPK-wwA",
"version": {
"created": "6050499"
}
}
}
}
}
[root@node1 elasticsearch]# curl -X GET "localhost:9200/test1/_mappings" -s|python -m json.tool
{
"test1": {
"mappings": {}
}
}

2.2删除索引

[root@node1 elasticsearch]# curl -X DELETE "localhost:9200/test1"
{"acknowledged":true}[root@node1 elasticsearch]#

3._cluster API查询:

[root@node1 elasticsearch]# curl -X GET "localhost:9200/_cluster/health" -s |python -m json.tool
{
"active_primary_shards": 5,
"active_shards": 5,
"active_shards_percent_as_number": 50.0,
"cluster_name": "es",
"delayed_unassigned_shards": 0,
"initializing_shards": 0,
"number_of_data_nodes": 1,
"number_of_in_flight_fetch": 0,
"number_of_nodes": 1,
"number_of_pending_tasks": 0,
"relocating_shards": 0,
"status": "yellow",
"task_max_waiting_in_queue_millis": 0,
"timed_out": false,
"unassigned_shards": 5
}
[root@node1 elasticsearch]# curl -X GET "localhost:9200/_cluster/health/test1" -s |python -m json.tool
{
"active_primary_shards": 5,
"active_shards": 5,
"active_shards_percent_as_number": 50.0,
"cluster_name": "es",
"delayed_unassigned_shards": 0,
"initializing_shards": 0,
"number_of_data_nodes": 1,
"number_of_in_flight_fetch": 0,
"number_of_nodes": 1,
"number_of_pending_tasks": 0,
"relocating_shards": 0,
"status": "yellow",
"task_max_waiting_in_queue_millis": 0,
"timed_out": false,
"unassigned_shards": 5
}
[root@node1 elasticsearch]# curl -X GET "localhost:9200/_cluster/health/test1?level=shards" -s |python -m json.tool

如果不想-s |python -m json.tool,那么还有一种方式格式化输出:

[root@node1 elasticsearch]# curl -X GET "localhost:9200/test1?human&pretty"
{
"test1" : {
"aliases" : { },
"mappings" : { },
"settings" : {
"index" : {
"creation_date_string" : "2018-12-23T11:04:48.982Z",
"number_of_shards" : "5",
"provided_name" : "test1",
"creation_date" : "1545563088982",
"number_of_replicas" : "1",
"uuid" : "ZAjj9y_sSPmGz8ZscIXUsA",
"version" : {
"created_string" : "6.5.4",
"created" : "6050499"
}
}
}
}
}

需要在后面加上?human&pretty

或者直接在后面加上?pretty:

[root@master ~]# curl -XGET localhost:9200/_cluster/health?pretty
{
"cluster_name" : "estest",
"status" : "green",
"timed_out" : false,
"number_of_nodes" : 3,
"number_of_data_nodes" : 3,
"active_primary_shards" : 5,
"active_shards" : 10,
"relocating_shards" : 0,
"initializing_shards" : 0,
"unassigned_shards" : 0,
"delayed_unassigned_shards" : 0,
"number_of_pending_tasks" : 0,
"number_of_in_flight_fetch" : 0,
"task_max_waiting_in_queue_millis" : 0,
"active_shards_percent_as_number" : 100.0
}

  

ELK之elasticsearch6.5的更多相关文章

  1. centos6.10搭建ELK之elasticsearch6.5.4

    1.环境准备 1.1.安装java环境版本不要低于java8 # java -version java version "1.8.0_191" Java(TM) SE Runtim ...

  2. ELK之elasticsearch6安装认证模块search guard

    参考:https://www.cnblogs.com/marility/p/9392645.html 1,安装环境及软件版本 程序 版本 安装方式  elasticsearch  6.3.1  rpm ...

  3. ELK(Elasticsearch6.0以上版本head插件安装)

    参考:https://www.cnblogs.com/Onlywjy/p/Elasticsearch.html Elasticsearch6.0不能使用命令直接安装head插件 修改配置文件/etc/ ...

  4. ELK之elasticsearch6.5集群

    前面介绍并初试了es6.5系列的单节点的操作,现在搭建es6.5系列的集群: 环境:三节点:master-172.16.23.128.node1-172.16.23.129.node2-172.16. ...

  5. ELK+filebeat、kafka、zookeeper搭建文档

    系统:centos 6.5 JDK:1.8 Elasticsearch-6.0.0Logstash-6.0.0kibana-6.0.0zookeeper-3.5.3kafka_2.12-1.0.0fi ...

  6. ELK Stack 笔记

    ELK Stack ELK Stack ELK Stack ELK 介绍 架构 Elasticsearch 安装 常见问题 关闭 Elasticsearch Elasticsearch-head Ki ...

  7. ELK测试安装

    https://blog.csdn.net/guyan0319/article/details/78749639 https://www.cnblogs.com/frankdeng/p/9139035 ...

  8. ELK(使用RPM包安装配置ELK)

    1,安装环境查看 2,下载rmp包 下载地址:https://www.elastic.co/cn/downloads 分别下载最新rmp包 elasticsearch-6.2.4.rpm logsta ...

  9. 从零开始搭建系统2.2——ELK安装及配置

    ELK 最新版本对JDK的最低要求是1.8,安装java_1.8版本 一.Elasticsearch 1.创建目录 2.下载安装包 wget https://artifacts.elastic.co/ ...

随机推荐

  1. python调用exe程序

    最近在做测试,公司的产品做成了exe,让我去测试,C++写的程序啊,我直接用python调用那个exe,也有个坑,必须要到exe在的那个目录下,然后才能调用: import os def main() ...

  2. Pandas的append方法

    相当于添加一行记录,这个方法也是比较管用的: # 测试pandas.append方法 def use_pd_append(): df = pd.DataFrame([[1, 2], [3, 4]], ...

  3. 64位windows 7下配置TortoiseGit(转)

    原文:http://our2848884.blog.163.com/blog/static/146854834201152325233854/ 最近感觉自己电脑上的代码太乱了,东一块.西一块……于是决 ...

  4. Hibernate错误

    1.Field 'id' doesn't have a default value 原来是我的数据设计的时候,把主键的类型定义为int的,原本想是用自增的方式来的,可是由于自己的粗心,写sql语句的时 ...

  5. query:callback

    function getName(callback) { setTimeout(function() { callback('Aaron') }, 1000) } //等待callback回调 get ...

  6. ubuntu 下执行定时任务

    Window shell文件在linux系统下执行不了的解决办法 一些人喜欢用vim来写linux shell script, 但是, 有的人喜欢在Windows下用一些方便的编辑器(比如鼎鼎大名的N ...

  7. selenium WebDriver处理文件下载

    下载文件WebDriver 允许我们设置默认的文件下载路径.也就是说文件会自动下载并且存在设置的那个目录中.下面以FireFox 为例执行文件的下载. package com.mypro.jase; ...

  8. AspxGridView点滴

    1:页码设置 1>: <SettingsPager Summary-Text="当前第 {0} 页 总共 {1} 页 ({2} 条记录)"></Settin ...

  9. Django初级手册5-自动化测试

    什么是自动化测试 每次更新完系统后,可自动进行测试,而不是手工从头测试一遍: 从长远和全局的角度看,测试能节约我们的时间: 测试是一种积极的行为,它能预防问题,而不仅仅是识别问题: 测试有助于代码美观 ...

  10. 1:4 UI标签和通用标签

          UI标签:负责用户界面输出的标签. 非标单:例如错误信息提示的标签 fielderror,actionerror,actionmessagr:系统错误消息的自动显示           通 ...