¿Qué herramientas y tecnologías necesito para aprender a ser ingeniero de DevOps?

Hola,

DevOps es realmente importante para aprender. Si hizo esta pregunta, estoy seguro de que es consciente de su importancia. Entonces, DevOps es una cultura que es una revolución en la industria de TI. Y, ahora, su demanda es cada vez mayor en todas las organizaciones de TI.

Ahora sobre su pregunta … hay varias herramientas en la cultura DevOps que es importante en cada organización. Puedes revisar estas herramientas.

Herramientas de administración de control de versiones, herramientas de administración de construcción y ciclo de vida, herramientas de empaquetado del mundo de aplicaciones, virtualización y contenedor, administración de configuración, herramientas de automatización e implementación, herramientas de monitoreo de servidores, etc.

Ahora, debe decidir qué herramienta desea utilizar. Porque cada organización utiliza herramientas diferentes. Por lo tanto, compruebe que su empresa está utilizando qué herramienta y domine eso. O bien, puede revisar todas las herramientas que DevOps tiene porque en algún lugar de su carrera, tendrá que usar todas las herramientas. Para que pueda aprender todas esas herramientas siempre. La gente inteligente hace y mantiene todas las herramientas a la mano.

Gracias y todo lo mejor,

De acuerdo, en primer lugar, no piense que DevOps es una tecnología, es una cultura, un enfoque con el que puede resolver sus problemas de desarrollo de software. DevOps no se trata de las herramientas. Las herramientas en el sentido literal de la palabra son solo instrumentos que lo ayudan a implementar el enfoque DevOps.

Ahora, volviendo a su pregunta, para convertirse en un buen ingeniero de DevOps necesita comprender los conceptos y principios subyacentes de DevOps. Aprender a operar las herramientas es la parte fácil, usar esas herramientas de la manera correcta es donde las cosas se ponen difíciles. Y para eso necesita saber cómo implementar DevOps de la manera correcta.

Ahora, si ya sabe todo eso y solo desea una lista de herramientas para aprender, enumeraré algunas de las herramientas más populares que se están utilizando en la industria en este momento. Además, si necesita un poco de conocimiento adicional sobre alguna herramienta específica, vincularé algunos blogs para ayudarlo.

  1. Jenkins : Jenkins es un servidor de integración continua escrito en Java. Puede usarlo para probar e informar cambios casi en tiempo real. Como desarrollador, le ayudará a encontrar y resolver errores en su código rápidamente y a automatizar las pruebas de su compilación.
    Tutorial de Jenkins | Integración continua con Jenkins
  2. Docker : Jenkins es un servidor de integración continua escrito en Java. Puede usarlo para probar e informar cambios en tiempo casi real. Como desarrollador, le ayudará a encontrar y resolver errores en su código rápidamente y a automatizar las pruebas de su compilación.
    Docker Tutorial | Introducción a Docker y contenedorización
  3. Git : GIT es un sistema de control de versiones que le permite realizar un seguimiento de los cambios en su archivo y, al usarlo, puede coordinar fácilmente el trabajo entre su equipo.
    ¿Qué es git | Explore una herramienta de control de versiones distribuidas
  4. Puppet : una herramienta de administración de configuración de código abierto, que se usa para automatizar el método de inspección, entrega y operación de su software durante todo el ciclo de vida con independencia de la plataforma.
    ¿Qué es la marioneta | Gestión de configuración con Puppet
  5. Selenium : Selenium es un marco de prueba de software portátil para aplicaciones web. Le proporciona una interfaz fácil para desarrollar pruebas automatizadas.
    ¿Qué es el selenio? Introducción a las pruebas de automatización de selenio
  6. Ansible : Ansible es una herramienta de código abierto que proporciona una de las formas más simples de automatizar sus aplicaciones e infraestructuras de TI, como la configuración de la red, las implementaciones en la nube y la creación de entornos de desarrollo.
    Qué es Ansible | Gestión de configuración con Ansible
  7. Chef : Chef es una poderosa herramienta de automatización de gestión de configuración que permite transformar la infraestructura en código.
    Tutorial de chef | Transforme la infraestructura en código
  8. Nagios : Nagios es un poderoso sistema de monitoreo que le permite a usted y a su organización identificar y resolver problemas de infraestructura de TI antes de que afecten los procesos críticos del negocio.
    Nagios Tutorial para monitorización de TI | Instalar y configurar Nagios
  9. ELK Stack : ELK es una combinación de tres potentes herramientas de código abierto: Elasticsearch, Logstash y Kibana que se utilizan para recopilar información de sus registros o datos.
    Tutorial de ELK Stack – Comenzando con ELK Stack
  10. Splunk : Splunk es una plataforma de software para buscar, analizar y visualizar los datos generados por la máquina o los registros recopilados de los sitios web, aplicaciones, sensores, dispositivos, etc. que conforman su infraestructura de TI y su negocio.
    ¿Qué es Splunk? Una guía para principiantes para entender Splunk

Aquí hay algunos blogs y videos más que puede consultar que lo pueden colocar en el camino correcto para convertirse en un ingeniero experto de DevOps.

Trayectoria profesional del ingeniero DevOps: cómo obtener los mejores trabajos de DevOps

Ingeniero DevOps Roles de trabajo y responsabilidades

Preguntas y respuestas principales de la entrevista DevOps para 2018 | Edureka

