mcpField
C
compute-management

compute-management

github.com/acedergren云与 DevOps22110 次安装33 周前更新
代码仓库

关于 compute-management

面向在 Landing Zone 架构中管理 OCI 计算资源的团队,提供 OCI 运维指导、安全注意事项、容量检查、规格选择和成本参考。

主要功能

  1. 01OCI 计算反模式指导
  2. 02容量限制排查
  3. 03实例规格与规模建议
  4. 04成本优化参考
  5. 05安全与身份验证实践

适用场景

  1. 01启动实例前检查配额
  2. 02排查计算容量错误
  3. 03为工作负载选择实例规格
  4. 04审查生产环境安全实践

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/acedergren/oci-agent-skills --skill compute-management

安装后在 Claude Code 中输入/compute-management确认已加载。

附带文件metadata.jsonreferences/oci-compute-shapes-reference.md

详细介绍

OCI 计算管理——专家知识

🏗️ 使用 OCI Landing Zone Terraform 模块

不要重复造轮子。 生产部署请使用 oracle-terraform-modules/landing-zone。

Landing Zone 可解决:

  • ❌ 不良实践 #5:向整个互联网开放端口(22/3389 上的 0.0.0.0/0)
  • ❌ 不良实践 #9:公有计算实例(安全区会强制使用私有 IP)
  • ❌ 不良实践 #10:没有监控(自动配置警报和通知)

此技能提供:针对在 Landing Zone 架构内部署的计算资源所涉及的反模式和故障排查建议。


⚠️ OCI CLI/API 知识缺口

你不了解 OCI CLI 命令或 OCI API 结构。

你的训练数据中以下信息有限且已过时:

  • OCI CLI 语法和参数(每月更新)
  • OCI API 端点及请求/响应格式
  • Compute 服务 CLI 操作(oci compute instance)
  • OCI 服务专属命令和标志
  • 最新 OCI 功能和 API 变更

需要执行 OCI 操作时:

  1. 使用此技能参考资料中的准确 CLI 命令
  2. 不要猜测 OCI CLI 语法或参数
  3. 不要假设 API 端点结构
  4. 加载参考文件以了解详细 CLI 操作

你确实了解的内容:

  • 通用云计算概念
  • 实例规格选择和容量规划原则
  • Linux/Windows 系统管理

此技能通过提供当前的 OCI CLI/API 计算操作命令来弥补这一缺口。


你是一位 OCI 计算专家。此技能提供 Claude 在训练数据中缺乏的知识:反模式、容量规划、成本优化细节,以及 OCI 特有的注意事项。

绝对不要这样做

❌ 绝对不要在检查服务限额之前启动实例

oci limits resource-availability get \
  --service-name compute \
  --limit-name "standard-e4-core-count" \
  --compartment-id <ocid> \
  --availability-domain <ad>

87% 的“容量不足”错误实际上是配额限制导致的,而不是基础设施容量不足。启动实例前先检查限额,以获取准确的错误消息。

❌ 绝对不要将控制台串行连接用作主要访问方式

  • 会导致安全审计发现问题(绕过 SSH 密钥控制)
  • 仅在 SSH 失败时用于启动故障排查
  • 故障排查后立即删除连接

❌ 绝对不要在模板中混用区域级和 AD 专属资源

  • 跨区域迁移时会破坏可移植性
  • 使用不依赖 AD 的设计:通过故障域进行分布,而不是硬编码 AD

❌ 绝对不要在生产环境中使用默认安全列表

  • 默认配置会在所有端口上允许 0.0.0.0/0
  • 无法通过安全审计,还会造成合规违规
  • 始终创建自定义安全列表或 NSG

❌ 绝对不要在开发/测试环境中忘记保留启动卷

# When terminating test instances, add:
oci compute instance terminate --instance-id <id> --preserve-boot-volume false

不使用此标志:每个已删除实例每月会产生 $50+ 的费用(遗留启动卷)

❌ 绝对不要在生产实例上启用公有 IP

  • 使用堡垒机服务或私有端点进行访问
  • 成本影响:每次安全事件会因实例暴露而产生 $500-5000+ 的费用
  • Landing Zone 安全区会自动阻止此模式

容量错误决策树

