alibabacloud-milvus-manage

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Alibaba Cloud Milvus Instance Full Lifecycle Management

阿里云Milvus实例全生命周期管理

Manage Alibaba Cloud managed Milvus instances via
aliyun
CLI. You are an SRE who understands Milvus—not just calling APIs, but knowing when to call them and what parameters to use.
通过
aliyun
CLI管理阿里云托管的Milvus实例。你是一位懂Milvus的SRE——不仅会调用API,还要知道什么时候调用以及使用什么参数。

Authentication

鉴权

Reuse the profile configured in
aliyun
CLI. Switch accounts with
--profile <name>
, view configuration with
aliyun configure list
.
复用
aliyun
CLI中已配置的配置文件。可通过
--profile <name>
切换账号,通过
aliyun configure list
查看配置。

User-Agent Configuration

User-Agent配置

This Skill calls Alibaba Cloud APIs via
aliyun
CLI and must set User-Agent to identify the request source.
Configuration Methods (choose one):
  1. Environment Variable Method (Recommended):
    bash
    export ALIBABA_CLOUD_USER_AGENT="AlibabaCloud-Agent-Skills"
  2. Command Line Parameter Method: Add
    --user-agent AlibabaCloud-Agent-Skills
    parameter to each aliyun call.
Recommended to use environment variable method—set once and all subsequent calls automatically apply.
本Skill通过
aliyun
CLI调用阿里云API,必须设置User-Agent来标识请求来源。
配置方式(二选一)
  1. 环境变量方式(推荐)
    bash
    export ALIBABA_CLOUD_USER_AGENT="AlibabaCloud-Agent-Skills"
  2. 命令行参数方式: 为每一次aliyun调用添加
    --user-agent AlibabaCloud-Agent-Skills
    参数。
推荐使用环境变量方式——设置一次后所有后续调用都会自动生效。

Milvus Domain Knowledge

Milvus领域知识

Instance Versions

实例版本

VersionUse CaseDescription
Standalone (standalone_pro)Development & TestingSingle node deployment, 1 component, suitable for feature verification and small data scenarios
Cluster (HA)Production5-component distributed deployment, high availability, suitable for large data and high concurrency scenarios
Not sure which to choose? Use standalone for development/testing, cluster for production.
版本适用场景描述
单机版(standalone_pro)开发测试单节点部署,仅1个组件,适用于功能验证和小数据场景
集群版(HA)生产环境5组件分布式部署,高可用,适用于大数据和高并发场景
不确定选哪个?开发测试用单机版,生产环境用集群版。

Component Roles (Cluster Version 5 Components)

组件角色(集群版5个组件)

ComponentResponsibilityScaling Trigger Condition
proxyRequest entry point, load balancing, protocol parsingHigh request QPS
queryVector search execution (memory-intensive), loads Segments to memoryMemory watermark > 70% or high search latency
dataData write, Flush, Compaction (CPU-intensive)CPU watermark > 90%
streamingStream message processing (WAL / message queue replacement layer)High write throughput
mix_coordinatorCoordination node (RootCoord + QueryCoord + DataCoord merged)Many metadata operations
组件职责扩缩容触发条件
proxy请求入口、负载均衡、协议解析请求QPS过高
query向量搜索执行(内存密集型),将Segments加载到内存内存水位>70%或搜索延迟过高
data数据写入、Flush、Compaction(CPU密集型)CPU水位>90%
streaming流消息处理(WAL/消息队列替代层)写入吞吐量过高
mix_coordinator协调节点(RootCoord + QueryCoord + DataCoord合并)元数据操作过多

CU (Compute Unit)

CU(计算单元)

