Determine What Code to Automate
There are multiple ways to automate. A working example provides a template structure that you can quickly modify and customize for efficiency and effectiveness. Version control enables you to use a working example, tweak it little by little, and then run your code with each change. Saving all your versions of code provides you with backups so that you can revert to previous versions and correct any errors made.
Determine Comfort Level with Automation
Before you begin, you should determine your comfort level with automation and scripting:
- Low – Explore configuration management products such as: Ansible, Puppet, or Chef
- Medium – Start with element-based automation, such as Junoscript
- High – Use Juniper’s APIs based on Apache Thrift and take full control of your network through Junos Extension Toolkit (JET)
Apply Automation to Operations
You can apply automation to any operation during the buil, audit, and configure phases:
- Build phase – centers around the initial design and installation of a network component.
- Audit phase – deals with automating the process of monitoring the operational state of the platform and reacting on state conditions.
- Configure phase – covers methods to deploy on demand configurations and software changes to the platform.