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

时间:2016-05-03 06:19:56

标签: kubernetes salt-stack

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

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

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

弹性装置设置似乎有两个部分。 第一个是addon中主人定义的/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

我们认为由于/etc/kubernetes/manifests/fluentd-es.yaml的每个节点都存在,每个节点都会启动静态窗格。

此文件似乎由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经验而陷入困境。指针最受欢迎。

3 个答案:

答案 0 :(得分: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 上)。这将阻止将来产生的节点拥有流利的静态窗格
    • /srv/pillar/cluster-params.sls中将现有设置更改为
        

      enable_node_logging:'false'

           

      logging_destination:'none'

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

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

答案 1 :(得分:0)

您可以通过删除静态窗格清单文件来停止静态窗格。在所有节点上运行:

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

以下是有关静态pod的文档:

http://kubernetes.io/docs/admin/static-pods/

答案 2 :(得分:0)

您可以在启动群集之前调整配置设置,以便跳过安装某些可选的附加功能。设置位于cluster/aws/config-default.sh,要禁用流利,您应在运行KUBE_LOGGING_DESTINATION=none之前设置kube-up.sh