安装 elasticsearch 及图像化界面 elasticsearch-head

ES 数据库安装(Linux版本)

1. 安装 JDK

  1. YUM 安装 jdk 源

    • yum install -y epel-release
  2. 查看可用版本

    • yum search jdk
  3. 选择想要的版本

    • yum install -y java-1.8.0-openjdk.x86_64
    • 注意,任何带后缀的,都是一些插件包,不是JDK
    • java-1.8.0-openjdk-devel.x86_64
    • java-1.8.0-openjdk-src.x86_64都是不对的
  4. 结果测试

[root@vultrguest ~]# java -version
openjdk version "1.8.0_242"
OpenJDK Runtime Environment (build 1.8.0_242-b08)
OpenJDK 64-Bit Server VM (build 25.242-b08, mixed mode)

2. 安装 Elasticsearch

  1. 找到官方下载链接

    • https://www.elastic.co/downloads/elasticsearch
    • 选择linux版本,右键选择复制链接
  2. 使用wget 下载

    • 下载之前,确认你自己的目录
    • 输入 pwd, 查看当前目录
    • wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.6.1-linux-x86_64.tar.gz
  3. 解压文件

    • tar -xvf elasticsearch-7.6.1-linux-x86_64.tar.gz

3. 下载Elasticsearch-head

  1. 打开官网 https://github.com/mobz/elasticsearch-head

  2. git clone 或者 直接下载 zip 压缩包

    • git clone git://github.com/mobz/elasticsearch-head.git
    • wget https://github.com/mobz/elasticsearch-head/archive/master.zip
  3. 解压后进入目录

    • cd elasticsearch-head
  4. 下载 nodejs

    • yum install -y nodejs
    • 检查是否安装成功 node -v
    • 国内请下载 npm install -g cnpm
    • 以下命令请全部使用cnpm 进行代替,不然慢的一批
  5. 下载 grunt 一个 nodejs 服务端工具

    • npm install -g grunt-cli
  6. 下载 nodejs 的依赖包

    • 请确保在elasticsearch-head 目录下
    • npm install

4. 修改配置文件

  1. 修改内核参数, max file descriptors 和 max number of threads

    • vi /etc/security/limits.conf
    • 添加以下4 行
    *               soft    nofile          65536
    *               hard    nofile          65536
    *               soft    nproc           4096
    *               hard    nproc           4096
    
  2. 修改虚拟内存参数

sysctl -w vm.max_map_count=270000
  1. 创建一个新用户并授予权限
  • 由于 ES 直接使用root 用户执行会报错,需要创建一个专门的用户进行管理
[test@vultrguest root]$useradd test
[test@vultrguest root]$echo "123456" | passwd --stdin test
# 配置 sudo权限,编辑/etc/sudoers
[test@vultrguest root]$visudo 

找到这一行
root    ALL=(ALL) ALL 

然后再下边再加一条配置: 

test ALL=(ALL) ALL

  1. 找到装的目录,修改所属用户,我的目录是 /data/es

    • chowd -R test /data
    • -R 的意思是data目录下面的所有文件修改
  2. 修改 ES 配置文件

[test@vultrguest elasticsearch-7.6.1]$ ll
total 568
drwxrwxrwx.  2 test root   4096 Feb 29 00:18 bin
drwxrwxrwx.  2 test root   4096 Mar 28 07:32 config
drwxrwxr-x.  3 test test   4096 Mar 28 06:31 data
drwxrwxrwx.  9 test root   4096 Feb 29 00:18 jdk
drwxrwxrwx.  3 test root   4096 Feb 29 00:18 lib
-rwxrwxrwx.  1 test root  13675 Feb 29 00:13 LICENSE.txt
drwxrwxrwx.  2 test root   4096 Mar 28 07:32 logs
drwxrwxrwx. 38 test root   4096 Feb 29 00:18 modules
-rwxrwxrwx.  1 test root 523209 Feb 29 00:18 NOTICE.txt
drwxrwxrwx.  2 test root   4096 Feb 29 00:18 plugins
-rwxrwxrwx.  1 test root   8164 Feb 29 00:13 README.asciidoc
- `vi config/elasticsearch.yml`

```
# 修改以下参数

不修改,远程无法访问
network.host: 0.0.0.0
此处填上你的本机ip
discovery.seed_hosts: ["ip"]
# 添加以下参数,用于跨域

http.cors.enabled: true
http.cors.allow-origin: '*'
```
  1. 修改 elasticsearch-head 配置文件,修改IP进行远程访问

    • cd elasticsearch-head-master/
    • vi Gruntfile.js
                    connect: {
                        server: {
                                options: {
    									# 添加这一行,能够进行远程访问
                                        hostname: '0.0.0.0',
                                        port: 9100,
                                        base: '.',
                                        keepalive: true
                                }
                        }
    

5. 启动服务

  1. 启动ES

    • bin/elasticsearch
  2. 启动 elasticsearch-head

    • grunt server
    • 注意 elasticsearch-head即使添加了 hostname,日志中仍旧显示 localhost
  3. ES 默认端口为 9200 和 9300

  4. es-head 默认端口为 9100

  5. 打开页面,修改 localhost 为 1.1.1.1, 并点击连接,如果没有反应,请在config/elasticsearch.yml 添加上参数

    http.cors.enabled: true
    http.cors.allow-origin: '*'
    
  6. 如下图
    ##

  7. 直接访问 ip:9200 如下图
    在这里插入图片描述

  8. 如果无法访问,先查看服务是否报错,且防火墙是否开启

    • systemctl status firewalld
    • systemctl stop firewalld

猜你喜欢

转载自blog.csdn.net/weixin_42290927/article/details/105163217