首页 文章

以编程方式在新的GKE集群上运行Kubernetes命令

提问于
浏览
2

为了运行我正在开发的应用程序的负载测试,我正在创建一个Google容器引擎(GKE)集群,创建几个永久磁盘,运行一大堆kubectl命令,运行我的基准测试,保存结果,然后再次删除GKE集群 .

kubectl命令负责标记GKE集群的节点子集(以保证它们仅运行我的应用程序,而基准测试基础结构位于节点的其余部分上)并创建机密,复制控制器和服务 .

我正在寻找一种自动化所有这一切的方法 . 我知道我可以写一个自定义程序,为我做所有这些,但我想知道是否已经有这样的程序 .

我简要地研究了https://www.terraform.io/,但看起来这只会覆盖GKE设置,而不是Kubernetes资源 .

是组合terraform和运行kubectl命令的脚本的方法吗?还是有其他工具来编排Kubernetes?

3 回答

  • 1

    看看Cloud Deployment Manager . 它允许您以声明方式创建GKE集群,然后向集群添加资源 . 我不确定它是否会为你标记节点 . 要做到这一点,一个选项是创建多个node pools . 每个节点池将自动标记节点池的名称,这可以帮助您减少需要运行的手动 kubectl 命令的数量 .

  • 3

    对于现在登陆的人来说,Terraform现在(7月18日)也支持配置kubernetes资源,因此您的terraform可以生成Kubernetes Deployments,Services等 .

    唯一真正需要注意的是,提供商已经决定只支持GA(非alpha或beta)资源,在撰写本文时,这些资源仍然相当少(例如没有Ingress) .

  • 0

    我正在使用terraform在不同的 Cloud 中创建infra,然后在Helm之后进行配置 . 如果没有使用K8s PaaS,我将添加到循环Ansible .

    Ansible可以部署在kubernetes中部署,但我认为Helm增加了额外的 Value .

    希望能帮助到你 .

相关问题