目录
安装环境
Linux(centos)
下载地址
安装步骤
切换到ES安装目录,如 /www;
在www目录下,创建elasticsearch文件夹,并进入文件夹内;
mkdir elasticsearch cd elasticsearch
获取elasticearch安装包;可以使用在线下载命令,下载安装包。
wget也可以将之前已经下载好的安装包上传到当前目录下。
解压elasticsearch安装包;
tar -zvxfelasticsearch-8.12.0.tar.gz进入elasticsearch-8.17.0/config文件夹内,修改配置文件;
cd elasticsearch-8.12.0/config定位到#network.host: 192.168.0.1位置,在下面增加一行:network.host: 0.0.0.0保存并退出(先按esc键,输入:wq!,按回车键即可)配置JVM ;设置 es 启动内存、根据系统配置需要来配置。
配置分词器;添加ik分词器,分词器下载地址
把elasticsearch-analysis-ik-x.x.x.zip在解压的文件夹elasticsearch-analysis-ik-x.x.x复制到 elasticsearch安装目录下的plugins中analysis-ik 分词器配置文件 IKAnalyzer.cfg.xml
IK Analyzer 扩展配置 提高系统资源限制增加最大文件描述符数量:编辑 /etc/security/limits.conf 文件,添加或修改以下行:
* soft nofile 65535* hard nofile 65535elasticsearch soft nofile 65535elasticsearch hard nofile 65535增加虚拟内存区域限制:编辑 /etc/sysctl.conf 文件,添加或修改以下行:
vim /etc/sysctl.conf#加入以下内容vm.max_map_count = 262144保存后执行sysctl -p命令刷新生效
注册服务,创建配置文件;
1).service文件
vim /usr/lib/systemd/system/elasticsearch.service[Unit]Description=elasticsearchAfter=network.target[Service]Type=forkingUser=elasticsearchGroup=elasticsearchExecStart=/usr/local/elasticsearch/elasticsearch-8.12.0/bin/elasticsearch -dPrivateTmp=true# 指定此进程可以打开的最大文件数LimitNOFILE=65535# 指定此进程可以打开的最大进程数LimitNPROC=65535# 最大虚拟内存LimitAS=infinity# 最大文件大小LimitFSIZE=infinity# 超时设置 0-永不超时TimeoutStopSec=0# SIGTERM是停止java进程的信号KillSignal=SIGTERM# 信号只发送给给JVMKillMode=process# java进程不会被杀掉SendSIGKILL=no# 正常退出状态SuccessExitStatus=143[Install]WantedBy=multi-user.target启动脚本在 /etc/init.d 目录下创建一个名为 elasticsearch 的脚本
#!/bin/bash# Elasticsearch environment variablesexport ES_HOME=/www/elasticsearch/elasticsearch-8.12.0# Start the servicecase "$1" instart)echo "Starting Elasticsearch..."su -c "/usr/share/elasticsearch/bin/elasticsearch" elasticsearch;;stop)echo "Stopping Elasticsearch..."pkill -f 'elasticsearch';;restart|force-reload)$0 stopsleep 2$0 start;;*)echo "Usage: $0 {start|stop|restart}" >&2exit 3;;esacexit 0设置脚本可执行
sudo chmod +x /etc/init.d/elasticsearchsudo chown -R elasticsearch:elasticsearch /www/elasticsearch/elasticsearch-8.12.010.非 Root 用户运行 Elasticsearch由于安全原因,Elasticsearch 不允许以 root 用户运行。需要创建一个专用的用户来运行 Elasticsearch。创建用户和组:
sudo groupadd elasticsearchsudo useradd -g elasticsearch elasticsearch启动并启用服务;服务相关命令
# 启动服务systemctl start elasticsearch查看服务状态:systemctl status elasticsearch# 重启服务systemctl restart elasticsearch# 停止服务systemctl stop elasticsearch# 禁止开机启动systemctl disable elasticsearch# 启用开机启动systemctl enable elasticsearch打开 9200,访问 ip:9200 查看是否启动成功;设置密码启动elasticsearch服务
systemctl start elasticsearch切换到 elasticsearch 安装文件目录 bin 下
cd /xxx/elasticsearch/elasticsearch-8.12.0/bin使用 elasticsearch-certutil 命令生成证书
./elasticsearch-certutil ca -out config/certs/elastic-Certificates.p12 -pass保证 elasticsearch 正常运行时才可以运行此命令,运行后显示Enter password for CA Private key :不要输入直接按回车就行,按完回车后会出来Directory /www/elasticsearch/elasticsearch-8.12.0/config/certs does not exist. Do you want to create it? [Y/n]直接输入y,然后回车
修改 elasticsearch.yml 配置加入下面内容
# 开启xpackxpack.security.enabled: truexpack.license.self_generated.type: basicxpack.security.transport.ssl.enabled: true# 证书配置xpack.security.transport.ssl.verification_mode: certificatexpack.security.transport.ssl.keystore.path: certs/elastic-certificates.p12xpack.security.transport.ssl.truststore.path: certs/elastic-certificates.p12重启 elasticsearch
systemctl restart elasticsearch设置用户密码
# 手动配置每个用户密码模式(需要一个一个的输入)./elasticsearch-setup-passwords interactive#自动配置每个用户密码(随机生成并返回字符串密码,需要保存好)./elasticsearch-setup-passwords auto部分内置账号的角色权限解释如下:elastic 账号:拥有 superuser 角色,是内置的超级用户。kibana 账号:拥有 kibana_system 角色,用户 kibana 用来连接 elasticsearch 并与之通信。Kibana 服务器以该用户身份提交请求以访问集群监视 API 和 .kibana 索引。不能访问 index。logstash_system 账号:拥有 logstash_system 角色。用户 Logstash 在 Elasticsearch 中存储监控信息时使用
修改密码以 elastic 账号为例,注意需要在 elasticsearch 服务已启动的情况下进行
curl -H 'Content-Type: application/json' -u elastic:123456 -XPOST 'http://localhost:9200/_xpack/security/user/elastic/_password' -d '{ "password" : "1234567" }'以上就是Linux 系统 ElasticSearch的安装和启动的详细内容,更多相关资料请阅读主机测评网其它文章!















发表评论