Browse Source

Merge pull request #7864 from ewolinetz/logging_anti-affinity

Adding anti affinity configurations for ES and kibana pods
OpenShift Merge Robot 7 years ago
parent
commit
1b48aab78f

+ 12 - 0
roles/openshift_logging_elasticsearch/templates/2.x/es.j2

@@ -27,6 +27,18 @@ spec:
         component: "{{component}}"
         deployment: "{{deploy_name}}"
     spec:
+      affinity:
+        podAntiAffinity:
+          preferredDuringSchedulingIgnoredDuringExecution:
+          - weight: 100
+            podAffinityTerm:
+              labelSelector:
+                matchExpressions:
+                - key: logging-infra
+                  operator: In
+                  values:
+                  - elasticsearch
+            topologyKey: kubernetes.io/hostname
       terminationGracePeriod: 600
       serviceAccountName: aggregated-logging-elasticsearch
       securityContext:

+ 12 - 0
roles/openshift_logging_elasticsearch/templates/5.x/es.j2

@@ -27,6 +27,18 @@ spec:
         component: "{{component}}"
         deployment: "{{deploy_name}}"
     spec:
+      affinity:
+        podAntiAffinity:
+          preferredDuringSchedulingIgnoredDuringExecution:
+          - weight: 100
+            podAffinityTerm:
+              labelSelector:
+                matchExpressions:
+                - key: logging-infra
+                  operator: In
+                  values:
+                  - elasticsearch
+            topologyKey: kubernetes.io/hostname
       terminationGracePeriod: 600
       serviceAccountName: aggregated-logging-elasticsearch
       securityContext:

+ 12 - 0
roles/openshift_logging_kibana/templates/2.x/kibana.j2

@@ -26,6 +26,18 @@ spec:
         provider: openshift
         component: "{{ component }}"
     spec:
+      affinity:
+        podAntiAffinity:
+          preferredDuringSchedulingIgnoredDuringExecution:
+          - weight: 100
+            podAffinityTerm:
+              labelSelector:
+                matchExpressions:
+                - key: logging-infra
+                  operator: In
+                  values:
+                  - kibana
+            topologyKey: kubernetes.io/hostname
       serviceAccountName: aggregated-logging-kibana
 {% if kibana_node_selector is iterable and kibana_node_selector | length > 0 %}
       nodeSelector:

+ 12 - 0
roles/openshift_logging_kibana/templates/5.x/kibana.j2

@@ -26,6 +26,18 @@ spec:
         provider: openshift
         component: "{{ component }}"
     spec:
+      affinity:
+        podAntiAffinity:
+        preferredDuringSchedulingIgnoredDuringExecution:
+        - weight: 100
+          podAffinityTerm:
+            labelSelector:
+              matchExpressions:
+              - key: logging-infra
+                operator: In
+                values:
+                - kibana
+          topologyKey: kubernetes.io/hostname
       serviceAccountName: aggregated-logging-kibana
 {% if kibana_node_selector is iterable and kibana_node_selector | length > 0 %}
       nodeSelector: