M4Pro安装ELK(ElasticSearch+LogStash+Kibana)踩坑记录

article/2025/6/19 17:39:47

ElasticSearch安装,启动端口9200:

docker pull elasticsearch:8.13.0

 

新增配置文件elasticsearch.yml:

cd /opt/homebrew/etc/

mkdir elasticsearch_config

cd elasticsearch_config

vi elasticsearch.yml

cluster.name: "nfturbo-cluster"

network.host: 0.0.0.0

http.cors.enabled: true

http.cors.allow-origin: "*"

xpack.security.enabled: false

 

启动ElasticSearch,启动端口9200、9300:

docker run --name elasticsearch -p 9200:9200  -p 9300:9300  -e "discovery.type=single-node" -e _JAVA_OPTIONS=-XX:UseSVE=0 -e ES_JAVA_OPTS="-Xms256m -Xmx512m" -v /opt/homebrew/etc/elasticsearch_config/elasticsearch.yml:/usr/share/elasticsearch8/config/elasticsearch.yml -v /home/package/es/data:/usr/share/elasticsearch8/data -v /home/package/es/plugins:/usr/share/elasticsearch8/plugins -d elasticsearch:8.13.0

 

查看运行日志:

docker logs elasticsearch

curl localhost:9200

 

踩坑:

--查看容器 id,替换下面的030926f40873,使用实际的containerid

docker ps

--进入容器内部docker exec -it --user root 030926f40873 /bin/bash

-- 安装vim 命令

apt-get update

apt-get install vim

--修改elasticsearch.yml

vi config/elasticsearch.yml

将 xpack.security.enabled: true 改为:xpack.security.enabled: false

退出容器并重启:docker restart 030926f40873

 

docker logs elasticsearch

curl localhost:9200

{ "name" : "3981174ed6df", "cluster_name" : "nfturbo-cluster", "cluster_uuid" : "9blwCZsiSiOapFjQEF42cA", "version" : { "number" : "8.13.0", "build_flavor" : "default", "build_type" : "docker","build_hash" : "09df99393193b2c53d92899662a8b8b3c55b45cd", "build_date" : "2024-03-22T03:35:46.757803203Z","build_snapshot" : false, "lucene_version" : "9.10.0", "minimum_wire_compatibility_version" : "7.17.0","minimum_index_compatibility_version" : "7.0.0" }, "tagline" : "You Know, for Search"}

 

浏览器访问:127.0.0.1:9200,返回同样结果即安装成功。

 

 

 

Kibana安装,启动端口5601:

docker pull kibana:8.13.0

 

查看ElasticSearch所在容器的IP,3981174ed6df替换成实际es容器的ID:

docker inspect 1e2a10aa9f34 |grep IPAddress

            "SecondaryIPAddresses": null,

            "IPAddress": "172.17.0.3",

                    "IPAddress": "172.17.0.3"

这里的172.17.0.3即es所在docker容器的内网IP。

ps:docker容器之间是完全隔离的,不同的docker容器可以理解为不同的服务器,部署多个docker容器的主机是这些docker容器的宿主机。

docker容器中的应用如果要访问宿主机上运行的服务,需要指定宿主机IP,而不是docker容器的本地IP

 

新增配置文件kibana.yaml:

cd elasticsearch_config

vi kibana.yaml

#server.port: 5601

server.host: 0.0.0.0

elasticsearch.hosts: [ "http://172.17.0.3:9200" ] # 改成 es 的docker容器内网 ip

#elasticsearch.username: "elastic"

#elasticsearch.password: "123456"

xpack.monitoring.ui.container.elasticsearch.enabled: true

i18n.locale: "zh-CN"

 

启动Kibana,启动端口5601:

sudo docker run --name kibana -d -p 5601:5601 -v /opt/homebrew/etc/elasticsearch_config/kibana.yaml:/usr/share/kibana/config/kibana.yaml kibana:8.13.0

踩坑:kibana宿主机和挂载容器的配置文件后缀必须是yaml,否则会挂载成目录(宿主机是文件,就会导致挂载失败)

 

