Top 50 des questions et réponses d'entretien DevOps (PDF)

Voici les questions et réponses d'entretien DevOps pour les candidats les plus récents et les plus expérimentés pour obtenir l'emploi de leurs rêves.

 

Questions et réponses d'entretien DevOps pour les débutants

1) Expliquez ce qu'est DevOps ?

Il s'agit d'un terme nouvellement émergent dans le domaine informatique, qui n'est rien d'autre qu'une pratique qui met l'accent sur la collaboration et la communication entre les développeurs de logiciels et l'équipe de déploiement (opérations). Il se concentre sur la livraison plus rapide des produits logiciels et sur la réduction du taux d’échec des versions.

👉 Téléchargement PDF gratuit : Questions et réponses d'entretien DevOps >>


2) Mentionnez quels sont les aspects ou principes clés derrière DevOps ?

Les aspects ou principes clés derrière DevOps sont

  • L'infrastructure comme code
  • Déploiement continu
  • Automatisation
  • Le Monitoring
  • Sécurité

3) Quelles sont les opérations principales de DevOps avec le développement d'applications et avec l'infrastructure ?

Les opérations principales de DevOps sont

Développement d'applications

  • Construction de codes
  • Couverture de code
  • Tests unitaires
  • Emballage
  • Déploiement

Infrastructure

  • Provisioning
  • Configuration
  • Orchestration
  • Déploiement

4) Expliquez comment le « code d'infrastructure » est traité ou exécuté dans AWS ?

Dans AWS,

  • Le code de l'infrastructure sera au format JSON simple
  • Ce code JSON sera organisé en fichiers appelés modèles
  • Ces modèles peuvent être déployés sur les développeurs AWS, puis gérés sous forme de piles
  • Later le service CloudFormation effectuera l'opération de création, suppression, mise à jour, etc. dans la pile

5) Expliquez quel langage de script est le plus important pour un ingénieur DevOps ?

Un langage de script plus simple sera préférable pour un ingénieur DevOps. Python semble être très populaire.

Questions d'entretien DevOps


6) Expliquez en quoi DevOps est utile aux développeurs ?

DevOps peut être utile aux développeurs pour corriger le bug et implémenter rapidement de nouvelles fonctionnalités. Cela contribue également à une communication plus claire entre les membres de l’équipe.


7) Énumérez quelques outils populaires pour DevOps ?

Certains des outils populaires pour DevOps sont

  • Jenkins
  • Nagios
  • Monit
  • ELK (Elasticsearch, Logstash, Kibana)
  • Jenkins
  • Docker
  • Ansible
  • Git

8) Mentionnez à quel moment avez-vous utilisé SSH ?

J'ai utilisé SSH pour me connecter à une machine distante et travailler sur la ligne de commande. À côté de cela, je l'ai également utilisé pour créer un tunnel dans le système afin de faciliter des communications cryptées sécurisées entre deux hôtes non fiables sur un réseau non sécurisé.


9) Expliquez comment vous géreriez le contrôle des révisions (versions) ?

Mon approche pour gérer le contrôle des révisions serait de publier le code sur SourceForge ou GitHub afin que tout le monde puisse le voir. De plus, je publierai la liste de contrôle de la dernière révision pour m'assurer que tous les problèmes non résolus sont résolus.


10) Quels sont les types de requêtes Http ?

Les types de requêtes Http sont

  • ÉCONOMISEZ
  • TÊTE
  • PUT
  • POSTEZ
  • PATCH
  • EFFACER
  • TRACE
  • CONNECTEZ-VOUS
  • OPTIONS

11) Expliquez ce que vous vérifieriez si un serveur de build Linux commençait soudainement à devenir lent ?

Si un serveur de build Linux commence soudainement à devenir lent, vous vérifierez les trois éléments suivants

