Guide de l'administrateur Kubernetes sur l'interface utilisateur Web NetBackup™
- Présentation de NetBackup pour Kubernetes
- Déploiement et configuration de l'opérateur NetBackup Kubernetes
- Configuration des paramètres pour l'opération de snapshot NetBackup
- Déploiement de certificats sur l'opérateur NetBackup Kubernetes
- Gestion des biens Kubernetes
- Gestion des groupes intelligents Kubernetes
- Protection des biens Kubernetes
- Gestion des groupes d'images
- Protection des clusters gérés par Rancher dans NetBackup
- Récupération des biens Kubernetes
- À propos de la sauvegarde incrémentielle et de la restauration
- Activation de la sauvegarde basée sur l'accélérateur
- Activation du mode FIPS dans Kubernetes
- Résolution des problèmes liés à Kubernetes
Prise en charge du mécanisme de planification des pods du système de déplacement des données
Spécifiez les champs suivants dans le configMap du serveur de sauvegarde pour planifier les pods du système de déplacement des données sur les nœuds.
nodeSelector : nodeSelector est un moyen facile de limiter les pods aux nœuds avec des étiquettes spécifiques.
Exemple :
apiVersion: v1 kind: ConfigMap metadata: name: backupserver.sample.domain.com namespace: netbackup data: datamover.hostaliases: | 10.20.12.13=backupserver.sample.domain.com 10.21.12.13=mediaserver.sample.domain.com datamover.properties: | image=reg.domain.com/datamover/image:latest datamover.nodeSelector: | kubernetes.io/hostname: test1-l94jm-worker-k49vj topology.rook.io/rack: rack1 version: "1"
nodeName : nodeName est un formulaire direct de sélection de nœud différent d'affinity ou de nodeSelector. Il vous permet de spécifier un nœud sur lequel un pod est planifié pour la sauvegarde et de remplacer le mécanisme de planification par défaut.
Exemple :
apiVersion: v1 kind: ConfigMap metadata: name: backupserver.sample.domain.com namespace: netbackup data: datamover.hostaliases: | 10.20.12.13=backupserver.sample.domain.com 10.21.12.13=mediaserver.sample.domain.com datamover.properties: | image=reg.domain.com/datamover/image:latest datamover.nodeName : test1-l94jm-worker-hbblk version: "1"
Taint et Toleration : la valeur Toleration vous permet de planifier les pods avec des valeurs taint similaires. Les valeurs Taint et la Toleration fonctionnent ensemble pour garantir que les pods sont planifiés sur les nœuds appropriés. Si une ou plusieurs valeurs taint sont appliquées à un nœud, celui-ci ne doit pas accepter les pods qui ne prennent pas en charge les valeurs taint.
Exemple :
apiVersion: v1 kind: ConfigMap metadata: name: backupserver.sample.domain.com namespace: netbackup data: datamover.hostaliases: | 10.20.12.13=backupserver.sample.domain.com 10.21.12.13=mediaserver.sample.domain.com datamover.properties: | image=reg.domain.com/datamover/image:latest datamover.tolerations: | - key: "dedicated" operator: "Equal" value: "experimental" effect: "NoSchedule" version: "1"
Affinité et Anti-affinité : les fonctions d'affinité de nœud (similaires au champ NodeSelector, mais plus expressives) vous permettent de spécifier des règles logicielles. La fonction d'affinité/anti-affinité Inter-pod vous permet de limiter les pods au niveau des étiquettes sur les autres pods.
Exemples :
Affinité de nœud :
apiVersion: v1 kind: ConfigMap metadata: name: backupserver.sample.domain.com namespace: netbackup data: datamover.hostaliases: | 10.20.12.13=backupserver.sample.domain.com 10.21.12.13=mediaserver.sample.domain.com datamover.properties: | image=reg.domain.com/datamover/image:latest datamover.affinity: | nodeAffinity: requiredDuringSchedulingIgnoredDuringExecution: nodeSelectorTerms: - matchExpressions: - key: kubernetes.io/hostname operator: In values: - test1-l94jm-worker-hbblk preferredDuringSchedulingIgnoredDuringExecution: - weight: 1 preference: matchExpressions: - key: beta.kubernetes.io/arch operator: In values: - amd64 version: "1"
Affinité de pod
apiVersion: v1 kind: ConfigMap metadata: name: backupserver.sample.domain.com namespace: netbackup data: datamover.hostaliases: | 10.20.12.13=backupserver.sample.domain.com 10.21.12.13=mediaserver.sample.domain.com datamover.properties: | image=reg.domain.com/datamover/image:latest datamover.affinity: | podAffinity: requiredDuringSchedulingIgnoredDuringExecution: - labelSelector: matchExpressions: - key: component operator: In values: - netbackup topologyKey: kubernetes.io/hostname version: "1"
topologySpreadConstraints : les contraintes de propagation de topologie sont utilisées pour contrôler le comportement des pods répartis dans votre cluster, dans des domaines de défaillance tels que des régions, des zones, des nœuds et d'autres domaines de topologie définis par l'utilisateur.
Exemple :
apiVersion: v1 kind: ConfigMap metadata: name: backupserver.sample.domain.com namespace: netbackup data: datamover. hostaliases: | 10.20.12.13=backupserver.sample.domain.com 10.21.12.13=mediaserver.sample.domain.com datamover.properties: | image=reg.domain.com/datamover/image:latest datamover.topologySpreadConstraints : | - maxSkew: 1 topologyKey: kubernetes.io/hostname whenUnsatisfiable: DoNotSchedule version: "1"
Étiquettes : les paires clé/valeur sont associées aux objets, tels que des pods. Les étiquettes ont pour but d'identifier les attributs d'un objet qui sont significatifs et pertinents pour les utilisateurs. Les étiquettes peuvent organiser et sélectionner des sous-ensembles d'objets. Les étiquettes associées aux objets lors de leur création sont ajoutées et modifiées par la suite à tout moment.
Exemple :
apiVersion: v1 kind: ConfigMap metadata: name: backupserver.sample.domain.com namespace: netbackup data: datamover.hostaliases: | 10.20.12.13=backupserver.sample.domain.com 10.21.12.13=mediaserver.sample.domain.com datamover.properties: | image=reg.domain.com/datamover/image:latest datamover.labels: | env: test pod: datamover version: "1"
Annotations : l'utilisateur peut utiliser des étiquettes ou des annotations pour associer des métadonnées aux objets Kubernetes. Vous ne pouvez pas utiliser des annotations pour identifier et sélectionner des objets.
Exemple :
apiVersion: v1 kind: ConfigMap metadata: name: backupserver.sample.domain.com namespace: netbackup data: datamover.hostaliases: | 10.20.12.13=backupserver.sample.domain.com 10.21.12.13=mediaserver.sample.domain.com datamover.properties: | image=reg.domain.com/datamover/image:latest datamover.annotations: | buildinfo: |- [{ "name": "test", "build": "1" }] imageregistry: "https://reg.domain.com/" version: "1"