| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113 |
- #!/bin/bash
- # MinIO集群快速启动脚本
- # 版本: 1.0
- # 描述: 同时启动67和68机器的MinIO集群节点
- # 使用方法: ./start-minio-cluster.sh
- # 配置参数
- NODE67_IP="172.16.0.67"
- NODE68_IP="172.16.0.68"
- NODE67_USER="root" # 根据实际情况修改
- NODE68_USER="root" # 根据实际情况修改
- MINIO_SCRIPT_PATH="/iflytek/soft/minio/minio-cluster-start.sh"
- # 颜色输出
- RED='\033[0;31m'
- GREEN='\033[0;32m'
- YELLOW='\033[1;33m'
- NC='\033[0m' # No Color
- echo -e "${GREEN}========================================${NC}"
- echo -e "${GREEN}MinIO集群启动脚本${NC}"
- echo -e "${GREEN}========================================${NC}"
- echo ""
- # 检查SSH连接
- echo -e "${YELLOW}[1/4] 检查SSH连接...${NC}"
- if ! ssh -o ConnectTimeout=5 ${NODE67_USER}@${NODE67_IP} "echo 'SSH连接成功'" > /dev/null 2>&1; then
- echo -e "${RED}错误: 无法连接到67机器 (${NODE67_IP})${NC}"
- echo "请检查:"
- echo " 1. SSH密钥配置"
- echo " 2. 网络连通性"
- echo " 3. 用户名是否正确"
- exit 1
- fi
- if ! ssh -o ConnectTimeout=5 ${NODE68_USER}@${NODE68_IP} "echo 'SSH连接成功'" > /dev/null 2>&1; then
- echo -e "${RED}错误: 无法连接到68机器 (${NODE68_IP})${NC}"
- echo "请检查:"
- echo " 1. SSH密钥配置"
- echo " 2. 网络连通性"
- echo " 3. 用户名是否正确"
- exit 1
- fi
- echo -e "${GREEN}✓ SSH连接正常${NC}"
- echo ""
- # 检查MinIO脚本是否存在
- echo -e "${YELLOW}[2/4] 检查MinIO启动脚本...${NC}"
- if ! ssh ${NODE67_USER}@${NODE67_IP} "test -f ${MINIO_SCRIPT_PATH}"; then
- echo -e "${RED}错误: 67机器上找不到MinIO启动脚本: ${MINIO_SCRIPT_PATH}${NC}"
- exit 1
- fi
- if ! ssh ${NODE68_USER}@${NODE68_IP} "test -f ${MINIO_SCRIPT_PATH}"; then
- echo -e "${RED}错误: 68机器上找不到MinIO启动脚本: ${MINIO_SCRIPT_PATH}${NC}"
- exit 1
- fi
- echo -e "${GREEN}✓ MinIO启动脚本存在${NC}"
- echo ""
- # 停止现有MinIO服务
- echo -e "${YELLOW}[3/4] 停止现有MinIO服务...${NC}"
- ssh ${NODE67_USER}@${NODE67_IP} "pkill -f 'minio server' || true"
- ssh ${NODE68_USER}@${NODE68_IP} "pkill -f 'minio server' || true"
- sleep 2
- echo -e "${GREEN}✓ 已停止现有服务${NC}"
- echo ""
- # 同时启动集群节点
- echo -e "${YELLOW}[4/4] 启动MinIO集群节点...${NC}"
- echo -e "${GREEN}正在启动67机器节点...${NC}"
- ssh ${NODE67_USER}@${NODE67_IP} "cd /iflytek/soft/minio && nohup ${MINIO_SCRIPT_PATH} > /dev/null 2>&1 &"
- echo -e "${GREEN}正在启动68机器节点...${NC}"
- ssh ${NODE68_USER}@${NODE68_IP} "cd /iflytek/soft/minio && nohup ${MINIO_SCRIPT_PATH} > /dev/null 2>&1 &"
- # 等待服务启动
- echo -e "${YELLOW}等待服务启动(5秒)...${NC}"
- sleep 5
- # 验证服务状态
- echo ""
- echo -e "${YELLOW}验证服务状态...${NC}"
- if ssh ${NODE67_USER}@${NODE67_IP} "pgrep -f 'minio server' > /dev/null"; then
- echo -e "${GREEN}✓ 67机器MinIO服务运行中${NC}"
- else
- echo -e "${RED}✗ 67机器MinIO服务未运行${NC}"
- fi
- if ssh ${NODE68_USER}@${NODE68_IP} "pgrep -f 'minio server' > /dev/null"; then
- echo -e "${GREEN}✓ 68机器MinIO服务运行中${NC}"
- else
- echo -e "${RED}✗ 68机器MinIO服务未运行${NC}"
- fi
- echo ""
- echo -e "${GREEN}========================================${NC}"
- echo -e "${GREEN}MinIO集群启动完成!${NC}"
- echo -e "${GREEN}========================================${NC}"
- echo ""
- echo "集群访问地址:"
- echo " 67机器控制台: http://${NODE67_IP}:9001"
- echo " 68机器控制台: http://${NODE68_IP}:9001"
- echo " 67机器API: http://${NODE67_IP}:9000"
- echo " 68机器API: http://${NODE68_IP}:9000"
- echo ""
- echo "验证集群状态:"
- echo " mc admin info minio-cluster"
- echo ""
|