Las 50 preguntas y respuestas principales de la entrevista de DevOps (PDF)

Aquí hay preguntas y respuestas de la entrevista de DevOps para que los candidatos más nuevos y experimentados consigan el trabajo de sus sueños.

 

Preguntas y respuestas de la entrevista de DevOps para principiantes

1) Explique qué es DevOps.

Es un término emergente en el campo de TI, que no es más que una práctica que enfatiza la colaboración y comunicación tanto de los desarrolladores de software como del equipo de implementación (operaciones). Se centra en entregar productos de software más rápido y reducir la tasa de fallas de las versiones.

👉 Descarga gratuita de PDF: Preguntas y respuestas de la entrevista de DevOps >>


2) Mencione cuáles son los aspectos clave o el principio detrás de DevOps.

Los aspectos clave o principio detrás de DevOps son

  • Infraestructura como código
  • Despliegue continuo
  • Automatización
  • Monitoreo
  • Seguridad

3) ¿Cuáles son las operaciones principales de DevOps con el desarrollo de aplicaciones y la infraestructura?

Las operaciones principales de DevOps son

Desarrollo de aplicaciones

  • Construcción de código
  • Cobertura de código
  • Prueba unitaria
  • Embalaje
  • Despliegue

Infraestructura

  • Aprovisionamiento
  • Configuración
  • Orquestación
  • Despliegue

4) Explique cómo se procesa o ejecuta el “código de infraestructura” en AWS.

EnAWS,

  • El código de infraestructura estará en formato JSON simple.
  • Este código JSON se organizará en archivos llamados plantillas.
  • Estas plantillas se pueden implementar en desarrolladores de AWS y luego administrarse como pilas.
  • Later El servicio CloudFormation realizará las operaciones de creación, eliminación, actualización, etc. en la pila.

5) Explique qué lenguaje de secuencias de comandos es más importante para un ingeniero de DevOps.

Un lenguaje de programación más simple será mejor para un ingeniero de DevOps. Python Parece ser muy popular.

Preguntas de la entrevista de DevOps


6) Explique cómo DevOps es útil para los desarrolladores.

DevOps Puede resultar útil para los desarrolladores corregir el error e implementar nuevas funciones rápidamente. También ayuda a una comunicación más clara entre los miembros del equipo.


7) ¿Enumere algunas herramientas populares para DevOps?

Algunas de las herramientas populares para DevOps son

  • Jenkins
  • Nagios
  • Monit
  • ELK (búsqueda elástica, Logstash, Kibana)
  • Jenkins
  • Docker
  • Ansible
  • Git

8) Mencione ¿en qué instancia ha utilizado el SSH?

He usado SSH para iniciar sesión en una máquina remota y trabajar en la línea de comando. Además de esto, también lo he usado para acceder al sistema a fin de facilitar comunicaciones cifradas seguras entre dos hosts que no son de confianza a través de una red insegura.


9) Explique cómo manejaría el control de revisión (versión).

Mi enfoque para manejar el control de revisiones sería publicar el código en SourceForge o GitHub para que todos puedan verlo. Además, publicaré la lista de verificación de la última revisión para asegurarme de que se resuelvan los problemas no resueltos.


10) ¿Cuáles son los tipos de solicitudes Http?

Los tipos de solicitudes Http son

  • CABEZA
  • PUT
  • PUBLICAR
  • PARCHE
  • BORRAR
  • TRACE
  • CONECTARSE
  • OPCIONES

11) Explique qué verificaría si un servidor de compilación Linux de repente comienza a volverse lento.

Si un servidor de compilación de Linux de repente comienza a volverse lento, deberá verificar las siguientes tres cosas

