• 7Docker搭建es和kibana


    一、安装es

    1.拉取镜像

    sudo docker pull elasticsearch:7.12.0

     elasticsearch:7.12.0:我安装的版本是7.12.0,可以根据实际的情况安装

    创建docker容器挂在的目录:

    1. sudo mkdir -p /opt/elasticsearch/config
    2. sudo mkdir -p /opt/elasticsearch/data
    3. sudo mkdir -p /opt/elasticsearch/plugins

    配置文件:

    echo "http.host: 0.0.0.0" >> /opt/elasticsearch/config/elasticsearch.yml

    创建容器:

    1. sudo docker run --name elasticsearch -p 9200:9200 -p 9300:9300 \
    2. -e "discovery.type=single-node" \
    3. -e ES_JAVA_OPTS="-Xms84m -Xmx512m" \
    4. -v /rda/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
    5. -v /rda/elasticsearch/data:/usr/share/elasticsearch/data \
    6. -v /rda/elasticsearch/plugins:/usr/share/elasticsearch/plugins \
    7. -d elasticsearch:7.12.0

    说明:

    • -p 端口映射
    • -e discovery.type=single-node 单点模式启动
    • -e ES_JAVA_OPTS=“-Xms84m -Xmx512m”:设置启动占用的内存范围
    • -v 目录挂载
    • -d 后台运行

    查看启动详情

    docker ps  查看是否启动
    docker logs elasticsearch  启动日志查询
    docker restart elasticsearch   重启
    docker exec -it elasticsearch bash 进入

    可能会出现的安装异常

    异常一:文件夹未设置所有用户读写执行权限,处理:sudo chmod -R 777 /opt/elasticsearch/

    1. ncaught exception in thread [main]",
    2. "stacktrace": ["org.elasticsearch.bootstrap.StartupException: ElasticsearchException[failed to bind service]; nested: AccessDeniedException[/usr/share/elasticsearch/data/nodes];",
    3. "at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:163) ~[elasticsearch-7.12.0.jar:7.12.0]",
    4. "at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:150) ~[elasticsearch-7.12.0.jar:7.12.0]",
    5. "at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:75) ~[elasticsearch-7.12.0.jar:7.12.0]",
    6. "at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:116) ~[elasticsearch-cli-7.12.0.jar:7.12.0]",
    7. "at org.elasticsearch.cli.Command.main(Command.java:79) ~[elasticsearch-cli-7.12.0.jar:7.12.0]",
    8. "at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:115) ~[elasticsearch-7.12.0.jar:7.12.0]",
    9. "at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:81) ~[elasticsearch-7.12.0.jar:7.12.0]",
    10. "Caused by: org.elasticsearch.ElasticsearchException: failed to bind service",
    11. "at org.elasticsearch.node.Node.(Node.java:744) ~[elasticsearch-7.12.0.jar:7.12.0]",
    12. "at org.elasticsearch.node.Node.(Node.java:278) ~[elasticsearch-7.12.0.jar:7.12.0]",
    13. "at org.elasticsearch.bootstrap.Bootstrap$5.(Bootstrap.java:217) ~[elasticsearch-7.12.0.jar:7.12.0]",
    14. "at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:217) ~[elasticsearch-7.12.0.jar:7.12.0]",
    15. "at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:397) ~[elasticsearch-7.12.0.jar:7.12.0]",
    16. "at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:159) ~[elasticsearch-7.12.0.jar:7.12.0]",
    17. "... 6 more",
    18. "Caused by: java.nio.file.AccessDeniedException: /usr/share/elasticsearch/data/nodes",
    19. "at sun.nio.fs.UnixException.translateToIOException(UnixException.java:90) ~[?:?]",
    20. "at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:106) ~[?:?]",
    21. "at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:111) ~[?:?]",
    22. "at sun.nio.fs.UnixFileSystemProvider.createDirectory(UnixFileSystemProvider.java:388) ~[?:?]",
    23. "at java.nio.file.Files.createDirectory(Files.java:694) ~[?:?]",
    24. "at java.nio.file.Files.createAndCheckIsDirectory(Files.java:801) ~[?:?]",
    25. "at java.nio.file.Files.createDirectories(Files.java:787) ~[?:?]",
    26. "at org.elasticsearch.env.NodeEnvironment.lambda$new$0(NodeEnvironment.java:265) ~[elasticsearch-7.12.0.jar:7.12.0]",
    27. "at org.elasticsearch.env.NodeEnvironment$NodeLock.(NodeEnvironment.java:202) ~[elasticsearch-7.12.0.jar:7.12.0]",
    28. "at org.elasticsearch.env.NodeEnvironment.(NodeEnvironment.java:262) ~[elasticsearch-7.12.0.jar:7.12.0]",
    29. "at org.elasticsearch.node.Node.(Node.java:352) ~[elasticsearch-7.12.0.jar:7.12.0]",
    30. "at org.elasticsearch.node.Node.(Node.java:278) ~[elasticsearch-7.12.0.jar:7.12.0]",
    31. "at org.elasticsearch.bootstrap.Bootstrap$5.(Bootstrap.java:217) ~[elasticsearch-7.12.0.jar:7.12.0]",
    32. "at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:217) ~[elasticsearch-7.12.0.jar:7.12.0]",
    33. "at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:397) ~[elasticsearch-7.12.0.jar:7.12.0]",
    34. "at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:159) ~[elasticsearch-7.12.0.jar:7.12.0]",
    35. "... 6 more"] }
    36. uncaught exception in thread [main]
    37. ElasticsearchException[failed to bind service]; nested: AccessDeniedException[/usr/share/elasticsearch/data/nodes];
    38. Likely root cause: java.nio.file.AccessDeniedException: /usr/share/elasticsearch/data/nodes
    39. at java.base/sun.nio.fs.UnixException.translateToIOException(UnixException.java:90)
    40. at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:106)
    41. at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:111)
    42. at java.base/sun.nio.fs.UnixFileSystemProvider.createDirectory(UnixFileSystemProvider.java:388)
    43. at java.base/java.nio.file.Files.createDirectory(Files.java:694)
    44. at java.base/java.nio.file.Files.createAndCheckIsDirectory(Files.java:801)
    45. at java.base/java.nio.file.Files.createDirectories(Files.java:787)
    46. at org.elasticsearch.env.NodeEnvironment.lambda$new$0(NodeEnvironment.java:265)
    47. at org.elasticsearch.env.NodeEnvironment$NodeLock.(NodeEnvironment.java:202)
    48. at org.elasticsearch.env.NodeEnvironment.(NodeEnvironment.java:262)
    49. at org.elasticsearch.node.Node.(Node.java:352)
    50. at org.elasticsearch.node.Node.(Node.java:278)
    51. at org.elasticsearch.bootstrap.Bootstrap$5.(Bootstrap.java:217)
    52. at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:217)
    53. at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:397)
    54. at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:159)
    55. at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:150)
    56. at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:75)
    57. at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:116)
    58. at org.elasticsearch.cli.Command.main(Command.java:79)
    59. at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:115)
    60. at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:81)
    61. For complete error details, refer to the log at /usr/share/elasticsearch/logs/elasticsearch.log

    异常二:echo “http.host:0.0.0.0” ==》echo “http.host: 0.0.0.0”;“:”后面有个空格!

    异常三:因虚拟内存太少导致,处理:sudo sysctl -w vm.max_map_count=262144

    二、安装kibana

    拉取镜像

    docker pull kibana

    1. 1、mkdir -p /mydata/elasticsearch/kibana/config/
    2. 2、vim /mydata/elasticsearch/kibana/config/kibana.yml
    3. 配置以下内容:
    4. server.name: kibana
    5. server.host: "0"
    6. elasticsearch.hosts: [ "http://192.168.170.132:9200" ]
    7. xpack.monitoring.ui.container.elasticsearch.enabled: true
    8. (192.168.170.132为自己的虚拟机ip地址,根据自己的地址进行修改。)
    9. 3、docker run -d --name=kibana --restart=always -p 5601:5601 -v /mydata/elasticsearch/kibana/config/kibana.yml:/usr/share/kibana/config/kibana.yml kibana:7.4.2

  • 相关阅读:
    MyBatisPlus中使用Mybatis方式操作数据库。
    C++ 学习(13)类和对象 - 继承、继承方式、对象模型、构造与析构顺序、继承同名成员、多继承、菱形继承
    SR和GBN的区别
    Shopee、Lazada卖家不得不看的提升销量技巧,自养号测评打造权重
    LeetCode——贪心篇(一)
    服从正态分布的正弦函数、余弦函数期望
    “元宇宙”虚拟世界的营销法则 “品牌元宇宙空间”算什么?
    vim中粘贴代码片段出现每行新增缩进的解决方法-set paste
    《痞子衡嵌入式半月刊》 第 83 期
    TMS320F28335启动过程
  • 原文地址:https://blog.csdn.net/m0_45209551/article/details/134685546