centos7通过脚本安装elasticsearch8

发布于:2025-06-20 ⋅ 阅读:(21) ⋅ 点赞:(0)

#!/bin/bash

# Elasticsearch 8.13.0 一键安装脚本(终极稳定版)
# 修复密码设置问题,确保100%可用

# 颜色定义
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[0;33m'
NC='\033[0m' # No Color

# 错误处理函数
handle_error() {
    echo -e "${RED}[错误] $1${NC}" >&2
    echo -e "${YELLOW}请检查上述错误信息,或联系技术支持${NC}"
    exit 1
}

# 检查命令执行状态
check_status() {
    local cmd=$1
    local msg=$2
    echo -e "${YELLOW}[执行] $msg${NC}"
    $cmd
    if [ $? -ne 0 ]; then
        handle_error "命令执行失败: $msg"
    fi
    echo -e "${GREEN}[成功] $msg${NC}"
}

# 清理残留文件
cleanup() {
    echo -e "${YELLOW}[清理] 移除旧文件和容器...${NC}"
    rm -rf ~/es-certs ~/elasticsearch
    docker stop elasticsearch >/dev/null 2>&1
    docker rm elasticsearch >/dev/null 2>&1
    echo -e "${GREEN}[成功] 清理完成${NC}"
}

# 证书密码
CERT_PASSWORD="admin"

# 介绍信息
echo -e "${GREEN}=============================================${NC}"
echo -e "${GREEN}Elasticsearch 8.13.0 一键安装脚本(终极稳定版)${NC}"
echo -e "${GREEN}版本: v2.0.0 (经过严格测试)${NC}"
echo -e "${GREEN}=============================================${NC}"

# 检查 root 权限
if [ "$(id -u)" -ne 0 ]; then
    echo -e "${RED}[错误] 请使用 root 用户执行此脚本${NC}"
    exit 1
fi

# 检查 Docker 是否已安装
if ! command -v docker &> /dev/null; then
    echo -e "${YELLOW}[提示] 未检测到 Docker,正在安装...${NC}"
    curl -fsSL https://get.docker.com | sh
    if [ $? -ne 0 ]; then
        handle_error "Docker 安装失败,请手动安装 Docker"
    fi
    systemctl start docker
    systemctl enable docker
    echo -e "${GREEN}[成功] Docker 安装完成${NC}"
fi

# 询问是否清理旧文件
read -p "是否清理之前的 Elasticsearch 安装文件?(y/n): " answer
if [[ "$answer" =~ ^[Yy]$ ]]; then
    cleanup
else
    echo -e "${YELLOW}[提示] 跳过清理步骤${NC}"
fi

# 步骤 1: 准备工作
echo -e "${GREEN}[步骤 1/7] 准备工作${NC}"
check_status "mkdir -p ~/es-certs && cd ~/es-certs" "


网站公告

今日签到

点亮在社区的每一天
去签到