Dépannage au niveau de l'application Problèmes liés à la RAM, problèmes de lecture-écriture d'E/S disque, problèmes liés à l'espace disque, etc.
Dépannage au niveau du système Recherchez le fichier journal de l'application OU le fichier journal du serveur d'applications, les problèmes de performances du système, le journal du serveur Web : vérifiez les journaux HTTP, Tomcat Lo, Jboss ou WebLogic pour voir si le temps de réponse/réception du serveur d'applications est à l'origine de problèmes de lenteur, de fuite de mémoire. application
Dépannage des services dépendants Problèmes liés à l'antivirus, problèmes liés au pare-feu, problèmes de réseau, problèmes de temps de réponse du serveur SMTP, etc.

12) Quels sont les composants clés du DevOps ?

Voici quelques Phases du cycle de vie DevOps:

SQL

  • Développement continu
  • Intégration continue
  • Test continu
  • Déploiement continu
  • Contrôle continu
  • Rétroaction continue
  • Continu Operations

13) Nommez quelques plates-formes cloud utilisées pour la mise en œuvre de DevOps

Les plates-formes de cloud computing populaires utilisées pour la mise en œuvre de DevOps sont :

  1. Google Cloud
  2. Amazon Services Web
  3. Microsoft Azure

14) Donner quelques avantages de l'utilisation du système de contrôle de version

  • Le système de contrôle de version permet aux membres de l'équipe de travailler librement sur n'importe quel fichier à tout moment.
  • Toutes les versions et variantes précédentes sont étroitement regroupées dans le VCS.
  • Un VCS distribué comme vous aide à stocker l'historique complet du projet. Ainsi, en cas de panne du serveur central, vous pouvez utiliser le référentiel Git local du membre de votre équipe.
  • Vous permet de voir quelles modifications exactes sont apportées au contenu du fichier

15) Expliquez Git Bisect

Git bisect vous aide à trouver le commit qui a introduit un bug en utilisant la recherche binaire.


16) Quelle est la construction ?

Un build est une méthode dans laquelle le code source est assemblé pour vérifier s'il fonctionne comme une seule unité. Au cours du processus de création de build, le code source sera compilé, inspecté, testé et déployé.


17) Qu'est-ce que la marionnette ?

Fantoche est un outil de gestion de projet utile. Il vous aide à automatiser les tâches d'administration.


18) Expliquer l'authentification à deux facteurs

L'authentification à deux facteurs est une méthode de sécurité dans laquelle l'utilisateur propose deux modes d'identification appartenant à des catégories distinctes.


19) Expliquez le terme 'Canary Libérer'.

Une version Canary est un modèle qui réduit le risque d'introduire une nouvelle version du logiciel dans l'environnement de production. Cela se fait en le rendant disponible de manière contrôlée à un sous-ensemble de l’utilisateur. Avant de le rendre disponible à l’ensemble des utilisateurs.


20) Quels types de tests sont importants pour garantir que le nouveau service est prêt pour la production ?

Vous devez effectuer des tests continus pour vous assurer que le nouveau service est prêt pour la production.


Questions et réponses d'entretien DevOps pour les expérimentés

21) Qu’est-ce que Vagrant ?

Un vagrant est un outil capable de créer et de gérer des environnements virtualisés pour tester et développer des logiciels.


22) A quoi sert le PTR dans le DNS ?

L'enregistrement de pointeur, également connu sous le nom de (PTR), est utilisé pour la recherche DNS inversée.


23) Qu'est-ce que Chef ?

Il s'agit d'une puissante plateforme d'automatisation qui transforme l'infrastructure en code. Dans cet outil, vous pouvez utiliser des scripts d'écriture utilisés pour automatiser les processus.


24) Quels sont les prérequis à la mise en œuvre du DevOps ?

Voici les conditions préalables utiles pour la mise en œuvre de DevOps :

  • Au moins un logiciel de contrôle de version
  • Bonne communication entre les membres de l'équipe
  • L'automatisation des tests
  • Déploiement automatisé

25) Nommez quelques bonnes pratiques qui doivent être suivies pour le succès du DevOps.

Voici les meilleures pratiques essentielles pour la mise en œuvre de DevOps :

  • La rapidité de livraison signifie le temps nécessaire à chaque tâche pour les intégrer dans l'environnement de production.
  • Suivez le nombre de défauts trouvés dans les différents
  • Il est important de mesurer le temps réel ou moyen nécessaire à la récupération en cas de panne dans l'environnement de production.
  • Le nombre de bugs signalés par le client a également un impact sur la qualité de l'application.

