我想知道是否有比yaml文件更容易的方法在k8s中创建守护程序集。例如,对于pod,我们有kubectl run --generator=run-pod/v1
命令。我想知道DS-是否也有类似的东西
提前谢谢。
没有创建daemonsets
的快速kubectl create
类型命令。但你可以用其他方式来做。
- 一种方法是:
$ kubectl create deploy nginx --image=nginx --dry-run=client -o yaml | sed '/null|{}|replicas/d;/status/,$d;s/Deployment/DaemonSet/g' > nginx-ds.yaml $ kubectl apply -f nginx-ds.yaml
- 如果您不想将
yaml
数据保存到任何文件,以下是您可以执行的操作:$ kubectl create deploy nginx --image=nginx --dry-run=client -o yaml | sed '/null|{}|replicas/d;/status/,$d;s/Deployment/DaemonSet/g' | kubectl apply -f -
您现在已经设置好了守护程序。
我们在这里所做的是:首先我们创建一个部署yaml
,然后用kind: DaemonSet
替换kind: Deployment
,并从部署yaml
中删除replicas: 1
。
这就是我们为daemonset
得到yaml
的方法。
您可以访问用于DaemonSets的Kubernetes文档。您可以使用该链接获取DaemonSet yaml文件的示例。然而,您不可能通过命令式方式创建Daemoset。您可以创建一个部署规范,并将部署规范更改为DaemonSet规范。您需要将种类更改为Daemoset,删除策略、副本和状态字段。那就行了。