#!/bin/bash # Oracle 云实例优化脚本 # 用于删除小实例并将存储空间重新分配给 A1 实例 set -e # 遇到错误时退出 echo "开始执行 Oracle 云实例优化..." # 检查必要工具 if ! command -v terraform &> /dev/null; then echo "错误: 未找到 Terraform" exit 1 fi if ! command -v oci &> /dev/null; then echo "警告: 未找到 OCI CLI,建议安装以便更好地管理 Oracle 云资源" fi # 获取当前工作目录 SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" echo "当前目录: $SCRIPT_DIR" # 配置环境变量(如果需要) export TF_VAR_a1_storage_size_gb=${TF_VAR_a1_storage_size_gb:-200} echo "步骤 1: 初始化 Terraform" terraform init echo "步骤 2: 检查当前状态" terraform plan -out=tfplan.out echo "步骤 3: 显示计划摘要" terraform show tfplan.out read -p "确认要执行此计划吗?这将删除小实例并重新分配存储空间 (y/N): " -n 1 -r echo if [[ ! $REPLY =~ ^[Yy]$ ]]; then echo "操作已取消" rm -f tfplan.out exit 0 fi echo "步骤 4: 应用变更" terraform apply tfplan.out echo "步骤 5: 清理临时文件" rm -f tfplan.out echo "优化完成!" echo "已成功删除小实例并将更多存储空间分配给 A1 实例。" # 显示当前资源状态 echo "当前资源状态:" terraform show echo "如需进一步验证,请检查您的 Oracle 云控制台。"