Docker环境下Elasticsearch与Kibana基础身份认证配置咨询
Docker部署Elasticsearch+Kibana开启基础身份认证操作指南
1. 首次调整docker-compose配置开启ES安全模块
修改你当前的docker-compose.yml,新增Elasticsearch的安全参数配置,调整后内容如下:
version: '3.7' services: elasticsearch: image: elasticsearch:7.9.2 ports: - '9200:9200' environment: - discovery.type=single-node - xpack.security.enabled=true # 开启xpack安全认证核心参数 - "ES_JAVA_OPTS=-Xms512m -Xmx512m" # 可根据服务器配置调整内存大小,避免启动失败 ulimits: memlock: soft: -1 hard: -1 volumes: - es_data:/usr/share/elasticsearch/data # 挂载数据卷,避免数据和配置丢失 kibana: image: kibana:7.9.2 ports: - '5601:5601' depends_on: - elasticsearch # 声明数据卷 volumes: es_data:
2. 启动ES并生成内置账号密码
- 先启动Elasticsearch服务:
docker-compose up -d elasticsearch - 等待30秒左右待ES完全启动,执行如下命令进入容器生成密码:
若需要系统自动生成随机密码,执行:docker-compose exec elasticsearch bin/elasticsearch-setup-passwords auto
若需要自定义所有账号密码,执行:docker-compose exec elasticsearch bin/elasticsearch-setup-passwords interactive - 执行命令后请务必保存输出的所有账号密码,尤其是超级管理员
elastic的密码、用于Kibana对接ES的kibana账号的密码。
3. 调整Kibana配置接入带认证的ES
再次修改docker-compose.yml,给kibana服务新增ES认证相关的环境变量:
kibana: image: kibana:7.9.2 ports: - '5601:5601' depends_on: - elasticsearch environment: - ELASTICSEARCH_URL=http://elasticsearch:9200 - ELASTICSEARCH_USERNAME=kibana - ELASTICSEARCH_PASSWORD=替换为上一步你保存的kibana账号对应的密码
4. 重启所有服务生效
执行命令重启所有服务:docker-compose up -d
等待Kibana启动完成后,访问5601端口即可看到登录界面,使用elastic账号和对应密码即可登录使用。
内容的提问来源于stack exchange,提问作者user16461550
相关产品推荐
相关产品推荐