26) Expliquer l'outil SubGit

SubGit vous aide à migrer SVN vers Git. Il vous permet également de créer un miroir Git accessible en écriture d'un référentiel Subversion local ou distant.


27) Nommez quelques outils de surveillance de réseau importants

Certains outils de surveillance de réseau les plus importants sont :

  • Splunk
  • Icinga 2
  • Wireshark
  • Nagios
  • OpenNMS

28) Si votre carte vidéo peut fonctionner Unity comment saurais tu?

Lorsque vous utilisez une commande

/usr/lib/Linux/unity_support_test-p

cela donnera une sortie détaillée sur UnityLes exigences de , et si elles sont respectées, votre carte vidéo peut exécuter Unity.


29) Expliquez comment activer le son de démarrage dans Ubuntu?

Pour activer le son de démarrage

  • Cliquez sur l'équipement de contrôle, puis cliquez sur Applications de démarrage
  • Dans le Préférences des applications de démarrage fenêtre, cliquez sur Ajouter pour ajouter une entrée
  • Remplissez ensuite les informations dans les zones de commentaires telles que Nom, Commande et Commentaire.
/usr/bin/canberra-gtk-play—id= "desktop-login"—description= "play login sound"
  • Déconnectez-vous puis connectez-vous une fois que vous avez terminé

Vous pouvez également l'ouvrir avec la touche de raccourci Ctrl+Alt+T.


30) Quelle est la manière la plus rapide d'ouvrir un Ubuntu terminal dans un répertoire particulier ?

Pour ouvrir un Ubuntu terminal dans un répertoire particulier, vous pouvez utiliser un raccourci clavier personnalisé.

Pour ce faire, dans le champ de commande d'un nouveau clavier personnalisé, tapez genome – terminal – – working – directory = /path/to/dir.


31) Expliquez comment vous pouvez obtenir la couleur actuelle de l'écran actuel sur le Ubuntu bureau?

Vous pouvez ouvrir l'image d'arrière-plan dans The Gimp (éditeur d'images), puis utiliser l'outil compte-gouttes pour sélectionner la couleur sur un point spécifique. Il vous donne la valeur RVB de la couleur à ce stade.


32) Expliquez comment créer des lanceurs sur un bureau dans Ubuntu?

Pour créer des lanceurs sur un bureau dans Ubuntu vous pouvez utiliser

ALT+F2 puis tapez « gnome-desktop-item-edit –create-new~/desktop », cela lancera l'ancienne boîte de dialogue GUI et créera un lanceur sur votre bureau.


33) Expliquez ce qu'est Memcached ?

Memcached est un système de mise en cache d'objets de mémoire distribuée, gratuit et open source, hautes performances. L'objectif principal de Memcached est d'améliorer le temps de réponse pour les données qui peuvent autrement être récupérées ou construites à partir d'une autre source ou base de données. Il est utilisé pour éviter d'avoir à opérer base de données SQL ou une autre source de manière répétitive pour récupérer des données pour une demande simultanée.

Memcached peut être utilisé pour

  • Réseaux sociaux -> Mise en cache du profil
  • Agrégation de contenu -> Mise en cache HTML/Page
  • Ciblage publicitaire -> Suivi des cookies/profils
  • Relation->Mise en cache de session
  • E-commerce -> Mise en cache de session et HTML
  • Services basés sur la localisation -> Mise à l'échelle des requêtes de base de données
  • Jeux et divertissement->Mise en cache de session

Memcache aide à

  • Accélérez les processus de candidature
  • Il détermine ce qu'il faut stocker et ce qu'il ne faut pas stocker
  • Réduire le nombre de requêtes de récupération vers la base de données
  • Réduit l’accès aux E/S (Entrée/Sortie) (disque dur)

L'inconvénient de Memcached est

  • Ce n'est pas un magasin de données persistant
  • Pas une base de données
  • Ce n'est pas une application spécifique
  • Il ne peut pas mettre en cache les objets volumineux

