工具:list_clusters
列出 Memorystore for Redis Cluster 中的所有集群。
以下示例演示了如何使用 curl 调用 list_clusters MCP 工具。
| Curl 请求 |
|---|
curl --location 'https://redis.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "list_clusters", "arguments": { // provide these details according to the tool's MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
输入架构
对 ListClusters 的请求。
ListClustersRequest
| JSON 表示法 |
|---|
{ "parent": string, "pageSize": integer, "pageToken": string } |
| 字段 | |
|---|---|
parent |
必需。集群位置的资源名称,格式为 |
pageSize |
需要返回的最大项数。 如果未指定,则服务将使用默认值 1000。无论 page_size 值如何,响应都可能包含部分列表,并且调用方应该只依赖于响应的 |
pageToken |
从上一个 |
输出架构
对 ListClusters 的响应。
ListClustersResponse
| JSON 表示法 |
|---|
{
"clusters": [
{
object ( |
| 字段 | |
|---|---|
clusters[] |
项目中指定位置或所有位置的 Redis 集群列表。 如果请求的父字段中的 |
nextPageToken |
用于检索下一页结果的令牌。如果列表中没有更多结果,则为空。 |
unreachable[] |
无法到达的位置。 |
集群
| JSON 表示法 |
|---|
{ "name": string, "createTime": string, "state": enum ( |
| 字段 | |
|---|---|
name |
必需。标识符。此范围内资源采用以下形式的非重复名称,包括项目和位置: |
createTime |
仅限输出。与集群创建请求相关联的时间戳。 采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 Z),并使用 0、3、6 或 9 个小数位。不带“Z”的偏差时间也是可以接受的。示例: |
state |
仅限输出。相应集群的当前状态。可以是 CREATING、READY、UPDATING、DELETING 和 SUSPENDED |
uid |
仅限输出。系统为集群分配的唯一标识符。 |
authorizationMode |
可选。Redis 集群的授权模式。如果未提供,则为集群停用身份验证功能。 |
transitEncryptionMode |
可选。Redis 集群的传输加密。如果未提供,则系统会为集群停用加密功能。 |
pscConfigs[] |
可选。每个 PscConfig 都会配置使用方网络,其中 IP 将指定给集群,以便通过 Private Service Connect 自动化功能进行客户端访问。目前,仅支持一个 PscConfig。 |
discoveryEndpoints[] |
仅限输出。在每个指定网络上创建的端点,供 Redis 客户端连接到集群。目前仅支持一个发现端点。 |
pscConnections[] |
仅限输出。通过服务连接自动化自动创建的 PSC 连接的列表。 |
stateInfo |
仅限输出。有关集群当前状态的其他信息。 |
nodeType |
可选。集群中 Redis 节点的类型。NodeType 决定了 Redis 节点的底层机器类型。 |
persistenceConfig |
可选。集群的持久性配置(RDB、AOF)。 |
redisConfigs |
可选。可变 Redis 配置的客户替换项的键值对 包含一系列 |
zoneDistributionConfig |
可选。此配置将用于确定客户希望我们在区域内如何分配集群资源。 |
crossClusterReplicationConfig |
可选。跨集群复制配置。 |
pscServiceAttachments[] |
仅限输出。用于配置 PSC 连接的服务连接详情 |
clusterEndpoints[] |
可选。集群端点的列表。 |
automatedBackupConfig |
可选。集群的自动备份配置。 |
encryptionInfo |
仅限输出。集群静态数据的加密信息。 |
availableMaintenanceVersions[] |
仅限输出。此字段用于确定自助更新可用的维护版本。 |
allowFewerZonesDeployment |
可选。不可变。已弃用,请勿使用。 |
labels |
可选。用于表示用户提供的元数据的标签。 包含一系列 |
aclPolicy |
可选。要应用于集群的 ACL 政策。 |
联合字段 import_sources。要从中导入的来源。import_sources 只能是下列其中一项: |
|
gcsSource |
可选。存储在 Cloud Storage 存储分区中的备份。Cloud Storage 存储分区需要与集群位于同一区域。需要读取权限才能从提供的 Cloud Storage 对象导入数据。 |
managedBackupSource |
可选。由 Memorystore 服务生成和管理的备份。 |
联合字段
|
|
replicaCount |
可选。每个分片的副本节点数。 |
联合字段
|
|
sizeGb |
仅限输出。整个集群的 Redis 内存大小(以 GB 为单位),向上舍入为下一个整数。 |
联合字段
|
|
shardCount |
可选。Redis 集群的分片数。 |
联合字段
|
|
preciseSizeGb |
仅限输出。整个集群的 Redis 内存大小(以 GB 为单位)的精确值。 |
联合字段
|
|
deletionProtectionEnabled |
可选。当该值设置为 true 时,删除操作将失败。 |
联合字段
|
|
maintenancePolicy |
可选。ClusterMaintenancePolicy 决定了何时允许或拒绝更新。 |
联合字段
|
|
maintenanceSchedule |
仅限输出。ClusterMaintenanceSchedule 仅限输出已发布的维护时间表。 |
联合字段
|
|
satisfiesPzs |
可选。仅限输出。留待将来使用。 |
联合字段
|
|
satisfiesPzi |
可选。仅限输出。留待将来使用。 |
联合字段
|
|
simulateMaintenanceEvent |
可选。仅限输入。模拟维护事件。 |
联合字段
|
|
backupCollection |
可选。仅限输出。备份集合的完整资源名称。示例:projects/{project}/locations/{location}/backupCollections/{collection} |
联合字段
|
|
kmsKey |
可选。用于加密集群静态数据的 KMS 密钥。 |
联合字段
|
|
ondemandMaintenance |
可选。仅限输入。集群的按需维护。此字段可用于触发集群上的按需关键更新。 |
联合字段
|
|
asyncClusterEndpointsDeletionEnabled |
可选。如果为 true,则客户创建和注册的集群端点可以异步删除。也就是说,可以在删除集群端点中的转发规则之前,先取消注册此类集群端点。 |
联合字段
|
|
maintenanceVersion |
可选。此字段可用于触发自助更新,以指示所需的维护版本。此字段的输入可由 available_maintenance_versions 字段确定。 |
联合字段
|
|
effectiveMaintenanceVersion |
仅限输出。此字段表示集群的实际维护版本。 |
联合字段
|
|
serverCaMode |
可选。集群的服务器 CA 模式。 |
联合字段
|
|
serverCaPool |
可选。集群的客户管理的 CA 池。仅适用于 BYOCA,即当 server_ca_mode 为 SERVER_CA_MODE_CUSTOMER_MANAGED_CAS_CA 时。格式:“projects/{project}/locations/区域/caPools/{ca_pool}”。 |
联合字段
|
|
rotateServerCertificate |
可选。仅限输入。轮替服务器证书。 |
联合字段
|
|
aclPolicyInSync |
可选。仅限输出。指示应用于集群的 ACL 规则是否与最新的 ACL 政策规则同步。仅当为集群设置了 ACL 政策时,此字段才适用。 |
GcsBackupSource
| JSON 表示法 |
|---|
{ "uris": [ string ] } |
| 字段 | |
|---|---|
uris[] |
可选。要导入的 Cloud Storage 对象的 URI。示例:gs://bucket1/object1、gs://bucket2/folder2/object2 |
ManagedBackupSource
| JSON 表示法 |
|---|
{ "backup": string } |
| 字段 | |
|---|---|
backup |
可选。示例://redis.googleapis.com/projects/{project}/locations/{location}/backupCollections/{collection}/backups/{backup} 系统还支持较短版本的备份名称(不带前缀),例如 projects/{project}/locations/{location}/backupCollections/{collection}/backups/{backup_id} 在这种情况下,系统会假定备份位于 redis.googleapis.com 下。 |
时间戳
| JSON 表示法 |
|---|
{ "seconds": string, "nanos": integer } |
| 字段 | |
|---|---|
seconds |
表示世界协调时间 (UTC) 的秒数(从 Unix 纪元 1970-01-01T00:00:00Z 开始算起)。必须介于 -62135596800 到 253402300799 之间(含边界值),对应于 0001-01-01T00:00:00Z 到 9999-12-31T23:59:59Z。 |
nanos |
秒数的非负小数部分(以纳秒为单位)。此字段是时长的纳秒部分,而不是秒的替代项。对于含小数部分的负秒数,仍必须包含按时间递升的非负纳秒值。必须在 0 到 999,999,999 之间(含边界值)。 |
PscConfig
| JSON 表示法 |
|---|
{ "network": string } |
| 字段 | |
|---|---|
network |
必需。将预留发现端点 IP 地址的网络,格式为 projects/{network_project}/global/networks/{network_id}。 |
DiscoveryEndpoint
| JSON 表示法 |
|---|
{
"address": string,
"port": integer,
"pscConfig": {
object ( |
| 字段 | |
|---|---|
address |
仅限输出。客户端用于连接到服务的公开 Redis 端点的地址。该地址可以是 IP 地址,也可以是主机名。 |
port |
仅限输出。公开 Redis 端点的端口号。 |
pscConfig |
仅限输出。客户配置,用于指定端点的创建位置和访问位置。 |
PscConnection
| JSON 表示法 |
|---|
{ "pscConnectionId": string, "address": string, "forwardingRule": string, "projectId": string, "network": string, "serviceAttachment": string, "pscConnectionStatus": enum ( |
| 字段 | |
|---|---|
pscConnectionId |
必需。连接到服务连接的转发规则的 PSC 连接 ID。 |
address |
必需。为 PSC 转发规则分配的使用方网络中的 IP。 |
forwardingRule |
必需。使用方转发规则的 URI。示例:projects/{projectNumOrId}/区域/us-east1/forwardingRules/{resourceId}。 |
projectId |
可选。创建转发规则的使用方项目的项目 ID。 |
network |
必需。IP 地址所在的消费方网络,格式为 projects/{project_id}/global/networks/{network_id}。 |
serviceAttachment |
必需。作为 PSC 连接的目标的服务连接,采用 projects/{project-id}/区域/区域/serviceAttachments/{service-attachment-id} 格式。 |
pscConnectionStatus |
仅限输出。PSC 连接的状态。请注意,此值会定期更新。如需了解 PSC 连接的最新状态,请访问 https://cloud.google.com/vpc/docs/configure-private-service-connect-services#endpoint-details。 |
connectionType |
仅限输出。PSC 连接的类型。 |
联合字段 ports。公开的发现端点的端口号。ports 只能是下列其中一项: |
|
port |
仅限输出。端口仅会针对主/读取器或发现端点进行设置。 |
StateInfo
| JSON 表示法 |
|---|
{ // Union field |
| 字段 | |
|---|---|
联合字段
|
|
updateInfo |
当集群状态为 UPDATING 时,描述集群上正在进行的更新。 |
UpdateInfo
| JSON 表示法 |
|---|
{ // Union field |
| 字段 | |
|---|---|
联合字段
|
|
targetShardCount |
Redis 集群的目标分片数 |
联合字段
|
|
targetReplicaCount |
每个分片的副本节点的目标数量。 |
联合字段
|
|
targetNodeType |
Redis 集群的目标节点类型。 |
ClusterPersistenceConfig
| JSON 表示法 |
|---|
{ "mode": enum ( |
| 字段 | |
|---|---|
mode |
可选。持久性模式。 |
rdbConfig |
可选。RDB 配置。如果模式不是 RDB,系统会忽略此字段。 |
aofConfig |
可选。AOF 配置。如果模式不是 AOF,系统会忽略此字段。 |
RDBConfig
| JSON 表示法 |
|---|
{
"rdbSnapshotPeriod": enum ( |
| 字段 | |
|---|---|
rdbSnapshotPeriod |
可选。RDB 快照之间的间隔时长。 |
rdbSnapshotStartTime |
可选。首次尝试拍摄快照的时间,以及未来快照将对齐的时间。如果未提供,则使用当前时间。 采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 Z),并使用 0、3、6 或 9 个小数位。不带“Z”的偏差时间也是可以接受的。示例: |
AOFConfig
| JSON 表示法 |
|---|
{
"appendFsync": enum ( |
| 字段 | |
|---|---|
appendFsync |
可选。fsync 配置。 |
RedisConfigsEntry
| JSON 表示法 |
|---|
{ "key": string, "value": string } |
| 字段 | |
|---|---|
key |
|
value |
|
ZoneDistributionConfig
| JSON 表示法 |
|---|
{
"mode": enum ( |
| 字段 | |
|---|---|
mode |
可选。可用区分布模式。如果未指定,则默认为 MULTI_ZONE。 |
zone |
可选。选择“单可用区”分布后,系统会使用可用区字段在该可用区中分配所有资源。这不适用于 MULTI_ZONE,对于 MULTI_ZONE 集群,系统会忽略此字段。 |
CrossClusterReplicationConfig
| JSON 表示法 |
|---|
{ "clusterRole": enum ( |
| 字段 | |
|---|---|
clusterRole |
仅限输出。集群在跨集群复制中的角色。 |
primaryCluster |
用作相应次要集群的复制源的主要集群的详细信息。 此字段仅针对辅助集群设置。 |
secondaryClusters[] |
正在从此主要集群复制数据的次要集群的列表。 此字段仅针对主集群设置。 |
updateTime |
仅限输出。上次更新跨集群复制配置的时间。 采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 Z),并使用 0、3、6 或 9 个小数位。不带“Z”的偏差时间也是可以接受的。示例: |
membership |
仅限输出。仅显示参与跨集群复制的所有成员集群的输出视图。每个成员集群(无论其集群角色是主集群还是次要集群)都会提供此视图。 主集群可以提供有关从其复制数据的所有次要集群的信息。不过,次要集群只知道它正在复制的主集群。不过,在主集群不可用的情况下(例如区域性服务中断),可以将 GetCluster 请求发送到任何其他成员集群,并且此字段将列出参与跨集群复制的所有成员集群。 |
RemoteCluster
| JSON 表示法 |
|---|
{ "cluster": string, "uid": string } |
| 字段 | |
|---|---|
cluster |
仅限输出。远程集群的完整资源路径,格式为:projects/ |
uid |
仅限输出。远程集群的唯一标识符。 |
成员
| JSON 表示法 |
|---|
{ "primaryCluster": { object ( |
| 字段 | |
|---|---|
primaryCluster |
仅限输出。充当次要集群复制源的主要集群。 |
secondaryClusters[] |
仅限输出。从主集群复制数据的次要集群的列表。 |
ClusterMaintenancePolicy
| JSON 表示法 |
|---|
{
"createTime": string,
"updateTime": string,
"weeklyMaintenanceWindow": [
{
object ( |
| 字段 | |
|---|---|
createTime |
仅限输出。政策(即维护窗口或拒绝期)的创建时间。 采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 Z),并使用 0、3、6 或 9 个小数位。不带“Z”的偏差时间也是可以接受的。示例: |
updateTime |
仅限输出。政策(即维护窗口或拒绝期)的更新时间。 采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 Z),并使用 0、3、6 或 9 个小数位。不带“Z”的偏差时间也是可以接受的。示例: |
weeklyMaintenanceWindow[] |
可选。应用于相应政策所涵盖资源的维护窗口。最小值为 1。对于当前版本,weekly_maintenance_window 的最大数量应为 1。 |
ClusterWeeklyMaintenanceWindow
| JSON 表示法 |
|---|
{ "day": enum ( |
| 字段 | |
|---|---|
day |
可选。允许定义在每周指定日期运行的时间表。 |
startTime |
可选。时间段的开始时间(以世界协调时间 [UTC] 表示)。 |
TimeOfDay
| JSON 表示法 |
|---|
{ "hours": integer, "minutes": integer, "seconds": integer, "nanos": integer } |
| 字段 | |
|---|---|
hours |
一天中的小时(采用 24 小时制)。必须大于或等于 0,且通常必须小于或等于 23。对于业务结束时间等场景,API 可以选择允许“24:00:00”一值。 |
minutes |
一小时中的分钟数。必须大于或等于 0,且小于或等于 59。 |
seconds |
一分钟中的秒数。必须大于或等于 0,通常必须小于或等于 59。如果 API 允许闰秒,则 API 可以允许 60 一值。 |
nanos |
秒数的小数部分(以纳秒为单位)。必须大于或等于 0,且小于或等于 999,999,999。 |
ClusterMaintenanceSchedule
| JSON 表示法 |
|---|
{ "startTime": string, "endTime": string } |
| 字段 | |
|---|---|
startTime |
仅限输出。此实例的任何近期维护的开始时间。 采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 Z),并使用 0、3、6 或 9 个小数位。不带“Z”的偏差时间也是可以接受的。示例: |
endTime |
仅限输出。此实例的任何近期维护的结束时间。 采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 Z),并使用 0、3、6 或 9 个小数位。不带“Z”的偏差时间也是可以接受的。示例: |
PscServiceAttachment
| JSON 表示法 |
|---|
{
"serviceAttachment": string,
"connectionType": enum ( |
| 字段 | |
|---|---|
serviceAttachment |
仅限输出。您自行创建的 PscConnection 应使用的服务连接 URI 作为目标 |
connectionType |
仅限输出。指向相应服务连接的 PSC 连接的类型。 |
ClusterEndpoint
| JSON 表示法 |
|---|
{
"connections": [
{
object ( |
| 字段 | |
|---|---|
connections[] |
必需。一组 PSC 连接。它们是在同一 VPC 网络中创建的,集群中的每个服务连接对应一个。 |
ConnectionDetail
| JSON 表示法 |
|---|
{ // Union field |
| 字段 | |
|---|---|
联合字段 connection。与集群的 PSC 连接可以在集群创建期间通过服务连接自动化功能(自动注册的连接)创建,也可以由客户自行创建(用户注册的连接)。connection 只能是下列其中一项: |
|
pscAutoConnection |
通过服务连接自动化功能创建的 PSC 连接的详细信息。 |
pscConnection |
由集群所有者客户创建的 PSC 连接的详细信息。 |
PscAutoConnection
| JSON 表示法 |
|---|
{ "pscConnectionId": string, "address": string, "forwardingRule": string, "projectId": string, "network": string, "serviceAttachment": string, "pscConnectionStatus": enum ( |
| 字段 | |
|---|---|
pscConnectionId |
仅限输出。连接到服务连接的转发规则的 PSC 连接 ID。 |
address |
仅限输出。为 PSC 转发规则分配的使用方网络中的 IP。 |
forwardingRule |
仅限输出。使用方转发规则的 URI。示例:projects/{projectNumOrId}/区域/us-east1/forwardingRules/{resourceId}。 |
projectId |
必需。创建转发规则的使用方项目 ID。 |
network |
必需。IP 地址所在的消费方网络,格式为 projects/{project_id}/global/networks/{network_id}。 |
serviceAttachment |
仅限输出。作为 PSC 连接的目标的服务连接,采用 projects/{project-id}/区域/区域/serviceAttachments/{service-attachment-id} 格式。 |
pscConnectionStatus |
仅限输出。PSC 连接的状态。请注意,此值会定期更新。请使用 Private Service Connect API 获取最新状态。 |
connectionType |
仅限输出。PSC 连接的类型。 |
AutomatedBackupConfig
| JSON 表示法 |
|---|
{ "automatedBackupMode": enum ( |
| 字段 | |
|---|---|
automatedBackupMode |
可选。自动备份模式。如果该模式处于停用状态,系统会忽略其他字段。 |
联合字段 schedule。自动备份的时间表。schedule 只能是下列其中一项: |
|
fixedFrequencySchedule |
可选。以固定频率触发自动备份。 |
联合字段
|
|
retention |
可选。自动备份在被删除之前的保留时长。该值应介于 1 天到 365 天之间。如果未指定,则默认值为 35 天。 该时长以秒为单位,最多包含九个小数位,以“ |
FixedFrequencySchedule
| JSON 表示法 |
|---|
{ // Union field |
| 字段 | |
|---|---|
联合字段
|
|
startTime |
必需。每次自动备份的开始时间(以世界协调时间 [UTC] 表示)。必须设置为某个小时的开始时间。此字段是必填字段。 |
时长
| JSON 表示法 |
|---|
{ "seconds": string, "nanos": integer } |
| 字段 | |
|---|---|
seconds |
时间段的带符号秒数。必须介于 -315,576,000,000 到 +315,576,000,000 之间(含边界值)。注意:这些界限的计算依据是:60 秒/分钟 * 60 分钟/小时 * 24 小时/天 * 365.25 天/年 * 10000 年 |
nanos |
时间跨度的有符号秒数小数部分(以纳秒为单位)。小于 1 秒的时长用 0 |
EncryptionInfo
| JSON 表示法 |
|---|
{ "encryptionType": enum ( |
| 字段 | |
|---|---|
encryptionType |
仅限输出。加密类型。 |
kmsKeyVersions[] |
仅限输出。用于保护静态数据的 KMS 密钥版本。 |
kmsKeyPrimaryState |
仅限输出。系统感知到的 KMS 密钥主要版本状态。此字段不会填充在备份中。 |
lastUpdateTime |
仅限输出。加密信息最近一次更新的时间。 采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 Z),并使用 0、3、6 或 9 个小数位。不带“Z”的偏差时间也是可以接受的。示例: |
LabelsEntry
| JSON 表示法 |
|---|
{ "key": string, "value": string } |
| 字段 | |
|---|---|
key |
|
value |
|
工具注解
破坏性提示:❌ | 等幂性提示:✅ | 只读提示:✅ | 开放世界提示:❌