elk-1

本文涉及的产品
Elasticsearch Serverless通用抵扣包,测试体验金 200元
日志服务 SLS,月写入数据量 50GB 1个月
简介: elk-1

Elasticsearch:

   开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,

索引副本机制,restful 风格接口,多数据源,自动搜索负载等


官方网站:

  https://www.elastic.co

中文社区:

  https://elasticsearch.cn

 

官方参考文档:

  https://www.elastic.co/guide/en/elasticsearch/reference/6.6/setup-configuration-memory.html

 

下载地址:

  https://mirrors.tuna.tsinghua.edu.cn/elasticstack/6.x/yum/6.6.0/

   elasticsearch-6.6.0.rpm

   filebeat-6.6.0-x86_64.rpm

   kibana-6.6.0-x86_64.rpm

   logstash-6.6.0.rpm

1.安装elasticsearch:

   前提:jdk-1.8.0 (yum -y install java-1.8.0-openjdk )

   复制elasticsearch-6.6.0.rpm到虚拟机

rpm -ivh elasticsearch-6.6.0.rpm

2.elasticsearch目录和文件:

/etc/elasticsearch/elasticsearch.yml    #配置文件

/etc/elasticsearch/jvm.options            #java虚拟机

/etc/init.d/elasticsearch                #服务启动脚本

/etc/sysconfig/elasticsearch            #elasticsearch服务变量

/usr/lib/sysctl.d/elasticsearch.conf    #设置elasticsearch用户使用的内存大小

/usr/lib/systemd/system/elasticsearch.service      #添加系统服务文件

/var/log/elasticsearch/elasticsearch.log         #日志文件路径


3.修改配置文件:


vim /etc/elasticsearch/elasticsearch.yml

node.name: node-1                        #群集中本机节点名

path.data: /data/elasticsearch            #数据目录

path.logs: /var/log/elasticsearch        #日志目录

bootstrap.memory_lock: true                #锁定内存,需要和/etc/elasticsearch/jvm.options关联

network.host: 192.168.8.10,127.0.0.1    #监听的ip地址

http.port: 9200                            #端口号


4.创建数据目录,并修改权限


mkdir -p /data/elasticsearch

chown -R elasticsearch.elasticsearch /data/elasticsearch/


5.分配锁定内存:


vim /etc/elasticsearch/jvm.options

-Xms1g        #分配最小内存    

-Xmx1g        #分配最大内存,官方推荐为物理内存的一半,但最大为32G


6.修改锁定内存后,无法重启,解决方法如下:


systemctl edit elasticsearch

添加:

[Service]

LimitMEMLOCK=infinity

F2保存退出


systemctl daemon-reload

systemctl restart elasticsearch


7.查看单主机


  http://192.168.8.10:9200/

 查看群集健康状态

  http://192.168.8.10:9200/_cluster/health?pretty

 查看整个群集状态信息

  http://192.168.8.10:9200/_cluster/state?pretty


8.下载es-head插件


  https://github.com/mobz/elasticsearch-head

   下载后,解压,复制crx目录下es-head.crx到桌面

   改名es-head.crx为es-head.crx.zip

   解压es-head.crx.zip到es-head.crx目录,把目录es-head.crx,上传到谷歌浏览器开发工具--扩展程序里

 

9.创建索引:vipinfo,类型:users,序号:1,数据部分:...


curl -XPUT '192.168.8.10:9200/vipinfo/users/1?pretty&pretty' -H 'Content-Type: application/json' -d '{"name": "guofucheng","age": "45","job": "mingxing"}'


 选项说明:

   XPUT       创建

   XDELETE  删除

 

###############################################################################################

elasticsearch群集:

   状态颜色:

       灰色:未连接

       绿色:数据完整态

       黄色:副本不完整

       红色:数据分片不完整

       紫色:数据分片复制过程

   群集主机角色:

       主节点master:负责管理调度

       工作节点:       负责处理数据

       默认情况,所有节点都是工作节点,即主节点也处理数据


################################################################################

往群集中添加第二台主机:192.168.8.20

1.安装es,步骤参考第一台,注意配置文件需要修改

