我们在AWS上使用kube-up.sh设置了Kubernetes 1.1集群。

基本安装的一部分包括fluentd-elastisearch。我们要卸载它。具体来说,我们无法删除每个节点运行一个的静态Pod。

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

flex 搜索设置似乎有两个部分。
第一个是在addon中的主服务器上定义的/etc/kubernetes/addons/fluentd-elasticsearch。我们将此文件移出了addons目录,并手动删除了关联的Replication Controller。

剩下的是静态 pods :

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

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

该文件似乎由包含salt/srv/pillar/cluster-params.sls配置enable_node_logging: 'true'放置。

我们将标志翻转到'false',杀死了现有节点,从而允许通过Auto Scaling组配置新节点。不幸的是,新产生的主机仍然具有静态的fluentd-elasticsearch pod。

我们认为在主机上可能还涉及其他几个可能的文件:
/var/cache/kubernetes-install/kubernetes/saltbase/salt/fluentd-es/fluentd-es.yaml
/var/cache/salt/minion/files/base/fluentd-es/fluentd-es.yaml

我们因缺乏salt经验而陷入困境。指针最欢迎。

最佳答案

我相信我们有一些工作步骤可以从已经安装了集群的集群中删除 fluentd

  • 删除 fluentd-elastisearch 插件(在上)
  • rm(或mv)/etc/kubernetes/addons/fluentd-elasticsearch/
  • 删除剩余的ReplicationController:

  • 禁用盐堆日志记录(在上)。这将防止将来产生的节点使用流畅的静态pod
  • /srv/pillar/cluster-params.sls中,将现有设置更改为

  • salt '*' saltutil.clear_cache
  • salt '*' saltutil.sync_all
  • 在现有节点上,手动删除流利的静态pod

  • 关于kubernetes - 如何从Kubernetes移除fluentd-elasticsearch,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36996994/

    10-16 10:31