You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Vagrant中CentOS9虚拟机通过Ansible安装Elasticsearch失败

问题分析与解决

核心原因

你的Ansible Playbook中,配置Elasticsearch仓库时设置了enabled: 0,这会让该仓库处于禁用状态,yum/dnf无法从这个仓库检索安装包,因此出现找不到elasticsearch的错误。

修复方案

1. 启用Elasticsearch仓库

修改install elasticsearch 8.x rpm repository任务的enabled参数为1,同时建议将仓库名称改为简洁的标识符(避免空格潜在问题):

- name: install elasticsearch 8.x rpm repository
  yum_repository:
    name: elasticsearch-8.x
    description: Elasticsearch repository for 8.x packages
    baseurl: https://artifacts.elastic.co/packages/8.x/yum
    gpgkey: https://artifacts.elastic.co/GPG-KEY-elasticsearch
    enabled: 1  # 改为1启用仓库
  become: true

2. 优化安装任务

单个包安装无需使用with_items,同时确保缓存更新生效:

- name: install elasticsearch 8.x
  yum:
    name: elasticsearch
    state: present
    update_cache: true
  become: true

3. 修正Java安装(可选但推荐)

RHEL/CentOS系没有default-jdk包名,Elasticsearch 8.x推荐Java 17,替换为对应openjdk包:

- name: install java
  yum:
    name: java-17-openjdk-devel
    state: latest
    update_cache: yes
  become: true

验证方法

修复后可在目标虚拟机上手动执行以下命令,确认仓库是否生效:

dnf repolist enabled | grep elasticsearch
dnf search elasticsearch

若能检索到elasticsearch包,说明仓库配置正常。


内容的提问来源于stack exchange,提问作者Vanias Kopas

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 12:27:24