环境:

系统:centos7.3

版本:elasticsearch6.2.3

head版本:https://codeload.github.com/mobz/elasticsearch-head/zip/master  (这个就是下面说的head目录,把解压后的文件夹命名为head,但也不是强制性的要求)

首先下载elasticsearch

下载地址 https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.2.3.zip

解压到某个普通用户家目录下(解压目录没有硬性要求,但是必须把解压的文件夹所有者改为普通用户,因为开启服务时我们需要用普通用户才能启动服务,root用户不行)

然后执行该解压目录下的bin下的elasticsearch文件

可能会报错,max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144],修改

解决:

切换到root用户

执行命令:

sysctl -w vm.max_map_count=262144

查看结果:

sysctl -a|grep vm.max_map_count

显示:

vm.max_map_count = 262144

上述方法修改之后,如果重启虚拟机将失效,所以:

解决办法:

在   /etc/sysctl.conf文件最后添加一行

vm.max_map_count=262144

即可永久修改

上面这种问题我还遇到过其他的,快速解决的方法是ulimit -a查看全部属性

比如说,他提示文件数太小,就是open files哪里,直接使用ulimit -n 2048就能直接设置为该值,其中-n是括号里面的那个n,如果想改processes那个,就该用-u

访问localhost:9200,效果如下,这是Firefox浏览器,我用360极速浏览器,发现没有东西显示出来

但是如果我们从外面访问,会无法访问

解决方法

vim ./config/elasticsearch.yml

在最后增加一行,network.host:0.0.0.0,或者在原文找到network.host修改其值

下载node

去官网下载nodejs,https://nodejs.org/en/download/

下载好之后,解压./configure;make;make install

查看node是否安装成功

node -v

顺便看一下npm

npm -v

安装grunt

npm install -g cnpm --registry=https://registry.npm.taobao.org

npm install -g grunt-cli --registry=https://registry.npm.taobao.org

检测是否成功安装grunt

grunt -version

编辑文件head/Gruntfile.js

connect: {
server: {
options: {
port: 9100,
hostname: '*', #这里改为*
base: '.',
keepalive: true
}
}
}

编辑head/_site/app.js

this.base_uri = this.config.base_uri || this.prefs.get("app-base_uri") || "http://localhost:9200";

把上面的localhost改为服务器ip

运行head

npm install

grunt server

执行上面两条命令后,提示已连接localhost:9100

如果不出意外的话,连接那里是灰色的,还需要进行额外的配置

vim $ES_HOME$/config/elasticsearch.yml

# 增加如下字段
http.cors.enabled: true
http.cors.allow-origin: "*"
 
修改完成后重启es和head即可,即9100和9200端口应用
 