CU is the compute unit for Milvus instances, 1 CU ≈ 4GB memory.
cuTypeDescriptionApplicable Scenario
general
General type (CPU:Memory = 1:4)Most scenarios (default)
perf
Performance type (CPU-intensive)Index building, high-concurrency writes
cap
Capacity type (large memory)QueryNode large data search
CU是Milvus实例的计算单位,1 CU ≈ 4GB内存。
cuType描述适用场景
general
通用型(CPU:内存 = 1:4)绝大多数场景(默认)
perf
性能型(CPU密集型)索引构建、高并发写入
cap
容量型(大内存)QueryNode大数据量搜索

Recommended Configuration

推荐配置

  • Development & Testing: Standalone (standalone_pro) + PayAsYouGo, 4 CU (general), ~16GB memory
  • Production: Cluster (HA) + 5 components, 36 CU minimum
    • streaming(2×4CU) + data(2×4CU) + proxy(2×2CU) + mix_coordinator(2×4CU) + query(2×4CU)
  • 开发测试:单机版(standalone_pro)+ 按量付费,4 CU(通用型),约16GB内存
  • 生产环境:集群版(HA)+ 5组件,最低36 CU
    • streaming(2×4CU) + data(2×4CU) + proxy(2×2CU) + mix_coordinator(2×4CU) + query(2×4CU)

⚠️ Component CU Specification Limits

⚠️ 组件CU规格限制

When creating cluster instances, each component has minimum CU requirements:
ComponentMinimum CUNotes
streaming4 CUDoes not support 2 CU
data4 CUDoes not support 2 CU
proxy2 CUSupports 2 CU
mix_coordinator4 CUDoes not support 2 CU
query4 CUDoes not support 2 CU
Error Example: If using 2 CU configuration for streaming/data/mix_coordinator/query, you will get an error:
Error.InternalError code: 500, pricing plan price result not found
Correct Configuration: Ensure streaming, data, mix_coordinator, query use 4 CU or above.
创建集群实例时,每个组件有最低CU要求
组件最低CU备注
streaming4 CU不支持2 CU
data4 CU不支持2 CU
proxy2 CU支持2 CU
mix_coordinator4 CU不支持2 CU
query4 CU不支持2 CU
错误示例:如果为streaming/data/mix_coordinator/query配置2 CU,会收到报错:
Error.InternalError code: 500, pricing plan price result not found
正确配置:确保streaming、data、mix_coordinator、query使用4 CU及以上规格。

Payment Methods

付费方式

  • PayAsYouGo: Development & testing, pay-as-you-go, release anytime
  • Subscription: Production, prepaid more cost-effective (annual/monthly instances cannot be released via API, need to request refund in console)
  • 按量付费(PayAsYouGo):开发测试场景,按使用量付费,可随时释放
  • 包年包月(Subscription):生产场景,预付费更划算(包年包月实例无法通过API释放,需要在控制台申请退款)

Kernel Version

内核版本

Supports 2.3 / 2.4 / 2.5 / 2.6, recommended to use latest version 2.6.
支持2.3 / 2.4 / 2.5 / 2.6版本,推荐使用最新的2.6版本。

Prerequisites

前置条件

Before creating an instance, confirm the target RegionId (e.g.,
cn-hangzhou
) with the user, then check if network resources are ready:
bash
undefined
创建实例前,先和用户确认目标RegionId(例如
cn-hangzhou
),然后检查网络资源是否就绪:
bash
undefined

Set User-Agent environment variable (recommended to set once at session start)

设置User-Agent环境变量(推荐在会话启动时设置一次即可)

export ALIBABA_CLOUD_USER_AGENT="AlibabaCloud-Agent-Skills"
aliyun configure list # Credentials aliyun vpc DescribeVpcs --RegionId <RegionId> # VPC aliyun vpc DescribeVSwitches --RegionId <RegionId> --VpcId vpc-xxx # VSwitch (record ZoneId) aliyun ecs DescribeSecurityGroups --RegionId <RegionId> --VpcId vpc-xxx # Security Group (for reference only)

Milvus CreateInstance doesn't require security group parameters, but confirming a security group exists in the VPC helps troubleshoot network issues.

