欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

linux 构建 elasticsearch

最编程 2024-10-16 13:16:14
...
0、安装前检查Java

确保java已安装,且在OpenJDK 8以上

java -version 
1、安装Elasticsearch
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.15.1-linux-x86_64.tar.gz
2、复制Elasticsearch 到/etc目录
cp -r /home/elasticsearch-7.15.1 /etc/elasticsearch
3、新增es执行用户
useradd elasticsearch
chown -R elasticsearch:elasticsearch /etc/elasticsearch
4、添加es命令,并重启服务
sudo vi /etc/systemd/system/elasticsearch.service

# 新增以下内容
#  注意区分es安装目录和java路径
[Unit]
Description=Elasticsearch
Documentation=https://www.elastic.co
Wants=network-online.target
After=network-online.target

[Service]
Environment=ES_JAVA_HOME=/usr/lib/jvm/java-11-openjdk-11.0.23.0.9-2.el7_9.x86_64
Environment=ES_PATH_CONF=/etc/elasticsearch
WorkingDirectory=/etc/elasticsearch
User=elasticsearch
Group=elasticsearch
ExecStart=/etc/elasticsearch/bin/elasticsearch
ExecStop=/etc/elasticsearch/bin/elasticsearch -p $PIDFILE -d
LimitNOFILE=65536
StandardOutput=journal
StandardError=journal
# Install Elasticsearch as a service
[Install]
WantedBy=multi-user.target


# 保存后,记得重新加载服务
 systemctl daemon-reload
5、启动es
systemctl restart elasticsearch
#查看运行状态
systemctl status elasticsearch
6、结果
#搭建完成结果如下
[root@xxx conf.d]# curl 127.0.0.1:9200
{
  "name" : "bogon",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "6Hoo7YKwRWe7rbFiflfTMQ",
  "version" : {
    "number" : "7.15.1",
    "build_flavor" : "default",
    "build_type" : "tar",
    "build_hash" : "83c34f456ae29d60e94d886e455e6a3409bba9ed",
    "build_date" : "2021-10-07T21:56:19.031608185Z",
    "build_snapshot" : false,
    "lucene_version" : "8.9.0",
    "minimum_wire_compatibility_version" : "6.8.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}

如需配置域名,nginx示例如下:

# nginx.conf
server {
    listen 80;
    server_name local.es.cn;

    location / {
        proxy_pass http://127.0.0.1:9200;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

7、常见问题

异常时,可以借助journalctl -u elasticsearch.service 排查处理问题,常见问题:
1、/etc/elasticsearch/config/elasticsearch.yml的
network.host :192.168.x.x
network.port :9200
cluster.name:my-cluster
node.name:my-node
2、java的路径错误,不需要具体到 xxxx/bin/java
3、缺少/etc/elasticsearch/jvm.options 文件:
jvm.options初始化内容:
-Xms1g
-Xmx1g