1. 游客欢迎来到XFUM社区,请仔细阅读本站规则
    下载中心的资源要先点赞再购买才能下载,商店是不需要点赞的
  2. 如何购买积分下载资源,请看此贴

教程 使用 安装 XenForo Enhanced Searche 步骤(ubuntu)

admin2016-09-06

  1. admin  2016-09-06

    积分
    #1
    Elasticsearch-twitter.png
    安装 XF增强搜索(XenForo Enhanced Searche)需要在服务器上安装 Elasticsearch (增强搜索能提供更好的搜索体验,但基于java的 elasticsearch 对 VPS 要求就略高了。)
    1.安装java
    惯例先更新系统
    代码:
    sudo apt-get update
    然后安装稳定的java7
    代码:
    sudo apt-get install openjdk-7-jre
    如果你追求更高性能,可以选择安装java8
    添加java8ppa:
    代码:
    sudo add-apt-repository -y ppa:webupd8team/java
    更新:
    代码:
    sudo apt-get update
    安装java8
    代码:
    sudo apt-get -y install oracle-java8-installer
    编译ElasticSearch-RTF中文集成版

    代码:
    wget -c https://github.com/medcl/elasticsearch-rtf/archive/master.zip
    tar zxvf master.zip
    cd elasticsearch-rtf-master
    sudo mv elasticsearch /usr/local/elasticsearch
    sudo chmod +x /usr/local/elasticsearch/bin/service/elasticsearch
    sudo /usr/local/elasticsearch/bin/service/elasticsearch install
    配置:
    /usr/local/elasticsearch/config/elasticsearch.yml

    代码:
    # cluster.name: elasticsearch
    修改为
    代码:
    cluster.name: xf
    代码:
    # path.data: /path/to/data
    修改为
    代码:
    path.data: /var/elasticsearch
    代码:
    #network.host: 127.0.0.1
    修改为
    代码:
    network.host: 127.0.0.1
    代码:
    # http.port: 9200
    修改为
    代码:
    http.port: 9200
    编辑 /usr/local/elasticsearch/config/jvm.options

    找到
    代码:
    -Xms
    -Xmx
    
    修改为适合自己的值
    1 百万帖 = 1024 或者 1G
    2 百万帖 = 2048 或者 2G
    3 百万帖 = 3072 或者 3G
    以此类推
    根据XF版主说,大约每100万帖子,需要 512M内存,所以请计算好需求,宁多勿少。

    重新启动并测试
    代码:
    service elasticsearch start
    如果是ubuntu 16.04 你需要修改
    START_DAEMON 为 true
    编辑
    /etc/default/elasticsearch
    将 START_DAEMON 为 true 前面的注释去掉,否则你会一直 curl http://127.0.0.1:9200 失败。

    如果你是用的是廉价的openVZ主机,你在安装 5.x 时将会得到以下错误
    代码:
    permission denied on key 'vm.max_map_count'
    解决方法:
    编辑
    /etc/init.d/elasticsearch
    注释以下文字
    代码:
    #       if [ -n "$MAX_MAP_COUNT" ]; then
    #               sysctl -q -w vm.max_map_count=$MAX_MAP_COUNT
    #       fi
    
    并使用此命令重启
    代码:
    systemctl restart elasticsearch
    得到
    代码:
    rcelasticsearch restart
    Stopping ElasticSearch...
    Stopped ElasticSearch.
    Starting ElasticSearch...
    Waiting for ElasticSearch......
    running: PID: xxxxx
    测试
    代码:
    curl http://127.0.0.1:9200
    得到类似
    代码:
    {
      "ok" : true,
      "name" : "Wild Child",
      "version" : {
        "number" : "0.18.7",
        "snapshot_build" : false
      },
      "tagline" : "You Know, for Search",
      "cover" : "DON'T PANIC",
      "quote" : {
        "book" : "The Hitchhiker's Guide to the Galaxy",
        "chapter" : "Chapter 8",
        "text1" : "\"Space,\" it says, \"is big. Really big. You just won't believe how vastly hugely mindbogglingly big it is. I mean you may think it's a long way down the road to the chemist, but that's just peanuts to space, LISTEN!\" and so on..."
      }
    则表示安装成功,可以正式安装
    XenForo Enhanced Searche
     
  2. laogui  2017-05-04

    积分
    #2
    你用的什么配置服务器?elasticsearch 启动占多少内存?我现在1G内存都不敢开这玩意。
     
  3. admin  2017-05-04

    积分
    #3
    如果要安装 5.x,推荐用kvm的VPS,openVZ有限制,需要手动将 vm.max_map_count 注释掉,最低要求2G内存(默认设置就需要用掉1G内存),按xf版主说法512m大约适用于100万帖子,所以2G内存(1G设置给ES搜索)基本能扛住200万帖的论坛搜索。
    另外我服务器(openVZ 2G内存)系统是 ubuntu,直接使用源安装,没用这个帖子的方法(其实帖子里的方法也很旧了)。
    目前稳定下来的内存使用量大约是这样的
    upload_2017-5-4_22-59-18.png