Gestion de cluster distant
Cette page a été traduite par PageTurner AI (bêta). Non approuvée officiellement par le projet. Vous avez trouvé une erreur ? Signaler un problème →
Introduction au cluster distant
Chaos Mesh fournit la ressource RemoteCluster à l'échelle du cluster pour vous aider à gérer et injecter des fautes dans des clusters Kubernetes distants. Ce document décrit comment créer un objet RemoteCluster et l'utiliser pour injecter des fautes.
RemoteCluster est en phase précoce. Sa configuration et ses fonctionnalités (telles que la migration de configuration, la gestion de version et l'authentification) s'amélioront continuellement. Si vous rencontrez un problème, veuillez ouvrir un ticket sur chaos-mesh/chaos-mesh pour le signaler.
Enregistrer un cluster distant
Pour enregistrer un cluster distant dans le Chaos Mesh installé sur le cluster actuel, vous devez créer une ressource RemoteCluster. Après avoir créé cette ressource, les composants nécessaires seront automatiquement installés dans le cluster distant. Voici un exemple de ressource RemoteCluster :
apiVersion: chaos-mesh.org/v1alpha1
kind: RemoteCluster
metadata:
name: cluster-xxx
spec:
namespace: chaos-mesh
version: 2.6.2
kubeConfig:
secretRef:
name: remote-chaos-mesh.kubeconfig
namespace: chaos-mesh
key: kubeconfig
# configOverride:
# dashboard:
# create: true
Cela installera le chart Helm chaos-mesh avec le KUBECONFIG fourni dans le champ .spec.kubeConfig dans l'espace de noms spécifié.
Description des champs
| Parameter | Type | Description | Default value | Required | Example |
|---|---|---|---|---|---|
| namespace | string | Represent the namespace to install Chaos Mesh components in the remote cluster | None | Yes | chaos-mesh |
| version | string | The version of Chaos Mesh to install in the remote cluster | None | Yes | 2.6.2 |
| kubeConfig.secretRef.name | string | The name of the secret, which is used to store the kubeconfig of remote cluster. This kubeconfig will be used to install chaos-mesh components and inject errors | None | Yes | remote-chaos-mesh.kubeconfig |
| kubeConfig.secretRef.namespace | string | The name of the namespace of the kubeconfig secret. | None | Yes | default |
| kubeConfig.secretRef.key | string | The key of the kubeconfig in the secret. | None | Yes | kubeconfig |
| configOverride | string | Passing helm values during install or upgrade | None | No | {"dashboard":{"create":true}} |
Injecter des erreurs dans le cluster distant
Pour injecter des erreurs dans un cluster distant en utilisant le RemoteCluster enregistré, vous pouvez utiliser le champ remoteCluster dans le .spec de chaque type de chaos. Par exemple :
apiVersion: chaos-mesh.org/v1alpha1
kind: StressChaos
metadata:
name: burn-cpu
spec:
remoteCluster: cluster-xxx
mode: one
selector:
labelSelectors:
'app.kubernetes.io/component': 'tikv'
stressors:
cpu:
workers: 1
load: 100
options: ['--cpu 2', '--timeout 600', '--hdd 1']
duration: '30s'
Chaos Mesh injectera les erreurs dans le cluster distant en utilisant le kubeconfig enregistré avec le RemoteCluster nommé cluster-xxx. Le StressChaos correspondant sera automatiquement créé dans le cluster distant, et son état sera synchronisé avec le cluster actuel, vous permettant ainsi de gérer l'injection de chaos pour plusieurs clusters différents depuis un seul cluster Kubernetes.