告别微软!GitLab弃Azure改用GCP

现在公有云市场竞争激烈,各家厂商除了要加快推新功能脚步,不时也要祭出规格战、打大折扣吸引企业用户。而公云服务商间的关系也微妙,彼此竞争但又得互相合作。保持在巧妙的竞合平衡点。
现今企业使用多云、混合云架构的风潮,使用者因考量成本、执行效能等因素,琵琶别抱实属正常。像是今年2月时,苹果iCloud就决定舍弃微软Azure,改使用Google Cloud Platform(GCP)。而这一次变成GitLab,该公司近日在官方部落格宣布,已经从Azure搬迁至GCP,预计在7月28日,GitLab就会正式完成搬移工作。
“我们相信Kubernetes的未来潜力,这个技术可以同时兼顾应用程序的规模及稳定性”,因此,GitLab在今年4月时,就开始原生支援Google Kubernetes引擎,让使用者能更简单导入Kubernetes。而这次该公司依循同样的决策逻辑,把GitLab推上了GCP。GitLab表示,该公司会将工作负载搬迁至Kubernetes环境,加强自家服务规模及稳定度。
GitLab也揭露了自家搬迁任务的工作细节。搬移至GCP环境时,GitLab使用了自家产品Geo,建立GitLab实例的镜像备份,透过Geo,复制、搬移专案。在过去几个月,GitLab已持续把资料搬迁至GCP环境,建立第二个云端环境。该公司表示,同步至Google云端的资料,包含200TB的Git档案,以及2TB的关联式数据库PostgreSQL。
除了使用Geo建立镜像备份,GitLab也将所有的CI Log档案、LFS(Large File Storage)等档案,移转到Google云端储存(GCS),“将200TB的Azure文件服务器,全部移转到GCS”,该公司表示,过去GitLab将这些档案都储存在NFS服务器,除了其单点故障(Single Point of Failure,SPOF)的特性,NFS服务器也不易按需扩充。GitLab认为,搬迁至GCS后可以增加服务的可用性,并且改正NFS服务器单点故障的营运痛点。
而每一至二周,GitLab内部的Geo、正式环境及品质控管团队,就会利用半正式(Staging)环境,实地演练故障转移(Failover)的因应对策。该公司表示,比照正式搬迁工作,演练地点横跨了Azure及GCP,团队也会密切监控每项步骤的花费时间。在每次演练结束后,GitLab会发现更多正式环境存在的系统臭虫跟Issue。为了确保往后搬迁工作更顺利,该公司则利用自家的GitLab Migration Tracker纪录这些新发现的Issue,以便追踪每次演练工作后的新变动。
搬移至GCP环境时,GitLab使用自家产品Geo,建立GitLab实例的镜像备份,透过Geo,复制、搬移专案。在过去几个月,GitLab已持续把资料搬迁至GCP环境,建立第二个云端环境。该公司表示,目前同步至Google云端的资料,包含200TB的Git档案,以及2TB的关联式数据库PostgreSQL。 图片来源:GitLab