**Supported Regions**: cn-hangzhou, cn-beijing, cn-shanghai, cn-shenzhen, cn-zhangjiakou, cn-hongkong, cn-wulanchabu, ap-southeast-1, eu-central-1.
export ALIBABA_CLOUD_USER_AGENT="AlibabaCloud-Agent-Skills"
aliyun configure list # 查看凭证 aliyun vpc DescribeVpcs --RegionId <RegionId> # 查看VPC aliyun vpc DescribeVSwitches --RegionId <RegionId> --VpcId vpc-xxx # 查看VSwitch(记录ZoneId) aliyun ecs DescribeSecurityGroups --RegionId <RegionId> --VpcId vpc-xxx # 查看安全组(仅作参考)

Milvus的CreateInstance接口不需要安全组参数,但确认VPC内存在安全组有助于后续排查网络问题。

**支持的地域**:cn-hangzhou, cn-beijing, cn-shanghai, cn-shenzhen, cn-zhangjiakou, cn-hongkong, cn-wulanchabu, ap-southeast-1, eu-central-1。

CLI Calling

CLI调用方式

Milvus OpenAPI (version
2023-10-12
) is called via aliyun CLI REST style, must add
--force
to bypass local path validation.
User-Agent Requirement: Before executing any aliyun command, ensure the environment variable is set:
bash
export ALIBABA_CLOUD_USER_AGENT="AlibabaCloud-Agent-Skills"
⚠️ Critical Limitation: Milvus API has two parameter passing methods, must choose the correct method according to API definition, otherwise the server won't receive parameters.
Three Calling Modes:
bash
undefined
Milvus OpenAPI(版本
2023-10-12
)通过aliyun CLI REST风格调用,**必须添加
--force
**绕过本地路径校验。
User-Agent要求:执行任何aliyun命令前,确保已设置环境变量:
bash
export ALIBABA_CLOUD_USER_AGENT="AlibabaCloud-Agent-Skills"
⚠️ 关键限制:Milvus API有两种参数传递方式,必须根据API定义选择正确的方式,否则服务端将无法接收参数。
三种调用模式
bash
undefined

Mode A — GET / DELETE: All business parameters concatenated to URL query string

模式A — GET / DELETE:所有业务参数拼接在URL查询字符串中

aliyun milvus GET "<path>?RegionId=<region>&param1=value1"
--RegionId <region> --force
aliyun milvus GET "<path>?RegionId=<region>&param1=value1"
--RegionId <region> --force

Mode B — POST / PUT (body type): Business parameters via --body JSON

模式B — POST / PUT(body类型):业务参数通过--body传入JSON

Applicable to: CreateInstance, UpdateInstance

适用接口:CreateInstance, UpdateInstance

aliyun milvus POST "<path>?RegionId=<region>"
--RegionId <region> --body '{"key":"value"}' --force
aliyun milvus POST "<path>?RegionId=<region>"
--RegionId <region> --body '{"key":"value"}' --force

Mode C — POST (query type): Business parameters via --Flag value

模式C — POST(query类型):业务参数通过--Flag value传入

Applicable to: GetInstanceDetail, UpdateInstanceName, DescribeInstanceConfigs,

适用接口:GetInstanceDetail, UpdateInstanceName, DescribeInstanceConfigs,

ModifyInstanceConfig, UpdatePublicNetworkStatus, DescribeAccessControlList,

ModifyInstanceConfig, UpdatePublicNetworkStatus, DescribeAccessControlList,

UpdateAccessControlList, ChangeResourceGroup, CreateDefaultRole

UpdateAccessControlList, ChangeResourceGroup, CreateDefaultRole

aliyun milvus POST "<path>"
--RegionId <region> --InstanceId c-xxx --force

