Add documentation for topologySpreadConstraint.
This commit is contained in:
		
							parent
							
								
									a7cc221d63
								
							
						
					
					
						commit
						bb676f5949
					
				
							
								
								
									
										19
									
								
								docs/user.md
								
								
								
								
							
							
						
						
									
										19
									
								
								docs/user.md
								
								
								
								
							|  | @ -714,7 +714,7 @@ but Kubernetes will not spin up the pod if the requested HugePages cannot be all | ||||||
| For more information on HugePages in Kubernetes, see also | For more information on HugePages in Kubernetes, see also | ||||||
| [https://kubernetes.io/docs/tasks/manage-hugepages/scheduling-hugepages/](https://kubernetes.io/docs/tasks/manage-hugepages/scheduling-hugepages/) | [https://kubernetes.io/docs/tasks/manage-hugepages/scheduling-hugepages/](https://kubernetes.io/docs/tasks/manage-hugepages/scheduling-hugepages/) | ||||||
| 
 | 
 | ||||||
| ## Use taints, tolerations and node affinity for dedicated PostgreSQL nodes | ## Use taints, tolerations, node affinity and topology spread constraint for dedicated PostgreSQL nodes | ||||||
| 
 | 
 | ||||||
| To ensure Postgres pods are running on nodes without any other application pods, | To ensure Postgres pods are running on nodes without any other application pods, | ||||||
| you can use [taints and tolerations](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/) | you can use [taints and tolerations](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/) | ||||||
|  | @ -755,6 +755,23 @@ spec: | ||||||
| If you need to define a `nodeAffinity` for all your Postgres clusters use the | If you need to define a `nodeAffinity` for all your Postgres clusters use the | ||||||
| `node_readiness_label` [configuration](administrator.md#node-readiness-labels). | `node_readiness_label` [configuration](administrator.md#node-readiness-labels). | ||||||
| 
 | 
 | ||||||
|  | If you need PostgreSQL Pods to run on separate nodes, you can use the | ||||||
|  | [topologySpreadConstraints](https://kubernetes.io/docs/concepts/scheduling-eviction/topology-spread-constraints/) to control how they are distributed across your cluster. | ||||||
|  | This ensures they are spread among failure domains such as | ||||||
|  | regions, zones, nodes, or other user-defined topology domains. | ||||||
|  | 
 | ||||||
|  | ```yaml | ||||||
|  | apiVersion: "acid.zalan.do/v1" | ||||||
|  | kind: postgresql | ||||||
|  | metadata: | ||||||
|  |   name: acid-minimal-cluster | ||||||
|  | spec: | ||||||
|  |   topologySpreadConstraints: | ||||||
|  |     - maxskew: 1 | ||||||
|  |       topologyKey: topology.kubernetes.io/zone | ||||||
|  |       whenUnsatisfiable: DoNotSchedule | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
| ## In-place major version upgrade | ## In-place major version upgrade | ||||||
| 
 | 
 | ||||||
| Starting with Spilo 13, operator supports in-place major version upgrade to a | Starting with Spilo 13, operator supports in-place major version upgrade to a | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue