我使用terraform已有一段时间了,我真的很喜欢它。我还设置了Atlantis,以便我的团队可以拥有“ GitOps”流程。这是我当前的过程:
我最近发现自己需要使用Amazon EKS建立一些托管的Kubernetes集群。尽管Terraform能够创建大多数基本基础结构,但在设置某些k8s资源时不起作用(不支持网关或入口,不支持alpha / beta功能等)。因此,相反,我一直依赖于使用kubectl的手动方法:
helm template
和kubectl apply
之间添加一条线(我真的不喜欢使用分,,而且helm3还是摆脱了它)kubectl delete
手动完成这个过程感觉不像我们在Terraform中所做的那样干净。有几个关键问题:
kubectl --dry-run
或kubectl diff
并不能真正起作用,它只是客户端差异。服务器端的diff函数当前处于alpha版本我应该承认我是Kubernetes的新手,所以可能忽略了一些明显的事情。
在Kubernetes宇宙中,我是否有办法实现与Terraform类似的过程?