An efficient tool to execute configuration backups, network state snapshots, system readiness checks, and operating system upgrades of Palo Alto Networks firewalls and Panorama appliances.
This Pull Request introduces a suite of enhancements to the PAN-OS upgrade automation tool, focusing on High Availability (HA) workflow refinement, the integration of multi-threading for improved performance, and substantial documentation updates.
Key highlights include:
High Availability (HA) Workflow Enhancement
Advanced HA Handling: The upgrade script now includes an advanced mechanism for managing HA configurations, ensuring seamless and reliable upgrades in HA environments.
Dedicated HA Functions: New functions such as create_peer_firewall, handle_ha_logic, suspend_ha_active, and suspend_ha_passive have been introduced to cater to specific HA operations, enhancing the clarity and reliability of HA management.
Multi-Threading Integration
Performance Optimization: The introduction of multi-threading allows for concurrent operations, significantly reducing the overall upgrade time, especially beneficial in large environments or HA setups.
Increased Threading Count: The threading count has been raised to 10, enabling more simultaneous upgrade processes and faster execution times.
Documentation and Logging Enhancements
Updated Docstrings: We've revised the docstrings across the script to conform to a standard format and included the hostname in log messages to facilitate clarity in multi-threaded scenarios.
Documentation Updates: The documentation has been thoroughly updated to reflect the new HA workflow and multi-threading capabilities, providing users with clear and comprehensive guidance.
Core Functionality Improvements
Version Comparison Logic: The determine_upgrade function now utilizes a compare_versions function for more accurate version comparison, crucial for determining the correct upgrade path.
Version Parsing: A new parse_version function improves the parsing of PAN-OS version strings, enhancing the script's version handling capabilities.
General Enhancements
Refined Execution Flow: The script's main execution flow has been optimized for handling connections to firewalls and Panorama, and efficiently processing upgrades for multiple devices.
Enhanced Logging and Error Handling: Improved logging provides better visibility during script execution, while robust error handling ensures reliability in HA configurations and version comparisons.
These comprehensive updates aim to bolster the efficiency, reliability, and usability of the PAN-OS upgrade automation tool, significantly streamlining the firewall upgrade process for administrators.
Additional Notes
Emoji updates have been made to improve whitespace aesthetics in log messages.
A correction was implemented for an issue where single-target firewalls did not initiate the upgrade process correctly.
With these enhancements, the script is better equipped to handle complex upgrade scenarios, offering a more robust and user-friendly tool for network administrators managing Palo Alto Networks firewalls.
Overview
This Pull Request introduces a suite of enhancements to the PAN-OS upgrade automation tool, focusing on High Availability (HA) workflow refinement, the integration of multi-threading for improved performance, and substantial documentation updates.
Key highlights include:
High Availability (HA) Workflow Enhancement
create_peer_firewall
,handle_ha_logic
,suspend_ha_active
, andsuspend_ha_passive
have been introduced to cater to specific HA operations, enhancing the clarity and reliability of HA management.Multi-Threading Integration
Documentation and Logging Enhancements
Core Functionality Improvements
determine_upgrade
function now utilizes acompare_versions
function for more accurate version comparison, crucial for determining the correct upgrade path.parse_version
function improves the parsing of PAN-OS version strings, enhancing the script's version handling capabilities.General Enhancements
These comprehensive updates aim to bolster the efficiency, reliability, and usability of the PAN-OS upgrade automation tool, significantly streamlining the firewall upgrade process for administrators.
Additional Notes
With these enhancements, the script is better equipped to handle complex upgrade scenarios, offering a more robust and user-friendly tool for network administrators managing Palo Alto Networks firewalls.
Addresseses #50 and #53