vim /etc/elasticsearch/elasticsearch.yml

node.name: node-2

path.data: /data/elasticsearch                  

path.logs: /var/log/elasticsearch              

bootstrap.memory_lock: true                            

network.host: 192.168.8.20,127.0.0.1  

http.port: 9200

discovery.zen.ping.unicast.hosts: ["192.168.8.10", "192.168.8.20"]

discovery.zen.minimum_master_nodes: 2   #添加的值=节点数/2 + 1


2.创建数据目录,并修改权限

mkdir -p /data/elasticsearch

chown -R elasticsearch.elasticsearch /data/elasticsearch/


3.分配锁定内存:

vim /etc/elasticsearch/jvm.options

-Xms1g        #分配最小内存    

-Xmx1g        #分配最大内存,官方推荐为物理内存的一半,但最大为32G


4.修改锁定内存后,无法重启,解决方法如下:

systemctl edit elasticsearch

添加:

[Service]

LimitMEMLOCK=infinity

F2保存退出


systemctl daemon-reload

systemctl restart elasticsearch

################################################################################

往群集中添加第三台主机:192.168.8.30

1.安装es,步骤参考第一台,注意配置文件需要修改

vim /etc/elasticsearch/elasticsearch.yml

node.name: node-3

path.data: /data/elasticsearch                  

path.logs: /var/log/elasticsearch              

bootstrap.memory_lock: true                            

network.host: 192.168.8.30,127.0.0.1  

http.port: 9200

discovery.zen.ping.unicast.hosts: ["192.168.8.10", "192.168.8.30"]

discovery.zen.minimum_master_nodes: 2  


2.创建数据目录,并修改权限

mkdir -p /data/elasticsearch

chown -R elasticsearch.elasticsearch /data/elasticsearch/


3.分配锁定内存:

vim /etc/elasticsearch/jvm.options

-Xms1g        #分配最小内存    

-Xmx1g        #分配最大内存,官方推荐为物理内存的一半,但最大为32G


4.修改锁定内存后,无法重启,解决方法如下:

systemctl edit elasticsearch

添加:

[Service]

LimitMEMLOCK=infinity

F2保存退出


systemctl daemon-reload

systemctl restart elasticsearch

##############################################################################

常见群集管理监控命令

(1)查看索引信息

   curl -XGET '192.168.8.10:9200/_cat/indices?pretty'

(2)查看群集健康状态

   curl -XGET '192.168.8.10:9200/_cluster/health?pretty'

(3)统计群集节点

   curl -XGET '192.168.8.10:9200/_cat/nodes?human&pretty'

(4)查看群集所有节点详细信息

   curl -XGET '192.168.8.10:9200/_nodes/_all/info/jvm.process?human&pretty'

注意:企业环境使用脚本监控群集健康状态是否为green 或 节点数不匹配 就邮件报警

(5)创建索引index1时,修改分片为3和副本数为2

curl -X PUT 192.168.8.10:9200/index1  -H 'Content-Type: application/json' -d '{

   "settings" : {

       "index" : {

           "number_of_shards" : 3,

           "number_of_replicas" : 2

       }

   }

}'



(6)针对已有索引,可修改副本数,不可改分片数。下面语句把index1的副本数由2改为1

curl -X PUT '192.168.8.10:9200/index1/_settings?pretty'  -H 'Content-Type: application/json' -d '{

 "settings": {

   "number_of_replicas": "1"

 }                          

}'


============================================

1.另开一台centos,安装nginx

复制nginx-rpm包到虚拟机/root下

cd /root/nginx-rpm

yum -y localinstall *.rpm

systemctl start nginx



2.安装filebeat,收集nginx的日志,传输到elasticsearch

复制filebeat包到虚拟机

rpm -ivh filebeat-6.6.0-x86_64.rpm


vim /etc/filebeat/filebeat.yml

删除已有内容,添加:

filebeat.inputs:

- type: log

 enabled: true

 paths:

   - /var/log/nginx/access.log


output.elasticsearch:

 hosts: ["192.168.8.10:9200"]

保存退出


systemctl start filebeat


3.测试访问nginx,产生日志,查看elastsearch