Solución de problemas a nivel de aplicación Problemas relacionados con la RAM, problemas de lectura y escritura de E/S del disco, problemas relacionados con el espacio en disco, etc.
Solución de problemas a nivel del sistema Verifique el archivo de registro de la aplicación O el archivo de registro del servidor de aplicaciones, problemas de rendimiento del sistema, registro del servidor web: verifique los registros HTTP, tomcat lo, jboss o WebLogic para ver si el tiempo de respuesta/recepción del servidor de aplicaciones es el problema de lentitud, pérdida de memoria de cualquier solicitud
Solución de problemas de servicios dependientes Problemas relacionados con antivirus, problemas relacionados con firewall, problemas de red, problemas de tiempo de respuesta del servidor SMTP, etc.

12) ¿Cuáles son los componentes clave de DevOps?

Aquí hay algunos importantes Fases del ciclo de vida de DevOps:

SQL

  • Desarrollo continuo
  • Integración continua
  • Prueba continua
  • Entregas Continuas
  • Monitoreo continuo
  • Retroalimentación continua
  • Continuo OperaSupuestos de Alcance

13) Nombra algunas plataformas en la nube que se utilizan para la implementación de DevOps.

Las plataformas de computación en la nube populares utilizadas para la implementación de DevOps son:

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

14) Brinde algunos beneficios de usar el sistema de control de versiones.

  • El sistema de control de versiones permite a los miembros del equipo trabajar libremente en cualquier archivo en cualquier momento.
  • Todas las versiones y variantes anteriores están empaquetadas dentro del VCS.
  • Un VCS distribuido como le ayuda a almacenar el historial completo del proyecto, de modo que en caso de una avería en el servidor central pueda utilizar el repositorio Git local de los miembros de su equipo.
  • Le permite ver qué cambios exactos se realizan en el contenido del archivo.

15) Explica Git Bisect

Git bisect te ayuda a encontrar la confirmación que introdujo un error mediante la búsqueda binaria.


16) ¿Cuál es la construcción?

Una compilación es un método en el que se reúne el código fuente para comprobar si funciona como una sola unidad. En el proceso de creación de la compilación, el código fuente se compilará, inspeccionará, probará e implementará.


17) ¿Qué es un títere?

Marioneta es una útil herramienta de gestión de proyectos. Le ayuda a automatizar las tareas de administración.


18) Explica la autenticación de dos factores

La autenticación de dos factores es un método de seguridad en el que el usuario proporciona dos formas de identificación de categorías separadas.


19) Explica el término 'Canary Liberar'.

Una versión canary es un patrón que reduce el riesgo de introducir una nueva versión de software en el entorno de producción. Se realiza poniéndola a disposición de un subconjunto de usuarios de forma controlada, antes de ponerla a disposición del conjunto completo de usuarios.


20) ¿Qué tipos de pruebas son importantes para garantizar que el nuevo servicio esté listo para producción?

Debe realizar pruebas continuas para garantizar que el nuevo servicio esté listo para la producción.


Preguntas y respuestas de la entrevista de DevOps para experimentados

21) ¿Qué es Vagabundo?

Un vagrant es una herramienta que puede crear y gestionar entornos virtualizados para probar y desarrollar software.


22) ¿Cuál es el uso de PTR en DNS?

El registro de puntero, también conocido como (PTR), se utiliza para la búsqueda DNS inversa.


23) ¿Qué es Chef?

Es una poderosa plataforma de automatización que transforma la infraestructura en código. En esta herramienta, puede utilizar scripts de escritura que se utilizan para automatizar procesos.


24) ¿Cuáles son los requisitos previos para la implementación de DevOps?

A continuación se presentan los requisitos previos útiles para la implementación de DevOps:

  • Al menos un software de control de versiones
  • Comunicación adecuada entre los miembros del equipo.
  • Pruebas automatizadas
  • Despliegue automatizado

25) Mencione algunas de las mejores prácticas que se deben seguir para el éxito de DevOps.