34) Mentionner quelques fonctionnalités importantes de Memcached ?

Les fonctionnalités importantes de Memcached incluent

  • Jetons CAS : Un jeton CAS est attaché à un objet récupéré d'un cache. Vous pouvez utiliser ce jeton pour enregistrer votre objet mis à jour.
  • Rappels : Cela simplifie le code
  • getDelayed : Cela réduit le délai de votre script qui attend les résultats provenant d'un serveur
  • Protocole binaire : Vous pouvez utiliser le protocole binaire au lieu de l'ASCII avec le client le plus récent
  • Igbinaire : Auparavant, un client effectuait toujours la sérialisation de la valeur avec des données complexes, mais avec Memcached, vous pouvez utiliser l'option igbinary.

Questions et réponses d'entretien DevOps pour 5+ expériences

35) Expliquez s'il est possible de partager une seule instance d'un Memcache entre plusieurs projets ?

Oui, il est possible de partager une seule instance de Memcache entre plusieurs projets. Memcache est un espace de stockage de mémoire et vous pouvez exécuter Memcache sur un ou plusieurs serveurs. Vous pouvez également configurer votre client pour qu'il parle à un ensemble particulier d'instances. Ainsi, vous pouvez exécuter deux processus Memcache différents sur le même hôte et pourtant ils sont complètement indépendants. Sauf si vous avez partitionné vos données, il devient alors nécessaire de savoir à partir de quelle instance extraire ou insérer les données.


36) Vous disposez de plusieurs serveurs Memcache, sur lesquels l'un des serveurs Memcache tombe en panne et possède vos données. Essaiera-t-il un jour d'obtenir les données clés de ce serveur défaillant ?

Les données du serveur défaillant ne seront pas supprimées, mais il existe une possibilité de panne automatique, que vous pouvez configurer pour plusieurs nœuds. Le basculement peut être déclenché lors de n'importe quelle erreur au niveau du socket ou du serveur Memcached et non lors d'erreurs client standard comme l'ajout d'une clé existante, etc.


37) Expliquez comment vous pouvez minimiser les pannes du serveur Memcached ?

  • Lorsqu'une instance échoue, plusieurs d'entre elles tombent en panne, ce qui imposera une charge plus importante au serveur de base de données lorsque les données perdues seront rechargées lorsqu'un client fera une demande. Pour éviter cela, si votre code a été écrit pour minimiser les bousculades de cache, il laissera un impact minimal
  • Une autre façon consiste à afficher une instance de Memcached sur une nouvelle machine en utilisant l'adresse IP de la machine perdue.
  • Le code est une autre option pour minimiser les pannes de serveur car il vous donne la liberté de modifier la liste des serveurs Memcached avec un minimum de travail.
  • La définition de la valeur du délai d'attente est une autre option que certains clients Memcached implémentent en cas de panne du serveur Memcached. Lorsque votre serveur Memcached tombe en panne, le client continuera d'essayer d'envoyer une requête jusqu'à ce que le délai d'attente soit atteint.

38) Expliquez comment mettre à jour Memcached lorsque les données changent ?

Lorsque les données changent, vous pouvez mettre à jour Memcached en

  • Vider le cache de manière proactive : Vider le cache lorsqu'une insertion ou une mise à jour est effectuée
  • Réinitialisation du cache : C'est similaire à la première méthode, mais plutôt que de simplement supprimer les clés et d'attendre la prochaine demande de données pour actualiser le cache, réinitialisez les valeurs après l'insertion ou la mise à jour.

39) Expliquez ce qu'est l'effet Dogpile ? Comment pouvez-vous prévenir cet effet ?

L'effet Dogpile fait référence à l'événement où un cache expire et les sites Web sont touchés par les multiples requêtes faites par le client en même temps. Cet effet peut être évité en utilisant un verrou sémaphore. Dans ce système, lorsque la valeur expire, le premier processus acquiert le verrou et commence à générer une nouvelle valeur.


