您当前的位置: 首页 >  linux

java持续实践

暂无认证

  • 4浏览

    0关注

    746博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

es 7.x Linux 单节点部署

java持续实践 发布时间:2022-01-22 14:49:33 ,浏览量:4

文章目录
      • es的Linux安装包的上传
      • 创建es用户
      • 修改配置
      • es的启动
首先安装一个Linux的虚拟机 https://javaweixin6.blog.csdn.net/article/details/122572858

es的Linux安装包的上传

到es的官网下载es的Linux安装包 elasticsearch-7.8.0-linux-x86_64.tar.gz 将此上传到Linux服务器上

在Linux的opt目录下新建目录 mkdir -p module/software 使用electerm的sftp功能将文件拷贝到/opt/module/software 目录下 可以看到上传的包 在这里插入图片描述 把es解压缩到上一级目录 cd /opt/module/software/ tar -zxvf elasticsearch-7.8.0-linux-x86_64.tar.gz -C ../ 简化名称为es mv elasticsearch-7.8.0/ es 在这里插入图片描述

创建es用户

由于安全原因, Linux下的es不能root用户直接启动, 得创建用户 因此, 创建一个用户名称为es, 第二个命令为给es用户设置密码. 重复设置两次密码即可.

[root@localhost module]# useradd es
[root@localhost module]# passwd es
Changing password for user es.
New password: 
BAD PASSWORD: The password is a palindrome
Retype new password: 
passwd: all authentication tokens updated successfully.

删除es用户的命令 : userdel -r es 给es用户设置权限

[root@localhost module]# chown -R es:es /opt/module/es
[root@localhost module]# 
修改配置

在es的config目录下的elasticsearch.yml文件末尾, 添加如下的信息. 设置es节点的名称, 端口等信息.

cluster.name: elasticsearch
node.name: node-1
network.host: 0.0.0.0
http.port: 9200
cluster.initial_master_nodes: ["node-1"]

修改Linux系统文件数的限制, 由于es文件创建较多, 因此需要设置Linux文件数量限制. 修改 vim /etc/security/limits.conf

# 在文件末尾中增加下面内容
# 每个进程可以打开的文件数的限制
es soft nofile 65536
es hard nofile 65536

修改 vim /etc/security/limits.d/20-nproc.conf

# 在文件末尾中增加下面内容
# 每个进程可以打开的文件数的限制
es soft nofile 65536
es hard nofile 65536
# 操作系统级别对每个用户创建的进程数的限制
* hard nproc 4096
# 注:* 带表 Linux 所有用户名称

修改vim /etc/sysctl.conf

# 在文件中增加下面内容
# 一个进程可以拥有的 VMA(虚拟内存区域)的数量,默认值为 65536
vm.max_map_count=655360

重新加载配置 sysctl -p

es的启动

在root用户下启动es. 进入到es的目录 , 执行bin/elasticsearch 进行es的启动. 会提示报错, 不能root用户启动es 在这里插入图片描述 切换到es用户下, 运行es.

[root@localhost es]# su es
[es@localhost es]$ pwd
/opt/module/es
[es@localhost es]$ bin/elasticsearch

此时还是会报错

Exception in thread "main" org.elasticsearch.bootstrap.BootstrapException: java.nio.file.AccessDeniedException: /opt/module/es/config/elasticsearch.keystore
Likely root cause: java.nio.file.AccessDeniedException: /opt/module/es/config/elasticsearch.keystore
        at java.base/sun.nio.fs.UnixException.translateToIOException(UnixException.java:90)
        at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:111)
        at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:116)
        at java.base/sun.nio.fs.UnixFileSystemProvider.newByteChannel(UnixFileSystemProvider.java:219)
        at java.base/java.nio.file.Files.newByteChannel(Files.java:375)
        at java.base/java.nio.file.Files.newByteChannel(Files.java:426)
        at org.apache.lucene.store.SimpleFSDirectory.openInput(SimpleFSDirectory.java:77)
        at org.elasticsearch.common.settings.KeyStoreWrapper.load(KeyStoreWrapper.java:220)
        at org.elasticsearch.bootstrap.Bootstrap.loadSecureSettings(Bootstrap.java:240)
        at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:349)
        at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:170)

原因是因为es启动的时候, 会创建一些文件, 此时es用户还没有权限. 在root用户下执行 chown -R es:es /opt/module/es 再回到es用户下, 执行启动命令

[es@localhost es]$ su root
Password: 
[root@localhost es]# chown -R es:es /opt/module/es
[root@localhost es]# su es
[es@localhost es]$ bin/elasticsearch

再次执行, 可以看到执行成功. (由于分配的虚拟机内存只有1g, 第一次启动还是失败, 第二次成功了. ) 在这里插入图片描述 在浏览器中, 输入虚拟机的ip加上端口9200. 可以看到启动成功. 在这里插入图片描述 查看一下内存 可以看到内存基本满了 在这里插入图片描述

关注
打赏
1658054974
查看更多评论
立即登录/注册

微信扫码登录

0.2447s