[转帖]ES集群开启X-pack认证
https://www.cnblogs.com/jclty/p/12913996.html
1.下载
1
|
# wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.6.2-linux-x86_64.tar.gz |
2.解压并重命名
1
2
|
# tar -zvxf elasticsearch-7.6.2-linux-x86_64.tar.gz -C /data/elastic/ # mv /data/elastic/elasticsearch-7.6.2 /dat/elastic/node1 |
实例一:
1
2
3
4
|
3.由于es不允许root用户启动,因此需要创建普通用户,并把更改目录权限 # useadd es # groupadd es # chown -R es:es /data/elastic/node1 |
4.编辑配置文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
# vim /data/elastic/node1/config/elasticsearch.yml bootstrap.system_call_filter: false processors: 4 node.master: true node.data: true cluster.name: rizhiyi_security network.host: ip bootstrap.memory_lock: true path.data: data path.logs: logs http.port: 9200 transport.tcp.port: 9300 node.name: ip_9300 discovery.seed_hosts: [ "ip:9300" , "ip:9301" , "ip:9302" ] cluster.initial_master_nodes: [ "ip:9300" , "ip:9301" , "ip:9302" ] |
5.配置JVM
1
2
3
4
5
|
# vim /data/elastic/node1/config/jvm.options -Xms1g -Xmx1g -XX:+UseG1GC -XX:G1ReservePercent=25 |
6.配置好后切换到普通用户启动
1
2
3
|
# su - es # cd/data/elastic/node1 # ./bin/elasticsearch -d |
7.启动的时候如果遇到问题可以考虑一下java环境是否配置好,elasticsearch的权限是否为普通用户,内存是否足够。
实例二、三:
复制一份实例一的node1,命令为node2,node3,只需要把http.port:9200,transport.tcp.port:9300端口号更改即可其他步骤一样。。
至此一个多实例es集群搭完
elasticsearch x-pack安全认证登录/tcp启用TLS
1. 生成CA证书,使用elasticsearch内部命令# bin/elasticsearch-certutil ca
2.为集群中每个节点生成证书和私钥
1
|
# bin/elasticsearch-certutil cert --ca elastic-stack-ca.p12 |
将产生新文件 elastic-certificates.p12。系统还会提示你输入密码,你可以输入证书和密钥的密码,也可以按Enter键将密码留空。默认情况下 elasticsearch-certutil 生成没有主机名信息的证书,这意味着你可以将证书用于集群中的每个节点,另外要关闭主机名验证。(elastic-certificates.p12生成后移动到config目录下)
3. 在所有节点elasticsearch.yml文件添加如下配置
1
2
3
4
5
|
xpack.security.enabled: true xpack.security.transport.ssl.enabled: true xpack.security.transport.ssl.verification_mode: certificate xpack.security.transport.ssl.keystore.path: . /elastic-certificates .p12 xpack.security.transport.ssl.truststore.path: . /elastic-certificates .p12 |
4. 启动主节点,建议用bin/elasticsearch运行,可以直观查看运行情况
5. 主节点运行后,为集群设置密码。注:需要所有集群节点启动
1
|
# bin/elasticsearch-setup-passwords auto #或者将auto替换为interactive进行手动修改 |
6. 复制文件elasic-certificates.p12到其他节点
7. 启动其他节点,可以在主节点运行中看到有其他节点加入
8. 查看集群状态,因为启动x-pack功能,故查看集群状态时需要指定es用户# curl -u elastic IP:9200/_cat/nodes -u指定用户名,回车需要输入密码
9.在http启用TLS在所有节点elasticsearch.yml文件添加如下配置
1
2
3
|
xpack.security.http.ssl.enabled: true xpack.security.http.ssl.keystore.path: . /elastic-certificates .p12 xpack.security.http.ssl.truststore.path: . /elastic-certificates .p12 |
10.重启所有节点配置生效
完整elasticsearch.yml文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
botstrap.system_call_filter: false processors: 4 node.master: true node.data: true cluster.name: rizhiyi_security network.host: ip bootstrap.memory_lock: true path.data: data path.logs: logs http.port: 9200 transport.tcp.port: 9300 node.name: ip_9300 discovery.seed_hosts: [ "ip:9300" , "ip:9301" , "ip:9302" ] cluster.initial_master_nodes: [ "ip:9300" , "ip:9301" , "ip:9302" ] #开启安全认证登录 xpack.security.enabled: true ##tcp启用TSL xpack.security.transport.ssl.enabled: true xpack.security.transport.ssl.verification_mode: certificate xpack.security.transport.ssl.keystore.path: . /elastic-certificates .p12 xpack.security.transport.ssl.truststore.path: . /elastic-certificates .p12 #http启用TLS xpack.security.http.ssl.enabled: true xpack.security.http.ssl.keystore.path: . /elastic-certificates .p12 xpack.security.http.ssl.truststore.path: . /elastic-certificates .p12 |
[转帖]ES集群开启X-pack认证的更多相关文章
- EFK教程(5) - ES集群开启用户认证
基于ES内置及自定义用户实现kibana和filebeat的认证 作者:"发颠的小狼",欢迎转载 目录 ▪ 用途 ▪ 关闭服务 ▪ elasticsearch-修改elastics ...
- EFK-5: ES集群开启用户认证
转载自:https://mp.weixin.qq.com/s?__biz=MzUyNzk0NTI4MQ==&mid=2247483826&idx=1&sn=583e9a5260 ...
- ES 集群调整、升级 最佳实践
日常应用中我们会经常对es 集群做一些参数调整或者升级版本,但是每次关闭节点再打开 其中的数据同步的痛苦估计有很多人领悟过(有可能出现IO或者网络拥堵导致恶性循环)官网有套方案可以尝试一下: 1.关掉 ...
- 【7.1.1】ELK集群搭建 之 ES集群
写在前边 昨天晚上就已经完成这篇博客了,就是在测试这块是否正常跑起来,晚上没搞完,上班前把电脑关机带着,结果没保存!基本上昨天写的东西都丢了,好在博客园的图片url还在. 为了让大家都轻松些,我轻松写 ...
- ES集群7.3.0设置快照,存储库进行索引备份和恢复等
说明:三台ES节点组成ES集群,一台kibana主机,版本均是7.3.0,白金试用版 官方地址:https://www.elastic.co/guide/en/elasticsearch/refere ...
- windows单节点下安装es集群
linux下的es的tar包,拖到windows下,配置后,启动bin目录下的bat文件,也是可以正常运行的. 从linux下拷的tar包,需要修改虚拟机的内存elasticsearch.in.bat ...
- ES 集群上,业务单点如何优化升级?
摘要: 原创出处 https://www.bysocket.com 「公众号:泥瓦匠BYSocket 」欢迎关注和转载,保留摘要,谢谢! ES 基础 ES 集群 ES 集群上业务优化 一.ES 基础 ...
- es集群数据库~运维相关
一 数据同步方案 1 ES-JDBC 不能实现删除同步操作.MYSQL如果删除,ES不会删除 2 logstash-input-jdbc 能实现insert update,但是仍然不能实现删除 ...
- elasticsearch系列八:ES 集群管理(集群规划、集群搭建、集群管理)
一.集群规划 搭建一个集群我们需要考虑如下几个问题: 1. 我们需要多大规模的集群? 2. 集群中的节点角色如何分配? 3. 如何避免脑裂问题? 4. 索引应该设置多少个分片? 5. 分片应该设置几个 ...
- elasticsearch(es) 集群恢复触发配置(Local Gateway参数)
elasticsearch(es) 集群恢复触发配置(Local Gateway) 当你集群重启时,几个配置项影响你的分片恢复的表现. 首先,我们需要明白如果什么也没配置将会发生什么. 想象一下假设你 ...
随机推荐
- [Luogu 4912 帕秋莉的魔法] 题解报告
算法:DP, 背包,动态规划 简化版题目: 给定 \(n\) 个物品,物品的价值为 \(v_1 - v_n\),物品的体积为 \(w_1 - w_n\).需要选择一些物品,使它们的体积和为 \(V\) ...
- 原生JavaScript 与 jQuery 执行Ajax请求
原生JavaScript和jQuery都可以用来执行Ajax请求,以下是它们的基本实现方式的比较: 原生JavaScript实现Ajax请求: var xhr = new XMLHttpRequest ...
- C++产生N以内的随机整数
C++产生N(这里N=100)以内的随机整数的例子: #include <iostream> #include <ctime> using namespace std; int ...
- 揭秘华为云GaussDB(for Redis)丨大key治理
本文分享自华为云社区<华为云GaussDB(for Redis)揭秘第31期:大key治理>,作者: 高斯Redis官方博客. 从DBA的视角看,大Key无疑是引起Redis线上问题的常见 ...
- 数据库技术丨GaussDB(DWS)数据同步状态查看方法
摘要:针对数据同步状态查看方法,GaussDB(DWS)提供了丰富的系统函数.视图.工具等可以直观地对同步进度进行跟踪,尤其是为方便定位人员使用,gs_ctl工具已集合了大部分相关系统函数的调用,可做 ...
- SARIF在应用过程中对深层次需求的实现
摘要:为了降低各种分析工具的结果汇总到通用工作流程中的成本和复杂性, 业界开始采用静态分析结果交换格式(Static Analysis Results Interchange Format (SARI ...
- 高性能 Jsonpath 框架,Snack3 v3.2.44 发布
Snack3,一个高性能的 JsonPath 框架 借鉴了 Javascript 所有变量由 var 申明,及 Xml dom 一切都是 Node 的设计.其下一切数据都以ONode表示,ONode也 ...
- QA: Solon 怎么输出下载文件流?
Solon 的Mvc可以直接返回 DownloadedFile 或者 File 对象 @Mapping("/demo/down") @Controller public class ...
- 如何在 EF Core 中使用乐观并发控制
什么是乐观并发控制? 乐观并发控制是一种处理并发访问的数据的方法,它基于一种乐观的假设,即认为并发访问的数据冲突的概率很低.在乐观并发控制中,系统不会立即对并发访问的数据进行加锁,而是在数据被修改时, ...
- JSP使用MySQL数据库报错java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
错误 在JavaWeb中的JSP中使用MySQL数据库报错找不到 com.mysql.jdbc.Driver . 错误日志如下: java.lang.ClassNotFoundException: c ...