Совместно находите стручки и постоянные объемы в кубернетах
У меня кластер kubernetes, распределенный по двум зонам, A и B. Я использую тома nfs для постоянного хранения. У меня есть объемы NFS в обеих зонах. Я создаю набор из 2 реплик, которые будут распределены по этим зонам (для этого я использовал анти-сродство pod). Теперь я хочу, чтобы модули в зоне A использовали тома в зоне A, а модули в зоне B - для томов в зоне B.
Я могу добавить метки к постоянным томам и сопоставить заявки на постоянные тома с этими метками. Но как мне убедиться, что пвх для стручка не привязан к пвх в другой зоне?
1 ответ
Вы можете попробовать связать persistent volume claims (PVCs)
в persistent volumes (PVs)
и разбить стручки Kubernetes по кластеру между двумя зонами, используя специальную встроенную метку failure-domain.beta.kubernetes.io/zone
, Если вы создаете тома вручную, можно пометить их failure-domain.beta.kubernetes.io/zone:zoneA
значение, гарантирующее, что модуль pod запланирован только для узлов в той же зоне, что и зона постоянного тома.
Например, чтобы установить label
для узла и PV:
kubectl label node <node-name> failure-domain.beta.kubernetes.io/zone=zoneA
kubectl label pv <pv-name> failure-domain.beta.kubernetes.io/zone=zoneA
Найдите некоторую полезную информацию из официальной документации Kubernetes.