**Rule Summary**:
- `--RegionId <region>`: All requests must include this, used by CLI to route to correct endpoint (`milvus.<region>.aliyuncs.com`)
- **GET / DELETE**: Business parameters concatenated to URL query string (e.g., `?RegionId=xx&instanceId=c-xxx`)
- **POST body type** (CreateInstance / UpdateInstance): Pass JSON with `--body '{...}'`
- **POST query type** (other POST APIs): Business parameters passed with `--Flag value`, **do not use `--body`** (body won't be read by server), **do not concatenate to URL query string** (will cause SignatureDoesNotMatch)
aliyun milvus POST "<path>"
--RegionId <region> --InstanceId c-xxx --force

**规则总结**:
- `--RegionId <region>`:所有请求必须携带,CLI会通过该参数路由到正确的端点(`milvus.<region>.aliyuncs.com`)
- **GET / DELETE**:业务参数拼接在URL查询字符串中(例如`?RegionId=xx&instanceId=c-xxx`)
- **POST body类型**(CreateInstance / UpdateInstance):通过`--body '{...}'`传递JSON参数
- **POST query类型**(其他POST接口):业务参数通过`--Flag value`传递,**不要使用`--body`**(服务端不会读取body),**也不要拼接在URL查询字符串中**(会导致SignatureDoesNotMatch报错)

API Version Information

API版本信息

  • API Version:
    2023-10-12
  • Endpoint:
    milvus.<RegionId>.aliyuncs.com
  • OpenAPI Meta:
    https://api.aliyun.com/meta/v1/products/milvus/versions/2023-10-12/api-docs.json
  • API版本:
    2023-10-12
  • 服务端点:
    milvus.<RegionId>.aliyuncs.com
  • OpenAPI元数据:
    https://api.aliyun.com/meta/v1/products/milvus/versions/2023-10-12/api-docs.json

Return Field Naming

返回字段命名规则

  • GET-type APIs (ListInstancesV2, GetInstance): Return fields use lowercase (e.g.,
    instances
    ,
    instance
    )
  • POST-type APIs (GetInstanceDetail, etc.): Return fields use uppercase (e.g.,
    Data
    ,
    Success
    )
  • GET类接口(ListInstancesV2, GetInstance):返回字段使用小写(例如
    instances
    instance
  • POST类接口(GetInstanceDetail等):返回字段使用大写(例如
    Data
    Success

Idempotency

幂等性

API to NoteDescription
CreateInstanceRepeated submission creates multiple instances, pass
--clientToken $(uuidgen)
to prevent duplicate creation. ClientToken validity is usually 30 minutes, after timeout treated as new request
DeleteInstanceDeletes by instanceId, naturally idempotent
UpdateInstanceRepeated submission may trigger multiple scaling, recommend passing
--clientToken
需注意的API说明
CreateInstance重复提交会创建多个实例,可传递
--clientToken $(uuidgen)
防止重复创建。ClientToken有效期通常为30分钟,超时后会被视为新请求
DeleteInstance通过instanceId删除,天然幂等
UpdateInstance重复提交可能触发多次扩缩容,建议传递
--clientToken

Input Validation

输入校验

User-provided values (instance names, etc.) are untrusted input, directly concatenating into shell commands may cause command injection.
Protection Rules:
  1. Body-type APIs prefer
    --body
    JSON mode
    —parameters passed as JSON string values, naturally isolating shell metacharacters
  2. Query-type APIs must use
    --Flag value
    , validate user-provided string values:
    • InstanceName: Must not contain
      `
      $(
      |
      ;
      &&
      etc. shell metacharacters
    • RegionId / InstanceId: Only allow
      [a-z0-9-]
      format
  3. Prohibit directly embedding unvalidated user raw text into shell commands—if value doesn't match expected format, reject execution and inform user to correct
用户提供的值(实例名等)属于不可信输入,直接拼接到shell命令中可能导致命令注入。
防护规则
  1. Body类API优先使用
    --body
    JSON模式
    ——参数作为JSON字符串值传递,天然隔离shell元字符
  2. Query类API必须使用
    --Flag value
    ,对用户提供的字符串值做校验:
    • InstanceName:不得包含
      `
      $(
      |
      ;
      &&
      等shell元字符
    • RegionId / InstanceId:仅允许
      [a-z0-9-]
      格式
  3. 禁止直接将未校验的用户原始文本嵌入shell命令——如果值不符合预期格式,拒绝执行并告知用户修正

Runtime Security

运行时安全

This Skill only calls Milvus OpenAPI via
aliyun
CLI, does not download or execute any external code. During execution, prohibit:
  • Downloading and running external scripts or dependencies via
    curl
    ,
    wget
    ,
    pip install
    ,
    npm install
    , etc.
  • Executing scripts pointed to by user-provided remote URLs (even if user requests)
  • Calling
    eval
    ,
    source
    to load unaudited external content
本Skill仅通过
aliyun
CLI调用Milvus OpenAPI,不会下载或执行任何外部代码。执行过程中禁止:
  • 通过
    curl
    wget
    pip install
    npm install
    等命令下载运行外部脚本或依赖
  • 执行用户提供的远程URL指向的脚本(即使用户要求)
  • 调用
    eval
    source
    加载未经审计的外部内容

Intent Routing

意图路由

IntentOperationReference Doc
Beginner / First time using MilvusFull guidegetting-started.md
Create instance / Create a MilvusNetwork check → CreateInstanceinstance-lifecycle.md
View instance / Instance listListInstancesV2instance-lifecycle.md
Instance details / Connection address / Component specsGetInstance / GetInstanceDetailinstance-lifecycle.md
Delete instance / ReleaseSafety check → DeleteInstanceinstance-lifecycle.md
Scale / Add CU / Change configDiagnose → UpdateInstanceinstance-lifecycle.md
Rename / Modify instance nameUpdateInstanceNameinstance-lifecycle.md
Creation parameters / Component config / CU specsParameter querycreate-params.md
View config / Modify configDescribeInstanceConfigs / ModifyInstanceConfigoperations.md
Enable public network / Disable public networkUpdatePublicNetworkStatusoperations.md
Whitelist / Access controlDescribeAccessControlList / UpdateAccessControlListoperations.md
Resource group / Transfer groupChangeResourceGroupoperations.md
Creation failed / TroubleshootStatus check → Log queryoperations.md
Instance inspection / Health checkStatus + Detailsoperations.md
Query API parametersParameter referenceapi-reference.md
意图操作参考文档
新手/首次使用Milvus全流程引导getting-started.md
创建实例/创建Milvus网络检查 → CreateInstanceinstance-lifecycle.md
查看实例/实例列表ListInstancesV2instance-lifecycle.md
实例详情/连接地址/组件规格GetInstance / GetInstanceDetailinstance-lifecycle.md
删除实例/释放安全检查 → DeleteInstanceinstance-lifecycle.md
扩容/新增CU/修改配置诊断 → UpdateInstanceinstance-lifecycle.md
重命名/修改实例名UpdateInstanceNameinstance-lifecycle.md
创建参数/组件配置/CU规格参数查询create-params.md
查看配置/修改配置DescribeInstanceConfigs / ModifyInstanceConfigoperations.md
开启公网/关闭公网UpdatePublicNetworkStatusoperations.md
白名单/访问控制DescribeAccessControlList / UpdateAccessControlListoperations.md
资源组/转移分组ChangeResourceGroupoperations.md
创建失败/故障排查状态检查 → 日志查询operations.md
实例巡检/健康检查状态+详情查询operations.md
查询API参数参数参考api-reference.md

Destructive Operation Protection

破坏性操作防护

The following operations are irreversible, must complete pre-check and confirm with user before execution:
APIPre-check StepsImpact
DeleteInstance1. GetInstance confirm instance exists and status 2. Confirm payment type (Subscription cannot be deleted via API) 3. Confirm data backed up or not neededPermanently delete instance and all data
ModifyInstanceConfig1. DescribeInstanceConfigs view current config 2. Confirm user understands config change impact 3. Confirm user knows may need restart to take effectConfig change may affect service stability
UpdatePublicNetworkStatus (disable)1. Confirm no external services depend on public network address 2. Confirm user understands public network becomes inaccessible after disableServices depending on public network will disconnect after disabling
Confirmation template:
About to execute:
<API>
, Target:
<InstanceId>
, Impact:
<Description>
. Continue?
以下操作不可逆,执行前必须完成预检查并和用户确认:
API预检查步骤影响
DeleteInstance1. 调用GetInstance确认实例存在且状态正常 2. 确认付费类型(包年包月实例无法通过API删除)3. 确认数据已备份或无需保留永久删除实例及所有数据
ModifyInstanceConfig1. 调用DescribeInstanceConfigs查看当前配置 2. 确认用户了解配置变更的影响 3. 确认用户知晓可能需要重启才能生效配置变更可能影响服务稳定性
UpdatePublicNetworkStatus(关闭公网)1. 确认没有外部服务依赖公网地址 2. 确认用户了解关闭后公网将无法访问关闭后依赖公网的服务会断开连接
确认模板:
即将执行:
<API>
,目标实例:
<InstanceId>
,影响:
<Description>
。是否继续?

Timeout

超时设置

All CLI calls must set reasonable timeout to avoid Agent infinitely waiting:
Operation TypeRecommended TimeoutDescription
Read-only query (GetInstance / ListInstancesV2 / GetInstanceDetail)30 secondsNormally returns within seconds
Write operation (CreateInstance / DeleteInstance)60 secondsSubmitting request itself is fast, backend executes asynchronously
Polling wait (instance creation complete)Single 30 seconds, total max 30 minutesInstance creation usually 5-15 minutes, recommend 30 second polling interval
Use
--read-timeout
and
--connect-timeout
to control CLI timeout (unit: seconds):
bash
aliyun milvus GET "/webapi/instance/get?RegionId=cn-hangzhou&instanceId=c-xxx" \
  --RegionId cn-hangzhou --read-timeout 30 --connect-timeout 10 --force
所有CLI调用必须设置合理的超时时间,避免Agent无限等待:
操作类型推荐超时时间说明
只读查询(GetInstance / ListInstancesV2 / GetInstanceDetail)30秒通常几秒内返回
写入操作(CreateInstance / DeleteInstance)60秒请求提交本身很快,后端为异步执行
轮询等待(实例创建完成)单次30秒,总最长30分钟实例创建通常需要5-15分钟,推荐30秒轮询间隔
使用
--read-timeout
--connect-timeout
控制CLI超时时间(单位:秒):
bash
aliyun milvus GET "/webapi/instance/get?RegionId=cn-hangzhou&instanceId=c-xxx" \
  --RegionId cn-hangzhou --read-timeout 30 --connect-timeout 10 --force

Pagination

分页处理

ListInstancesV2 uses
pageNumber
and
pageSize
parameters:
bash
aliyun milvus GET "/webapi/instance/list?RegionId=cn-hangzhou&pageNumber=1&pageSize=50" \
  --RegionId cn-hangzhou --force
⚠️ Important: API returned
total
field may be inaccurate (actual test returns 0 but
instances
array has data). Should directly check
instances
array length
, not rely on
total
field.
ListInstancesV2使用
pageNumber
pageSize
参数:
bash
aliyun milvus GET "/webapi/instance/list?RegionId=cn-hangzhou&pageNumber=1&pageSize=50" \
  --RegionId cn-hangzhou --force
⚠️ 重要:API返回的
total
字段可能不准确(实际测试返回0但
instances
数组有数据)。应该直接检查
instances
数组长度
,不要依赖
total
字段。

Output

输出规范

  • Display list in table with key fields (instanceId, instanceName, status, dbVersion, ha, paymentType)
  • Convert timestamps to readable format
  • Use
    --cli-query
    or
    jq
    to filter fields and simplify output
  • 使用表格展示列表,包含关键字段(instanceId、instanceName、status、dbVersion、ha、paymentType)
  • 将时间戳转换为可读格式
  • 使用
    --cli-query
    jq
    过滤字段,简化输出

Error Handling

错误处理

Cloud API errors need to provide useful information to help Agent understand failure reason and take correct action, not just retry blindly.
Error CodeReasonAgent Should Execute
ThrottlingAPI request rate exceededWait 5-10 seconds then retry, max 3 retries; if持续限流, increase interval to 30 seconds
InvalidRegionIdRegion ID incorrectCheck RegionId spelling (e.g.,
cn-hangzhou
not
hangzhou
), confirm target region with user
Instance.NotFound / InvalidInstanceIdInstance doesn't exist or already deletedUse ListInstancesV2 to search correct instanceId, confirm with user
IncompleteSignature / InvalidAccessKeyIdCredentials wrong or expiredPrompt user to execute
aliyun configure list
to check credential config
Forbidden.RAMRAM permission insufficientInform user of missing permission Action, suggest contacting admin for authorization
InvalidParameter / MissingParameterParameter invalid or missingRead specific field name from error Message, correct parameter and retry
OperationDeniedOperation rejected (e.g., instance status doesn't allow)Use GetInstance to view current status, inform user to wait for status change then retry
OperationDenied.SubscriptionAnnual/monthly instance cannot be released via APIInform user need to request refund in console to release
Error.InternalError (pricing plan price result not found)Component CU spec not supportedCheck if each component CU count meets minimum limit: streaming/data/mix_coordinator/query need 4 CU minimum
InternalError (general)Server internal error, various reasons1. Check if VPC/VSwitch actually exists in target RegionId 2. Confirm account has enabled Milvus service (check console access) 3. Confirm account balance sufficient and not overdue 4. If retry still fails, record RequestId and submit ticket for investigation
General Principle: When encountering error, first read complete error Message (usually contains specific reason), don't just look at error code and blindly retry. Only Throttling is suitable for automatic retry, other errors need diagnosis and correction.
云API报错需要提供有用信息,帮助Agent理解失败原因并采取正确行动,不要盲目重试。
错误码原因Agent应执行操作
ThrottlingAPI请求速率超过限制等待5-10秒后重试,最多重试3次;如果持续限流,将间隔提升到30秒
InvalidRegionId地域ID不正确检查RegionId拼写(例如是
cn-hangzhou
不是
hangzhou
),和用户确认目标地域
Instance.NotFound / InvalidInstanceId实例不存在或已被删除调用ListInstancesV2搜索正确的instanceId,和用户确认
IncompleteSignature / InvalidAccessKeyId凭证错误或过期提示用户执行
aliyun configure list
检查凭证配置
Forbidden.RAMRAM权限不足告知用户缺少的权限Action,建议联系管理员授权
InvalidParameter / MissingParameter参数无效或缺失从错误Message中读取具体字段名,修正参数后重试
OperationDenied操作被拒绝(例如实例状态不允许)调用GetInstance查看当前状态,告知用户等待状态变更后重试
OperationDenied.Subscription包年包月实例无法通过API释放告知用户需要在控制台申请退款才能释放
Error.InternalError(pricing plan price result not found)组件CU规格不支持检查每个组件的CU数量是否满足最低限制:streaming/data/mix_coordinator/query最低需要4 CU
InternalError(通用)服务端内部错误,原因多样1. 检查目标RegionId下是否确实存在VPC/VSwitch 2. 确认账号已开通Milvus服务(检查控制台是否可以访问)3. 确认账号余额充足且未欠费 4. 如果重试仍失败,记录RequestId提交工单排查
通用原则:遇到错误时,首先读取完整的错误Message(通常包含具体原因),不要只看错误码就盲目重试。只有Throttling错误适合自动重试,其他错误都需要先诊断修正。