40) Expliquez comment Memcached ne doit pas être utilisé ?

  • L'utilisation abusive courante de Memcached consiste à l'utiliser comme magasin de données et non comme cache.
  • N'utilisez jamais Memcached comme seule source d'informations dont vous avez besoin pour exécuter votre application. Les données doivent toujours être disponibles via une autre source également
  • Memcached n'est qu'un magasin de clés ou de valeurs et ne peut pas effectuer de requête sur les données ni parcourir le contenu pour extraire des informations.
  • Memcached n'offre aucune forme de sécurité ni en termes de cryptage ni d'authentification

41) Lorsqu'un serveur est arrêté, les données stockées dans Memcached sont-elles toujours disponibles ?

Les données stockées dans Memcached ne sont pas durables, donc si un serveur est arrêté ou redémarré, toutes les données stockées dans Memcached sont supprimées.


42) Mentionnez quelle est la différence entre Memcache et Memcached ?

  • Cache mémoire : Il s'agit d'une extension qui vous permet de travailler via des interfaces pratiques orientées objet (POO) et procédurales. Il est conçu pour réduire la charge de base de données dans les applications Web dynamiques.
  • Memcached : C'est une extension qui utilise la libmemcached bibliothèque pour fournir une API pour communiquer avec les serveurs Memcached. Il est utilisé pour augmenter les applications Web dynamiques en allégeant la charge de la base de données. C'est la dernière API.

43) Expliquer le modèle de déploiement bleu/vert

Le motif de coloration bleu/vert répond aux défis les plus importants rencontrés lors du processus de déploiement automatique. Dans l’approche de déploiement Bleu/Vert, vous devez garantir deux environnements de production identiques. Cependant, un seul d’entre eux est EN DIRECT à un moment donné. L'environnement LIVE est appelé environnement Bleu.

Lorsque l'équipe prépare la prochaine version de son logiciel, elle effectue sa dernière étape de tests dans un environnement appelé environnement vert. Une fois vérifié, le trafic est acheminé vers l'environnement vert.


44) Quels sont les conteneurs ?

Les conteneurs sont issus d'une virtualisation légère. Ils offrent un isolement entre les processus.


45) Qu'est-ce qu'une réunion post mortem en référence au DevOps ?

Une réunion post mortem est organisée pour discuter de ce qui n'a pas fonctionné et des mesures à prendre pour éviter les échecs.


46) Quelle est la méthode la plus simple pour créer un petit cloud ?

VMfres est l'une des options les plus efficaces pour créer un cloud IaaS à partir de Virtual Box Des machines virtuelles en un rien de temps. Cependant, si vous souhaitez un PaaS léger, Dokku est une bonne option car le script bash peut être un PaaS à partir de conteneurs Dokku.


47) Nommez deux outils utilisés pour la mise en réseau Docker.

Pour la mise en réseau Docker, vous pouvez utiliser Kubernetes et Docker Swarm.


48) Nommez certains des domaines dans lesquels DevOps est mis en œuvre

Les DevOps sont utilisés pour la production, les opérations informatiques, le retour d'information sur la production et le développement de logiciels.


49) Qu'est-ce que le CBD ?

Le CBD ou Component-Based Development est une manière unique d’aborder le développement de produits. Dans cette méthode, les développeurs recherchent toujours des composants existants bien définis, testés et vérifiés pour les composer et les assembler dans un produit au lieu de les développer à partir de zéro.


50) Expliquer la programmation en binôme en référence à DevOps

La programmation en binôme est une pratique d'ingénierie de règles de programmation extrêmes. Dans cette méthode, deux programmeurs travaillent sur le même système, sur le même design/algorithme/code.

Un programmeur fait office de « pilote ». D’autres agissent en tant qu’« observateur » qui surveille en permanence l’avancement d’un projet pour identifier les problèmes. Les rôles peuvent être inversés à tout moment sans aucune indication préalable.


51) Expliquer le test de résilience

Le test qui garantit une récupération sans perte de données et de fonctionnalités après une panne est appelé tests de résilience.


52) Nommez trois KPI DevOps importants

Les trois KPI DevOps les plus courants sont :

  • En attendant la récupération après échec
  • Fréquence de déploiement
  • Pourcentage de déploiements ayant échoué

Ces questions d'entretien vous aideront également dans votre soutenance