google-compute-engine - 在Google Compute Engine上运行Kubernetes集群后,是否应该编辑Salt tar文件?

标签 google-compute-engine kubernetes google-cloud-platform salt-stack

我已经使用curl -sS https://get.k8s.io | bash使用Kubernetes 1.2.4在Google Compute Engine上创建集群。这很棒。我想通过在kube-apiserver pod规范中指定的kube-apiserver命令中添加一些标志来启用ABAC授权模式。

我不清楚一旦将tar / gzip压缩后是否应该调整the salt files。生成pod规范的盐文件是here,但是在群集站立后编辑此文件还有一些其他要求:

  • 我必须为我解压缩安装脚本上传到Google Cloud Storage的Salt tarball
  • 编辑盐文件
  • Tar / gzip备份它们,生成一个新的校验和文件
  • 将这些推送到GCS
  • 更新所有实例的kube-metadata,以便SALT_TAR_HASH现在是正确的

  • 好像我走错了路,因为这也会与升级相冲突。

    是否有更好的方法来配置安装在安装脚本中的Pod,服务等,而不必执行所有这些操作?

    最佳答案

    安装脚本中内置的定制位于环境变量中,您可以将其设置为更改行为(请参见cluster/gce/config-default.sh)。如果覆盖这些变量之一不起作用(我相信ABAC就是这种情况),那么您唯一的选择是手动修改salt文件。

    如果您愿意从源代码构建Kubernetes,最简单的方法是将GitHub存储库克隆到所需的发行版本,在本地修改Salt文件,然后运行make quick-release./cluster/kube-up.sh。这将构建一个发行版(从源), bundle 在本地修改的盐文件中,生成校验和,将盐文件上载到Google Cloud Storage,然后在集群中启动具有正确盐文件和校验和的集群。

    如果您不想从源代码构建,而不是调整所有实例上的kube-env元数据条目,则可以在实例模板中对其进行修复,然后删除每个实例。它们将被新实例自动替换,新实例将继承您对实例模板所做的更改。

    您当前的机制不会真正与升级混为一谈,因为升级会在新版本上创建一个新的实例模板。您对旧实例模板(或直接在旧节点上)所做的任何更改都不会继续到新节点上(无论好坏)。

    关于google-compute-engine - 在Google Compute Engine上运行Kubernetes集群后,是否应该编辑Salt tar文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37614039/

    相关文章:

    google-bigquery - GCE 上没有名为 'google.cloud._helpers' 的模块

    docker - Kubernetes - 动态配置存储

    docker - 在Compute Engine上安装Google Cloud SDK:权限被拒绝错误

    docker - 如何让 `cos-extensions install gpu`在Google Cloud VM上运行?

    azure - 为什么无法将文件从 pod 复制到本地

    kubernetes - 在作业失败时暂停 kubernetes cronjob 以避免后续作业运行

    kubernetes - ImagePullBackOff 错误 Google Kubernetes Engine

    javascript - Firestore 分别按日期和时间查询

    google-cloud-platform - gcloud 组件更新权限被拒绝

    kubernetes - 如何列出Kubernetes服务的IPv6?