A continuación se presentan las mejores prácticas esenciales para la implementación de DevOps:

  • La velocidad de entrega significa el tiempo que lleva cualquier tarea para llevarlos al entorno de producción.
  • Realice un seguimiento de cuántos defectos se encuentran en los distintos
  • Es importante medir el tiempo real o promedio que lleva recuperarse en caso de una falla en el entorno de producción.
  • La cantidad de errores informados por el cliente también afecta la calidad de la aplicación.

26) Explica la herramienta SubGIt

SubGit te ayuda a migrar SVN a Git. También le permite crear un espejo Git grabable de un repositorio de Subversion local o remoto.


27) Nombra algunas herramientas importantes de monitoreo de red.

Algunas de las herramientas de monitoreo de red más destacadas son:

  • Splunk
  • Icinga 2
  • Wireshark
  • Nagios
  • OpenNMS

28) Si tu tarjeta de video puede funcionar Unity ¿cómo sabrías?

Cuando usas un comando

/usr/lib/Linux/unity_support_test-p

dará resultados detallados sobre Unityrequisitos de y, si se cumplen, su tarjeta de video podrá ejecutar Unity.


29) Explica cómo habilitar el sonido de inicio en Ubuntu?

Para habilitar el sonido de inicio

  • Haga clic en equipo de control y luego haga clic en Aplicaciones de inicio
  • En Los Preferencias de la aplicación de inicio ventana, haga clic Añadir el archivo para agregar una entrada
  • Luego, complete la información en los cuadros de comentarios como Nombre, Comando y Comentario.
/usr/bin/canberra-gtk-play—id= "desktop-login"—description= "play login sound"
  • Cerrar sesión y luego iniciar sesión una vez que haya terminado

También puedes abrirlo con la tecla de acceso directo. Ctrl+Alt+T.


30) ¿Cuál es la forma más rápida de abrir una Ubuntu terminal en un directorio en particular?

Para abrir un Ubuntu terminal en un directorio particular, puede utilizar un atajo de teclado personalizado.

Para hacer eso, en el campo de comando de un nuevo teclado personalizado, escriba genoma – terminal – – trabajo – directorio = /ruta/a/dir.


31) Explique cómo puede obtener el color actual de la pantalla actual en el Ubuntu ¿escritorio?

Puede abrir la imagen de fondo en The Gimp (editor de imágenes) y luego usar la herramienta cuentagotas para seleccionar el color en un punto específico. Te da el valor RGB del color en ese punto.


32) Explica cómo se crean lanzadores en un escritorio en Ubuntu?

Para crear lanzadores en un escritorio en Ubuntu puedes usar

ALT+F2 y luego escribe "gnome-desktop-item-edit –create-new~/desktop", se iniciará el antiguo cuadro de diálogo GUI y se creará un iniciador en tu escritorio.


33) ¿Explica qué es Memcached?

Memcached es un sistema de almacenamiento en caché de objetos de memoria distribuido, de alto rendimiento y de código abierto y gratuito. El objetivo principal de Memcached es mejorar el tiempo de respuesta de los datos que, de otro modo, podrían recuperarse o construirse a partir de alguna otra fuente o base de datos. Se utiliza para evitar la necesidad de operar base de datos SQL u otra fuente repetidamente para recuperar datos para una solicitud simultánea.

Memcached se puede utilizar para

  • Redes sociales->Almacenamiento en caché de perfiles
  • Agregación de contenido-> HTML/almacenamiento en caché de páginas
  • Orientación de anuncios-> Cookie/seguimiento de perfil
  • Relación->Caché de sesiones
  • Comercio electrónico -> Caché de sesión y HTML
  • Servicios basados ​​en ubicación-> Escalado de consultas de base de datos
  • Juegos y entretenimiento->Caché de sesiones

Memcache ayuda en

  • Acelerar los procesos de solicitud
  • Determina qué almacenar y qué no
  • Reducir el número de solicitudes de recuperación a la base de datos.
  • Reduce el acceso de E/S (entrada/salida) (disco duro)

