• ES7.3开启xpack认证插件


    关闭服务

    在进行下面实验前,请先关闭所有ElasticSearch、kibana、filebeat进程


    elasticsearch-修改elasticsearch.yml配置

    按以上表格对应的实例新增conf目录下elasticsearch.yml配置参数

    1. # 在所有实例上加上以下配置

    2. # 开启本地用户

    3. xpack.security.enabled: true

    4. # xpack的版本

    5. xpack.license.self_generated.type: basic


    elasticsearch-开启服务

    开启所有ES服务

    1. sudo -u elasticsearch ./bin/elasticsearch


    elasticsearch-建立本地内置用户

    本地内置elastic、apmsystem、kibana、logstashsystem、beatssystem、remotemonitoring_user用户

    1. # 在其中一台master节点操作

    2. # interactive 自定密码 auto自动生密码

    3. sudo -u elasticsearch ./bin/elasticsearch-setup-passwords interactive

    4. # 输入elastic密码

    5. # 输入apm_system密码

    6. # 输入kibana密码

    7. # 输入logstash_system密码

    8. # 输入beats_system密码

    9. # 输入remote_monitoring_user密码

    测试内部用户

    通过base64将elastic用户进行加密,格式为“elastic:elastic的密码“

    1. # 例如以下格式

    2. curl --user  elastic:elastic  "http://192.168.1.31:9200/_cat/nodes?v"

    如果不通过Basic访问或base64加密错误会报以下错误


    kibana-创建私钥库

    在192.168.1.21创建私钥库

    1. cd /opt/kibana/

    2. # 创建密钥库

    3. sudo -u kibana ./bin/kibana-keystore create

    4. # 连接ES用户名,这里输入kibana

    5. sudo -u kibana ./bin/kibana-keystore add elasticsearch.username

    6. # 连接ES密码,这里输入刚刚设置kibana的密码

    7. sudo -u kibana ./bin/kibana-keystore add elasticsearch.password

    在192.168.1.21确认私钥库

    1. sudo -u kibana ./bin/kibana-keystore list

    启动服务

    1. sudo -u kibana /opt/kibana/bin/kibana -c /opt/kibana/config/kibana.yml


    kibana-WEB界面确认用户

    登入kibana

    在浏览器输入192.168.1.21:5601,用户名:elastic 密码:之前输入elastic的密码


    filebeat-在WEB界面创建角色及用户

    创建自定义的filebeat角色

    关于角色权限的说明请自行查阅附录链接

     

    创建自定义的filebeat用户


    filebeat-服务器上创建密钥库

    在192.168.1.11创建filebeat密钥库

    1. cd /opt/filebeat/

    2. #创建密钥库

    3. ./filebeat keystore create

    4. #创建test-filebeat用户私钥

    5. ./filebeat keystore add test-filebeat

    确认filebeat密钥库

    1. ./filebeat keystore list


    filebeat-配置filebeat.yml

    配置filebeat.yml

    1. # 文件输入

    2. filebeat.inputs:

    3. # 文件输入类型

    4. - type: log

    5. # 开启加载

    6. enabled: true

    7. # 文件位置

    8. paths:

    9. - /var/log/nginx/access.log

    10. # 自定义参数

    11. fields:

    12. type: nginx_access # 类型是nginx_access,和上面fields.type是一致的

    13. # 输出至elasticsearch

    14. output.elasticsearch:

    15. # 连接ES集群的用户名

    16. username: test-filebeat

    17. # 连接ES集群的密码

    18. password: "${test-filebeat密码}"

    19. # elasticsearch集群

    20. hosts: ["http://192.168.1.31:9200",

    21. "http://192.168.1.32:9200",

    22. "http://192.168.1.33:9200"]

    23. # 索引配置

    24. indices:

    25. # 索引名

    26. - index: "nginx_access_%{+yyy.MM}"

    27. # 当类型是nginx_access时使用此索引

    28. when.equals:

    29. fields.type: "nginx_access"

    30. # 关闭自带模板

    31. setup.template.enabled: false

    32. # 开启日志记录

    33. logging.to_files: true

    34. # 日志等级

    35. logging.level: info

    36. # 日志文件

    37. logging.files:

    38. # 日志位置

    39. path: /opt/logs/filebeat/

    40. # 日志名字

    41. name: filebeat

    42. # 日志轮转期限,必须要2~1024

    43. keepfiles: 7

    44. # 日志轮转权限

    45. permissions: 0600

    启动filebeat

    1. /opt/filebeat/filebeat -e -c /opt/filebeat/filebeat.yml -d "publish"


    测试

    写入一条数据

    1. curl -I "http://192.168.1.11"

    在kibana中查看

    螃蟹在剥我的壳,笔记本在写我,漫天的我落在枫叶上雪花上,而你在想我。 --章怀柔
  • 相关阅读:
    3月工作问题总结
    【读书笔记】linux编程艺术
    项目管理工具 Trac入门
    [node.js]开放平台接口调用测试
    mysql 高并发更新计数问题
    memcache 问题 socket or its streams already null in trueClose call
    hadoop学习笔记
    node.js学习与应用
    mc参数备忘&javajson备忘
    WCF技术剖析_学习笔记之三
  • 原文地址:https://www.cnblogs.com/lovezhr/p/15038798.html
Copyright © 2020-2023  润新知