我正在努力寻找在生产中使用kubernetes的最简单的方法。YAML模板在我看来是一种开销。我想要的只是公开简单的后端服务。我可以用kubectl做这件事,只需两个精益命令:
kubectl create deployment hello-server --image=gcr.io/google-samples/hello-app:1.0
kubectl expose deployment hello-server --type LoadBalancer --port 80 --target-port 8080但是在生产中使用这个可以吗?我想使用以基础设施为代码的方法.
是否有办法避免直接使用kubernetes模板文件,并且仍然遵循最佳实践?例如,从坞-合成文件或类似的文件生成Yaml文件?
在生产中预期的kubectl用途是什么?只是
kubectl apply -f <folder> 而在<folder>中维护模板文件是开发人员的工作吗?是否有没有自己编写kubernetes模板的kubectl声明性管理?例如,一些包含所需模板所需的最小信息的文件。
真的很想使用库伯内特斯,请建议最简单的方法来做到这一点!
发布于 2021-05-02 11:15:51
我在此引述原来的问题:
kubectl创建部署hello-server --image=gcr.io/google-samples/hello-app:1.0 kubectl公开部署hello-server类型的LoadBalancer -端口80 -目标端口8080,但是在生产中可以使用吗?我想使用以基础设施为代码的方法.
第一种方法是命令列表,这些命令必须按照一定的顺序执行。此外,所有这些命令都不是幂等的,因此不能多次运行这些命令。
也是从原来的问题:
是否有一种方法可以避免直接使用kubernetes模板文件,并且仍然遵循最佳实践?例如,从坞-合成文件或类似的文件生成Yaml文件?在生产中预期的kubectl用途是什么?只有
kubectl apply -f <folder>
第二种方法是声明式的,您只描述您想要的内容,并且命令是幂等的,所以它可以在没有问题的情况下多次运行。您想要的状态是用文本文件编写的,所以任何更改都可以通过版本控制系统来管理,例如Git,并且这个过程可以通过CI/CD管道中的验证来完成。
对于生产环境,最好将版本控制系统(如git )用于集群所包含的内容。这使得您可以轻松地恢复或重新创建系统。
https://stackoverflow.com/questions/67355599
复制相似问题