Google cloud platform 在gitops原理中使用Gitlab、Terraform、Flux和GKE的最佳方法

Google cloud platform 在gitops原理中使用Gitlab、Terraform、Flux和GKE的最佳方法,google-cloud-platform,gitlab,terraform,gitops,Google Cloud Platform,Gitlab,Terraform,Gitops,我是devops的新手,我想知道,在CI/CD中使用GKE、Terraform和Gitlab存储库的最佳方式是什么。现在,flux、cert manager使用了一些命令集,但它不是自动执行的。使用的最佳实践、工具和整个方案是什么样的?感谢您的回答。在我之前的项目中,我们尝试了很多方法,最终意识到使用部署是最合适的,尽管部分原因是它在公司范围内得到了更广泛的应用,但对于使用terraform部署来说,它也相当不错。主要的好处是,每个客户(特别是谷歌云项目)都有相应的概念,对于租户,您可以设置大量

我是devops的新手,我想知道,在CI/CD中使用GKE、Terraform和Gitlab存储库的最佳方式是什么。现在,flux、cert manager使用了一些命令集,但它不是自动执行的。使用的最佳实践、工具和整个方案是什么样的?感谢您的回答。

在我之前的项目中,我们尝试了很多方法,最终意识到使用部署是最合适的,尽管部分原因是它在公司范围内得到了更广泛的应用,但对于使用terraform部署来说,它也相当不错。主要的好处是,每个客户(特别是谷歌云项目)都有相应的概念,对于租户,您可以设置大量的变量,这些变量大部分将由terraform使用。根据配置了每个租户的变量列表,这可能是一项相当繁琐的任务,但我想这只是在第一次设置时。然后更新它并运行实际部署会更快

我们还尝试了GitOps,比如在每个客户端(GCP项目)上使用这些变量进行repo,在我们的部署脚本中只使用这些repo,这很好,因为它带来了在源代码中使用规范的所有好处,就像在日志记录中一样,并且是唯一的真实来源。不过,主要的缺点是在任何更改上,合并请求应该已经打开,并且可能需要相当长的时间。如果在您的情况下,它不是必需的,并且对这些规范repos的更改运行的管道也不是很长,那么您可以尝试一下,为什么不呢

您可以尝试的另一件事是将变量放入Gitlab变量中,但这也取决于您拥有的环境数量,如果它将继续增长(假设是),这可能不是一个好主意,因为对更改没有太多可见性,并且很难跟踪所有这些变量