• Linux centos7.6 安装elasticsearch8.x (es8) 教程


    没事铁子们,发现文章质量不行直接取关,只有这一篇稿子开了关注后可读,满足一下小小的虚荣心(●ˇ∀ˇ●)。界面右侧有其他栏目:面试题等等 有兴趣的也可以看看

    系列-Linux centos7.6 安装elasticsearch8.x (es8) 教程

    Linux centos7.6 安装elasticsearch8.x (es8) 教程_言之有李LAX的博客-CSDN博客

    系列-linux安装elasticsearch-head (es可视化界面)

    linux安装elasticsearch-head (es可视化界面)_言之有李LAX的博客-CSDN博客

    目录

    安装elasticsearch

    启动

    常见错误

    1.内存不足

    2.can not run elasticsearch as root

    启动成功

    访问

    通过ip:9200 进行访问

    设置es启动脚本:

    重置密码

     es默认重置密码

    es自定义重置密码

    下载安装

    我的安装目录为 /usr/local

    cd /usr/local

    # 下载压缩包
    wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-8.4.3-linux-x86_64.tar.gz

    #解压
    tar -zxvf ./elasticsearch-8.4.3-linux-x86_64.tar.gz

    启动

    cd /usr/local/elasticsearch-8.4.3/bin
    ./elasticsearch

    常见错误

    1.内存不足

    error='Not enough space' (errno=12) 该异常表示内存不足以支撑es运行,一般如果是个人买的小服务器会容易出现该问题,直接修改es运行配置即可

    #首先查询服务的内存大小
    [root@VM-4-12-centos config]# cat /proc/meminfo | grep MemTotal
    MemTotal:        3782868 kB

    #然后进入es的配置中修改
    cd /usr/local/elasticsearch-8.4.3/config
    vim jvm.options

    #在配置文件中添加如下配置,保存退出即可(108m)
    -Xms108m
    -Xmx108m

    2.can not run elasticsearch as root

    无法以root身份运行elasticserch :can not run elasticsearch as root

    此时我们需要创建一个单独的用户给es使用

    [root@VM-4-12-centos ~]# groupadd esgroup
    [root@VM-4-12-centos ~]# useradd esroot -p 123456
    #赋权限
    [root@VM-4-12-centos ~]# chown -R esroot:esgroup /usr/local/elasticsearch-8.4.3
    #切换账户
    [root@VM-4-12-centos ~]# su esroot
    #再次启动
    [esroot@VM-4-12-centos elasticsearch-8.4.3]$ cd /usr/local/elasticsearch-8.4.3/bin/
    [esroot@VM-4-12-centos bin]$ ./elasticsearch

    启动成功

    启动后日志打印出了配置信息如下:

    解释一下:注意#备注的地方 第一步中已经返回了用户名和密码

    elastic / IAcYJctxO39fixwiV7V1  后面会教怎么修改自定义密码

    1. ✅ Elasticsearch security features have been automatically configured!
    2. ✅ Authentication is enabled and cluster connections are encrypted.
    3. #es用户信息密码,并且可以通过bin/elasticsearch-reset-password -u elastic重置
    4. ℹ️ Password for the elastic user (reset with `bin/elasticsearch-reset-password -u elastic`):
    5. IAcYJctxO39fixwiV7V1
    6. ℹ️ HTTP CA certificate SHA-256 fingerprint:
    7. 3f2e9d6e24f2b713cf84c8e70ab97acb929dec566444b6f62ce036c6d225b5ed
    8. #kibana初始化与es链接SSl的token 有效期30分钟 过期使用bin/elasticsearch-create-enrollment- token -s kibana 再次创建
    9. ℹ️ Configure Kibana to use this cluster:
    10. • Run Kibana and click the configuration link in the terminal when Kibana starts.
    11. • Copy the following enrollment token and paste it into Kibana in your browser (valid for the next 30 minutes):
    12. eyJ2ZXIiOiI4LjQuMyIsImFkciI6WyIxMC4wLjQuMTI6OTIwMCJdLCJmZ3IiOiIzZjJlOWQ2ZTI0ZjJiNzEzY2Y4NGM4ZTcwYWI5N2FjYjkyOWRlYzU2NjQ0NGI2ZjYyY2UwMzZjNmQyMjViNWVkIiwia2V5IjoiajZ3c3dZUUJGbjczWjE4NFBXSVI6Wk95MkplbU9TNnU3cDFaUXFJbHlSUSJ9
    13. ℹ️ Configure other nodes to join this cluster:
    14. • On this node:
    15. ⁃ Create an enrollment token with `bin/elasticsearch-create-enrollment-token -s node`.
    16. ⁃ Uncomment the transport.host setting at the end of config/elasticsearch.yml.
    17. ⁃ Restart Elasticsearch.
    18. • On other nodes:
    19. ⁃ Start Elasticsearch with `bin/elasticsearch --enrollment-token `, using the enrollment token that you generated.

    访问

    通过ip:9200 进行访问

    同时记得开启防火墙

    1. #将9200加入白名单
    2. firewall-cmd --zone=public --add-port=9200/tcp --permanent
    3. #刷新防火墙
    4. systemctl restart firewalld.service

     如果是阿里云、腾讯云等线上服务器,记得在服务防火墙中规则中添加9200

    此时通过浏览器直接访问会提示失败:

     原因是elasticsearch开启了认证和http加密

    解决:

    1.首先关闭认证进行测试

    #切换到root用户
    su root
    #进入config文件夹
    cd /usr/local/elasticsearch-8.4.3/config
    #修改elasticsearch.yml 配置信息
    vi elasticsearch.yml


    关闭xpack认证 
    xpack.security.enabled: true 改成 false
    与客户端http链接是否加密,先选择不加密
    xpack.security.http.ssl: true 改成 false
    保存退出


    #却换用户
    su esuser
    #进入elasticsearch  bin目录下面
    cd /usr/local/elasticsearch-8.4.3/bin
    #启动
    ./elasticsearch

     此时访问即可查询到内容:

    设置es启动脚本:

    ES_HOME记得修改成自己的路径

    su esuser :记得修改成自己的linux上面设置的es启动用户名

    #切换root用户
    su root
    #进入到目录
    cd /etc/init.d   
    #创建elasticsearch系统启动服务文件   
    vi elasticsearch

    #!/bin/bash
    #chkconfig: 345 63 37
    #description: elasticsearch
    #processname: elasticsearch-8.4.3
    # 这个目录是你Es所在文件夹的目录
    export ES_HOME=/usr/local/elasticsearch-8.4.3
    case $1 in
    start)
        su esuser<     cd $ES_HOME
        ./bin/elasticsearch -d -p pid
        exit
    !
        echo "elasticsearch is started"
        ;;
    stop)
        pid=`cat $ES_HOME/pid`
        kill -9 $pid
        echo "elasticsearch is stopped"
        ;;
    restart)   
        pid=`cat $ES_HOME/pid`
        kill -9 $pid
        echo "elasticsearch is stopped"
        sleep 1
        su esuser<     cd $ES_HOME
        ./bin/elasticsearch -d -p pid
        exit
    !
        echo "elasticsearch is started"
        ;;
    *)
        echo "start|stop|restart"
        ;;
    esac
    exit 0
     


    给elasticsearch 文件赋权限
    chmod 777 elasticsearch


    # 添加系统服务
    chkconfig --add elasticsearch   执行这一步
    # 删除系统服务
    chkconfig --del elasticsearch

    # 启动服务
    service elasticsearch start
    # 停止服务
    service elasticsearch stop
    # 重启服务
    service elasticsearch restart


    # 开启开机自动启动服务
    chkconfig elasticsearch on  执行这一步
    # 关闭开机自动启动服务
    chkconfig elasticsearch off

    刚才为了测试,关闭的xpac认证,此时还原

    #进入elaticsearch config目录下面
    cd /usr/local/elasticsearch-8.4.3/config
    #修改配置文件
    vi elasticsearch.yml

    xpack.security.enabled: 修改为 true  然后退出保存

    重新启动

    service elasticsearch restart

    重置密码

    此时再进行访问会提示需要输入密码:

     es默认重置密码

    刚才启动打印的地方已经提示用户名密码了,直接输入即可

    如果忘记可以进行重置密码

    #进入elaticsearch bin目录下面
    cd /usr/local/elasticsearch-8.4.3/bin
    #设置密码 elastic是默认用户名
    ./elasticsearch-reset-password -u elastic

    es自定义重置密码

    如果密码太长记不住 则可以使用下面的命令进行自定义密码

     #设置自己想设置的密码
    ./elasticsearch-reset-password -u elastic -i

     

     最后再通过ip:9200访问,输入用户名密码即可看到信息

  • 相关阅读:
    C语言实现五子棋游戏
    vue实现数字金额动态变化效果
    解决报错之org.aspectj.lang不存在
    Nginx 1.26.0 爆 HTTP/3 QUIC 漏洞,建议升级更新到 1.27.0
    IP详细地理位置查询:技术原理与应用实践
    Java native 关键字
    【高频】如何保证缓存和数据库一致
    柴油发电机负载测试的方法
    贪心算法求解 图的m着色问题
    Redis简介及Redis部署、原理和使用介绍
  • 原文地址:https://blog.csdn.net/qq_36178165/article/details/128092415