Overview
This course will introduce students to various DevOps tools, such as Git and virtual environments for Python Development, and explain the concept of continuous integration. The topics of how different development methodologies are used in DevOps, such as the agile process. By the end of the course, students will have a broad understanding of DevOps and how they can relate to NetDevOps, which leads to improved efficiency and success in network operations.
This course is primarily intended for network engineers, systems engineers, network architects, and managers interested in learning the fundamentals of network automation and NetDevOps.
By the end of the course, you will be able to:
- Define and differentiate between Waterfall and Agile software development methodologies
- Describe how DevOps principles, tools, and pipelines can be applied to network operations
- Explain the role of network automation development environments and associated technologies such as Python virtual environments, Vagrant, and Docker
To be successful in this course, you should be proficient in fundamental network routing & switching technologies, understand the basics of Python programming (3-6 mos exp.) and have some familiarity with Linux.
Syllabus
- Course Introduction for DevOps for Network Automation (NetDevOps)
- In this module, we will review the topics and what you will learn in this course.
- Exploring Software Development Methodologies
- Optimizing production processes is important—this priority is best seen in companies like Toyota and Ford that know how to efficiently manage mass production of complex systems. This emphasis on optimization is also true for software development these days: software needs to be delivered as rapidly as possible at extremely high quality. Business requirements are changing and industries are changing; software development now resembles manufacturing as it was decades ago. While software development is like other industries, the IT industry possesses some unique operational requirements that must be met. This section explores the related methodologies in IT, from the most classic to the most innovative ones.Â
- Describing NetDevOps: DevOps for Networking
- The principles of DevOps have been around for quite some time now. Its initial applicability was toward applications and bridging the gap between application developers and the operations teams who supported those applications. However, over the past few years, a concept that is called network development and operations (NetDevOps) has emerged that covers the applicability of DevOps principles, processes, and tools for IT networking professionals with the goal of increasing uptime, reliability, and predictability, while also benefiting from automation. This module explores common tools that are used within a NetDevOps pipeline.
- Managing Automation Development Environments
- Automation development environments allow developers and network automation engineers to work in consistent and reproducible environments. These environments accommodate the software dependencies and versions that vary from one system to another by using isolated environments, containers, and tools that manage multiple virtual machines (VMs).
Taught by
Cisco Learning & Certifications