Fundamentos y Herramientas de DevOps

بواسطة: edX

Overview

Las empresas de software lidian frecuentemente con diversas problemáticas entre los equipos de desarrollo de software y operación de sistemas. Mientras que los primeros están interesados en ofrecer actualizaciones frecuentes para agregar valor a la experiencia del cliente y mejoras, los segundos se interesan más por cuidar el valor del negocio entregado mediante plataformas o softwares y su manera de lograrlo es mantener un ambiente estable para los usuarios.

El mercado actual demanda que las organizaciones y empresas de la nueva era digital sean más rápidas a la hora de entregar desarrollos de software, mejorar sus aplicaciones y plataformas web. Además, las nuevas tecnologías, como la nube y la virtualización, han permitido el desarrollo de nuevas herramientas que permitan acelerar los procesos y lograr una relación más estrecha entre estos dos equipos de trabajo.

Las necesidades de velocidad y seguridad en plataformas web y aplicaciones originó la cultura DevOps, la cual brinda herramientas a los equipos de trabajo de software para asegurar la estabilidad en plataformas y al mismo tiempo entregar actualizaciones de versiones de una manera rápida.

En este MOOC aprenderás los fundamentos de la cultura DevOps, trabajarás con scripts y revisión de logs en Linux. Además, abordaremos los pilares del DevOps, como lo son el Continous Integration/Continous Deployment, el cambio de paradigma en la administración de sistemas mediante la infraestructura como código y la creación de contenedores para asegurar la integración y entrega continua de softwares.

Los temas de este MOOC son de especial importancia para desarrolladores de software ya que les permite gestionar efectivamente el desarrollo de software de manera individual o en equipo.

Git y Github son las herramientas de control de versiones de software de mayor uso en la actualidad entre los equipos de desarrollo de software de las empresas. No son las únicas en su tipo, pero son las más ampliamente usadas en la industria.

Al finalizar este MOOC tendrás las habilidades necesarias para poder gestionar el software de un sistema Linux, específicamente nos enfocaremos en la distribución de Ubuntu, pero los conceptos son generalizables a otras distros. De igual manera aprenderás a usar los diferentes comandos que te ayudarán a ser eficaz durante la operación de un proyecto de Devops. Adicionalmente, serás capaz de gestionar las versiones de software ya sea de manera individual o como parte de un equipo de desarrollo de software.

Syllabus

Módulo 0: Introducción y fundamentos de Linux

Conocerás el significado de DevOps y su nacimiento a lo largo de su historia, así como las implicaciones que actualmente tiene en el área de TI. Además, te familiarizarás con habilidades de Linux esenciales para la ruta de DevOps como scripts y revisión de logs.

Módulo 1: Gestión del código fuente con Git, GitHub y los patrones de GitFlow

Aprenderás a gestionar el código fuente, creando diferentes versiones del código, así como crear diversas ramificaciones del mismo código. Crearás repositorios de código y los clonarás, además aprenderás a manipular el código mientras se realizan actualizaciones (update) y cargas (pull).

Módulo 2: Integración continua / Continous Deploymenet

Comprenderás los beneficios de usar DevOps para crear un pipeline de desarrollo de software ágil, empleando el paradigma CI/CD.

Módulo 3: Infraestructura como código y estructura de DevOps

Comprenderás las prácticas, así como los beneficios de Infraestructure as Code (IaC), así como las diversas herramientas para implementar una solución de IaC. Te brindaremos un acercamiento a múltiples herramientas de código abierto para implementar con ellas la solución de DevOps. (Incluyendo la nube — AWS, Google Cloud, etc.)

Módulo 4: Creando aplicaciones en contenedores con Docker

Aprenderás a crear contenedores para desplegar aplicaciones, ya sea como standalone o como parte de un pipeline de CI/CD.

Taught by

Miguel A. Guirao Aguilera

Fundamentos y Herramientas de DevOps
الذهاب الي الدورة

Fundamentos y Herramientas de DevOps

بواسطة: edX

  • edX
  • مجانية
  • Spanish
  • متاح شهادة
  • أيام محددة
  • intermediate
  • Spanish
