ELK搭建

基础环境

hostnamectl set-hostname els01
hostnamectl set-hostname els02
hostnamectl set-hostname els03
hostnamectl set-hostname kba

systemctl stop firewalld & systemctl disable firewalld
# 安装jdk
cd  /usr/local
tar -xvf jdk1.8.0_231.tar.gz

vi /etc/profile
export JAVA_HOME=/usr/local/jdk1.8.0_231
export PATH=$JAVA_HOME/bin:$PATH

source /etc/profile

elasticsearch

安装

# 创建用户与组
groupadd -g 500 els

mkdir -p /opt/app/els
useradd -d /opt/app/els -u 2000 -g els els

echo "els#123" | passwd --stdin els

cp -r etc/skel/.bash* /opt/app/els

cd /opt/app
chown -R els:els /opt/app/els
chmod -R 755 /opt/app/els

su - els
tar -xvf elasticsearch-7.6.2-linux-x86_64.tar.gz -C /opt/app/els
chown -R els:els /opt/app/els

更改用户可创建的线程数

vi /etc/security/limits.d/20-nproc.conf

els soft nproc 4096

在这里插入图片描述否则报错:max number of threads [1024] for user [elsearch] likely too low, increase to at least [4096]

更改打开文件数与线程数

vi /etc/security/limits.conf

els        soft    	nofile          65536
els        hard    	nofile          131072
els        soft    	nproc          4096
els        hard    	nproc          4096

在这里插入图片描述
否则报错:node validation exception bootstrap checks failed

更改系统控制文件

Elasticsearch 默认使用 mmapfs 目录存储索引,而 Linux 默认对 mmap 计数限制可能太低,会导致内存异常。系统控制文件是管理系统中的各种资源控制的配置文件,ES 需要开辟一个 65536 字节以上空间的虚拟内存,但 Linux 又不允许任何用户直接开辟虚拟内存,所以通过如下方式修改:

vi /etc/sysctl.conf

vm.max_map_count=655360

sysctl -p

在这里插入图片描述
否则报错:max virtual memory areas vm.max_map_count [65530] likely too low, increase to at least [262144]

环境变量

vi  /opt/app/els/.bash_profile

export JAVA_HOME=/usr/local/jdk1.8.0_231
export ES_HOME=$HOME/elasticsearch-7.6.2
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$ES_HOME/lib
export PATH=$HOME/bin:$JAVA_HOME/bin:$ES_HOME/bin:$PATH


vi  /opt/app/elsearch/.bashrc

ES_HOME=/opt/app/elsearch/elasticsearch-7.6.2
PATH=$PATH:$ES_HOME/bin

source  ~/.bash_profile & source  ~/.bashrc
su - els
mkdir -p /opt/app/elsearch/data /opt/app/elsearch/logs

vi elasticsearch-7.6.2/config/elasticsearch.yml

#集群名称
cluster.name: DR-ELK
#默认情况下,Elasticsearch 将使用随机生成的 UUID 的前七个字符作为节点 ID,该节点名称一经生成后,即使重启服务亦不会变更
node.name: els01

path.data: /opt/app/elsearch/data
path.logs: /opt/app/elsearch/logs

#默认情况下,此 elasticsearch 服务绑定到回环地址127.0.0.1。修改为节点ip在浏览器中访问不成功
network.host: 0.0.0.0

#集群中拥有被选举成 Master 节点资格的地址列表
discovery.seed_hosts: ["ip1:9400","ip2:9400","ip3:9400"]

#在一个新集群初始化时,符合 Master 节点资格的节点集
cluster.initial_master_nodes: ["ip1:9400","ip2:9400","ip3:9400"]

#为最多主节点个数
discovery.zen.minimum_master_nodes: 1
#为超时后生效节点数
gateway.recover_after_nodes: 1
#没有这两项配置7.6.2版本的kibana将无法调用ES

# 文本最后追加
http.cors.enabled: true
http.cors.allow-origin: "*"

注释掉判断是否存在 JAVA_HOME变量的流程分支,直接使用操作系统的JDK

