zoukankan      html  css  js  c++  java
  • Elasticsearch 安装

    环境需要

    1、安装jdk环境

    2、安装Elasticsearch

    注意事项:ES非常占内存,默认启动是1g内存,可以修改512m

    3.Kibana可视化界面

     

    第一步

    将 es、kibana 安装包分别上传到linux服务器上,存放在 /usr/local 目录下。

     

     第二步

    解压 es,解压命令:tar -zxvf  elasticsearch-6.4.3.tar.gz

    解压成功之后,如下图,多出一个es安装目录。

     

     第三步

    查看 jvm 初始内存,在/conf/jvm.options 文件中可以查询jvm 内存,也可以根据自己需要进行修改配置。

     

     第四步

    设置ip地址与通讯端口号,进入到/usr/local/es/conf 目录。注意:这里我的es 安装在 /usr/local/es 目录下,这个可根据自己的需求选择安装目录。

    编辑 jvm.options 文件,vi jvm.options ,如下图。

    修改ip地址、端口号

     

     

    第五步

    配置好之后,启动es。进入到 /bin 目录下,启动es。

    启动命令:./elasticsearch

     

    es启动失败,can not run elasticsearch as root。

    解决方案:

    因为安全问题elasticsearch 不让用root用户直接运行,所以要创建新用户。

    第一步:liunx创建新用户  adduser XXX    然后给创建的用户加密码 passwd XXX    输入两次密码。

    第二步:切换刚才创建的用户 su XXX  然后执行elasticsearch  会显示Permission denied 权限不足。

    第三步:给新建的XXX赋权限,chmod 777 *  这个不行,因为这个用户本身就没有权限,肯定自己不能给自己付权限。所以要用root用户登录付权限。

    第四步:root给XXX赋权限,chown -R XXX /你的elasticsearch安装目录。

    然后执行成功。

     

    创建一个分组

    groupadd  esgroup

    useradd esmingtian -g esgroup -p 123456

    chown -R esmingtianelasticsearch-6.4.3

    su esmingtian 切换用户 

    切换过用户之后,使用新建的用户继续启动,如下图。

     

    es 启动依然失败,需要修改 /etc/sysct.l.conf 文件。需切换到 root  账号进行修改,不然没有权限进行修改。

    sysctl -p

    切换为 esmingtiian 继续启动项目,如下。

    启动依然出错,需要 再修改一个i配置文件。修改文件使用 root 账户修改。

    vi /etc/security/limits.conf 

    保存之后,继续启动,如果这一步启动失败,需要重启linux 服务器。

    第六步

    访问之前需要关闭服务器的防火墙,否则外部无法访问,出现如下图则表示 es  启动成功。

    浏览器访问地址:http://192.168.0.110:9200/

    9300 与 9200区别

    9300端口: ES节点之间通讯使用
    9200端口: ES节点 和 外部 通讯使用

    9300是TCP协议端口号,ES集群之间通讯端口号

    9200端口号,暴露ES RESTful接口端口号

    Elasticsearch版本控制

    1.为什么要进行版本控制

    为了保证数据再多线程操作下的准确性

     

    2.悲观锁和乐观锁

    悲观锁:假设会发生并发冲突,屏蔽一切可能违反数据准确性的操作

    乐观锁:假设不会发生并发冲突,只在提交操作是检查是否违反数据完整性。

     

    3.内部版本控制和外部版本控制

    内部版本控制:_version自增长,修改数据后,_version会自动的加1

     

    外部版本控制:为了保持_version与外部版本控制的数值一致

    使用version_type=external检查数据当前的version值是否小于请求中的version值

    ##### 创建一个文档 /索引/类型/id
    PUT /myindex/user/1
    {
    "name":"mingtian",
    "age":24,
    "sex":"男"
    }

  • 相关阅读:
    架构-LAMP特级学习(网站加速解决方案)
    架构-LAMP特级学习(网站大存储量解决方案)
    架构-LAMP特级学习(网站大访问量解决方案)
    Shell-学习笔记
    算法-随手写的冒泡排序
    算法-随手写的二分查找
    cocos2dx 3.x ccPositionTextureColor_vert与ccPositionTextureColor_noMVP_vert
    cocos2dx当节点存在缩放时要注意的问题
    cocos2dx 3.x draw debug
    cocos2dx 3.x ccDrawLine一个坑
  • 原文地址:https://www.cnblogs.com/ming-blogs/p/10989711.html
Copyright © 2011-2022 走看看