J'essaie de réduire les coûts d'exécution du cluster kubernetes sur Google Cloud Platform.
J'ai déplacé mon pool de nœuds vers des instances de VM préemptives. J'ai 1 pod pour Postgres et 4 nœuds pour les applications Web. Pour Postgres, j'ai créé StorageClass pour rendre les données persistantes.
Étonnamment, peut-être pas, toutes les données de stockage ont été effacées après une journée.
Comment rendre un nœud spécifique dans GCP non préemptif? Ou pourriez-vous nous dire quoi faire dans cette situation?
3 Réponses :
Vous pouvez utiliser le service géré à partir du nom GCP du cluster GKE google kubernetes.
et les données de stockage effacées en raison du changement de classe de stockage peuvent ne pas conserver la politique et le PVC.
mieux vaut utiliser le service géré, je pense et je préfère
Je suppose que j'ai trouvé une solution.
apiVersion: apps/v1beta2 kind: StatefulSet metadata: name: postgres spec: serviceName: postgres selector: matchLabels: app: postgres replicas: 1 template: metadata: labels: app: postgres role: postgres spec: containers: - name: postgres image: postgres env: ... ports: ... # Especially this part should be configured! volumeMounts: - name: postgres-persistent-storage mountPath: /var/lib/postgresql volumes: - name: postgres-persistent-storage gcePersistentDisk: # This GCE PD must already exist. pdName: postgres-disk fsType: ext4
gcloud compute disks create --size=10GB postgres-disk gcloud compute disks create --size=[SIZE] [NAME]
Vous pouvez rendre un nœud spécifique non préemptif dans un cluster Google Kubernetes Engine, comme indiqué dans le documentation officielle .
Les étapes pour configurer un cluster avec des pools de nœuds à la fois préemptifs et non préemptifs sont les suivantes:
Vous voudrez probablement planifier des pods spécifiques uniquement sur des nœuds non préemptifs. Pour cela, vous pouvez utiliser des teintes de nœuds .