Como Roushan Kumar y otros te dijeron, DevOps es ante todo sobre la cultura y no sobre las herramientas.

Por supuesto, SCM, la gestión de la configuración y las herramientas orientadas a contenedores son realmente útiles para un ingeniero de DevOps. No puedo soportarlo, pero le informo sobre esta muy útil tabla periódica de herramientas DevOps de XebiaLabs.

PERO, en mi humilde opinión, un ingeniero eficiente de DevOps es un DevOps que entiende el día a día de sus compañeros de desarrollo y operaciones. Para comprender su dolor, su limitación, su cultura y hábitos actuales.

Uno de mis mayores éxitos como ingeniero de DevOps fue mejorar un proceso de implementación. Antes de trabajar en él, el despliegue se realizó manualmente, duró 24 horas de operaciones y con una interrupción de la plataforma (fue un despliegue en frío). Realmente un desastre! Después de eso, fue un trabajo de 3 líneas en Jenkins. Duró 10 minutos y con un patrón de despliegue azul / verde.

Pero las herramientas que utilicé no eran tan DevOps: Jenkins y … RPM. 🙂

La cuestión es: cualquier herramienta bien dominada y no aterradora que pueda realizar tareas de automatización lo suficientemente rápido es una buena herramienta para saber. Si su configuración es lo suficientemente fluida y si puede aplicar algunos buenos patrones de implementación y buenos hábitos de DevOps (como infraestructura basada en pruebas, implementación azul / verde, actualización continua, implementación controlada por versión, etc.).

Según yo, lo primero que debe aprender para convertirse en ingeniero de DevOps son esos patrones y hábitos. Los orquestadores de contenedores son bastante interesantes para aprender temprano, ya que implementan estos patrones de forma nativa en su sintaxis y cómo manejan la orquestación. Entonces, Kubernetes, Rancher y Swarm son un buen comienzo para aprender las soluciones correctas para las necesidades más comunes de DevOps en la administración de una plataforma.

Hola,

DevOps es un término utilizado para referirse a un conjunto de prácticas que enfatizan la colaboración y la comunicación tanto de desarrolladores de software como de profesionales de tecnología de la información (TI) mientras automatizan el proceso de entrega de software y cambios de infraestructura. Debe tener los siguientes conocimientos para aprender DevOps

1. Comprensión básica de los conceptos del sistema Linux.

2. Conocimientos básicos sobre el editor de texto y la interfaz de línea de comandos para practicar DevOps

3. Debe seguir una lista de las mejores prácticas de DevOps, pero las más importantes son estas tres: control de versiones, pruebas automatizadas, implementaciones automatizadas

DevOps se trata de herramientas y automatización. Las herramientas DevOps desempeñan un papel importante en la entrega continua, la integración continua, la implementación continua y la automatización de todo en el proceso de desarrollo.

Git, Jenkins, Puppet, Chef, Docker, Maven y Nagios son las herramientas DevOps modernas actuales. se utilizan para trabajar en tareas de Integración continua, Implementación continua, Entrega continua y Pruebas de automatización en proyectos DevOps para proporcionar una entrega continua del desarrollo de software. consulte los siguientes enlaces para comenzar rápidamente con las herramientas de DevOps

1. Tipos de herramientas DevOps

2. Las mejores herramientas de DevOps

Saludos,

Disha, [correo electrónico protegido] CursoEntrenamiento DevOps en Hyderabad

Hola,

Más que las herramientas, debe aprender de qué se trata DevOps. Este enlace [1] puede ayudarte mejor con eso. A continuación, puede consultar este enlace para conocer el conjunto correcto de habilidades requeridas.

Todo lo mejor 🙂

Notas al pie

[1] ¿Qué es DevOps?

Este artículo sobre DevOps puede ayudarlo a obtener lo que está buscando Cómo ser un gran ingeniero de DevOps – DZone DevOps

More Interesting

¿Cuál es el mejor instituto de capacitación en software para Hadoop en India?

¿Es la ingeniería (informática, software o información) una especialización mejor que la informática?

¿Cuál es el propósito de la gestión de calidad del software?

¿Cómo encuentra un software un error en palabras mal escritas, especialmente en Android?

¿Cuál es una mejor opción de carrera como ingeniero de software, una carrera en banca de inversión o desarrollo de productos?

Actualmente soy estudiante y pronto me uniré a Facebook como ingeniero de software junior. ¿Cómo debo preparar mi conocimiento para tener un buen comienzo en la empresa?

¿Por qué el software es siempre más lento que el hardware? ¿Cuál es la línea fina entre software y hardware?

¿Cómo podemos hacer que las evaluaciones de desempeño sean objetivas para los ingenieros de software?

¿Cuáles son algunas de las mejores prácticas para la ingeniería de lanzamiento con un programa multiplataforma de Unix?

¿Qué hace PricewaterhouseCoopers?

Durante la programación independiente, ¿debo seguir las mejores prácticas de programación, como usar la arquitectura MVC? ¿Qué sucede si no lo uso y aún se ejecuta mi código?

¿Las pruebas de software son más fáciles que las de mainframe?

Las personas que han trabajado en grandes bases de códigos funcionales, ¿qué no es mejor?

¿Cuál de estas tres asignaturas optativas de informática es la más difícil de aprender: desarrollador de software de Internet, pruebas de software o programación paralela?

Cómo pasar de un desarrollador senior de .NET a un arquitecto de software .NET