关注公众号 itweknow,回复“ES”获取《Elasticsearch权威指南 中文版》。

最近在尝试着搭建一个ELK(一个开源的实时日志分析平台),而本文所讲的Elasticsearch(下文简称ES)就是其中的E。这篇文章我们就一起来看下如何在Ubuntu上安装ES。至于ELK平台的搭建过程,后续会有文章介绍。

什么是ES

ES是个开源分布式搜索引擎,它具有以下特点。

  • 查询:ES允许执行和合并多种类型的搜索 — 结构化、非结构化、地理位置、度量指标 — 搜索方式随心而变。
  • 分析:ES聚合让您能够从大处着眼,探索数据的趋势和模式。
  • 速度:ES很快。真的,真的很快。
  • 可扩展性:可以在笔记本电脑上运行。也可以在承载了PB级数据的成百上千台服务器上运行。
  • 弹性:ES运行在一个分布式的环境中,从设计之初就考虑到了这一点。
  • 灵活性:具备多个案例场景。数字、文本、地理位置、结构化、非结构化。所有的数据类型都欢迎。

ES能干啥

ES建立在全文搜索引擎Apache Lucene(TM)的基础之上。但它并不像Lucene那么简单,它不仅包括了全文搜索功能,还可以进行以下工作:

  • 分布式实时文件存储,并将每一个字段都编入索引,使其可以被搜索。
  • 实时分析的分布式搜索引擎。
  • 可以扩展到上百台服务器,处理PB级别的结构化或非结构化数据。

因为数据量庞大之后关系型数据库的查询速度会下降的非常快,很多情况下我们会将一些数量级非常庞大的数据存储在ES中,比如说服务运行过程中产生的日志等。

ES的安装

简单的介绍了一下ES之后,我们回归正题,进入ES的安装步骤。在安装之前,你需要做如下准备:

1.由于ES不能以root用户运行,所以我们需要为其创建一个其他用户。

root@es01:~# useradd -m es
# 密码
root@es01:~# passwd es
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
# 为该用户指定命令解释程序(通常为/bin/bash)
root@es01:~# usermod -s /bin/bash es

2.将ES的安装包copy到~/es/目录下,并解压。

es@es01:~/es$ tar -xzvf elasticsearch-7.3.0-linux-x86_64.tar.gz

3..启动Elasticsearch

cd elasticsearch-7.3.0/
bin/elasticsearch

4.另起会话窗口执行curl http://localhost:9200命令,若看到如下信息则代表安装成功。

es@es01:~$ curl http://localhost:9200
{
"name" : "es01",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "V7athqhfT8KM4G6cjwQgsA",
"version" : {
"number" : "7.3.0",
"build_flavor" : "default",
"build_type" : "tar",
"build_hash" : "de777fa",
"build_date" : "2019-07-24T18:30:11.767338Z",
"build_snapshot" : false,
"lucene_version" : "8.1.0",
"minimum_wire_compatibility_version" : "6.8.0",
"minimum_index_compatibility_version" : "6.0.0-beta1"
},
"tagline" : "You Know, for Search"
}

安装中遇到的问题

在安装ES的过程中,也遇到了两个问题,在此处记录,希望能给大家帮助。

1.问题一:内存不足,报错如下:

解决方案是,修改elasticsearch-7.3.0/config/jvm.options文件中的下面的配置为适合自己机器的内存大小,若修改后还是报这个错误,可重新连接服务器再试一次。

# Xms represents the initial size of total heap space
# Xmx represents the maximum size of total heap space -Xms512m
-Xmx512m

2.问题二:如果您是以root用户启动的话,就会报如下错误。

解决方案自然就是添加一个新用户启动ES,添加用户的方法上面有提到。

结束语

本文只是简单的介绍了安装单机版的ES,为了维持ES的高可用性通常ES都是以集群的方式出现。对于集群的搭建以及ES的详细使用介绍会在后面的文章中逐一讲解。如果您想现在学习的话,关注公众号itweknow回复ES获取《Elasticsearch权威指南 中文版》。

PS:码不停蹄,学无止境!如果您喜欢我的文章,就关注我吧!