El inconveniente de Memcached es

  • No es un almacén de datos persistente.
  • No es una base de datos
  • No es una aplicación específica
  • No puede almacenar en caché objetos grandes

34) ¿Menciona algunas características importantes de Memcached?

Las características importantes de Memcached incluyen

  • Fichas CAS: Se adjunta un token CAS a un objeto recuperado de un caché. Puede usar ese token para guardar su objeto actualizado.
  • Devolución de llamada: Simplifica el código
  • retrasarse: Reduce el tiempo de demora de su secuencia de comandos que espera que los resultados regresen de un servidor.
  • Protocolo binario: Puede utilizar el protocolo binario en lugar de ASCII con el cliente más nuevo
  • Igbinario: Anteriormente, un cliente siempre solía realizar la serialización del valor con datos complejos, pero con Memcached, puede usar la opción igbinary.

Preguntas y respuestas de la entrevista de DevOps para experiencia 5+

35) Explique si es posible compartir una única instancia de Memcache entre varios proyectos.

Sí, es posible compartir una única instancia de Memcache entre varios proyectos. Memcache es un espacio de almacenamiento de memoria y puede ejecutar Memcache en uno o más servidores. También puede configurar su cliente para hablar con un conjunto particular de instancias. Por lo tanto, puedes ejecutar dos procesos de Memcache diferentes en el mismo host y, aun así, son completamente independientes. A menos que haya particionado sus datos, entonces será necesario saber de qué instancia obtener los datos o colocarlos.


36) Tiene varios servidores Memcache, en los cuales uno de los servidores Memcache falla y tiene sus datos. ¿Intentará alguna vez obtener datos clave de ese servidor fallido?

Los datos del servidor fallido no se eliminarán, pero existe una disposición para el fallo automático, que puede configurar para varios nodos. La conmutación por error se puede activar durante cualquier error a nivel de socket o servidor Memcached y no durante errores estándar del cliente, como agregar una clave existente, etc.


37) Explique cómo puede minimizar las interrupciones del servidor Memcached.

  • Cuando una instancia falla, varias de ellas caen, y esto supondrá una carga mayor en el servidor de la base de datos cuando los datos perdidos se recargan cuando un cliente realiza una solicitud. Para evitar esto, si su código ha sido escrito para minimizar las estampidas de caché, dejará un impacto mínimo.
  • Otra forma es abrir una instancia de Memcached en una máquina nueva usando la dirección IP de la máquina perdida.
  • El código es otra opción para minimizar las interrupciones del servidor, ya que le brinda la libertad de cambiar la lista de servidores de Memcached con un mínimo de trabajo.
  • Establecer un valor de tiempo de espera es otra opción que algunos clientes de Memcached implementan en caso de una interrupción del servidor de Memcached. Cuando su servidor Memcached deja de funcionar, el cliente seguirá intentando enviar una solicitud hasta que se alcance el límite de tiempo de espera.

38) Explique cómo se puede actualizar Memcached cuando cambian los datos.

Cuando los datos cambian, puede actualizar Memcached mediante

  • Borrar la caché de forma proactiva: Borrar el caché cuando se realiza una inserción o actualización
  • Restablecer el caché: Es similar al primer método, pero en lugar de simplemente eliminar las claves y esperar la siguiente solicitud de datos para actualizar el caché, restablezca los valores después de la inserción o actualización.

39) ¿Explica qué es el efecto Dogpile? ¿Cómo se puede prevenir este efecto?

El efecto Dogpile se refiere al evento en el que un caché caduca y los sitios web se ven afectados por múltiples solicitudes realizadas por el cliente al mismo tiempo. Este efecto se puede evitar utilizando un bloqueo de semáforo. En este sistema, cuando el valor expira, el primer proceso adquiere el bloqueo y comienza a generar un nuevo valor.


