Qu'est-ce que la commande de patch Kubectl

Qu'est-ce que la commande de patch Kubectl
Kubernetes propose diverses méthodes pour mettre à jour les ressources: modifier, appliquer, patcher et remplacer. Ainsi, aujourd'hui, notre sujet de discussion est le patch Kubectl ou la commande de patch. Si vous communiquez avec les grappes de Kubernetes via Kubectl CLI, vous pourriez être familier avec l'édition ou appliquer des sous-communs. Tout comme ces deux commandes, nous connaissons moins la commande de patch de Kubectl. La commande Patch vous permet de modifier une partie d'une spécification de ressource, spécifiant la partie modifiée sur CLI. Lors de la mise à jour d'une ressource, il est bon de le corriger. Il existe trois types de correctifs, je.e., Stratégique, JSON Merge Patch et JSON Patch.

Le type de fusion stratégique essaie de «faire la chose précise» lors de la fusion de la spécification donnée avec la spécification actuelle. Plus explicitement, il essaie de fusionner les tableaux et les objets. Par exemple, la spécification d'un correctif qui contient une variable unique ou nouvelle dans une spécification de conteneur de pod résulte de cette variable incluse dans les variables actuelles, ne les écrasant pas. Effacer un élément de tableau via un patch de fusion stratégique est plus difficile, ce qui nécessite l'utilisation des commandes de fusion.

Comme l'approche stratégique, la méthode JSON Merge Patch prend une spécification partielle de Kubernetes en entrée et maintient les objets fusionnés. Cette façon est assez différente de l'approche ci-dessus car elle ne prend en charge que le remplacement des tableaux. Lors de l'utilisation de cette approche, vous devez diffuser des spécifications complètes pour tous les conteneurs; Si vous avez besoin de modifier n'importe quelle propriété de conteneur sur la CLI, vous pouvez choisir JSON Merge Patch via le patch Kubectl.

D'un autre côté, la méthode JSON Patch utilise une illustration JSON des variations que vous souhaitez faire à une ressource. JSON Patch est un moyen plus robuste et efficace pour énoncer les modifications que vous souhaitez apporter.

Conditions préalables

Nous avons besoin d'un cluster Kubernetes ou d'une configuration Kubectl CLI pour interagir avec le cluster. Si vous n'avez pas de cluster, vous devez en générer un avec l'aide de Minikube. En travaillant avec des commandes de correctif dans Kubernetes, nous devons installer le cluster Minikube sur votre système pour exécuter Kubernetes dans Linux.

Commande de patch kubectl

Venez illustrons le fonctionnement des commandes de patch à l'aide de commandes ou d'instructions Kubectl.

Dans la barre de recherche d'applications, écrivez «Terminal» ou appuyez sur les touches de clavier «Ctrl + Alt + T» simultanément. Maintenant, écrivez la commande «Minikube Start» dans le terminal et attendez un peu jusqu'à ce qu'il commence avec succès.

$ minikube start

En travaillant avec les commandes de patch, nous devons d'abord générer un déploiement à Kubernetes. À cette fin, nous utilisons le déploiement tactile.Commande YAML pour créer un fichier dans Ubuntu 20.04, et le mot clé tactile est utilisé pour générer un fichier.

$ tactile déploiement1.yaml

Enregistrer et exécuter le fichier de commande kubectl. Vous afficherez ensuite le fichier créé avec succès.

Le fichier de configuration de déploiement mentionné ci-dessous a deux copies ou répliques, et chaque copie est un pod qui contient un conteneur.

Pour créer le déploiement, nous utilisons le `` appliquer -f '' avec le nom de fichier pour créer avec succès le déploiement.

$ kubectl appliquer -f déploiement1.yaml

Pour afficher les informations ou vérifier les pods liés à votre déploiement, nous utilisons la commande get pods tout comme nous l'avons fait dans la capture d'écran ci-dessous:

Après avoir exécuté la commande ci-dessus, vous afficherez le nom, le prêt, le statut, le redémarrage et l'âge de toutes les gods exécutant sur votre PC.

Gardez à l'esprit que le nom spécifie les pods en cours d'exécution. Après quelques minutes, vous verrez alors que ces gousses sont terminées et échangées par de nouvelles.

$ kubectl obtenir des pods

À ce stade, chaque pod contient un conteneur qui exécute l'image nginx. Maintenant, si vous souhaitez que chaque pod contienne deux conteneurs: un qui exécute nginx et un qui exécute redis. Pour notre commande ci-dessous, générez un fichier de patch.

$ touch Patchfile.yaml

Après avoir exécuté cette commande, vous pouvez ensuite afficher le Patchfile avec le ".extension yaml ”.

Après avoir enregistré et ouvert le fichier, vous pouvez afficher que votre «Patchfile» contient le contenu souhaité.

Maintenant, notre prochain objectif est de corriger le déploiement. Ainsi, la commande ci-dessous est très utile pour patcher le déploiement.

Pour afficher le déploiement correct, vous devrez exécuter la commande ci-dessous. Le résultat montre que le PODSpec dans le déploiement contient deux conteneurs:

La commande ci-dessous montre si les pods sont liés à votre déploiement corrigé ou non. Dans cette sortie, les pods en cours d'exécution ont changé de nom des pods qui s'exécutaient plus tôt. Le déploiement a terminé les gousses précédentes et a créé deux autres nouvelles pods conformes à la spécification de déploiement mise à jour.

$ kubectl obtenir des pods

Conclusion:

Alors ici dans cet article, nous avons élaboré le concept de commande de patch à Kubernetes. Nous avons utilisé le patch Kubectl pour modifier la configuration de l'objet de déploiement en direct. J'espère que vous pouvez maintenant appréhender tout le concept du patch à Kubernetes.