10分钟安装Elasticsearch的更多相关文章

  1. U盘10分钟安装linux系统

    说来可能不信,10分钟包括创建U盘启动盘,用U盘启动,安装,不联网,不更新,不安装语言包,等装好系统再更新. Windows系统硬盘分区 如果你用的是Windows系统,现有的硬盘没有未分配的空间,需 ...

  2. 10分钟安装OpenStack

    1 OpenStack初学者的苦恼 2 OpenStack最低配置要求 3 配置UOS环境 3.1 设置网络 3.1.1 创建路由器 3.1.2 创建网络 3.1.3 创建两个子网 3.2 创建UOS ...

  3. 10分钟精通SharePoint - SharePoint安装

    简介 接触SharePoint就避免不了要接触SharePoint安装,无论你是对SharePoint进行开发还是管理(终端用户除外).SharePoint的安装涉及到两部分:预装.安装和配置,这主要 ...

  4. Windows 10 安装ElasticSearch(2)- MSI安装ElasticSearch和安装Kibana

    翻阅上篇文章:Windows 10 安装 ElasticSearch 上次写的是下载Zip包安装的,在下载页面 发现有 MSI (BETA) 的下载可选项.了解之后发现MSI安装也值得尝试. MSI安 ...

  5. 【转】让你10分钟搞定Mac--最简单快速的虚拟安装

    文章出处:让你10分钟搞定Mac--最简单快速的虚拟安装http://bbs.itheima.com/thread-106643-1-1.html (出处: 黑马程序员训练营论坛) 首先说明一下. 第 ...

  6. elasticsearch(0.90.10)安装配置+超多插件!!

    一)安装elasticsearch 1)下载elasticsearch-0.90.10,解压,运行\bin\elasticsearch.bat (windwos) 2)进入http://localho ...

  7. 史上!最最最简洁明了的 Java JDK 安装目录及其子目录含义 10分钟详解 - 精简归纳

    Java JDK 安装目录及其子目录含义 10分钟详解 - 精简归纳 JERRY_Z. ~ 2020 / 8 / 30 转载请注明出处!️ 目录 Java JDK 安装目录及其子目录含义 10分钟详解 ...

  8. 深入浅出 Java JDK 安装目录及其子目录含义 10分钟详解 - 精简归纳

    Java JDK 安装目录及其子目录含义 10分钟详解 - 精简归纳 JERRY_Z. ~ 2020 / 8 / 30 转载请注明出处!️ 目录 Java JDK 安装目录及其子目录含义 10分钟详解 ...

  9. Windows 10 安装 ElasticSearch

    Java环境准备 可以下载oracle最新的JDK,作为C#程序员,支持一下微软的Mobile OpenJDK,构建一下Java环境. 微软的OpenJDK是针对Xamarin.Android的SDK ...

随机推荐

  1. django ORM中的RelatedManager(关联管理器)

    关联管理器应用在 一对多的表 或者 多对多的表 多对多表中的用法: 在多对多的表中 正向查询 #基于对象的查询 #正查 # author_obj = Author.objects.get(id=1) ...

  2. Linux指令学习

    Linux命令格式:命令名  选项  参数 Linux 刚面世时并没有图形界面,所有的操作全靠命令完成,如 磁盘操作.文件存取.目录操作.进程管理.文件权限 设定等,在职场中,大量的服务器维护工作都是 ...

  3. [MySQL]快速解决"Table '.\sjzlf\zbp_post' is marked as crashed and should be repaired"故障

    为了不冒失修复,故采取保守做法,我们知道 MySQL 一个高效的管理工具便是 PhpMyAdmin,而在该管理软件中就包含了对表的检查.分析.修复.优化功能,比起网上提供的含糊命令行来说更安全更简便. ...

  4. [奇思异想]使用RabbitMQ实现定时任务

    背景 工作中经常会有定时任务的需求,常见的做法可以使用Timer.Quartz.Hangfire等组件,这次想尝试下新的思路,使用RabbitMQ死信队列的机制来实现定时任务,同时帮助再次了解Rabb ...

  5. springboot+redis实现session共享

    1.场景描述 因项目访问压力有点大,需要做负载均衡,但是登录使用的是公司统一提供的单点登录系统,需要做session共享,否则假如在A机器登录成功,在B机器上操作就会存在用户未登录情况. 2. 解决方 ...

  6. RestTemplate真实案例

    1. 场景描述 现在越来越的系统之间的交互采用http+json的交互方式,以前用的比较多的HttpClient,后来用的RestTemplate,感觉RestTemplate要比httpClent简 ...

  7. GreenPlum完全安装_GP5.11.3完整安装

    1 概述 1.1 背景 1.2 目标 1.3 使用对象 2 配置系统信息 2.1 配置系统信息,做安装Greenplum的准备工作 Greenplum 数据库版本5.11.3 2.1.1 Greenp ...

  8. android_layout_linearlayout(一)

    这几天一直在研究线性布局这块,记录下一些研究心得,作为参考之用. 一.金刚钻:(线性布局,英文名 linearLayout) 布局xml文件中统大者是一个线性布局,它的长宽都已经fill_parent ...

  9. SpringBoot工程热部署

    SpringBoot工程热部署 1.在pom文件中添加热部署依赖 <!-- 热部署配置 --> <dependency> <groupId>org.springfr ...

  10. 前端html+css+JavaScript 需要掌握的单词

    前端html+css+JavaScript 需要掌握的单词   broswer 浏览器(客户端) html 超文本标记语言 css 层叠样式表 javascript 语言名字(类似python/php ...