40) Explique por qué no se debe utilizar Memcached.

  • El mal uso común de Memcached es usarlo como almacén de datos y no como caché
  • Nunca utilice Memcached como única fuente de información que necesita para ejecutar su aplicación. Los datos siempre deben estar disponibles a través de otra fuente también.
  • Memcached es solo un almacén de claves o valores y no puede realizar una consulta sobre los datos ni iterar sobre los contenidos para extraer información.
  • Memcached no ofrece ningún tipo de seguridad ni en cifrado ni en autenticación.

41) Cuando se cierra un servidor, ¿los datos almacenados en Memcached siguen estando disponibles?

Los datos almacenados en Memcached no son duraderos, por lo que si se apaga o reinicia un servidor, todos los datos almacenados en Memcached se eliminan.


42) Mencione cuál es la diferencia entre Memcache y Memcached.

  • Memcache: Es una extensión que le permite trabajar a través de prácticas interfaces procedimentales y orientadas a objetos (OOP). Está diseñado para reducir la carga de la base de datos en aplicaciones web dinámicas.
  • Memcaché: Es una extensión que utiliza La biblioteca Memcached biblioteca para proporcionar API para comunicarse con servidores Memcached. Se utiliza para aumentar las aplicaciones web dinámicas aliviando la carga de la base de datos. Es la última API.

43) Explicar el patrón de implementación azul/verde

El patrón de color azul/verde aborda los desafíos más importantes que se enfrentan durante el proceso de implementación automática. En el enfoque de implementación azul/verde, es necesario garantizar dos entornos de producción idénticos. Sin embargo, solo uno de ellos está EN VIVO en un momento dado. El entorno LIVE se llama entorno Azul.

Cuando el equipo prepara la próxima versión de su software, lleva a cabo la última etapa de pruebas en un entorno conocido como entorno verde. Una vez verificado, el tráfico se enruta al entorno verde.


44) ¿Qué son los contenedores?

Los contenedores son de virtualización ligera. Ofrecen aislamiento entre procesos.


45) ¿Qué es la reunión post mortem con referencia a DevOps?

La reunión post mortem se realiza para analizar qué salió mal y qué pasos se deben seguir para evitar fallas.


46) ¿Cuál es el método más sencillo para construir una nube pequeña?

VMfres es una de las opciones más efectivas para hacer nube IaaS desde Virtual Box VM en poco tiempo. Sin embargo, si desea una PaaS liviana, entonces Dokku es una buena opción porque el script bash puede ser PaaS a partir de contenedores Dokku.


47) Nombra dos herramientas que se utilizan para la conexión en red Docker.

Para las redes Docker, puede utilizar Kubernetes y Docker swarm.


48) Nombra algunas de las áreas donde se implementan DevOps

Los DevOps se utilizan para la producción, las operaciones de TI, la retroalimentación de producción y el desarrollo de software.


49) ¿Qué es el CBD?

CBD o desarrollo basado en componentes es una forma única de abordar el desarrollo de productos. En este método, los desarrolladores siempre buscan componentes existentes bien definidos, probados y verificados para componerlos y ensamblarlos en un producto en lugar de desarrollarlos desde cero.


50) Explicar la programación en pares con referencia a DevOps

La programación en pares es una práctica de ingeniería de reglas de programación extremas. En este método, dos programadores trabajan en el mismo sistema, en el mismo diseño/algoritmo/código.

Un programador actúa como "conductor". Otros actúan como un “observador” que monitorea continuamente el progreso de un proyecto para identificar problemas. Los roles se pueden invertir en cualquier momento sin previo aviso.


51) Explica la prueba de resiliencia

La prueba que garantiza la recuperación sin pérdida de datos y funcionalidad después de una falla se denomina pruebas de resiliencia.


52) Nombra tres KPI importantes de DevOps

Los tres KPI de DevOps más comunes son:

  • Mientras tanto, la recuperación del fracaso
  • Frecuencia de implementación
  • Porcentaje de implementaciones fallidas

Estas preguntas de la entrevista también te ayudarán en tu viva(orals)