我的elasticsearch8单机搭建记录

官网

Install Elasticsearch from archive on Linux or MacOS | Elasticsearch Guide [8.3] | Elastichttps://www.elastic.co/guide/en/elasticsearch/reference/current/targz.html

下载

我的这些文件下载在 /usr/java/es8.3/elasticsearch-8.3.2

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-8.3.2-linux-x86_64.tar.gz

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-8.3.2-linux-x86_64.tar.gz.sha512

shasum -a 512 -c elasticsearch-8.3.2-linux-x86_64.tar.gz.sha512 

tar -xzf elasticsearch-8.3.2-linux-x86_64.tar.gz

cd elasticsearch-8.3.2/

添加用户

因为不能用root启动,所以才添加用户,你可以自己用root试试启动

useradd pengxiang

passwd pengxiang

#  接着设置密码

用root用户授权pengxiang文件权限

chown pengxiang /usr/java/es8.3/elasticsearch-8.3.2 -R

#    /usr/java/es8.3/elasticsearch-8.3.2为es的安装目录

启动

切换用户并进入到bin目录

su pengxiang

cd bin

临时启动es

./elasticsearch

可以看到

访问https://IP:9200 ,默认9200,输入用户名及密码,

后台启动可以使用这个命令,我也是参考jar包启动的 

nohup /usr/java/es8.3/elasticsearch-8.3.2/bin/elasticsearch >elasticsearch.out 2>&1 &

这里是我的elasticsearch.yml文件,其他配置文件没有修改


cluster.name: es83

node.name: node-1

path.data: /usr/java/es8.3/elasticsearch-8.3.2/data

path.logs: /usr/java/es8.3/elasticsearch-8.3.2/datalog

#http.port: 9200


xpack.security.enabled: false

xpack.security.enrollment.enabled: true

xpack.security.http.ssl:
  enabled: false
  keystore.path: certs/http.p12

xpack.security.transport.ssl:
  enabled: false
  verification_mode: certificate
  keystore.path: certs/transport.p12
  truststore.path: certs/transport.p12

cluster.initial_master_nodes: ["node-1"]


http.host: 0.0.0.0

ingest.geoip.downloader.enabled: false

#允许跨域
http.cors.enabled: true
http.cors.allow-origin: "*"
http.cors.allow-headers: "*"
#  http.cors.allow-headers: Authorization,X-Requested-With,Content-Type,Content-Length

同步mysql数据到es:logstash

目标:把t_news表的数据同步到es中。

自行下载解压,这是我的文件结构 

在config中新建logstash.conf文件,内容为:

input {
    jdbc {
      # 数据库
      jdbc_connection_string => "jdbc:mysql://localhost:3306/fywl-carmember"
      # 用户名密码
      jdbc_user => "root"
      jdbc_password => "jinxin2022"
      # Mysql-jdbc jar包的位置  路径不能写错 ,版本要对应
      jdbc_driver_library => "/usr/java/logstash/logstash-8.3.2/lib/mysql-connector-java-8.0.23.jar"
      # mysql的Driver
      jdbc_driver_class => "com.mysql.jdbc.Driver"
      jdbc_paging_enabled => "true"
      jdbc_page_size => "50000"
      #清除第一次同步的时间,日志时间
      #clean_run => true 
	  # mysql.sql内写sql 例如 select  *  from 你需要导入的表
      statement_filepath => "/usr/java/logstash/logstash-8.3.2/config/mysql.sql"
      # canel  时间参数,定时导入
      schedule => "*/5 * * * * *"
      #索引的类型  分词器类型
      type => "monitor_task_video_manual_history"
    }
}
 
filter {
    json {
        source => "message"
        remove_field => ["message"]
    }
}
 
output {
    elasticsearch {
        #es地址
        hosts => "localhost:9200"
        # index名
        index => "index_news"
        # 需要关联的数据库中一个id字段,对应索引的id号
        document_id => "%{id}"
    }
    stdout {
        codec => json_lines
    }
} 

在config中新建mysql.sql文件,该文件的查询结果将同步到es中,我是全部同步,所以内容为:

select * from t_news

启动:

nohup /usr/java/logstash/logstash-8.3.2/bin/logstash -f /usr/java/logstash/logstash-8.3.2/config/mysql.conf >logstash.out 2>&1 &

elasticsearch-head  可视化查询控件

这个控件需要nodejs和npm工具   

下载源码

GitHub - mobz/elasticsearch-head: A web front end for an elastic search cluster

下载好之后就像vue项目一样

npm install

npm run start

我安装过程中有一个依赖找不到 直接忽略就可以   忽略的命令不记得了,自己百度吧 。

启动完就是这样:

启动完访问http://ip:9200即可 ,    可能协议为https,自己试试吧

后台启动

cd /usr/java/es-head/elasticsearch-head-master

nohup npm run start >es-head.out 2>&1 &

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值