踩坑:跳过token认证:

--查看容器 id,替换下面的030926f40873,使用实际的containerid

docker ps

--进入容器内部docker exec -it --user root 030926f40873 /bin/bash

-- 安装vim 命令

apt-get update

apt-get install vim

--修改kibana.yml

vi config/kibana.yml

elasticsearch.hosts: [ "http://172.17.0.2:9200" ]

# elasticsearch.username: "elastic"

# elasticsearch.password: "123456"

退出容器并重启:docker restart 030926f40873

登录Kibana:

http://127.0.0.1:5601/app/home#/


http://www.hkcw.cn/article/YLTbYZsMge.shtml

相关文章

VC++: identifer “M_PI“ is undefined

本周拿到一份算法文件(cpp),尝试在本机跑一下,提示M_PI不识别: identifer "M_PI" is undefined 解决方案: #define _USE_MATH_DEFINES

关于镜像如何装进虚拟机

本篇文章为感谢小仙猪老师特别编写 本篇文章仅以Ubuntu为例 目录 创建虚拟机 汉化 如果没有China选项 检查网络 创建虚拟机 第一步,创建虚拟机 因为,第一个选项是会把虚拟机的文件放在c盘因此,这里博主选择自定义,然后下一…

青柠日记:记录美好,守护隐私

在快节奏的现代生活中,日记成为了许多人记录生活、抒发情感的重要方式。而青柠日记这款软件,以其便捷的操作、丰富的模板和强大的隐私保护功能,为用户提供了一个理想的日记记录平台。无论是日常的琐碎点滴,还是重要的生活事件&…

【技能拾遗】——家庭宽带单线复用布线与配置(移动2025版)

📖 前言:在家庭网络拓扑中,客厅到弱电箱只预埋了一根网线,由于已将广电的有线电视取消并改用IPTV。现在需要解决在客厅布置路由器和观看IPTV问题,这里就用到单线复用技术。 目录 🕒 1. 拓扑规划&#x1f55…

Visual Studio笔记:MSVC工具集、MSBuild

1. MSVC工具集 1.1 什么叫MSVC工具集 也可以说Visual Studio平台工具集(Platform toolset). 这些工具包括 C/C 编译器、链接器、汇编程序和其他生成工具以及匹配的库和头文件。 Visual Studio 2015、Visual Studio 2017 和 Visual Studio 2019 是二进制…

【系统配置与部署类】docker的深度配置和应用

相关文章已经在个人博客网站上更新,欢迎访问: docker的深度配置和应用http://www.turnin-blog.online/articles/%E7%B3%BB%E7%BB%9F%E9%85%8D%E7%BD%AE%E4%B8%8E%E9%83%A8%E7%BD%B2/docker%E7%9A%84%E6%B7%B1%E5%BA%A6%E9%85%8D%E7%BD%AE%E5%92%8C%E5%B…

Redis最佳实践——安全与稳定性保障之数据持久化详解

Redis 在电商应用的安全与稳定性保障之数据持久化全面详解 一、持久化机制深度解析 1. 持久化策略矩阵 策略触发方式数据完整性恢复速度适用场景RDB定时快照分钟级快容灾备份/快速恢复AOF实时追加日志秒级慢金融交易/订单关键操作混合模式RDBAOF同时启用秒级中等高安全要求场…

告别硬编码!用工厂模式优雅构建可扩展的 Spring Boot 应用 [特殊字符]

嗨,各位技术伙伴们!👋 在日常的软件开发中,我们经常面临需求变更的挑战。如何构建一个既能满足当前需求,又能轻松应对未来变化的系统呢?答案往往藏在那些经典的设计模式中。 今天,我们就来聊聊…

azure web app创建分步指南系列之二

为注册表授权托管标识 你创建的托管标识尚未获得从容器注册表中提取数据的授权。在此步骤中,你将启用授权。 返回容器注册表的管理页面: 在左侧导航菜单中,选择“访问控制 (IAM)”。选择“添加角色分配”。此屏幕截图显示了如何为容器注册表启用添加角色分配。在角色列表中…