8.1.2PHP Version225msRequest Duration2MBMemory UsageGET ar/الدورات/{slug}Route
    • Booting (141ms)
    • Application (83.5ms)
    • 1 x Booting (62.61%)
      140.73ms
      1 x Application (37.15%)
      83.50ms
      14 templates were rendered
      • public.courses.show (resources/views/public/courses/show.blade.php)3bladefile
        Params
        0
        course
        1
        links
        2
        config
      • public.courses.partials.breadcrumbs (resources/views/public/courses/partials/breadcrumbs.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.heading (resources/views/public/courses/partials/heading.blade.php)7bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        classes
      • public.courses.partials.details (resources/views/public/courses/partials/details.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.breadcrumbs (resources/views/public/courses/partials/breadcrumbs.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.heading (resources/views/public/courses/partials/heading.blade.php)7bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        classes
      • public.layouts.main (resources/views/public/layouts/main.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.layouts.partials.meta (resources/views/public/layouts/partials/meta.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.layouts.partials.navbar (resources/views/public/layouts/partials/navbar.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.auth.profile.partials.links (resources/views/public/auth/profile/partials/links.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.layouts.partials.flash-session (resources/views/public/layouts/partials/flash-session.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      uri
      GET ar/الدورات/{slug}
      middleware
      web, localize:ar
      controller
      App\Http\Controllers\CourseController@show
      as
      ar.courses.show
      namespace
      prefix
      /ar
      where
      file
      app/Http/Controllers/CourseController.php:17-35
      7 statements were executed5.21ms
      • select * from `courses` where `slug_ar` = 'fundamentos-y-herramientas-de-devops' limit 1
        3.9ms/app/Http/Controllers/CourseController.php:20corspedia
        Metadata
        Bindings
        • 0. fundamentos-y-herramientas-de-devops
        Backtrace
        • 17. /app/Http/Controllers/CourseController.php:20
        • 18. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 19. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 20. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • update `courses` set `visitors` = `visitors` + 1, `courses`.`updated_at` = '2025-04-14 14:31:58' where `id` = 1848
        450μs/app/Http/Controllers/CourseController.php:21corspedia
        Metadata
        Bindings
        • 0. 2025-04-14 14:31:58
        • 1. 1848
        Backtrace
        • 17. /app/Http/Controllers/CourseController.php:21
        • 18. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 19. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 20. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select `id`, `name_en`, `name_ar`, `topic_id`, `slug_en`, `slug_ar` from `subjects` where `subjects`.`id` in (10)
        170μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select `id`, `name_en`, `name_ar`, `slug_en`, `slug_ar` from `topics` where `topics`.`id` in (1)
        150μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 25. /app/Http/Controllers/CourseController.php:23
        • 26. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 27. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 28. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 29. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `institutions` where `institutions`.`id` in (95) and `institutions`.`deleted_at` is null
        180μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `providers` where `providers`.`id` in (1) and `providers`.`deleted_at` is null
        170μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `html_files` where `html_files`.`id` = 1839 limit 1
        190μs/app/Models/Course.php:84corspedia
        Metadata
        Bindings
        • 0. 1839
        Backtrace
        • 21. /app/Models/Course.php:84
        • 28. view::public.courses.show:29
        • 30. /vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:125
        • 31. /vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php:58
        • 32. /vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php:72
      App\Models\HtmlFile
      1
      App\Models\Provider
      1
      App\Models\Institution
      1
      App\Models\Topic
      1
      App\Models\Subject
      1
      App\Models\Course
      1
        _token
        ygxeuJzgBAVnU8KuT7tBmx4vekJNUf1ZaDAktvui
        locale
        ar
        _previous
        array:1 [ "url" => "https://www.corspedia.com/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/fundam...
        _flash
        array:2 [ "old" => [] "new" => [] ]
        PHPDEBUGBAR_STACK_DATA
        []
        path_info
        /ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/fundamentos-y-herramientas-de-devops
        status_code
        200
        
        status_text
        OK
        format
        html
        content_type
        text/html; charset=UTF-8
        request_query
        []
        
        request_request
        []
        
        request_headers
        0 of 0
        array:24 [ "sec-ch-ua-mobile" => array:1 [ 0 => "?0" ] "sec-ch-ua" => array:1 [ 0 => ""HeadlessChrome";v="129", "Not=A?Brand";v="8", "Chromium";v="129"" ] "cache-control" => array:1 [ 0 => "no-cache" ] "pragma" => array:1 [ 0 => "no-cache" ] "upgrade-insecure-requests" => array:1 [ 0 => "1" ] "priority" => array:1 [ 0 => "u=0, i" ] "user-agent" => array:1 [ 0 => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" ] "cf-ipcountry" => array:1 [ 0 => "US" ] "cf-connecting-ip" => array:1 [ 0 => "3.139.67.194" ] "accept" => array:1 [ 0 => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" ] "sec-fetch-site" => array:1 [ 0 => "none" ] "cf-visitor" => array:1 [ 0 => "{"scheme":"https"}" ] "sec-fetch-mode" => array:1 [ 0 => "navigate" ] "sec-fetch-user" => array:1 [ 0 => "?1" ] "x-forwarded-proto" => array:1 [ 0 => "https" ] "cdn-loop" => array:1 [ 0 => "cloudflare; loops=1" ] "accept-encoding" => array:1 [ 0 => "gzip, br" ] "sec-fetch-dest" => array:1 [ 0 => "document" ] "sec-ch-ua-platform" => array:1 [ 0 => ""Windows"" ] "x-forwarded-for" => array:1 [ 0 => "3.139.67.194" ] "cf-ray" => array:1 [ 0 => "9303e8ec8a2272cb-ORD" ] "host" => array:1 [ 0 => "www.corspedia.com" ] "content-length" => array:1 [ 0 => "" ] "content-type" => array:1 [ 0 => "" ] ]
        request_server
        0 of 0
        array:50 [ "USER" => "www-data" "HOME" => "/var/www" "HTTP_SEC_CH_UA_MOBILE" => "?0" "HTTP_SEC_CH_UA" => ""HeadlessChrome";v="129", "Not=A?Brand";v="8", "Chromium";v="129"" "HTTP_CACHE_CONTROL" => "no-cache" "HTTP_PRAGMA" => "no-cache" "HTTP_UPGRADE_INSECURE_REQUESTS" => "1" "HTTP_PRIORITY" => "u=0, i" "HTTP_USER_AGENT" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" "HTTP_CF_IPCOUNTRY" => "US" "HTTP_CF_CONNECTING_IP" => "3.139.67.194" "HTTP_ACCEPT" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" "HTTP_SEC_FETCH_SITE" => "none" "HTTP_CF_VISITOR" => "{"scheme":"https"}" "HTTP_SEC_FETCH_MODE" => "navigate" "HTTP_SEC_FETCH_USER" => "?1" "HTTP_X_FORWARDED_PROTO" => "https" "HTTP_CDN_LOOP" => "cloudflare; loops=1" "HTTP_ACCEPT_ENCODING" => "gzip, br" "HTTP_SEC_FETCH_DEST" => "document" "HTTP_SEC_CH_UA_PLATFORM" => ""Windows"" "HTTP_X_FORWARDED_FOR" => "3.139.67.194" "HTTP_CF_RAY" => "9303e8ec8a2272cb-ORD" "HTTP_HOST" => "www.corspedia.com" "REDIRECT_STATUS" => "200" "SERVER_NAME" => "corspedia.com" "SERVER_PORT" => "443" "SERVER_ADDR" => "141.95.147.152" "REMOTE_USER" => "" "REMOTE_PORT" => "23392" "REMOTE_ADDR" => "172.69.17.157" "SERVER_SOFTWARE" => "nginx/1.18.0" "GATEWAY_INTERFACE" => "CGI/1.1" "HTTPS" => "on" "REQUEST_SCHEME" => "https" "SERVER_PROTOCOL" => "HTTP/2.0" "DOCUMENT_ROOT" => "/var/www/corspedia/public" "DOCUMENT_URI" => "/index.php" "REQUEST_URI" => "/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/fundamentos-y-herramientas-de-devops" "SCRIPT_NAME" => "/index.php" "CONTENT_LENGTH" => "" "CONTENT_TYPE" => "" "REQUEST_METHOD" => "GET" "QUERY_STRING" => "" "SCRIPT_FILENAME" => "/var/www/corspedia/public/index.php" "PATH_INFO" => "" "FCGI_ROLE" => "RESPONDER" "PHP_SELF" => "/index.php" "REQUEST_TIME_FLOAT" => 1744641118.4112 "REQUEST_TIME" => 1744641118 ]
        request_cookies
        []
        
        response_headers
        0 of 0
        array:5 [ "content-type" => array:1 [ 0 => "text/html; charset=UTF-8" ] "cache-control" => array:1 [ 0 => "no-cache, private" ] "date" => array:1 [ 0 => "Mon, 14 Apr 2025 14:31:58 GMT" ] "set-cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6IncrbmYyb01YUzlsS0xBNURkTnFjalE9PSIsInZhbHVlIjoialpSOGNSTStiNVYwWnoxeXNSWHNnVUg0eSs1cGdXVlV5d3NPL202eVRVeEt0MkNzSkY0VThISEt1SzYvaWFZS0ZPZjJQeWM2T3BLejFXdGtEMzkyNzRiNlhZM09lRmVhZnFFVDlpbFNQc0l3WEhpNWFEVUtjQlhnUHE4N1NMUnUiLCJtYWMiOiI5MjRhMDk5YzFlOWFlNjkwYjhiODk1NWJmZTY1M2RlYTkyMWEyNmY4YzVhNGViOWVlOWVjOTgyYjU2MzY4MDI5IiwidGFnIjoiIn0%3D; expires=Mon, 14 Apr 2025 16:31:58 GMT; Max-Age=7200; path=/; samesite=laxXSRF-TOKEN=eyJpdiI6IncrbmYyb01YUzlsS0xBNURkTnFjalE9PSIsInZhbHVlIjoialpSOGNSTStiNVYwWnoxeXNSWHNnVUg0eSs1cGdXVlV5d3NPL202eVRVeEt0MkNzSkY0VThISEt1SzYvaWFZS0ZPZjJQe" 1 => "laravel_session=eyJpdiI6ImVzQ2YyK1p6engrYVIvWXhhNDhTRFE9PSIsInZhbHVlIjoiSUIxOUNLY05lZTcvZDBsNGl4bDlPK3FrdHRiM0JBZlBhMEl2eUhydytiRTF0cExtQlpWRk5oMlltbExUM0ZkRm9jeFJUMjU5MTF1cVJ4NGhWL3pPZHVweVdHWHhIYk1rUTdHQXJ5U0JBbTdUS2RaTFJYUDhkWmZIalJ5TUhQTHciLCJtYWMiOiI3ZWJhYWRmYTZhM2YzNTUwNDc3ZDQ5MzM3NzAyMjdhMjJkYjM3NzM1ZGZhN2IxY2YyNDYxYjgwNmI5MGRlYTRkIiwidGFnIjoiIn0%3D; expires=Mon, 14 Apr 2025 16:31:58 GMT; Max-Age=7200; path=/; httponly; samesite=laxlaravel_session=eyJpdiI6ImVzQ2YyK1p6engrYVIvWXhhNDhTRFE9PSIsInZhbHVlIjoiSUIxOUNLY05lZTcvZDBsNGl4bDlPK3FrdHRiM0JBZlBhMEl2eUhydytiRTF0cExtQlpWRk5oMlltbExUM0ZkRm9j" ] "Set-Cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6IncrbmYyb01YUzlsS0xBNURkTnFjalE9PSIsInZhbHVlIjoialpSOGNSTStiNVYwWnoxeXNSWHNnVUg0eSs1cGdXVlV5d3NPL202eVRVeEt0MkNzSkY0VThISEt1SzYvaWFZS0ZPZjJQeWM2T3BLejFXdGtEMzkyNzRiNlhZM09lRmVhZnFFVDlpbFNQc0l3WEhpNWFEVUtjQlhnUHE4N1NMUnUiLCJtYWMiOiI5MjRhMDk5YzFlOWFlNjkwYjhiODk1NWJmZTY1M2RlYTkyMWEyNmY4YzVhNGViOWVlOWVjOTgyYjU2MzY4MDI5IiwidGFnIjoiIn0%3D; expires=Mon, 14-Apr-2025 16:31:58 GMT; path=/XSRF-TOKEN=eyJpdiI6IncrbmYyb01YUzlsS0xBNURkTnFjalE9PSIsInZhbHVlIjoialpSOGNSTStiNVYwWnoxeXNSWHNnVUg0eSs1cGdXVlV5d3NPL202eVRVeEt0MkNzSkY0VThISEt1SzYvaWFZS0ZPZjJQe" 1 => "laravel_session=eyJpdiI6ImVzQ2YyK1p6engrYVIvWXhhNDhTRFE9PSIsInZhbHVlIjoiSUIxOUNLY05lZTcvZDBsNGl4bDlPK3FrdHRiM0JBZlBhMEl2eUhydytiRTF0cExtQlpWRk5oMlltbExUM0ZkRm9jeFJUMjU5MTF1cVJ4NGhWL3pPZHVweVdHWHhIYk1rUTdHQXJ5U0JBbTdUS2RaTFJYUDhkWmZIalJ5TUhQTHciLCJtYWMiOiI3ZWJhYWRmYTZhM2YzNTUwNDc3ZDQ5MzM3NzAyMjdhMjJkYjM3NzM1ZGZhN2IxY2YyNDYxYjgwNmI5MGRlYTRkIiwidGFnIjoiIn0%3D; expires=Mon, 14-Apr-2025 16:31:58 GMT; path=/; httponlylaravel_session=eyJpdiI6ImVzQ2YyK1p6engrYVIvWXhhNDhTRFE9PSIsInZhbHVlIjoiSUIxOUNLY05lZTcvZDBsNGl4bDlPK3FrdHRiM0JBZlBhMEl2eUhydytiRTF0cExtQlpWRk5oMlltbExUM0ZkRm9j" ] ]
        session_attributes
        0 of 0
        array:5 [ "_token" => "ygxeuJzgBAVnU8KuT7tBmx4vekJNUf1ZaDAktvui" "locale" => "ar" "_previous" => array:1 [ "url" => "https://www.corspedia.com/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/fundamentos-y-herramientas-de-devops" ] "_flash" => array:2 [ "old" => [] "new" => [] ] "PHPDEBUGBAR_STACK_DATA" => [] ]