加入收藏 | 设为首页 | 会员中心 | 我要投稿 拼字网 - 核心网 (https://www.hexinwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Linux > 正文

线程池linux 2.3 修改Elasticsearch应用的所有者

发布时间:2022-10-25 14:32:06 所属栏目:Linux 来源:网络
导读: 使用的Elasticsearch的版本是7.6.2。Elasticsearch7.x要求Linux内核必须是4+版本以上。
在linux操作系统中线程池linux,查看内核版本的命令是: uname -a
课堂使用的Linux是CentOS8。内核使

使用的Elasticsearch的版本是7.6.2。Elasticsearch7.x要求Linux内核必须是4+版本以上。

在linux操作系统中线程池linux,查看内核版本的命令是: uname -a

课堂使用的Linux是CentOS8。内核使用的是4.18。

1 为Elasticsearch提供完善的系统配置

Elasticsearch在Linux中安装部署的时候,需要系统为其提供若干系统配置。如:应用可启动的线程数、应用可以在系统中划分的虚拟内存、应用可以最多创建多少文件等。

1.1 修改限制信息

vim /etc/security/limits.conf

是修改系统中允许应用最多创建多少文件等的限制权限。Linux默认来说,一般限制应用最多创建的文件是65535个。但是Elasticsearch至少需要65536的文件创建权限。修改后的内容为:

* soft nofile 65536

* hard nofile 65536

*代表任意用户,soft表示内存中虚拟文件(软文件),hard表示落地到磁盘的具体文件(硬文件), nofile表示权限,65536表示个数。

1.2 修改线程开启限制

在CentOS6.5版本中编辑下述的配置文件

vim /etc/security/limits.d/90-nproc.conf

在CentOS7+版本中编辑配置文件是:

vim /etc/security/limits.conf

是修改系统中允许用户启动的进程开启多少个线程。默认的Linux限制root用户开启的进程可以开启任意数量的线程,其他用户开启的进程可以开启1024个线程。必须修改限制数为4096+。因为Elasticsearch至少需要4096的线程池预备。Elasticsearch在5.x版本之后,强制要求在linux中不能使用root用户启动Elasticsearch进程。所以必须使用其他用户启动Elasticsearch进程才可以。

* soft nproc 4096

root soft nproc unlimited

*任何用户 nproc创建线程 数量4096

注意:Linux低版本内核为线程分配的内存是128K。4.x版本的内核分配的内存更大。如果虚拟机的内存是1G,最多只能开启3000+个线程数。至少为虚拟机分配1.5G以上的内存,保险起见建议2G以上。

1.3 修改系统控制权限

CentOS6.5中的配置文件为:

vim /etc/sysctl.conf

CentOS8中的配置文件为:

vim /etc/sysctl.d/99-sysctl.conf

系统控制文件是管理系统中的各种资源控制的配置文件。Elasticsearch需要开辟一个65536字节以上空间的虚拟内存。Linux默认不允许任何用户和应用直接开辟虚拟内存。

新增内容为:

vm.max_map_count=655360

使用命令: sysctl -p 让系统控制权限配置生效。

2 安装Elasticsearch

Elasticsearch是java开发的应用。在7.6.2版本中,在未来要求至少是JDK11,目前依然支持JDK8。

Elasticsearch的安装过程非常简单。解压立刻可以使用。

2.1 解压缩安装压缩包

# cd /usr/local/tmp

# tar zxf elasticsearch-7.6.2-linux-x86_64.tar.gz

2.2 移动Elasticsearch

# mv elasticsearch-7.6.2 ../es

2.3 修改Elasticsearch应用的所有者

因为Elasticsearch不允许root用户启动,而课堂案例中,Elasticsearch是root用户解压缩的。所以解压后的Elasticsearch应用属于root用户。所以我们需要将Elasticsearch应用的所有者修改为其他用户。纯Server 版本CentOS8默认只有root。

创建用户

bjsxt为用户组名称

# groupadd bjsxt

如果希望使用bjsxt登录系统可以使用passwd bjsxt 给用户名设置密码。

创建用户

第一个bjsxt为用户名 第二个bjsxt为用户组名

# useradd -r -g bjsxt bjsxt

授权,让bjsxt可以访问es目录(注意剪切解压目录的名称)

# chown -R bjsxt.bjsxt /usr/local/es

可以通过:groups 用户名 查看用户所在用户组

2.4 切换用户

root向其他用户切换时不是需要写密码,但是其他用户向root切换需要有密码。

# su bjsxt

2.5 修改配置

修改config/Elasticsearch的配置文件,设置可访问的客户端。注意:如果不小心使用root修改此文件,会在config下生成elasticsearch.keystore文件,通过ll查看该文件是否是root操作权限,如果是一定要删除,否则启动时会报此文件无权限。

vim config/elasticsearch.yml

node.name: node-1

network.host: 0.0.0.0

(编辑:拼字网 - 核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!