Junos Automation (JAUT)
Who should attend
This course benefits individuals responsible for configuring and monitoring devices running the Junos OS.
Students should have intermediate-level networking knowledge and an understanding of the Open Systems Interconnection (OSI) model and the TCP/IP protocol suite. Students should also have familiarity with a programming language such as C, C++, Perl, Python, Ruby, or Java. Students should also attend the Introduction to the Junos Operating System (IJOS) courses prior to attending this class. Lastly, a high level understanding of object-oriented programming is a plus but not a requirement.
After successfully completing this course, you should be able to:
- Describe the benefits of using Junos OS automation.
- Describe the differences between commit, op, and event scripts.
- Describe the format of an XML document.
- Describe how the Junos OS uses XML for commands and configuration.
- Explain how commit, op, and event scripts interact with XML.
- Describe the SLAX script structure.
- Describe SLAX variables and flow control.
- Create and test SLAX scripts.
- Describe the benefits of the Junos extension functions.
- Explain the different Junos extension functions.
- Describe how commit scripts can be used to make changes to the configuration.
- Describe how to use commit scripts to generate custom warnings and errors during a commit.
- Configure and enable commit scripts.
- Describe the use of op scripts.
- Execute op scripts remotely.
- Explain how to define arguments and call operational-mode commands.
- Describe how to make configuration changes with op scripts.
- Configure op scripts.
- Describe the usage of event policies and scripts.
- Configure event scripts.
- Describe the benefits of the Python and Ruby languages.
- Describe the Python and Ruby script/program structure.
- Describe Python and Ruby variables and flow control.
- Create and test Python and Ruby scripts/programs.
- Describe the benefits of the PyEZ package and RubyEZ gem.
- Explain how to use PyEZ to operate Junos.
- Explain how to use RubyEZ to operate Junos.
- Describe Ansible.
- Explain the YAML syntax.
- Explain the Jinja2 syntax.
- Create Ansible playbooks.
- Operate Junos infrastructure using Ansible.
- Explain the benefits of Puppet.
- Describe the difference between a Puppet class, resource, and manifest.
- Explain how to operate Junos using Puppet.
- Describe Chef fundamentals.
This four-day course is designed to provide students with Junos platform automation knowledge through hands-on development. Students receive hands-on experience with tools and languages relevant to Junos platforms. The course includes an overview of Extensible Markup Language (XML), Stylesheet Language Alternative Syntax (SLAX), the Junos template and function library, commit scripts, operation (op) scripts, and event scripts. It also covers an introduction to the Python and Ruby languages as well as automation/DevOps tools such as PyEZ, RubyEZ, Puppet, and Ansible. Through demonstrations and hands-on labs, students will gain experience in automating the Junos operating system and device operations. This course is based on the Junos OS Release 14.2R2.6.