V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
movq
V2EX  ›  程序员

elasticsearch 是我遇到过的安装最麻烦的东西

  •  
  •   movq · 89 天前 · 2978 次点击
    这是一个创建于 89 天前的主题,其中的信息可能已经有所发展或是发生改变。
    • 在 Mac 上面用 homebrew 安装,发现启动后报错。网上搜索报错信息,找不到解决方案
    • 于是在 ubuntu 里面安装。安装完之后发现 systemctl 跑不起来服务。网上搜不到解决方案
    • 于是在 docker 里面安装。安装后本地访问不了 9200 端口。于是在网上搜了半天,发现需要把安全设置为 false (xpack.security.enabled: false)。设置好之后终于可以运行。
    • 但此时 kibana 提示 enrollment token 失效。手动生成 enrollment token 失败,网上查了下说是安全设置要设置为 true (xpack.security.enabled: true)才能生成 token

    总结:搞了一下午都没成功运行起来

    有没有 v 友知道如何才能既运行 kibana (xpack.security.enabled: true),又能在宿主机 9200 端口来访问 es 呢(xpack.security.enabled: false

    28 条回复    2023-03-03 18:14:03 +08:00
    Showfom
        1
    Showfom  
       89 天前
    Debian 下:

    curl -sS https://artifacts.elastic.co/GPG-KEY-elasticsearch | gpg --dearmor > /usr/share/keyrings/elasticsearch.gpg
    echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/elasticsearch.gpg] https://artifacts.elastic.co/packages/7.x/apt stable main" > /etc/apt/sources.list.d/elasticsearch.list
    apt-get update
    apt-get install openjdk-11-jre-headless elasticsearch

    装完以后 systemctl enable --now elasticsearch 就行了
    mythabc
        2
    mythabc  
       89 天前
    qq296015668
        3
    qq296015668  
       89 天前
    配置文件大概如下
    ```elasticsearch.yml
    cluster.name: "docker-cluster"
    network.host: 0.0.0.0
    logger.level: ERROR

    xpack.security.enabled: true
    xpack.security.http.ssl.enabled: true
    xpack.security.http.ssl.keystore.path: elastic-certificates.p12
    xpack.security.http.ssl.truststore.path: elastic-certificates.p12

    xpack.security.transport.ssl.enabled: true
    xpack.security.transport.ssl.verification_mode: certificate
    xpack.security.transport.ssl.keystore.path: elastic-certificates.p12
    xpack.security.transport.ssl.truststore.path: elastic-certificates.p12
    ingest.geoip.downloader.enabled: false
    ```

    需要的证书可以从 es 容器里面直接生成
    ```sh
    docker run --name es --rm -it elasticsearch:8.6.2 bash
    bin/elasticsearch-certutil cert -out config/elastic-certificates.p12 -pass ""
    exit
    ```
    ```
    mkdir certs
    docker cp es:/usr/share/elasticsearch/config/elastic-certificates.p12 ./certs/
    docker stop es
    chown -R 1000:root certs/
    ```

    然后把证书挂载到容器 /usr/share/elasticsearch/config/elastic-certificates.p12
    ```sh
    docker run --name es --restart=always -d \
    -p 0.0.0.0:9200:9200 \
    -p 0.0.0.0:9300:9300 \
    -e "discovery.type=single-node" \
    -e "ES_JAVA_OPTS=-Xms512m -Xmx512m -Dlog4j2.formatMsgNoLookups=true" \
    -v $(pwd)/es/data:/usr/share/elasticsearch/data
    -v $(pwd)/es/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
    -v $(pwd)/es/certs/elastic-certificates.p12:/usr/share/elasticsearch/config/elastic-certificates.p12 \
    docker.elastic.co/elasticsearch/elasticsearch:8.6.2
    ```
    Hanggi
        4
    Hanggi  
       89 天前
    求 ES 的替代品,目前服务集群在尽可能去 Java 以缩减开销。

    看了下 Redisearch 感觉还不成熟,有谁用过吗
    chendy
        5
    chendy  
       89 天前
    没有特殊要求的情况下,直接用 apt 或者 yum 装就完事了
    有问题可能是之前的配置文件或者啥有冲突之类的

    (看到标题的第一反应是:要不要体验一下装 oracle ?
    JaguarJack
        6
    JaguarJack  
       89 天前
    @Hanggi https://www.meilisearch.com/ 。可以看下这个 轻量级的 刚发布 1.0
    seashell2000
        7
    seashell2000  
       89 天前
    不是一个 helm 搞定吗?
    zanxj
        8
    zanxj  
       89 天前
    哈哈哈……看来对 ELK 不熟悉的还不少,当年我也摸索了好久……现在公司生产日志服务器就是我搭建的,已经正常运行 N 年……有个 ELK 的 TG 群 OP 可能需要 t.me/ElasticCommunity
    knightdf
        9
    knightdf  
       89 天前
    ES 安装还不够简单?
    ggvm
        10
    ggvm  
       89 天前
    ES 不是有绿色的版本吗? 下载解压运行就好了
    bjzhush
        11
    bjzhush  
       89 天前
    ES 才哪到哪啊,这就麻烦了
    Keanuo
        12
    Keanuo  
       89 天前
    docker 请
    liprais
        13
    liprais  
       89 天前
    我咋官网下个压缩包解压改个配置文件就能跑了
    你跑的时候报啥错了
    mylifcc
        14
    mylifcc  
       89 天前
    我觉得 spark 安装很麻烦
    WilliamYang
        15
    WilliamYang  
       89 天前
    现在好很多了,6 年前我弄的时候,超级麻烦,一堆报错,网上资料也不够多
    Bromine0x23
        16
    Bromine0x23  
       89 天前
    现在新版本强制 TLS 通信是有点麻烦
    Selenium39
        17
    Selenium39  
       88 天前 via iPhone
    https://github.com/Selenium39/elk
    我自己用的,还是很方便
    baren
        18
    baren  
       88 天前
    用 bitnami 的 helm 部署,或者 docker
    https://hub.docker.com/r/bitnami/elasticsearch
    kibana bitnami 也有
    可以不使用 tls
    通过 nginx 代理 nodeport
    967182
        19
    967182  
       88 天前
    es: 有人嫌弃我部署麻烦,,,,哭!!!!!!!!!!
    cheng6563
        20
    cheng6563  
       88 天前
    不是解压运行就行了?
    CloveAndCurrant
        21
    CloveAndCurrant  
       88 天前
    @Hanggi zinc ?现在改名为 zincsearch 了,golang 写的
    ptrees
        22
    ptrees  
       88 天前
    轻量级的 meilisearch 很好用,不知道符不符合你的需求了
    aaa5838769
        23
    aaa5838769  
       88 天前
    ES 安装还不够简单?
    hyperdak288
        24
    hyperdak288  
       88 天前
    @Hanggi 极限科技目前在开发一个基于 rust 的搜索引擎,前身是 es 的专业团队
    Hanggi
        25
    Hanggi  
       88 天前
    @CloveAndCurrant 看了一下,感觉不错,有在生产环境使用过吗
    PickleFish
        26
    PickleFish  
       88 天前
    有其他数据同步过去的和清洗数据的工具推荐嘛。
    Bluelion
        27
    Bluelion  
       88 天前
    @Hanggi 上 MongoDB ,我们用的 Altas 的服务,提供全文搜索
    datoujiejie221
        28
    datoujiejie221  
       88 天前
    我用 ansible 安装的,单机和集群就是一个命令和一个配置文件的事
    https://github.com/elastic/ansible-elasticsearch
    关于   ·   帮助文档   ·   博客   ·   nftychat   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   781 人在线   最高记录 5634   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 44ms · UTC 21:25 · PVG 05:25 · LAX 14:25 · JFK 17:25
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.