如何从Kubernetes中去除流利弹性蛋白

Chr*_*ore 2 salt-stack kubernetes

我们在AWS上配置了Kubernetes 1.1集群kube-up.sh.

部分基础安装包括fluentd-elastisearch.我们想要卸载它.具体来说,我们没有成功删除每个节点运行一次的静态pod.

我们不使用Kubernetes托管fluentd-elastisearch,而是使用外部托管的实例.据我所知,fluentd-elastisearch不需要运行Kubernetes,因此我一直在尝试将其从群集中删除.

弹性支架设置似乎有两个部分.第一个是addon在master中定义的/etc/kubernetes/addons/fluentd-elasticsearch.我们将此文件移出addons目录并手动删除关联的复制控制器.

这留下了静态pod:

kube-ac --namespace=kube-system get pods
NAME                                                             READY     STATUS    RESTARTS   AGE
fluentd-elasticsearch-ip-10-0-5-105.us-west-2.compute.internal   1/1       Running   1          6d
fluentd-elasticsearch-ip-10-0-5-124.us-west-2.compute.internal   1/1       Running   0          6d
fluentd-elasticsearch-ip-10-0-5-180.us-west-2.compute.internal   1/1       Running   0          6d
fluentd-elasticsearch-ip-10-0-5-231.us-west-2.compute.internal   1/1       Running   0          6d
Run Code Online (Sandbox Code Playgroud)

我们相信静态pod在每个节点上都会启动,因为它们存在于每个节点上/etc/kubernetes/manifests/fluentd-es.yaml.

此文件似乎由包含的salt配置放置./srv/pillar/cluster-params.slsenable_node_logging: 'true'

我们将标志翻转'false',杀死现有节点,允许通过Auto Scaling组配置新节点.不幸的是,新生成的主机仍然有静态fluentd-elasticsearch容器.

在主控主机上还有一些我们认为可能涉及的其他可能文件:

/var/cache/kubernetes-install/kubernetes/saltbase/salt/fluentd-es/fluentd-es.yaml
/var/cache/salt/minion/files/base/fluentd-es/fluentd-es.yaml
Run Code Online (Sandbox Code Playgroud)

由于缺乏salt经验,我们正在撞墙.指针最受欢迎.

Chr*_*ore 6

我相信我们已经采取措施从已经安装了它的集群中删除流利.

  1. 删除流利弹性插件(在主人身上)
    • rm(或mv)/etc/kubernetes/addons/fluentd-elasticsearch/
    • 删除补余ReplicationControllers:

      kubectl --namespace = kube-system delete rc elasticsearch-logging-v1 kibana-logging-v1

  2. 禁止在salt-stack中记录(在master上).这将防止将来产生的节点拥有流畅的静态pod.
    • /srv/pillar/cluster-params.sls将现有设置更改为

      enable_node_logging:'false'

      logging_destination:'无'

    • salt '*' saltutil.clear_cache
    • salt '*' saltutil.sync_all
  3. 在现有节点上,手动删除流畅的静态窗格

    rm /etc/kubernetes/manifests/fluentd-es.yaml