находил?
у меня есть statefulset
spec:
podManagementPolicy: OrderedReady
replicas: 3
template:
spec:
affinity:
podAntiAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
- labelSelector:
matchExpressions:
- key: app
operator: In
values:
- zookeeper-38230
topologyKey: topology.kubernetes.io/zone
volumeClaimTemplates:
- apiVersion: v1
kind: PersistentVolumeClaim
metadata:
creationTimestamp: null
labels:
app: zookeeper
clickhouse.altinity.com/app: zookeeper
clickhouse.altinity.com/chi: rel-c93e4870-f6
clickhouse.altinity.com/namespace: qa-release-ui
name: datadir-volume
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 25Gi
storageClassName: gp3-encrypted
volumeMode: Filesystem
который должен разносить поды по разным AZ
и в этих же AZ создавать PVC+PV
но какого то черта, у меня -1 и -2 PVC для STS создались в одной AZ us-west-2b
и в результате pod не может schedule как положено
кто нибудь напарывался на такое?
PVC привязываются к AZ, между AZ они ездить не умеют
Дак я понимаю что не умеют у меня вопрос как у меня PVC создался две штуки в одной AZ если по podAntiAffinity должны были создастся в разных?
А рестарта подов не было? Мб PVC уже был создан в какой-то для пода и потом не переехал Я бы events посмотрел по этому деплойменту
это не деплоймент , это statefulset
Во первый при чем тут автоскейлер, во вторых у вас антиафинити по лейблам пода, topologySpreadConstraints будет легче сделать
а они не тоже самое делают то? это просто более новый механизм... почему шедулинг подов не правильный? с точки зрения кого? объясните? разве вот это topologyKey: topology.kubernetes.io/zone не скажет kube-scheduler, эй. делай Pod в другой зоне если в этой зоне уже есть под с Label=zookeeper-38230 ?
Ну раз у вас зашедулилось в одну зону значит неправильный =) я же не знаю че у вас там
так я показал что там у меня, в манифесте statefulset у меня там AWS EKS обычный шедулер + cluster-autoscaler чтобы worker nodes создавать...
вы показали кусок манифеста, показывайте все тогда уж
podSpreadConstraints новее, да. Лучше использовать его. Если вы не про карпентер, то он не может создать новую ноду при неудовлетворительнии антиаффинити.
Обсуждают сегодня