Files
terraform/oracle/kr/manage_kr.sh

74 lines
2.2 KiB
Bash
Executable File
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#!/bin/bash
# 韩国区域 Oracle 云实例管理脚本
# 用于管理 ch2 实例(终止或停止)并将资源重新分配给 A1 实例
set -e # 遇到错误时退出
echo "开始执行韩国区域 Oracle 云实例管理..."
echo "请选择操作模式:"
echo "1) 终止实例 (terminate) - 完全删除实例,释放所有资源"
echo "2) 停止实例 (stop) - 停止实例但保留配置,可随时重启"
read -p "请输入选择 (1 或 2默认为 1): " choice
choice=${choice:-1}
if [ "$choice" = "2" ]; then
echo "您选择了停止实例模式"
STRATEGY="stop"
else
echo "您选择了终止实例模式"
STRATEGY="terminate"
fi
# 检查必要工具
if ! command -v terraform &> /dev/null; then
echo "错误: 未找到 Terraform"
exit 1
fi
# 获取当前工作目录
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
cd "$SCRIPT_DIR"
echo "当前目录: $SCRIPT_DIR"
echo "步骤 1: 初始化 Terraform"
terraform init
echo "步骤 2: 检查当前状态"
if [ "$STRATEGY" = "stop" ]; then
terraform plan -var ch2_enabled=false -var instance_management_strategy="stop" -var a1_storage_size_gb=200
else
terraform plan -var ch2_enabled=false -var instance_management_strategy="terminate" -var a1_storage_size_gb=200
fi
read -p "确认要执行此计划吗?(y/N): " -n 1 -r
echo
if [[ ! $REPLY =~ ^[Yy]$ ]]; then
echo "操作已取消"
exit 0
fi
echo "步骤 3: 应用变更"
if [ "$STRATEGY" = "stop" ]; then
terraform apply -var ch2_enabled=false -var instance_management_strategy="stop" -var a1_storage_size_gb=200
else
terraform apply -var ch2_enabled=false -var instance_management_strategy="terminate" -var a1_storage_size_gb=200
fi
echo "步骤 4: 验证变更"
echo "当前资源状态:"
terraform show
if [ "$STRATEGY" = "stop" ]; then
echo "操作完成!"
echo "ch2 实例已被停止保留配置A1 实例的存储空间已增加到 200GB。"
echo "如需重新启动实例,请使用 Oracle 云控制台或 OCI CLI。"
else
echo "操作完成!"
echo "ch2 实例已被完全终止A1 实例的存储空间已增加到 200GB。"
fi
echo "ch3 实例保持不变。"
echo "如需进一步验证,请检查您的 Oracle 云控制台韩国区域。"