使用Yolov8 训练交通标志数据集:TT100K数据集划分

使用Yolov8 训练交通标志数据集:TT100K数据集划分(一) 一、数据集下载二、划分数据集三、目录放置 一、数据集下载 官方网址:TT100K 数据集对比 源码如下: def classes(filedir):with open(filedir) as f:classes …

【PostgreSQL 03】PostGIS空间数据深度实战:从地图服务到智慧城市

PostGIS空间数据深度实战:从地图服务到智慧城市 关键词 PostGIS, 空间数据库, 地理信息系统, GIS, 空间查询, 地理分析, 位置服务, 智慧城市, 空间索引, 坐标系统 摘要 PostGIS是PostgreSQL的空间数据扩展,它将普通的关系数据库转变为强大的地理信息系统…

Wireshark 使用教程:让抓包不再神秘

一、什么是 tshark? tshark 是 Wireshark 的命令行版本,支持几乎所有 Wireshark 的核心功能。它可以用来: 抓包并保存为 pcap 文件 实时显示数据包信息 提取指定字段进行分析 配合 shell 脚本完成自动化任务 二、安装与验证 Kali Linux…

环境变量Path单行显示改回多行列表显示

环境变量Path单行显示改回多行列表显示 今天去配置环境变量时,双击Path竟然只显示一行,明明记得上次还时一个列表显示来着。由于以前有删除了所有Path变量的经历,所以看到这个情况属实吓我一跳且一脸懵。 仔细地看了一下,Path中…

CodeTop100 Day18

52、最长的有效括号 括号问题需要考虑栈,而最长有效的括号就要考虑动态规划了 这里定义dp[i]为以i-1位置结尾的最长合法括号字串 遍历字符串,当遇到左括号,压入栈,dp[i1]0,遇到右括号,如果栈不为空,配对左…

NLP基础:从词嵌入到预训练模型应用

NLP基础:从词嵌入到预训练模型应用 系统化学习人工智能网站(收藏):https://www.captainbed.cn/flu 文章目录 NLP基础:从词嵌入到预训练模型应用摘要引言一、词嵌入技术:从离散到连续的语义表示1. 传统词嵌…

STM32CubeMX串口配置

STM32CubeMX串口配置 一,Mode1,Asynchronous(异步模式)2,其他模式3,异步通信中的流控 二,Configuration参数配置(Parameter Settings)1,Basic Parameters2,Advanced Para…

Java内存模型(JMM)与多线程编程实战

最近正在复习Java八股,所以会将一些热门的八股问题,结合ai与自身理解写成博客便于记忆 今天将以这四个问题为依据。 一、JMM内存模型解析 1. JMM核心概念 Java内存模型(Java Memory Model)定义了Java程序中各种变量(线程共享变量&#xf…

Spring Cache核心原理与快速入门指南

文章目录 前言一、Spring Cache核心原理1.1 架构设计思想1.2 运行时执行流程1.3 核心组件协作1.4 关键机制详解1.5 扩展点设计1.6 与Spring事务的协同 二、快速入门实战三、局限性3.1 多级缓存一致性缺陷3.2 分布式锁能力缺失3.3 事务集成陷阱 总结 前言 在当今高并发、低延迟…

【设计模式-4.5】行为型——迭代器模式

说明:本文介绍设计模式中,行为型设计模式之一的迭代器模式。 定义 迭代器模式(Iterator Pattern),也叫作游标模式(Cursor Pattern),它提供一种按顺序访问集合/容器对象元素的方法&…

【Python训练营打卡】day40 @浙大疏锦行

DAY 40 训练和测试的规范写法 知识点回顾: 1. 彩色和灰度图片测试和训练的规范写法:封装在函数中 2. 展平操作:除第一个维度batchsize外全部展平 3. dropout操作:训练阶段随机丢弃神经元,测试阶段eval模式关闭dropo…