# Geo validation tests

> 原文：[https://docs.gitlab.com/ee/administration/geo/replication/geo_validation_tests.html](https://docs.gitlab.com/ee/administration/geo/replication/geo_validation_tests.html)

*   [GitLab upgrades](#gitlab-upgrades)
    *   [June 2020](#june-2020)
    *   [February 2020](#february-2020)
    *   [January 2020](#january-2020)
    *   [October 2019](#october-2019)
*   [PostgreSQL upgrades](#postgresql-upgrades)
    *   [April 2020](#april-2020)
    *   [September 2019](#september-2019)

# Geo validation tests[](#geo-validation-tests "Permalink")

Geo 团队对常见的部署配置执行手动测试和验证，以确保在次要的 GitLab 版本和主要的 PostgreSQL 数据库版本之间升级时，Geo 可以正常工作.

本部分包含近期验证测试的日记以及相关问题的链接.

## GitLab upgrades[](#gitlab-upgrades "Permalink")

以下是我们执行的 GitLab 升级验证测试.

### June 2020[](#june-2020 "Permalink")

[Upgrade Geo multi-server installation](https://gitlab.com/gitlab-org/gitlab/-/issues/223284):

*   说明：在多服务器配置中测试了从 GitLab 12.9.10 升级到 12.10.12 软件包的过程. 使用循环管道和 HAProxy 统计信息显示板监视停机时间.
*   结果：部分成功，因为我们在主站点和辅助站点的升级过程中观察到停机时间.
*   跟进问题/行动：
    *   [修复多节点 Geo 部署的零停机升级过程/说明](https://gitlab.com/gitlab-org/gitlab/-/issues/225684)
    *   [Geo：check Rake 任务：排除 AuthorizedKeysCommand 检查节点是否未运行 Puma / Unicorn](https://gitlab.com/gitlab-org/gitlab/-/issues/225454)
    *   [在下一个升级问题中更新说明，以包括监视 HAProxy 仪表板](https://gitlab.com/gitlab-org/gitlab/-/issues/225359)

[Upgrade Geo multi-server installation](https://gitlab.com/gitlab-org/gitlab/-/issues/208104):

*   描述：在多服务器配置中测试了从 GitLab 12.8.1 到 12.9.10 软件包的升级.
*   结果：部分成功，因为我们在演示过程中没有运行循环管道来验证零停机时间.
*   后续问题：
    *   [阐明 hup Puma / Unicorn 应该包含部署节点](https://gitlab.com/gitlab-org/omnibus-gitlab/-/issues/5460)
    *   [升级到 12.9.10 后调查 MR 创建失败](https://gitlab.com/gitlab-org/gitlab/-/issues/223282) .

### February 2020[](#february-2020 "Permalink")

[Upgrade Geo multi-node installation](https://gitlab.com/gitlab-org/gitlab/-/issues/201837):

*   说明：在多节点配置中测试了从 GitLab 12.7.5 升级到最新的 GitLab 12.8 软件包的过程.
*   结果：部分成功，因为我们在演示过程中没有运行循环管道来监视停机时间.

### January 2020[](#january-2020 "Permalink")

[Upgrade Geo multi-node installation](https://gitlab.com/gitlab-org/gitlab/-/issues/200085):

*   说明：在多节点配置中测试了从 GitLab 12.6.x 升级到最新的 GitLab 12.7 软件包的过程.
*   结果：升级测试成功.
*   后续问题：
    *   [调查 Geo 端到端测试失败](https://gitlab.com/gitlab-org/gitlab/-/issues/201823) .
    *   [将更多日志记录添加到 Geo 端到端测试中](https://gitlab.com/gitlab-org/gitlab/-/issues/201830) .
    *   [零停机升级期间，多余的服务会重新启动](https://gitlab.com/gitlab-org/omnibus-gitlab/-/issues/5047) .

[Upgrade Geo multi-node installation](https://gitlab.com/gitlab-org/gitlab/-/issues/199836):

*   描述：在多节点配置中测试了从 GitLab 12.5.7 到 GitLab 12.6.6 的升级.
*   Outcome: Upgrade test was successful.
*   后续问题： [更新文档以实现零停机时间升级，以确保未使用部署节点](https://gitlab.com/gitlab-org/omnibus-gitlab/-/issues/5046) .

[Upgrade Geo multi-node installation](https://gitlab.com/gitlab-org/gitlab/-/issues/37044):

*   说明：在多节点配置中测试了从 GitLab 12.4.x 升级到最新的 GitLab 12.5 软件包的过程.
*   结果：升级测试成功.
*   后续问题：
    *   [研究为什么 HTTP 推送规范在主节点上失败](https://gitlab.com/gitlab-org/gitlab/-/issues/199825) .
    *   [研究是否应修改文档以包括刷新外部表任务](https://gitlab.com/gitlab-org/omnibus-gitlab/-/issues/5041) .

### October 2019[](#october-2019 "Permalink")

[Upgrade Geo multi-node installation](https://gitlab.com/gitlab-org/gitlab/-/issues/35262):

*   说明：在多节点配置中测试了从 GitLab 12.3.5 升级到 GitLab 12.4.1 的过程.
*   结果：升级测试成功.

[Upgrade Geo multi-node installation](https://gitlab.com/gitlab-org/gitlab/-/issues/32437):

*   说明：已测试从 GitLab 12.2.8 升级到 GitLab 12.3.5.
*   结果：升级测试成功.

[Upgrade Geo multi-node installation](https://gitlab.com/gitlab-org/gitlab/-/issues/32435):

*   说明：已测试从 GitLab 12.1.9 升级到 GitLab 12.2.8 的过程.
*   结果：由于可能的配置错误问题而部分成功.

## PostgreSQL upgrades[](#postgresql-upgrades "Permalink")

以下是我们执行的 PostgreSQL 升级验证测试.

### April 2020[](#april-2020 "Permalink")

[PostgreSQL 11 upgrade procedure for Geo installations](https://gitlab.com/gitlab-org/omnibus-gitlab/-/issues/4975):

*   描述：在将 PostgreSQL 11 设为 GitLab 12.10 中的默认 PostgreSQL 版本之前，我们在 GitLab 12.9 的 Geo 部署中测试了升级到 PostgreSQL 11 的能力.
*   结果：部分成功. 在具有单独的跟踪数据库的多节点配置中发现了问题，并提出了在启用 Geo 时允许自动升级的问题.
*   后续问题：
    *   [`replicate-geo-database`错误地尝试备份存储库](https://gitlab.com/gitlab-org/omnibus-gitlab/-/issues/5241) .
    *   [`pg-upgrade`无法升级独立的 Geo 跟踪数据库](https://gitlab.com/gitlab-org/omnibus-gitlab/-/issues/5242) .
    *   [`revert-pg-upgrade`无法降级 Geo Secondary 的独立跟踪数据库的 PostgreSQL 数据](https://gitlab.com/gitlab-org/omnibus-gitlab/-/issues/5243) .
    *   [`gitlab-ctl pg-upgrade`结束时，Geo 辅助只读副本上的超时错误](https://gitlab.com/gitlab-org/omnibus-gitlab/-/issues/5235) .

[Verify Geo installation with PostgreSQL 11](https://gitlab.com/gitlab-org/omnibus-gitlab/-/issues/4971):

*   说明：在将 PostgreSQL 11 设置为 GitLab 12.10 中的 PostgreSQL 的默认版本之前，我们测试了 GitLab 12.9 的全新安装以及在 PostgreSQL 11 中安装了 Geo 的情况.
*   结果：安装测试成功.

### September 2019[](#september-2019 "Permalink")

[Test and validate PostgreSQL 10.0 upgrade for Geo](https://gitlab.com/gitlab-org/gitlab/-/issues/12092):

*   说明：在 12.0 版本中，GitLab 需要升级到 PostgreSQL 10.0\. 我们测试了从 GitLab 11.11.5 到 GitLab 12.1.8 的各种升级方案.
*   结果：升级时发现了多个问题，并在后续问题中得到解决.
*   后续问题：
    *   [在多节点 Geo 设置中的 Redis 节点上， `gitlab-ctl`重新配置失败](https://gitlab.com/gitlab-org/omnibus-gitlab/-/issues/4706) .
    *   [从 12.0.9 到 12.1.9 的地理多节点升级不会升级 PostgreSQL](https://gitlab.com/gitlab-org/omnibus-gitlab/-/issues/4705) .
    *   [升级到 12.1.9 后，在多节点设置中的应用服务器上刷新外部表失败](https://gitlab.com/gitlab-org/gitlab/-/issues/32119) .