现在我们在加上一个logstash
下载地址 https://artifacts.elastic.co/downloads/logstash/logstash-6.2.3.tar.gz
运行时只需要执行命令bin/logstash -f logstash.conf ,但是我们先不运行,因为我们还需要进行其他配置。比如说,我们现在尝试用logstash连接mysql,并同步到elasticsearch
首先我们需要下载mysql连接工具https://cdn.mysql.com//Downloads/Connector-J/mysql-connector-java-5.1.46.tar.gz
在logstash解压目录下的bin目录新建logstash.conf文件,内容如下(#后面的内容是我注释的,只做解释作用,复制时最好删除)
input {
jdbc {
jdbc_driver_library => "/usr/local/elasticsearch/plugins/logstash/mysql-connector-java-5.1.44-bin.jar" #解压后的mysql连接文件路径
jdbc_driver_class => "com.mysql.jdbc.Driver"
jdbc_connection_string => "jdbc:mysql://192.168.0.200:3306/vegent?characterEncoding=UTF-8&useSSL=false" #ip需要更改为自己的ip,vegent是数据库名?
jdbc_user => "test"      #数据库用户名
jdbc_password => "test"    #数据库test用户密码
statement => "SELECT * FROM vegent" #数据库表
jdbc_paging_enabled => "true"
jdbc_page_size => "50000"
schedule => "* * * * *"
}
} filter {
json {
source => "message"
remove_field => ["message"]
}
} output {
stdout {
codec => rubydebug
}
elasticsearch {
hosts => "192.168.0.200" #这个也要改为自己的ip
index => "vegent"        #不知道这个又是什么鬼,跟上面的vegent保持一致吧
}
}

现在执行bin/logstash -f logstash.conf  

可以看到,有数据出来了

参考文档

https://blog.csdn.net/mergerly/article/details/53412417

https://www.cnblogs.com/eleven24/p/7733052.html

centos7 部署elasticsearch的更多相关文章

  1. 云服务器 Centos7 部署 Elasticsearch 8.0 + Kibana 8.0 指南

    文章转载自:https://mp.weixin.qq.com/s/iPfh9Mkwxf5lieiqt6ltxQ 服务器是命令行模式登录,没法以浏览器方式访问.而官方推荐的快捷部署方式,在kibana ...

  2. Centos7部署elasticsearch并且安装ik分词以及插件kibana

    第一步 下载对应的安装包 elasticsearch下载地址:https://www.elastic.co/cn/downloads/elasticsearch ik分词下载:https://gith ...

  3. Elasticsearch学习总结 (Centos7下Elasticsearch集群部署记录)

    一.  ElasticSearch简单介绍 ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口.Elasticse ...

  4. centos7下部署elasticSearch集群

    OS:Centos7x虚拟机 1H2Gjdk:1.8elasticsearch:5.6.0 单节点配置请参考:centos7下elasticSearch安装配置 配置master节点 # 在配置文件的 ...

  5. centos7 部署 ELK 日志系统

    =============================================== 2017/12/24_第3次修改                       ccb_warlock 更 ...

  6. CentOS7 部署 ElasticSearch7.0.1 集群

    环境 主机名 IP 操作系统 ES 版本 test1 192.168.1.2 CentOS7.5 7.0.1 test2 192.168.1.3 CentOS7.5 7.0.1 test3 192.1 ...

  7. [原]CentOS7部署osm2pgsql

    转载请注明原作者(think8848)和出处(http://think8848.cnblogs.com) 部署Postgresql和部署PostGis请参考前两篇文章 本文主要参考GitHub上osm ...

  8. centos7 部署ssserver

    centos7 部署shadowsocks服务端 为什么要选centos7? 以后centos7 肯定是主流,在不重要的环境还是尽量使用新系统吧 centos7 的坑 默认可能会有firewall 或 ...

  9. Docker部署Elasticsearch集群

    http://blog.sina.com.cn/s/blog_8ea8e9d50102wwik.html Docker部署Elasticsearch集群 参考文档: https://hub.docke ...

随机推荐

  1. linux 创建安装redis服务

    1.找下redis的官方的下载地址:http://download.redis.io/releases/redis-3.2.8.tar.gz  有最新的就下载最新 先下载解压跟安装 wget http ...

  2. 4.6 C++抽象基类和纯虚成员函数

    参考:http://www.weixueyuan.net/view/6376.html 总结: 在C++中,可以通过抽象基类来实现公共接口 纯虚成员函数没有函数体,只有函数声明,在纯虚函数声明结尾加上 ...

  3. Oracle学习(二)_多表操作

    --第一部分:SQL基础 --ch1 简单查询 --ch2 查询基本概念 --ch3 数据过滤 --第二部分:多表操作 --ch4 集合理论 --ch5 内连接 --ch6 外连接 --ch7 子查询 ...

  4. 玩转 React【第02期】:恋上 React 模板 JSX

    往期回顾 前文中我们讲解了利用 ReactElement 来编写React程序,但是我们也看到这种方式编写 React 特别的麻烦,而且层级结构特别不清晰.今天我们来看一种优雅的编写React的代码的 ...

  5. Python 基础字典的增删改查

    # 字典相关的代码## 1.字典的特性:a 字典的无序性: b 数据关联性强 C 键键值对 唯一一个映射数据类型# 字典的键必修二是可哈希的(不可变的数据类型:,字符串,数字的,布尔值,元祖)# 并且 ...

  6. nginx保持会话的方式

    1)ip_hash 简单易用,但是有如下缺点 后端服务器宕机后,session会丢失 来自同一局域网的客户端会被转发到同一个后端服务器,可能导致负载失衡 不适用CDN网络,不适用于前段还有代理的情况 ...

  7. PHP中session_start 函数详解使用方法

    一.官方 session_status() 返回值为: PHP_SESSION_DISABLED 会话是被禁用的. PHP_SESSION_NONE 会话是启用的,但不存在当前会话. PHP_SESS ...

  8. Python 黏包及黏包解决方案

    粘包现象 说粘包之前,我们先说两个内容,1.缓冲区.2.windows下cmd窗口调用系统指令 1 缓冲区(下面粘包现象的图里面还有关于缓冲区的解释) 每个 socket 被创建后,都会分配两个缓冲区 ...

  9. jenkins + nodejs + git 自动化部署前端

    1.  创建自定义风格任务 2.填写项目描述 3.配置源码管理 4. 系统管理->插件管理 ->安装插件 5.配置系统管理->全局工具配置-> 6.配置全局 ssh 7. 继续 ...

  10. think in java 读书笔记

    第三章 操作符 3.1 更简单的打印语句  原:System.out.println("打印"); 简单:print("我是更简单的");  =======需要 ...