当前位置: 首页 > ops >正文

Docker安装Elasticsearch 7.17.0和Kibana 7.17.0并配置基础安全

1. 准备工作

  • 确保已安装Docker并启动服务
  • 创建必要的目录结构:
    mkdir -p /opt/es/{config,data,plugins}
    mkdir -p /opt/kibana/config
    chmod -R 777 /opt/es /opt/kibana
    

2. 安装Elasticsearch

  1. 拉取镜像:

    docker pull elasticsearch:7.17.0
    
  2. 创建配置文件/opt/es/config/elasticsearch.yml

    cluster.name: "docker-cluster"
    network.host: 0.0.0.0
    http.cors.enabled: true
    http.cors.allow-origin: "*"
    xpack.security.enabled: true
    discovery.type: single-node
    
  3. 启动容器:

    docker run --name es7.17.0 -p 9200:9200 -p 9300:9300 \
    -e "discovery.type=single-node" \
    -e ES_JAVA_OPTS="-Xms512m -Xmx512m" \
    -v /opt/es/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
    -v /opt/es/data:/usr/share/elasticsearch/data \
    -v /opt/es/plugins:/usr/share/elasticsearch/plugins \
    -d elasticsearch:7.17.0
    
  4. 设置密码:

    docker exec -it es7.17.0 /bin/bash
    ./bin/elasticsearch-setup-passwords auto
    

    记录生成的密码,特别是elastic用户的密码

3. 安装Kibana

  1. 拉取镜像:

    docker pull kibana:7.17.0
    
  2. 创建配置文件/opt/kibana/config/kibana.yml

    server.host: "0.0.0.0"
    elasticsearch.hosts: ["http://<ES_IP>:9200"]
    elasticsearch.username: "kibana_system"
    elasticsearch.password: "<KIBANA_SYSTEM_PASSWORD>"
    xpack.security.enabled: true
    
  3. 启动容器:

    docker run --name kibana7.17.0 -p 5601:5601 \
    -v /opt/kibana/config/kibana.yml:/usr/share/kibana/config/kibana.yml \
    -d kibana:7.17.0
    

4. 验证安装

  • Elasticsearch: 访问http://<IP>:9200,使用elastic用户和密码登录
  • Kibana: 访问http://<IP>:5601,使用elastic用户和密码登录

5. 基础安全配置

  1. 修改默认密码:

    curl -u elastic:<password> -X POST "localhost:9200/_security/user/elastic/_password" -H "Content-Type: application/json" -d'{"password":"新密码"}'
    
  2. 启用HTTPS(可选):

    • 生成证书:
      docker exec -it es7.17.0 /bin/bash
      ./bin/elasticsearch-certutil ca
      ./bin/elasticsearch-certutil cert --ca elastic-stack-ca.p12
      
    • 配置elasticsearch.yml:
      xpack.security.transport.ssl.enabled: true
      xpack.security.http.ssl.enabled: true
      xpack.security.http.ssl.keystore.path: certs/elastic-certificates.p12
      xpack.security.http.ssl.truststore.path: certs/elastic-certificates.p12
      
http://www.xdnf.cn/news/15891.html

相关文章:

  • 17 BTLO 蓝队靶场 Pretium 解题记录
  • MySQL表的基础操作
  • 微软CEO Satya Nadella提出AI重构法则:从范式跃迁到社会盈余
  • 病历数智化3分钟:AI重构医院数据价值链
  • OpenGL鼠标控制沿着指定轴旋转
  • JSX(JavaScript XML)‌简介
  • wordle game(猜词游戏)小demo【react + ts】
  • 删除 XML 格式中双引号内的空格
  • 前后端分离项目进阶1---后端
  • Apache IoTDB(2):时序数据库 IoTDB 集群安装部署的技术优势与适用场景分析
  • Electron 主进程与渲染进程之间交互方式
  • 跑腿小程序|基于微信小程序的跑腿平台小程序设计与实现(源码+数据库+文档)
  • kotlin和Jetpack Compose对于Android系统来说是什么关系?
  • 【HTTP缓存机制深度解析:从ETag到实践策略】
  • c语言 进阶 动态内存管理
  • 客流分析核心算法 trajectory_event_analyzer数据结构
  • 深入解析Hadoop YARN:三层调度模型与资源管理机制
  • 单表查询-counter的使用
  • Centos卷挂载失败系统无法启动
  • c++ duiLib 使用xml文件编写界面布局
  • Protein FID:AI蛋白质结构生成模型评估新指标
  • axios二次封装-单个、特定的实例的拦截器、所有实例的拦截器。
  • Apache基础配置
  • C语言:深入理解指针(2)
  • 《汇编语言:基于X86处理器》第8章 复习题和练习,编程练习
  • Spring Cloud Gateway高危隐患
  • MySQL—表设计和聚合函数以及正则表达式
  • 2024年全国青少年信息素养大赛Scratch算法创意实践挑战赛 小高组 初赛 真题
  • Python适配器模式详解:让不兼容的接口协同工作
  • 【LeetCode数据结构】单链表的应用——环形链表问题详解