本文对 Elasticsearch 7.10 适用
Elasticsearch单机集群重启的正确方式和步骤
Elasticsearch单机版集群有多节点的情况下,如果需要重启这台计算机,则要使用正确的步骤,否则会造成Elasticsearch集群不可用(集群不能正常重新启动),或者节点数据混乱。
方式一
1.禁用 shard 分配
2.将所有数据落盘
3.关机
4.开机
5.检查是否所有节点就绪了
6.启用 shard 分配
方式二
1.所有 master 机器配置 recover 策略,示例如下
2.临时禁用 shard 分配(重启后自动失效)
3.将所有数据落盘
4.关机
5.开机
Elasticsearch+Logstash同步SQL Server数据的配置
配置参数
Logstash多个配置文件(conf)
Logstash:多个配置文件(conf)
对于多个配置的处理方法,有多个处理方法:
一个pipeline含有一个逻辑的数据流,它从input接收数据,并把它们传入到队列里,经过worker的处理,最后输出到output。这个output可以是Elasticsearch或其它。下面针对这两种情况,来分别进行描述。
多个pipeline
接下来,修改pipelines.yml文件。在logstash的安装目录下的config文件目录下,修改pipelines.yml文件。
在上面的配置中,把daily.conf和apache.conf分别置于两个不同的pipleline中。
这样操作配置已经完成了。进入到longstash的安装目录。我们通过如下的命令来运行:
在terminal中,可以看到有两个piple在同时运行,也可以在Kibana中看到我们的index结果。
一个pipeline
同样可以修改位于Logstash安装目录下的config子目录里的pipleline.yml文件,并把它修改为:
把所有位于/Users/liuxg/data/multi-pipeline/下的所有的conf文件都放于一个pipeline里。
按照上面同样的方法来运行我们的应用:
从运行的结果中看到了两个同样的输出。这是为什么呢?这是因为我们把两个.conf文件放于一个pipleline里运行,那么我们有两个stdout的输出分别位于两个.conf文件了。
在Kibana里可以看到我们的最终的index数据:
我们可以看到在apache_log里有20条数据,它包括两个log文件里所有的事件,这是因为它们都是一个pipleline。同样我们可以在apache_daily看到同样的20条数据。
Elasticsearch 7.10.2集群安全配置,即X-Pack TLS加密通信配置
进入主节点目录,如:/elasticsearch-7.10.2
1、为集群创建认证机构
文件根目录下执行bin/elasticsearch-certutil ca
依次输入回车(文件使用默认名),密码
2、为节点颁发证书
之后执行 bin/elasticsearch-certutil cert --ca elastic-stack-ca.p12
依次输入上一个步骤的密码。回车(文件使用默认名),密码(建议与上一步密码相同)
已上两步会分别在Elasticsearch安装目录下生成[elastic-certificates.p12]、[elastic-stack-ca.p12]这两个证书文件。现将这两个证书文件复制到Elasticsearch的配置文件夹中,如:/elasticsearch-7.10.2/config/
。
接着,执行 bin/elasticsearch-keystore add xpack.security.transport.ssl.keystore.secure_password
并输入第一步输入的密码
执行 bin/elasticsearch-keystore add xpack.security.transport.ssl.truststore.secure_password
并输入第一步输入的密码
3、多节点配置
将生成的[elastic-certificates.p12]、[elastic-stack-ca.p12]并连同[elasticsearch.keystore]文件复制到Elasticsearch其他节点的安装目录中config
配置文件夹下,如:/elasticsearch-7.10.2-node02/config/
。
4、修改配置
在主节点elasticsearch-7.10.2/config/elasticsearch.yml
中增加如下配置,启用x-pack安全组件,启用ssl加密通信,并且配置认证证书:
注:请将
xpack.security.transport.ssl.keystore.path
和xpack.security.transport.ssl.truststore.path
的路径修改为你对应Elasticsearch节点对应的证书文件路径。
配置修改完成后,重启主节点Elasticsearch服务,重启成功后访问:http://192.168.1.100:9200/ 服务,提示需要输入用户名和密码。这时我们需要设置Elasticsearch的密码。
5、 密码设置
通过设置访问密码,这是elastic用户和其他一些系统内置用户的密码,在主节点根目录下执行bin/elasticsearch-setup-passwords interactive
,按提示分别为每个Elasticsearch内置账户设置密码即可。
设置成功后,可以通过用户名密码访问es服务:http://192.168.118.51:900/
访问Es服务,输入配置的用户名和密码。返回类似如下结果即表示密码设置成功:
5、 配置kibana访问密码
你可以在kibana.yml配置文件里面配置es访问的用户密码明文(但生产环境中不建议这样做,非常不安全),安全的做法是通过keystore配置加密的用户名密码信息,具体如下:
- 进入kibana的安装程序的bin目录:
cd /kibana-7.10.2/bin
- 创建keystore:
./kibana-keystore create
- 设置kibana访问es的用户名:
./kibana-keystore add elasticsearch.username
- 设置kibana访问es的密码:
./kibana-keystore add elasticsearch.password
使用Docker Compose安装Elasticsearch(7.11.0)+Kibana的运行环境
docker-compose.yml
版权声明:本作品系原创,版权归码友网所有,如未经许可,禁止任何形式转载,违者必究。
发表评论
登录用户才能发表评论, 请 登 录 或者 注册