Kubernetes 使用相同的列表清单部署两个不同的守护程序
我有一个场景,我需要在集群中的每个节点上部署一个pod,以便它可以观察某些行为(例如,pod是否被创建、是否正确终止)。因为,我已经在集群中运行了一个守护程序,所以我想使用列表资源的可用配置再添加一个守护程序Kubernetes 使用相同的列表清单部署两个不同的守护程序,kubernetes,yaml,containers,daemonset,Kubernetes,Yaml,Containers,Daemonset,我有一个场景,我需要在集群中的每个节点上部署一个pod,以便它可以观察某些行为(例如,pod是否被创建、是否正确终止)。因为,我已经在集群中运行了一个守护程序,所以我想使用列表资源的可用配置再添加一个守护程序 apiVersion: v1 kind: List metadata: name: Daemonset-deploy namespace: test-ns items: - kind: DaemonSet apiVersion: apps/v1 metadata
apiVersion: v1
kind: List
metadata:
name: Daemonset-deploy
namespace: test-ns
items:
- kind: DaemonSet
apiVersion: apps/v1
metadata:
name: DaemonSet1
namespace: test-ns
spec:
<add the spec here>
- kind: DaemonSet
apiVersion: apps/v1
metadata:
name: DaemonSet2
namespace: test-ns
spec:
<add the spec for second daemonset>
apiVersion:v1
种类:列表
元数据:
名称:守护程序部署
名称空间:testns
项目:
-种类:守护进程
apiVersion:apps/v1
元数据:
名称:守护进程1
名称空间:testns
规格:
-种类:守护进程
apiVersion:apps/v1
元数据:
名称:守护进程2
名称空间:testns
规格:
我想了解这是否是部署两个守护程序的正确方法。因为,当我尝试部署同一配置时,第一个守护程序启动并运行,但第二个守护程序根本没有出现。您不需要使用list来部署2个守护程序。您只需分别创建两个不同的守护程序。 如果您需要在特定节点中创建守护程序的pod,您可以使用
模板的spec
中的spec.template.spec.nodeSelector
来创建它们
下面是如何创建两个不同守护程序的示例
---
apiVersion: apps/v1
kind: DaemonSet
metadata:
name: DaemonSet1
namespace: test-ns
spec:
<add the spec here>
---
apiVersion: apps/v1
kind: DaemonSet
metadata:
name: DaemonSet2
namespace: test-ns
spec:
<add the spec for second daemonset>
---
---
apiVersion:apps/v1
种类:守护进程
元数据:
名称:守护进程1
名称空间:testns
规格:
---
apiVersion:apps/v1
种类:守护进程
元数据:
名称:守护进程2
名称空间:testns
规格:
---
您可以完全独立地部署守护程序。它们不需要通过列表应用。每个都可以有自己的清单。此外,您可以考虑查看KubNeNes事件来检查PODS活动。另外,在这个模式上使用“列表”有什么缺点吗?在k8s中,总是建议单独创建对象。