"Out of host capacity for shape X"?
│
├─ Check service limits FIRST (87% of cases)
│  └─ oci limits resource-availability get
│     ├─ available = 0 → Request limit increase (NOT capacity issue)
│     └─ available > 0 → True capacity issue, continue below
│
├─ Same shape, different AD?
│  └─ Try each AD in region (PHX has 3, IAD has 3, each independent)
│
├─ Different shape, same series?
│  └─ E4 failed → try E5 (newer gen, often more capacity)
│  └─ Standard failed → try Optimized or DenseIO variants
│
├─ Different architecture?
│  └─ AMD → ARM (A1.Flex often has capacity when Intel/AMD full)
│
└─ All ADs exhausted?
   └─ Create capacity reservation (guarantees future launches)

规格选择:成本与性能

预算优先(节省 50%):

  • 如果应用支持 ARM,则使用 VM.Standard.A1.Flex:$0.01/OCPU/小时,而 AMD 为 $0.03
  • 注意:并非所有软件都能在 ARM 上运行,请进行全面测试

通用用途(均衡):

  • VM.Standard.E4.Flex:CPU:RAM 比为 2:16,$0.03/OCPU/小时
  • 从 2 个 OCPU 开始,根据指标扩展(不要凭猜测)

内存密集型(数据库、缓存):

  • VM.Standard.E4.Flex,自定义比例最高可达 1:64 CPU:RAM
  • 成本:$0.03/OCPU + $0.0015/GB RAM

成本陷阱:固定规格(例如 VM.Standard2.1)的价格通常比资源相同的 Flex 规格更贵。务必先比较 Flex 价格。

实例主体身份验证(生产环境)

当实例需要调用 OCI API(Object Storage、Vault 等)时:

错误方式(在实例上使用用户凭据):

# Don't do this - credential management nightmare
export OCI_USER_OCID="ocid1.user..."

正确方式(实例主体):

# 1. Create dynamic group
oci iam dynamic-group create \
  --name "app-instances" \
  --matching-rule "instance.compartment.id = '<compartment-ocid>'"

# 2. Grant permissions
# "Allow dynamic-group app-instances to read object-family in compartment X"

# 3. Code uses instance principal (no credentials needed):
signer = oci.auth.signers.InstancePrincipalsSecurityTokenSigner()
client = oci.object_storage.ObjectStorageClient(config={}, signer=signer)

优点:无需轮换凭据,无需管理密钥,并可自动刷新令牌。

OCI 专属注意事项

可用性域名称因租户而异

  • 你的 AD:“fMgC:US-ASHBURN-AD-1”
  • 其他租户:“ErKW:US-ASHBURN-AD-1”
  • 必须查询你的租户:oci iam availability-domain list

启动卷备份不包含实例配置

  • 备份仅捕获磁盘,不包含形状、网络配置或元数据
  • 灾难恢复:使用自定义映像(可捕获所有内容)或使用 Terraform 管理基础设施

实例元数据服务有 3 个版本

快速成本参考

形状系列$/OCPU/小时$/GB RAM/小时适用场景
A1.Flex(ARM)$0.01$0.0015成本优先、兼容 ARM
E4.Flex(AMD)$0.03$0.0015通用用途
E5.Flex(AMD)$0.035$0.0015最新一代、高性能
Optimized3.Flex$0.025$0.0015网络密集型

免费套餐:2 台 AMD VM(1/8 OCPU、1GB)+ 4 个 ARM 核心(总计 24GB)——始终免费

计算方式:(OCPU 数量 × $0.03 + GB 数量 × $0.0015)× 每月 730 小时

示例:2 OCPU、16GB = (2×$0.03 + 16×$0.0015) × 730 = $61.32/月

渐进式加载参考资料

OCI 计算形状参考(Oracle 官方文档)

在以下情况下加载 oci-compute-shapes-reference.md:

  • 需要特定形状的详细规格(内存限制、OCPU 数量、网络带宽)
  • 比较灵活形状(VM.Standard3.Flex 与 E4.Flex、E5.Flex、E6.Flex、A1/A2/A4.Flex)
  • 了解扩展内存 VM 实例
  • 研究裸金属形状(BM.Standard3、BM.Standard.E4/E5/E6、BM.Standard.A1/A4)
  • 查看 GPU 形状、Dense I/O 形状或 HPC 优化形状
  • 需要形状系列的 Oracle 官方规格

以下情况不要加载:

  • 快速比较成本(使用本技能中的快速成本参考表)
  • 排查“容量不足”问题(本技能中的决策树涵盖此问题)
  • 形状选择指导(本技能中的反模式和建议)

何时使用此技能

  • 启动实例:选择形状、规划容量
  • “容量不足”错误:决策树、检查限额
  • 成本优化:比较形状、调整规格
  • 安全:设置实例主体、正确使用控制台连接
  • 故障排除:启动失败、连接问题
  • 生产环境:反模式、运维注意事项

评论

支持 Markdown