diff --git a/dev_guide/daemonsets.adoc b/dev_guide/daemonsets.adoc index d37f39c6e1bb..c29d255487cd 100644 --- a/dev_guide/daemonsets.adoc +++ b/dev_guide/daemonsets.adoc @@ -21,6 +21,29 @@ your cluster, or deploy a monitoring agent on every node. For more information on daemonsets, see the link:http://kubernetes.io/docs/admin/daemons/[Kubernetes documentation]. +[IMPORTANT] +==== +Daemonset scheduling is incompatible with project's default node selector. If +you fail to disable it, the daemonset gets restricted by merging with the +default node selector. This results in frequent pod recreates on the nodes that +got unselected by the merged node selector, which in turn puts unwanted load on +the cluster. + +Therefore, + +* Before you start using daemonsets, disable the default project-wide xref:../admin_guide/managing_projects.adoc#using-node-selectors[node selector] +in your namespace, by setting the namespace +annotation `openshift.io/node-selector` to an empty string: ++ +---- +# oc patch namespace myproject -p \ + '{"metadata": {"annotations": {"openshift.io/node-selector": ""}}}' +---- +* If you are creating a new project, overwrite the default node selector using +`oc adm new-project --node-selector=""`. +==== + + [[dev-guide-creating-daemonsets]] == Creating Daemonsets