#!/bin/bash echo "开始安装 Redis 到 Kubernetes 集群..." # 检查 kubectl 是否可用 if ! command -v kubectl &> /dev/null; then echo "错误: kubectl 命令未找到,请先安装 kubectl" exit 1 fi # 应用 Redis 配置 echo "应用 Redis ConfigMap..." kubectl apply -f redis-configmap.yaml echo "应用 Redis Deployment..." kubectl apply -f redis-deployment.yaml echo "应用 Redis Service..." kubectl apply -f redis-service.yaml # 等待 Pod 启动 echo "等待 Redis Pod 启动..." kubectl wait --for=condition=ready pod -l app=redis -n default --timeout=300s # 检查状态 echo "检查 Redis 部署状态..." kubectl get pods -l app=redis -n default kubectl get svc redis -n default # 测试 Redis 连接 echo "测试 Redis 连接..." REDIS_POD=$(kubectl get pods -l app=redis -n default -o jsonpath='{.items[0].metadata.name}') if [ ! -z "$REDIS_POD" ]; then echo "在 Pod $REDIS_POD 中测试 Redis..." kubectl exec -it $REDIS_POD -n default -- redis-cli ping if [ $? -eq 0 ]; then echo "Redis 连接测试成功!" else echo "Redis 连接测试失败!" fi fi echo "Redis 安装完成!" echo "Redis 服务地址: redis.default.svc.cluster.local:6379" echo "默认密码: redis123" echo "" echo "使用示例:" echo "kubectl exec -it -n default -- redis-cli -a redis123" echo "" echo "注意: 请确保已正确配置 Redis 密码和持久化存储"