infoblox_nios:useful_nios
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| infoblox_nios:useful_nios [2023/11/12 11:42] – [Editing NIOS Backup Files] bstafford | infoblox_nios:useful_nios [2025/09/23 13:10] (current) – [Reset NIOS] bstafford | ||
|---|---|---|---|
| Line 22: | Line 22: | ||
| [2023/01/01 01:01:01] Hotfix Hotfix-CHF-8.6.2.3-NIOS-11122-APPLY-f62d08c367229f13fc7d6d24400e57bc-Wed-Mar-15-09-51-18-2022.bin applied successfully</ | [2023/01/01 01:01:01] Hotfix Hotfix-CHF-8.6.2.3-NIOS-11122-APPLY-f62d08c367229f13fc7d6d24400e57bc-Wed-Mar-15-09-51-18-2022.bin applied successfully</ | ||
| Uupgrade history from the GM and GMC's is the best bet because this will not show hotfixes that were released | Uupgrade history from the GM and GMC's is the best bet because this will not show hotfixes that were released | ||
| + | |||
| + | |||
| + | |||
| + | ===== SCP ===== | ||
| + | The reasons why the scp failed will be found in logs file. Search for < | ||
| ===== Reset NIOS ===== | ===== Reset NIOS ===== | ||
| **Note that auto-provisioning can be enabled only on single appliances.** | **Note that auto-provisioning can be enabled only on single appliances.** | ||
| - | ^ Command ^ Clear NIOS Database | + | ^ Command ^ Clear NIOS DB and Logs ^ Clear Configuration ^ Clear Network Settings ^ Clear Licenses ^ Clear Network Automation Database ^ |
| | reset all | Yes | Yes | Set to 192.168.1.1/ | | reset all | Yes | Yes | Set to 192.168.1.1/ | ||
| + | | reset all secure | Yes | Yes | Set to 192.168.1.1/ | ||
| | reset all auto_provision | Yes | Yes | Set to DHCP | Yes | N/A | | | reset all auto_provision | Yes | Yes | Set to DHCP | Yes | N/A | | ||
| | reset all licenses | Yes | Yes | Yes | Yes | N/A | | | reset all licenses | Yes | Yes | Yes | Yes | N/A | | ||
| Line 44: | Line 50: | ||
| The following | The following | ||
| < | < | ||
| + | |||
| + | ===== HTTPS Speed ===== | ||
| + | If HTTPS UI takes longer set a higher value like 1000 using the command "set connection_limit https 1000". The maximum allowed value for the limit is 2147483647 . | ||
| + | |||
| + | |||
| + | HTTP Keepalive, also referred to as HTTP persistent connection, instructs the server to maintain a single TCP connection for multiple HTTP requests and responses between the client and server. Without HTTP Keepalive, the server closes the TCP connection (not the session) after each request. | ||
| + | |||
| + | Also please enable keep alive for httpd_client using the below steps. | ||
| + | |||
| + | - Execute the command '' | ||
| + | - Wait for a few minutes to allow the UI to restart. | ||
| + | - After the UI restart, you can confirm the current keepalive status using the following command: | ||
| + | - Infoblox > '' | ||
| + | < | ||
| + | keepalive=off (default) keepalivetime=150 (default) minspare=5 (default) maxspare=5 (default) maxserver=150 (default) maxrequest=100 (default) maxkeepaliverequests=0 (default)</ | ||
| + | |||
| ===== General ===== | ===== General ===== | ||
| Line 56: | Line 78: | ||
| | show date | Display the date, time and time zone of the appliance | | | show date | Display the date, time and time zone of the appliance | | ||
| | show debug | Display the status of debugging | | | show debug | Display the status of debugging | | ||
| - | | show disk | Display the disk space used | | + | | [[misc#disk|show disk]] | Display the disk space used | |
| | show file | Display the content(s) of a file(s) | | | show file | Display the content(s) of a file(s) | | ||
| | show hardware-type | Display hardware type | | | show hardware-type | Display hardware type | | ||
| Line 63: | Line 85: | ||
| | show interface | Display network interface details | | | show interface | Display network interface details | | ||
| | show license | Display product and maintenance licenses | | | show license | Display product and maintenance licenses | | ||
| - | | show license_uid | Display the grid-wide license unique ID | | + | | show license_uid | Display the grid-wide license unique ID (must have Grid and NIOS licence installed)| |
| | show log | Display the specified system log | | | show log | Display the specified system log | | ||
| | show lom | Display LOM network/ | | show lom | Display LOM network/ | ||
| Line 84: | Line 106: | ||
| | show version | Display the product version | | | show version | Display the product version | | ||
| - | ===== NIOS Infoblox Console Cable ===== | ||
| - | Connect a serial cable from the console port on your management system to the console port on the appliance. The appliance has a male DB-9 console port on its front panel. | ||
| - | * Bits per second: 9600 | ||
| - | * Data bits: 8 | ||
| - | * Parity: None | ||
| - | * Stop bits: 1 | ||
| - | * Flow control: Xon/Xoff | ||
| - | |||
| - | HAS TO BE A NULL MODEM CABLE - [[https:// | ||
| - | |||
| - | https:// | ||
| ===== Editing NIOS Backup Files ===== | ===== Editing NIOS Backup Files ===== | ||
| Line 103: | Line 114: | ||
| The Grid Backup file (.bak) is a tar.gz file that can be opened with 7-Zip. This file contains an XML file called onedb.xml. | The Grid Backup file (.bak) is a tar.gz file that can be opened with 7-Zip. This file contains an XML file called onedb.xml. | ||
| - | XPad64 can edit this file. (Search for '' | + | XPad64 can edit this file. Search for the following < |
| The following value is for the password ' | The following value is for the password ' | ||
| < | < | ||
| + | < | ||
| + | < | ||
| NIOS can be very picky about what backup files it will restore onto a version of code. You must always make sure you are running the same version of NIOS that was used to make the Grid backup. However, in a LAB environment, | NIOS can be very picky about what backup files it will restore onto a version of code. You must always make sure you are running the same version of NIOS that was used to make the Grid backup. However, in a LAB environment, | ||
| + | |||
| + | |||
| + | You can script this with | ||
| + | < | ||
| + | import xml.etree.ElementTree as ET | ||
| + | import io | ||
| + | import shutil | ||
| + | import argparse | ||
| + | |||
| + | |||
| + | def modify_password_in_tar(tar_path, | ||
| + | # Open tar file | ||
| + | with tarfile.open(tar_path, | ||
| + | # Extract onedb.xml into memory | ||
| + | xml_member = tar.getmember(" | ||
| + | xml_content = tar.extractfile(xml_member).read() | ||
| + | |||
| + | # Parse XML | ||
| + | root = ET.fromstring(xml_content) | ||
| + | |||
| + | # Extract VERSION and print first 3 parts | ||
| + | version_value = root.attrib.get(" | ||
| + | if version_value: | ||
| + | version_parts = version_value.split(" | ||
| + | version_trimmed = " | ||
| + | print(f" | ||
| + | |||
| + | # Iterate through OBJECT elements | ||
| + | for obj in root.findall(" | ||
| + | type_node = obj.find(' | ||
| + | name_node = obj.find(' | ||
| + | |||
| + | if (type_node is not None and type_node.attrib.get(" | ||
| + | name_node is not None and name_node.attrib.get(" | ||
| + | |||
| + | # Find password property | ||
| + | pwd_node = obj.find(' | ||
| + | if pwd_node is not None: | ||
| + | pwd_node.set(" | ||
| + | print(f" | ||
| + | |||
| + | # Convert back to string | ||
| + | new_xml_bytes = ET.tostring(root, | ||
| + | |||
| + | # Create a temporary tar | ||
| + | temp_tar_path = tar_path + " | ||
| + | with tarfile.open(temp_tar_path, | ||
| + | with tarfile.open(tar_path, | ||
| + | for member in old_tar.getmembers(): | ||
| + | if member.name == " | ||
| + | # Add modified XML | ||
| + | info = tarfile.TarInfo(name=" | ||
| + | info.size = len(new_xml_bytes) | ||
| + | new_tar.addfile(info, | ||
| + | else: | ||
| + | # Copy other files unchanged | ||
| + | new_tar.addfile(member, | ||
| + | |||
| + | # Replace old tar with new tar | ||
| + | shutil.move(temp_tar_path, | ||
| + | |||
| + | |||
| + | if __name__ == " | ||
| + | parser = argparse.ArgumentParser(description=" | ||
| + | parser.add_argument(" | ||
| + | parser.add_argument(" | ||
| + | parser.add_argument(" | ||
| + | |||
| + | args = parser.parse_args() | ||
| + | |||
| + | modify_password_in_tar(args.file, | ||
| + | </ | ||
| In this example, we are making a Grid Backup from 8.6.0 early access NIOS compatible with 8.6.0 GA NIOS. NOTE: We are not actually making it compatible, we are simply tricking NIOS 8.6.0 GA into loading the configuration as best as it can. | In this example, we are making a Grid Backup from 8.6.0 early access NIOS compatible with 8.6.0 GA NIOS. NOTE: We are not actually making it compatible, we are simply tricking NIOS 8.6.0 GA into loading the configuration as best as it can. | ||
| Line 115: | Line 199: | ||
| to | to | ||
| < | < | ||
| + | |||
| + | You may also need to edit the UI ACL (if it is set). Search for | ||
| + | < | ||
| + | This is set on the CLI using **set security** ([[https:// | ||
infoblox_nios/useful_nios.1699789337.txt.gz · Last modified: by bstafford
