- 创建一个新的 Geo 站点
- 检索所有 Geo 站点的配置
- 检索特定 Geo 站点的配置
- 编辑 Geo 站点
- 删除 Geo 站点
- 修复 Geo 站点
- 检索所有 Geo 站点的状态
- 检索特定 Geo 站点的状态
{{< details >}}
-
Tier: 专业版,旗舰版
-
Offering: 私有化部署
{{< /details >}}
{{< history >}}
- 引入于极狐GitLab 16.0。
{{< /history >}}
使用 Geo 站点 API 管理 Geo 站点端点。
先决条件:
- 你必须是一名管理员。
创建一个新的 Geo 站点
创建一个新的 Geo 站点。
POST /geo_sites
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://primary.example.com/api/v4/geo_sites" \
--request POST \
-d "name=himynameissomething" \
-d "url=https://another-node.example.com/"
属性 | 类型 | 必需 | 描述 |
---|---|---|---|
primary |
boolean | 否 | 指定此站点是否为主站点。默认为 false。 |
enabled |
boolean | 否 | FLAG 表示 Geo 站点是否启用。默认为 true。 |
name |
string | 是 | Geo 站点的唯一标识符。如果在 gitlab.rb 中设置了 geo_node_name ,则必须匹配,否则必须匹配 external_url 。 |
url |
string | 是 | Geo 站点的用户可访问 URL。 |
internal_url |
string | 否 | 主站点定义的 URL,次站点应使用它进行联系。如果未设置,返回 url 。 |
files_max_capacity |
integer | 否 | 控制次站点的 LFS/附件回填的最大并发量。默认为 10。 |
repos_max_capacity |
integer | 否 | 控制次站点的代码库回填的最大并发量。默认为 25。 |
verification_max_capacity |
integer | 否 | 控制此站点的代码库验证最大并发量。默认为 100。 |
container_repositories_max_capacity |
integer | 否 | 控制此站点的容器代码库同步最大并发量。默认为 10。 |
sync_object_storage |
boolean | 否 | FLAG 表示次 Geo 站点是否应复制对象存储中的 blobs。默认为 false。 |
selective_sync_type |
string | 否 | 仅限于特定群组或分片进行同步。有效值:"namespaces" ,"shards" 或 null 。 |
selective_sync_shards |
array | 否 |
selective_sync_type == shards 时同步项目的软件包存储。 |
selective_sync_namespace_ids |
array | 否 |
selective_sync_type == namespaces 时应同步的群组 ID。 |
minimum_reverification_interval |
integer | 否 | 代码库验证有效的间隔(以天为单位)。过期后重新验证。在次站点设置时无效。 |
示例响应:
{
"id": 3,
"name": "Test Site 1",
"url": "https://secondary.example.com/",
"internal_url": "https://secondary.example.com/",
"primary": false,
"enabled": true,
"current": false,
"files_max_capacity": 10,
"repos_max_capacity": 25,
"verification_max_capacity": 100,
"container_repositories_max_capacity": 10,
"selective_sync_type": "namespaces",
"selective_sync_shards": [],
"selective_sync_namespace_ids": [1, 25],
"minimum_reverification_interval": 7,
"sync_object_storage": false,
"web_edit_url": "https://primary.example.com/admin/geo/sites/3/edit",
"web_geo_replication_details_url": "https://secondary.example.com/admin/geo/sites/3/replication/lfs_objects",
"_links": {
"self": "https://primary.example.com/api/v4/geo_sites/3",
"status": "https://primary.example.com/api/v4/geo_sites/3/status",
"repair": "https://primary.example.com/api/v4/geo_sites/3/repair"
}
}
检索所有 Geo 站点的配置
GET /geo_sites
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://primary.example.com/api/v4/geo_sites"
示例响应:
[
{
"id": 1,
"name": "us-site",
"url": "https://primary.example.com/",
"internal_url": "https://internal.example.com/",
"primary": true,
"enabled": true,
"current": true,
"files_max_capacity": 10,
"repos_max_capacity": 25,
"verification_max_capacity": 100,
"container_repositories_max_capacity": 10,
"selective_sync_type": "namespaces",
"selective_sync_shards": [],
"selective_sync_namespace_ids": [1, 25],
"minimum_reverification_interval": 7,
"web_edit_url": "https://primary.example.com/admin/geo/sites/1/edit",
"_links": {
"self": "https://primary.example.com/api/v4/geo_sites/1",
"status":"https://primary.example.com/api/v4/geo_sites/1/status",
"repair":"https://primary.example.com/api/v4/geo_sites/1/repair"
}
},
{
"id": 2,
"name": "cn-site",
"url": "https://secondary.example.com/",
"internal_url": "https://secondary.example.com/",
"primary": false,
"enabled": true,
"current": false,
"files_max_capacity": 10,
"repos_max_capacity": 25,
"verification_max_capacity": 100,
"container_repositories_max_capacity": 10,
"selective_sync_type": "namespaces",
"selective_sync_shards": [],
"selective_sync_namespace_ids": [1, 25],
"minimum_reverification_interval": 7,
"sync_object_storage": true,
"web_edit_url": "https://primary.example.com/admin/geo/sites/2/edit",
"web_geo_replication_details_url": "https://secondary.example.com/admin/geo/sites/2/replication/lfs_objects",
"_links": {
"self":"https://primary.example.com/api/v4/geo_sites/2",
"status":"https://primary.example.com/api/v4/geo_sites/2/status",
"repair":"https://primary.example.com/api/v4/geo_sites/2/repair"
}
}
]
检索特定 Geo 站点的配置
GET /geo_sites/:id
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://primary.example.com/api/v4/geo_sites/1"
示例响应:
{
"id": 1,
"name": "us-site",
"url": "https://primary.example.com/",
"internal_url": "https://primary.example.com/",
"primary": true,
"enabled": true,
"current": true,
"files_max_capacity": 10,
"repos_max_capacity": 25,
"verification_max_capacity": 100,
"container_repositories_max_capacity": 10,
"selective_sync_type": "namespaces",
"selective_sync_shards": [],
"selective_sync_namespace_ids": [1, 25],
"minimum_reverification_interval": 7,
"web_edit_url": "https://primary.example.com/admin/geo/sites/1/edit",
"_links": {
"self": "https://primary.example.com/api/v4/geo_sites/1",
"status":"https://primary.example.com/api/v4/geo_sites/1/status",
"repair":"https://primary.example.com/api/v4/geo_sites/1/repair"
}
}
编辑 Geo 站点
更新现有 Geo 站点的设置。
PUT /geo_sites/:id
属性 | 类型 | 必需 | 描述 |
---|---|---|---|
id |
integer | 是 | Geo 站点的 ID。 |
enabled |
boolean | 否 | FLAG 表示 Geo 站点是否启用。 |
name |
string | 否 | Geo 站点的唯一标识符。如果在 gitlab.rb 中设置了 geo_node_name ,则必须匹配,否则必须匹配 external_url 。 |
url |
string | 否 | Geo 站点的用户可访问 URL。 |
internal_url |
string | 否 | 主站点定义的 URL,次站点应使用它进行联系。如果未设置,返回 url 。 |
files_max_capacity |
integer | 否 | 控制次站点的 LFS/附件回填的最大并发量。 |
repos_max_capacity |
integer | 否 | 控制次站点的代码库回填的最大并发量。 |
verification_max_capacity |
integer | 否 | 控制此站点验证的最大并发量。 |
container_repositories_max_capacity |
integer | 否 | 控制此站点的容器代码库同步最大并发量。 |
selective_sync_type |
string | 否 | 仅限于特定群组或分片进行同步。有效值:"namespaces" ,"shards" 或 null 。 |
selective_sync_shards |
array | 否 |
selective_sync_type == shards 时同步项目的软件包存储。 |
selective_sync_namespace_ids |
array | 否 |
selective_sync_type == namespaces 时应同步的群组 ID。 |
minimum_reverification_interval |
integer | 否 | 代码库验证有效的间隔(以天为单位)。过期后重新验证。在次站点设置时无效。 |
示例响应:
{
"id": 1,
"name": "us-site",
"url": "https://primary.example.com/",
"internal_url": "https://internal.example.com/",
"primary": true,
"enabled": true,
"current": true,
"files_max_capacity": 10,
"repos_max_capacity": 25,
"verification_max_capacity": 100,
"container_repositories_max_capacity": 10,
"selective_sync_type": "namespaces",
"selective_sync_shards": [],
"selective_sync_namespace_ids": [1, 25],
"minimum_reverification_interval": 7,
"web_edit_url": "https://primary.example.com/admin/geo/sites/1/edit",
"_links": {
"self": "https://primary.example.com/api/v4/geo_sites/1",
"status": "https://primary.example.com/api/v4/geo_sites/1/status",
"repair": "https://primary.example.com/api/v4/geo_sites/1/repair"
}
}
删除 Geo 站点
移除 Geo 站点。
DELETE /geo_sites/:id
属性 | 类型 | 必需 | 描述 |
---|---|---|---|
id |
integer | 是 | Geo 站点的 ID。 |
修复 Geo 站点
在主或次 Geo 站点之间出现 OAuth 同步问题时,修复 Geo 站点的 OAuth 认证。在这种情况下,可能会显示以下信息:
There are no OAuth application defined for this Geo node.
POST /geo_sites/:id/repair
示例响应:
{
"id": 1,
"name": "us-site",
"url": "https://primary.example.com/",
"internal_url": "https://primary.example.com/",
"primary": true,
"enabled": true,
"current": true,
"files_max_capacity": 10,
"repos_max_capacity": 25,
"verification_max_capacity": 100,
"container_repositories_max_capacity": 10,
"web_edit_url": "https://primary.example.com/admin/geo/sites/1/edit",
"_links": {
"self": "https://primary.example.com/api/v4/geo_sites/1",
"status":"https://primary.example.com/api/v4/geo_sites/1/status",
"repair":"https://primary.example.com/api/v4/geo_sites/1/repair"
}
}
检索所有 Geo 站点的状态
GET /geo_sites/status
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://primary.example.com/api/v4/geo_sites/status"
示例响应:
[
{
"geo_node_id": 1,
"projects_count": 19,
"container_repositories_replication_enabled": null,
"lfs_objects_count": 0,
"lfs_objects_checksum_total_count": 0,
"lfs_objects_checksummed_count": 0,
"lfs_objects_checksum_failed_count": 0,
"lfs_objects_synced_count": null,
"lfs_objects_failed_count": null,
"lfs_objects_registry_count": null,
"lfs_objects_verification_total_count": null,
"lfs_objects_verified_count": null,
"lfs_objects_verification_failed_count": null,
"merge_request_diffs_count": 0,
"merge_request_diffs_checksum_total_count": 0,
"merge_request_diffs_checksummed_count": 0,
"merge_request_diffs_checksum_failed_count": 0,
"merge_request_diffs_synced_count": null,
"merge_request_diffs_failed_count": null,
"merge_request_diffs_registry_count": null,
"merge_request_diffs_verification_total_count": null,
"merge_request_diffs_verified_count": null,
"merge_request_diffs_verification_failed_count": null,
"package_files_count": 25,
"package_files_checksum_total_count": 25,
"package_files_checksummed_count": 25,
"package_files_checksum_failed_count": 0,
"package_files_synced_count": null,
"package_files_failed_count": null,
"package_files_registry_count": null,
"package_files_verification_total_count": null,
"package_files_verified_count": null,
"package_files_verification_failed_count": null,
"terraform_state_versions_count": 18,
"terraform_state_versions_checksum_total_count": 18,
"terraform_state_versions_checksummed_count": 18,
"terraform_state_versions_checksum_failed_count": 0,
"terraform_state_versions_synced_count": null,
"terraform_state_versions_failed_count": null,
"terraform_state_versions_registry_count": null,
"terraform_state_versions_verification_total_count": null,
"terraform_state_versions_verified_count": null,
"terraform_state_versions_verification_failed_count": null,
"snippet_repositories_count": 20,
"snippet_repositories_checksum_total_count": 20,
"snippet_repositories_checksummed_count": 20,
"snippet_repositories_checksum_failed_count": 0,
"snippet_repositories_synced_count": null,
"snippet_repositories_failed_count": null,
"snippet_repositories_registry_count": null,
"snippet_repositories_verification_total_count": null,
"snippet_repositories_verified_count": null,
"snippet_repositories_verification_failed_count": null,
"group_wiki_repositories_count": 0,
"group_wiki_repositories_checksum_total_count": null,
"group_wiki_repositories_checksummed_count": null,
"group_wiki_repositories_checksum_failed_count": null,
"group_wiki_repositories_synced_count": null,
"group_wiki_repositories_failed_count": null,
"group_wiki_repositories_registry_count": null,
"group_wiki_repositories_verification_total_count": null,
"group_wiki_repositories_verified_count": null,
"group_wiki_repositories_verification_failed_count": null,
"pipeline_artifacts_count": 0,
"pipeline_artifacts_checksum_total_count": 0,
"pipeline_artifacts_checksummed_count": 0,
"pipeline_artifacts_checksum_failed_count": 0,
"pipeline_artifacts_synced_count": null,
"pipeline_artifacts_failed_count": null,
"pipeline_artifacts_registry_count": null,
"pipeline_artifacts_verification_total_count": null,
"pipeline_artifacts_verified_count": null,
"pipeline_artifacts_verification_failed_count": null,
"pages_deployments_count": 0,
"pages_deployments_checksum_total_count": 0,
"pages_deployments_checksummed_count": 0,
"pages_deployments_checksum_failed_count": 0,
"pages_deployments_synced_count": null,
"pages_deployments_failed_count": null,
"pages_deployments_registry_count": null,
"pages_deployments_verification_total_count": null,
"pages_deployments_verified_count": null,
"pages_deployments_verification_failed_count": null,
"uploads_count": 51,
"uploads_checksum_total_count": 51,
"uploads_checksummed_count": 51,
"uploads_checksum_failed_count": 0,
"uploads_synced_count": null,
"uploads_failed_count": null,
"uploads_registry_count": null,
"uploads_verification_total_count": null,
"uploads_verified_count": null,
"uploads_verification_failed_count": null,
"job_artifacts_count": 205,
"job_artifacts_checksum_total_count": 205,
"job_artifacts_checksummed_count": 205,
"job_artifacts_checksum_failed_count": 0,
"job_artifacts_synced_count": null,
"job_artifacts_failed_count": null,
"job_artifacts_registry_count": null,
"job_artifacts_verification_total_count": null,
"job_artifacts_verified_count": null,
"job_artifacts_verification_failed_count": null,
"ci_secure_files_count": 0,
"ci_secure_files_checksum_total_count": 0,
"ci_secure_files_checksummed_count": 0,
"ci_secure_files_checksum_failed_count": 0,
"ci_secure_files_synced_count": null,
"ci_secure_files_failed_count": null,
"ci_secure_files_registry_count": null,
"ci_secure_files_verification_total_count": null,
"ci_secure_files_verified_count": null,
"ci_secure_files_verification_failed_count": null,
"container_repositories_count": 0,
"container_repositories_checksum_total_count": 0,
"container_repositories_checksummed_count": 0,
"container_repositories_checksum_failed_count": 0,
"container_repositories_synced_count": null,
"container_repositories_failed_count": null,
"container_repositories_registry_count": null,
"container_repositories_verification_total_count": null,
"container_repositories_verified_count": null,
"container_repositories_verification_failed_count": null,
"dependency_proxy_blobs_count": 0,
"dependency_proxy_blobs_checksum_total_count": 0,
"dependency_proxy_blobs_checksummed_count": 0,
"dependency_proxy_blobs_checksum_failed_count": 0,
"dependency_proxy_blobs_synced_count": null,
"dependency_proxy_blobs_failed_count": null,
"dependency_proxy_blobs_registry_count": null,
"dependency_proxy_blobs_verification_total_count": null,
"dependency_proxy_blobs_verified_count": null,
"dependency_proxy_blobs_verification_failed_count": null,
"dependency_proxy_manifests_count": 0,
"dependency_proxy_manifests_checksum_total_count": 0,
"dependency_proxy_manifests_checksummed_count": 0,
"dependency_proxy_manifests_checksum_failed_count": 0,
"dependency_proxy_manifests_synced_count": null,
"dependency_proxy_manifests_failed_count": null,
"dependency_proxy_manifests_registry_count": null,
"dependency_proxy_manifests_verification_total_count": null,
"dependency_proxy_manifests_verified_count": null,
"dependency_proxy_manifests_verification_failed_count": null,
"project_wiki_repositories_count": 19,
"project_wiki_repositories_checksum_total_count": 19,
"project_wiki_repositories_checksummed_count": 19,
"project_wiki_repositories_checksum_failed_count": 0,
"project_wiki_repositories_synced_count": null,
"project_wiki_repositories_failed_count": null,
"project_wiki_repositories_registry_count": null,
"project_wiki_repositories_verification_total_count": null,
"project_wiki_repositories_verified_count": null,
"project_wiki_repositories_verification_failed_count": null,
"git_fetch_event_count_weekly": null,
"git_push_event_count_weekly": null,
"proxy_remote_requests_event_count_weekly": null,
"proxy_local_requests_event_count_weekly": null,
"repositories_checked_in_percentage": "0.00%",
"replication_slots_used_in_percentage": "100.00%",
"lfs_objects_synced_in_percentage": "0.00%",
"lfs_objects_verified_in_percentage": "0.00%",
"merge_request_diffs_synced_in_percentage": "0.00%",
"merge_request_diffs_verified_in_percentage": "0.00%",
"package_files_synced_in_percentage": "0.00%",
"package_files_verified_in_percentage": "0.00%",
"terraform_state_versions_synced_in_percentage": "0.00%",
"terraform_state_versions_verified_in_percentage": "0.00%",
"snippet_repositories_synced_in_percentage": "0.00%",
"snippet_repositories_verified_in_percentage": "0.00%",
"group_wiki_repositories_synced_in_percentage": "0.00%",
"group_wiki_repositories_verified_in_percentage": "0.00%",
"pipeline_artifacts_synced_in_percentage": "0.00%",
"pipeline_artifacts_verified_in_percentage": "0.00%",
"pages_deployments_synced_in_percentage": "0.00%",
"pages_deployments_verified_in_percentage": "0.00%",
"uploads_synced_in_percentage": "0.00%",
"uploads_verified_in_percentage": "0.00%",
"job_artifacts_synced_in_percentage": "0.00%",
"job_artifacts_verified_in_percentage": "0.00%",
"ci_secure_files_synced_in_percentage": "0.00%",
"ci_secure_files_verified_in_percentage": "0.00%",
"container_repositories_synced_in_percentage": "0.00%",
"container_repositories_verified_in_percentage": "0.00%",
"dependency_proxy_blobs_synced_in_percentage": "0.00%",
"dependency_proxy_blobs_verified_in_percentage": "0.00%",
"dependency_proxy_manifests_synced_in_percentage": "0.00%",
"dependency_proxy_manifests_verified_in_percentage": "0.00%",
"project_wiki_repositories_synced_in_percentage": "0.00%",
"project_wiki_repositories_verified_in_percentage": "0.00%",
"projects_count": 19,
"replication_slots_count": 1,
"replication_slots_used_count": 1,
"healthy": true,
"health": "Healthy",
"health_status": "Healthy",
"missing_oauth_application": false,
"db_replication_lag_seconds": null,
"replication_slots_max_retained_wal_bytes": 0,
"repositories_checked_count": null,
"repositories_checked_failed_count": null,
"last_event_id": 357,
"last_event_timestamp": 1683127088,
"cursor_last_event_id": null,
"cursor_last_event_timestamp": 0,
"last_successful_status_check_timestamp": 1683129788,
"version": "16.0.0-pre",
"revision": "129eb954664",
"selective_sync_type": null,
"namespaces": [],
"updated_at": "2023-05-03T16:03:10.117Z",
"storage_shards_match": true,
"_links": {
"self": "https://primary.example.com/api/v4/geo_sites/1/status",
"site": "https://primary.example.com/api/v4/geo_sites/1"
}
},
{
"geo_node_id": 2,
"projects_count": 19,
"container_repositories_replication_enabled": null,
"lfs_objects_count": 0,
"lfs_objects_checksum_total_count": null,
"lfs_objects_checksummed_count": null,
"lfs_objects_checksum_failed_count": null,
"lfs_objects_synced_count": 0,
"lfs_objects_failed_count": 0,
"lfs_objects_registry_count": 0,
"lfs_objects_verification_total_count": 0,
"lfs_objects_verified_count": 0,
"lfs_objects_verification_failed_count": 0,
"merge_request_diffs_count": 0,
"merge_request_diffs_checksum_total_count": null,
"merge_request_diffs_checksummed_count": null,
"merge_request_diffs_checksum_failed_count": null,
"merge_request_diffs_synced_count": 0,
"merge_request_diffs_failed_count": 0,
"merge_request_diffs_registry_count": 0,
"merge_request_diffs_verification_total_count": 0,
"merge_request_diffs_verified_count": 0,
"merge_request_diffs_verification_failed_count": 0,
"package_files_count": 25,
"package_files_checksum_total_count": null,
"package_files_checksummed_count": null,
"package_files_checksum_failed_count": null,
"package_files_synced_count": 1,
"package_files_failed_count": 24,
"package_files_registry_count": 25,
"package_files_verification_total_count": 1,
"package_files_verified_count": 1,
"package_files_verification_failed_count": 0,
"terraform_state_versions_count": 18,
"terraform_state_versions_checksum_total_count": null,
"terraform_state_versions_checksummed_count": null,
"terraform_state_versions_checksum_failed_count": null,
"terraform_state_versions_synced_count": 0,
"terraform_state_versions_failed_count": 0,
"terraform_state_versions_registry_count": 18,
"terraform_state_versions_verification_total_count": 0,
"terraform_state_versions_verified_count": 0,
"terraform_state_versions_verification_failed_count": 0,
"snippet_repositories_count": 20,
"snippet_repositories_checksum_total_count": null,
"snippet_repositories_checksummed_count": null,
"snippet_repositories_checksum_failed_count": null,
"snippet_repositories_synced_count": 20,
"snippet_repositories_failed_count": 0,
"snippet_repositories_registry_count": 20,
"snippet_repositories_verification_total_count": 20,
"snippet_repositories_verified_count": 20,
"snippet_repositories_verification_failed_count": 0,
"group_wiki_repositories_count": 0,
"group_wiki_repositories_checksum_total_count": null,
"group_wiki_repositories_checksummed_count": null,
"group_wiki_repositories_checksum_failed_count": null,
"group_wiki_repositories_synced_count": 0,
"group_wiki_repositories_failed_count": 0,
"group_wiki_repositories_registry_count": 0,
"group_wiki_repositories_verification_total_count": null,
"group_wiki_repositories_verified_count": null,
"group_wiki_repositories_verification_failed_count": null,
"pipeline_artifacts_count": 0,
"pipeline_artifacts_checksum_total_count": null,
"pipeline_artifacts_checksummed_count": null,
"pipeline_artifacts_checksum_failed_count": null,
"pipeline_artifacts_synced_count": 0,
"pipeline_artifacts_failed_count": 0,
"pipeline_artifacts_registry_count": 0,
"pipeline_artifacts_verification_total_count": 0,
"pipeline_artifacts_verified_count": 0,
"pipeline_artifacts_verification_failed_count": 0,
"pages_deployments_count": 0,
"pages_deployments_checksum_total_count": null,
"pages_deployments_checksummed_count": null,
"pages_deployments_checksum_failed_count": null,
"pages_deployments_synced_count": 0,
"pages_deployments_failed_count": 0,
"pages_deployments_registry_count": 0,
"pages_deployments_verification_total_count": 0,
"pages_deployments_verified_count": 0,
"pages_deployments_verification_failed_count": 0,
"uploads_count": 51,
"uploads_checksum_total_count": null,
"uploads_checksummed_count": null,
"uploads_checksum_failed_count": null,
"uploads_synced_count": 0,
"uploads_failed_count": 1,
"uploads_registry_count": 51,
"uploads_verification_total_count": 0,
"uploads_verified_count": 0,
"uploads_verification_failed_count": 0,
"job_artifacts_count": 0,
"job_artifacts_checksum_total_count": null,
"job_artifacts_checksummed_count": null,
"job_artifacts_checksum_failed_count": null,
"job_artifacts_synced_count": 0,
"job_artifacts_failed_count": 0,
"job_artifacts_registry_count": 0,
"job_artifacts_verification_total_count": 0,
"job_artifacts_verified_count": 0,
"job_artifacts_verification_failed_count": 0,
"ci_secure_files_count": 0,
"ci_secure_files_checksum_total_count": null,
"ci_secure_files_checksummed_count": null,
"ci_secure_files_checksum_failed_count": null,
"ci_secure_files_synced_count": 0,
"ci_secure_files_failed_count": 0,
"ci_secure_files_registry_count": 0,
"ci_secure_files_verification_total_count": 0,
"ci_secure_files_verified_count": 0,
"ci_secure_files_verification_failed_count": 0,
"container_repositories_count": null,
"container_repositories_checksum_total_count": null,
"container_repositories_checksummed_count": null,
"container_repositories_checksum_failed_count": null,
"container_repositories_synced_count": null,
"container_repositories_failed_count": null,
"container_repositories_registry_count": null,
"container_repositories_verification_total_count": null,
"container_repositories_verified_count": null,
"container_repositories_verification_failed_count": null,
"dependency_proxy_blobs_count": 0,
"dependency_proxy_blobs_checksum_total_count": null,
"dependency_proxy_blobs_checksummed_count": null,
"dependency_proxy_blobs_checksum_failed_count": null,
"dependency_proxy_blobs_synced_count": 0,
"dependency_proxy_blobs_failed_count": 0,
"dependency_proxy_blobs_registry_count": 0,
"dependency_proxy_blobs_verification_total_count": 0,
"dependency_proxy_blobs_verified_count": 0,
"dependency_proxy_blobs_verification_failed_count": 0,
"dependency_proxy_manifests_count": 0,
"dependency_proxy_manifests_checksum_total_count": null,
"dependency_proxy_manifests_checksummed_count": null,
"dependency_proxy_manifests_checksum_failed_count": null,
"dependency_proxy_manifests_synced_count": 0,
"dependency_proxy_manifests_failed_count": 0,
"dependency_proxy_manifests_registry_count": 0,
"dependency_proxy_manifests_verification_total_count": 0,
"dependency_proxy_manifests_verified_count": 0,
"dependency_proxy_manifests_verification_failed_count": 0,
"project_wiki_repositories_count": 19,
"project_wiki_repositories_checksum_total_count": null,
"project_wiki_repositories_checksummed_count": null,
"project_wiki_repositories_checksum_failed_count": null,
"project_wiki_repositories_synced_count": 19,
"project_wiki_repositories_failed_count": 0,
"project_wiki_repositories_registry_count": 19,
"project_wiki_repositories_verification_total_count": 19,
"project_wiki_repositories_verified_count": 19,
"project_wiki_repositories_verification_failed_count": 0,
"git_fetch_event_count_weekly": null,
"git_push_event_count_weekly": null,
"proxy_remote_requests_event_count_weekly": null,
"proxy_local_requests_event_count_weekly": null,
"repositories_checked_in_percentage": "0.00%",
"replication_slots_used_in_percentage": "0.00%",
"lfs_objects_synced_in_percentage": "0.00%",
"lfs_objects_verified_in_percentage": "0.00%",
"merge_request_diffs_synced_in_percentage": "0.00%",
"merge_request_diffs_verified_in_percentage": "0.00%",
"package_files_synced_in_percentage": "4.00%",
"package_files_verified_in_percentage": "4.00%",
"terraform_state_versions_synced_in_percentage": "0.00%",
"terraform_state_versions_verified_in_percentage": "0.00%",
"snippet_repositories_synced_in_percentage": "100.00%",
"snippet_repositories_verified_in_percentage": "100.00%",
"group_wiki_repositories_synced_in_percentage": "0.00%",
"group_wiki_repositories_verified_in_percentage": "0.00%",
"pipeline_artifacts_synced_in_percentage": "0.00%",
"pipeline_artifacts_verified_in_percentage": "0.00%",
"pages_deployments_synced_in_percentage": "0.00%",
"pages_deployments_verified_in_percentage": "0.00%",
"uploads_synced_in_percentage": "0.00%",
"uploads_verified_in_percentage": "0.00%",
"job_artifacts_synced_in_percentage": "0.00%",
"job_artifacts_verified_in_percentage": "0.00%",
"ci_secure_files_synced_in_percentage": "0.00%",
"ci_secure_files_verified_in_percentage": "0.00%",
"container_repositories_synced_in_percentage": "0.00%",
"container_repositories_verified_in_percentage": "0.00%",
"dependency_proxy_blobs_synced_in_percentage": "0.00%",
"dependency_proxy_blobs_verified_in_percentage": "0.00%",
"dependency_proxy_manifests_synced_in_percentage": "0.00%",
"dependency_proxy_manifests_verified_in_percentage": "0.00%",
"project_wiki_repositories_synced_in_percentage": "100.00%",
"project_wiki_repositories_verified_in_percentage": "100.00%",
"projects_count": 19,
"replication_slots_count": null,
"replication_slots_used_count": null,
"healthy": false,
"health": "An existing tracking database cannot be reused..",
"health_status": "Unhealthy",
"missing_oauth_application": false,
"db_replication_lag_seconds": 0,
"replication_slots_max_retained_wal_bytes": null,
"repositories_checked_count": null,
"repositories_checked_failed_count": null,
"last_event_id": 357,
"last_event_timestamp": 1683127088,
"cursor_last_event_id": 357,
"cursor_last_event_timestamp": 1683127088,
"last_successful_status_check_timestamp": 1683127146,
"version": "16.0.0-pre",
"revision": "129eb954664",
"selective_sync_type": "",
"namespaces": [],
"updated_at": "2023-05-03T15:19:06.174Z",
"storage_shards_match": true,
"_links": {
"self": "https://primary.example.com/api/v4/geo_sites/2/status",
"site": "https://primary.example.com/api/v4/geo_sites/2"
}
}
]
检索特定 Geo 站点的状态
GET /geo_sites/:id/status
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://primary.example.com/api/v4/geo_sites/2/status"
示例响应:
{
"geo_node_id": 2,
"projects_count": 19,
"container_repositories_replication_enabled": null,
"lfs_objects_count": 0,
"lfs_objects_checksum_total_count": null,
"lfs_objects_checksummed_count": null,
"lfs_objects_checksum_failed_count": null,
"lfs_objects_synced_count": 0,
"lfs_objects_failed_count": 0,
"lfs_objects_registry_count": 0,
"lfs_objects_verification_total_count": 0,
"lfs_objects_verified_count": 0,
"lfs_objects_verification_failed_count": 0,
"merge_request_diffs_count": 0,
"merge_request_diffs_checksum_total_count": null,
"merge_request_diffs_checksummed_count": null,
"merge_request_diffs_checksum_failed_count": null,
"merge_request_diffs_synced_count": 0,
"merge_request_diffs_failed_count": 0,
"merge_request_diffs_registry_count": 0,
"merge_request_diffs_verification_total_count": 0,
"merge_request_diffs_verified_count": 0,
"merge_request_diffs_verification_failed_count": 0,
"package_files_count": 25,
"package_files_checksum_total_count": null,
"package_files_checksummed_count": null,
"package_files_checksum_failed_count": null,
"package_files_synced_count": 1,
"package_files_failed_count": 24,
"package_files_registry_count": 25,
"package_files_verification_total_count": 1,
"package_files_verified_count": 1,
"package_files_verification_failed_count": 0,
"terraform_state_versions_count": 18,
"terraform_state_versions_checksum_total_count": null,
"terraform_state_versions_checksummed_count": null,
"terraform_state_versions_checksum_failed_count": null,
"terraform_state_versions_synced_count": 0,
"terraform_state_versions_failed_count": 0,
"terraform_state_versions_registry_count": 18,
"terraform_state_versions_verification_total_count": 0,
"terraform_state_versions_verified_count": 0,
"terraform_state_versions_verification_failed_count": 0,
"snippet_repositories_count": 20,
"snippet_repositories_checksum_total_count": null,
"snippet_repositories_checksummed_count": null,
"snippet_repositories_checksum_failed_count": null,
"snippet_repositories_synced_count": 20,
"snippet_repositories_failed_count": 0,
"snippet_repositories_registry_count": 20,
"snippet_repositories_verification_total_count": 20,
"snippet_repositories_verified_count": 20,
"snippet_repositories_verification_failed_count": 0,
"group_wiki_repositories_count": 0,
"group_wiki_repositories_checksum_total_count": null,
"group_wiki_repositories_checksummed_count": null,
"group_wiki_repositories_checksum_failed_count": null,
"group_wiki_repositories_synced_count": 0,
"group_wiki_repositories_failed_count": 0,
"group_wiki_repositories_registry_count": 0,
"group_wiki_repositories_verification_total_count": null,
"group_wiki_repositories_verified_count": null,
"group_wiki_repositories_verification_failed_count": null,
"pipeline_artifacts_count": 0,
"pipeline_artifacts_checksum_total_count": null,
"pipeline_artifacts_checksummed_count": null,
"pipeline_artifacts_checksum_failed_count": null,
"pipeline_artifacts_synced_count": 0,
"pipeline_artifacts_failed_count": 0,
"pipeline_artifacts_registry_count": 0,
"pipeline_artifacts_verification_total_count": 0,
"pipeline_artifacts_verified_count": 0,
"pipeline_artifacts_verification_failed_count": 0,
"pages_deployments_count": 0,
"pages_deployments_checksum_total_count": null,
"pages_deployments_checksummed_count": null,
"pages_deployments_checksum_failed_count": null,
"pages_deployments_synced_count": 0,
"pages_deployments_failed_count": 0,
"pages_deployments_registry_count": 0,
"pages_deployments_verification_total_count": 0,
"pages_deployments_verified_count": 0,
"pages_deployments_verification_failed_count": 0,
"uploads_count": 51,
"uploads_checksum_total_count": null,
"uploads_checksummed_count": null,
"uploads_checksum_failed_count": null,
"uploads_synced_count": 0,
"uploads_failed_count": 1,
"uploads_registry_count": 51,
"uploads_verification_total_count": 0,
"uploads_verified_count": 0,
"uploads_verification_failed_count": 0,
"job_artifacts_count": 0,
"job_artifacts_checksum_total_count": null,
"job_artifacts_checksummed_count": null,
"job_artifacts_checksum_failed_count": null,
"job_artifacts_synced_count": 0,
"job_artifacts_failed_count": 0,
"job_artifacts_registry_count": 0,
"job_artifacts_verification_total_count": 0,
"job_artifacts_verified_count": 0,
"job_artifacts_verification_failed_count": 0,
"ci_secure_files_count": 0,
"ci_secure_files_checksum_total_count": null,
"ci_secure_files_checksummed_count": null,
"ci_secure_files_checksum_failed_count": null,
"ci_secure_files_synced_count": 0,
"ci_secure_files_failed_count": 0,
"ci_secure_files_registry_count": 0,
"ci_secure_files_verification_total_count": 0,
"ci_secure_files_verified_count": 0,
"ci_secure_files_verification_failed_count": 0,
"container_repositories_count": null,
"container_repositories_checksum_total_count": null,
"container_repositories_checksummed_count": null,
"container_repositories_checksum_failed_count": null,
"container_repositories_synced_count": null,
"container_repositories_failed_count": null,
"container_repositories_registry_count": null,
"container_repositories_verification_total_count": null,
"container_repositories_verified_count": null,
"container_repositories_verification_failed_count": null,
"dependency_proxy_blobs_count": 0,
"dependency_proxy_blobs_checksum_total_count": null,
"dependency_proxy_blobs_checksummed_count": null,
"dependency_proxy_blobs_checksum_failed_count": null,
"dependency_proxy_blobs_synced_count": 0,
"dependency_proxy_blobs_failed_count": 0,
"dependency_proxy_blobs_registry_count": 0,
"dependency_proxy_blobs_verification_total_count": 0,
"dependency_proxy_blobs_verified_count": 0,
"dependency_proxy_blobs_verification_failed_count": 0,
"dependency_proxy_manifests_count": 0,
"dependency_proxy_manifests_checksum_total_count": null,
"dependency_proxy_manifests_checksummed_count": null,
"dependency_proxy_manifests_checksum_failed_count": null,
"dependency_proxy_manifests_synced_count": 0,
"dependency_proxy_manifests_failed_count": 0,
"dependency_proxy_manifests_registry_count": 0,
"dependency_proxy_manifests_verification_total_count": 0,
"dependency_proxy_manifests_verified_count": 0,
"dependency_proxy_manifests_verification_failed_count": 0,
"project_wiki_repositories_count": 19,
"project_wiki_repositories_checksum_total_count": null,
"project_wiki_repositories_checksummed_count": null,
"project_wiki_repositories_checksum_failed_count": null,
"project_wiki_repositories_synced_count": 19,
"project_wiki_repositories_failed_count": 0,
"project_wiki_repositories_registry_count": 19,
"project_wiki_repositories_verification_total_count": 19,
"project_wiki_repositories_verified_count": 19,
"project_wiki_repositories_verification_failed_count": 0,
"git_fetch_event_count_weekly": null,
"git_push_event_count_weekly": null,
"proxy_remote_requests_event_count_weekly": null,
"proxy_local_requests_event_count_weekly": null,
"repositories_checked_in_percentage": "0.00%",
"replication_slots_used_in_percentage": "0.00%",
"lfs_objects_synced_in_percentage": "0.00%",
"lfs_objects_verified_in_percentage": "0.00%",
"merge_request_diffs_synced_in_percentage": "0.00%",
"merge_request_diffs_verified_in_percentage": "0.00%",
"package_files_synced_in_percentage": "4.00%",
"package_files_verified_in_percentage": "4.00%",
"terraform_state_versions_synced_in_percentage": "0.00%",
"terraform_state_versions_verified_in_percentage": "0.00%",
"snippet_repositories_synced_in_percentage": "100.00%",
"snippet_repositories_verified_in_percentage": "100.00%",
"group_wiki_repositories_synced_in_percentage": "0.00%",
"group_wiki_repositories_verified_in_percentage": "0.00%",
"pipeline_artifacts_synced_in_percentage": "0.00%",
"pipeline_artifacts_verified_in_percentage": "0.00%",
"pages_deployments_synced_in_percentage": "0.00%",
"pages_deployments_verified_in_percentage": "0.00%",
"uploads_synced_in_percentage": "0.00%",
"uploads_verified_in_percentage": "0.00%",
"job_artifacts_synced_in_percentage": "0.00%",
"job_artifacts_verified_in_percentage": "0.00%",
"ci_secure_files_synced_in_percentage": "0.00%",
"ci_secure_files_verified_in_percentage": "0.00%",
"container_repositories_synced_in_percentage": "0.00%",
"container_repositories_verified_in_percentage": "0.00%",
"dependency_proxy_blobs_synced_in_percentage": "0.00%",
"dependency_proxy_blobs_verified_in_percentage": "0.00%",
"dependency_proxy_manifests_synced_in_percentage": "0.00%",
"dependency_proxy_manifests_verified_in_percentage": "0.00%",
"project_wiki_repositories_synced_in_percentage": "100.00%",
"project_wiki_repositories_verified_in_percentage": "100.00%",
"repositories_count": 19,
"replication_slots_count": null,
"replication_slots_used_count": null,
"healthy": false,
"health": "An existing tracking database cannot be reused..",
"health_status": "Unhealthy",
"missing_oauth_application": false,
"db_replication_lag_seconds": 0,
"replication_slots_max_retained_wal_bytes": null,
"repositories_checked_count": null,
"repositories_checked_failed_count": null,
"last_event_id": 357,
"last_event_timestamp": 1683127088,
"cursor_last_event_id": 357,
"cursor_last_event_timestamp": 1683127088,
"last_successful_status_check_timestamp": 1683127146,
"version": "16.0.0-pre",
"revision": "129eb954664",
"selective_sync_type": "",
"namespaces": [],
"updated_at": "2023-05-03T15:19:06.174Z",
"storage_shards_match": true,
"_links": {
"self": "https://primary.example.com/api/v4/geo_sites/2/status",
"site": "https://primary.example.com/api/v4/geo_sites/2"
}
}
{{< alert type=”note” >}}
health_status
参数只能处于 健康
或 非健康
状态,而 health
参数可以为空,”Healthy” 或包含实际错误信息。
{{< /alert >}}