相关实践学习
以电商场景为例搭建AI语义搜索应用
本实验旨在通过阿里云Elasticsearch结合阿里云搜索开发工作台AI模型服务,构建一个高效、精准的语义搜索系统,模拟电商场景,深入理解AI搜索技术原理并掌握其实现过程。
ElasticSearch 最新快速入门教程
本课程由千锋教育提供。全文搜索的需求非常大。而开源的解决办法Elasricsearch(Elastic)就是一个非常好的工具。目前是全文搜索引擎的首选。本系列教程由浅入深讲解了在CentOS7系统下如何搭建ElasticSearch,如何使用Kibana实现各种方式的搜索并详细分析了搜索的原理,最后讲解了在Java应用中如何集成ElasticSearch并实现搜索。  
相关文章
|
Java Linux
【Linux】linux下使用命令修改jar包内某一个文件中的内容并重新运行jar程序
【Linux】linux下使用命令修改jar包内某一个文件中的内容并重新运行jar程序
695 0
|
10月前
|
缓存 前端开发 UED
如何优化前端性能以提高加载速度
前端性能优化对提升网站加载速度至关重要,直接影响用户体验、SEO排名和转化率。本文介绍了优化前端加载速度的关键技巧,包括最小化HTTP请求、使用CDN、优化图片、利用浏览器缓存、压缩文件和实现懒加载。通过这些方法,可以显著减少页面加载时间,提高网站的整体性能和用户满意度。
|
Java 测试技术 Android开发
SpringBoot如何写好单元测试
SpringBoot如何写好单元测试
|
开发工具 git Python
通过Python脚本git pull 自动重试拉取代码
通过Python脚本git pull 自动重试拉取代码
400 5
|
11月前
|
机器学习/深度学习 资源调度 算法
增强回归模型的可解释性:基于MCMC的混合建模与特征选择方法研究
本文介绍了一种基于正态回归混合模型的通用实现方法,结合MCMC算法,在参数估计的同时实现模型选择和特征选择。该方法突破了正态性假设限制,适用于非正态和非线性数据集,并通过回归混合和特征选择机制提升模型可解释性和性能。实验结果表明,该模型在复杂数据分类和参数估计方面表现出色,错误率仅为6%。此方法在客户群体识别、医疗数据分析等领域具有广泛应用价值。
289 10
增强回归模型的可解释性:基于MCMC的混合建模与特征选择方法研究
|
11月前
|
设计模式 缓存 安全
「全网最细 + 实战源码案例」设计模式——单例设计模式
单例模式是一种创建型设计模式,确保一个类在整个程序运行期间只有一个实例,并提供一个全局访问点来获取该实例。它常用于控制共享资源的访问,如数据库连接、配置管理等。实现方式包括饿汉式(类加载时初始化)、懒汉式(延迟加载)、双重检查锁、静态内部类和枚举单例等。其中,枚举单例最简单且安全,能有效防止反射和序列化破坏。
206 7
|
存储 编译器 程序员
嵌入式系统中C++基础知识精髓
嵌入式系统中C++基础知识精髓
244 0
|
SQL 存储 监控
精通MySQL:从入门到精通的全方位指南
第一章:MySQL入门 1.1 MySQL概述 简要介绍MySQL的历史、特点和应用场景
|
关系型数据库 Linux 数据库
linux设置信号量系统参数
linux设置信号量系统参数
224 0
|
机器学习/深度学习 人工智能 搜索推荐
谈谈内容创作中的UGC、PGC、AIGC,在创意设计领域的应用与进化
在数字化时代,内容创作经历了从UGC(用户生成内容)到PGC(专业生产内容),再到AIGC(人工智能生成内容)的转变。UGC打破了传统边界,让每个人都能参与创作,但质量参差不齐;PGC代表专业水准,提供高质量内容,但成本高且制作周期长;AIGC借助AI技术大幅提升效率,实现个性化定制,但面临版权、伦理和情感表达的挑战。Adobe国际认证等专业资格成为了衡量设计师能力的新标准,帮助设计师适应这一变革并引领创新。三种模式相互补充,共同推动创意设计领域不断发展。