继上个月在 OpenShift 上引入自动部署支持 Kubernetes 后,GitLab 8.16 在 Google Cloud 上提供了自动部署功能。此外,GitLab 8.16 改进了其问题搜索和过滤器界面,并包括监控工具 Prometheus 和 Slack 的替代者 Mattermost 。
据Gitlab 产品副总裁 Job van der Voort 介绍,在 Google Container Engine(GCE)上提供自动部署功能,GitLab 实例使用其自动缩放持续集成(auto-scaling CI)功能部署应用到 Kubernetes,将允许更多的开发者从这种可能性中获得好处。根据 Gitlab,在 GCE 上将 GitLab 部署到 Kubernetes 需要许多步骤,尽管它可以在不到 30 分钟内完成,这仍然使整个过程不那么直观。
为使监控成为 Gitlab 持续集成的一个组成部分,产品规划中的第一步就是在 GitLab 8.16 中包含 Prometheus。Prometheus 应该能够收集关于部署的早期反馈,并自动回退那些导致问题的部署。为了能够连接到可以提供与 CPU、内存和吞吐量相关的指标的 Prometheus 控制台,你应该首先设置端口转发,以便在 localhost:9090 上访问私有的 Prometheus 服务器:
kubectl -n gitlab get pods -l name=gitlab -o name | sed 's/^.*\///' | xargs -I{} kubectl port-forward -n gitlab {} 9090:9090
以下是几个可以发送到 Prometheus 的查询示例:
- 内存使用百分比:(1 - ((node_memory_MemFree + node_memory_Cached) / node_memory_MemTotal)) * 100
- CPU 负荷百分比:1 - rate(node_cpu{mode=“idle”}[5m])
- 发送的数据:irate(node_network_transmit_bytes[5m])
- 接收的数据:irate(node_network_receive_bytes[5m])
GitLab 8.16 的其他重要特性包括:
- 改进的问题搜索和过滤器界面,使其更自然和直观。
- 支持撤销合并请求的批准。
- 支持授予写入权限的部署密钥,以及现有的只读部署密钥。
- 新的 merge 命令允许在问题的描述或注释中简单地键入 /merge 来合并 PR。
- GitLab Runner 1.10,包括一系列改进和修复。
- Mattermost 3.6 现在包含在 GitLab 中。
GitLab 8.16 可以使用各种方法安装或更新,其中包括使用支持多个托管提供商的镜像,Docker 容器以及针对特定操作系统的软件包。
查看英文原文 : GitLab 8.16 Now Includes Monitoring and Extends Auto Deploy to Google Container Engine
感谢王纯超对本文的审校。
给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ , @丁晓昀),微信(微信号: InfoQChina )关注我们。
评论