cd /opt/app/elsearch/elasticsearch-7.6.2/bin/
cp elasticsearch-env elasticsearch-env.bak

vi /opt/app/elsearch/elasticsearch-7.6.2/bin/elasticsearch-env

在这里插入图片描述

su - els
cd /opt/app/elsearch/elasticsearch-7.6.2/bin
#以守护进程模式运行
./elasticsearch -d
#停止
ps -ef | grep Elasticsearch | grep -v grep | awk '{print $2}' | xargs kill -SIGTERM
#查看状态
cat /opt/app/elsearch/logs/集群名称.log
curl -X GET http://ip:9200

在这里插入图片描述

kibana

安装

groupadd -g 500 kbn
mkdir -p /opt/app/kbn
useradd -d /opt/app/kibana -u 2000 -g kba kba

/bin/echo "kba#123" | passwd --stdin kba

cp -r /etc/skel/.bash* /opt/app/kba

chown -R kbn:kbn /opt/app/kba
chmod -R 755 /opt/app/kba

su - kba
tar -xvf kibana-7.6.2-linux-x86_64.tar.gz -C /opt/app/kba
chown -R kba:kba /opt/app/kibana

环境变量

vi  /opt/app/kba/.bashrc
# 注意jdk相关变量
export KIBANA_HOME=/opt/app/kibana/kibana-7.6.2-linux-x86_64
export PATH=$PATH:$KIBANA_HOME/bin

source  ~/.bashrc

在这里插入图片描述
在这里插入图片描述

su - kba
vi kibana-7.6.2-linux-x86_64/config/kibana.yml
# 端口
server.port: 5601
# 服务主机名
server.host: "0.0.0.0"
# 指定ES服务,可以指定多个
elasticsearch.hosts: ["http://ip1:9200","http://ip2:9200","http://ip3:9200"]
# 进程文件
pid.file: /opt/app/kibana/kibana.pid
# 日志路径
logging.dest: /opt/app/kibana/logs/kibana.log
# 汉化
i18n.locale: "zh-CN"
mkdir -p /opt/app/kibana/logs/

su - kba
cd  /opt/app/kibana/kibana-7.6.2-linux-x86_64/bin
#后台运行
./kibana &
#停止
ps -ef | grep kibana | grep -v grep | awk '{print $2}' | xargs kill -SIGTERM
#查看
cat /opt/app/kibana/logs/kibana.logs
#浏览器访问http://ip:5601/

在这里插入图片描述

相关推荐

  1. <span style='color:red;'>ELK</span><span style='color:red;'>搭</span><span style='color:red;'>建</span>

    ELK

    2024-02-21 06:34:01      26 阅读
  2. 飞天使-elk补充

    2024-02-21 06:34:01       38 阅读
  3. Elasticsearch、Logstash、Kibana(ELK)环境

    2024-02-21 06:34:01       38 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-02-21 06:34:01       19 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-02-21 06:34:01       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-02-21 06:34:01       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-02-21 06:34:01       20 阅读

热门阅读

  1. C陷阱和缺陷--第一章 “词法陷阱”

    2024-02-21 06:34:01       26 阅读
  2. 【后端】springboot项目

    2024-02-21 06:34:01       29 阅读
  3. 2.Swift Tabbar的使用

    2024-02-21 06:34:01       26 阅读
  4. vue前端docx库生成word表格 并合并单元格的例子

    2024-02-21 06:34:01       28 阅读
  5. Regular Paper, Short Paper, Demo Paper 和Poster的区别

    2024-02-21 06:34:01       32 阅读
  6. 算法-位运算

    2024-02-21 06:34:01       27 阅读
  7. 【Pytorch】各种维度变换函数总结

    2024-02-21 06:34:01       27 阅读
  8. 如何解决无法npm下载electron依赖的

    2024-02-21 06:34:01       28 阅读
  9. 配置基于 AWS CRT 的 HTTP 客户端

    2024-02-21 06:34:01       33 阅读