Operations Guide

The purpose of this document is to provide information on using the Aeon-ZTPS system once you have installed the server and setup the system files necessary for each of the network OS you plan to use. Information on those topics are provided in other document pages. Refer to the Main Table of Conents for a complete listing.

Once you’ve properly setup the Aeon-ZTPS for your environment, the primary user-experience is providing visibility into the devices going through the ZTP process. This document covers the information you’ll need to know when using the Aeon-ZTPS and any known gotchas.

Device Tracking Database

Aeon-ZTPS maintains a database of every device that is processed through the system. The record key is the IP-address assigned by the DHCP server.

Attention

If the Aeon-ZTPS sees a device attempt to register with an existing IP-address, even if it is the same device, the Aeon-ZTPS will not bootstrap that device. If you have a scenario where you want to re-bootstrap a device, or re-use IP-addresses, then you MUST clear that IP-address from use. Refer to Maintenance Operations for how to take this action.

The following database fields are defined:

  • ip_addr - The device IP-address as assigned by the DHCP-server
  • os_name - The NOS name, as known by the Aeon-ZTPS system.
  • os_version - The NOS version string as provided by the device
  • serial_number - The device serial-number value as provided by the device
  • hw_model - The device hardware-model value as provided by the device
  • state - The Aeon-ZTPS progress-state, as described in the section below
  • message - Additional information relating to the state value
  • created_at - Timestamp when the device was registered into Aeon-ZTPS
  • updated_at - Timestamp when this record was last updated

You can view this information either via the WebGUI or the REST/JSON API, as described in the later sections in this document.

Device Progress States

As Aeon-ZTPS is processing a device, the system will update the device record with the current state and status message. The following is the list of defined device states and their meaning. Understanding these states will help you undestand the progress and troubleshoot any issues.

  • START
    This state is set during the initial Device-ZTP stage when the ztp script registers the device with Aeon-ZTPS.
  • DONE
    This state indicates that the device has successfully completed the ZTP process. This state is set after the finally script is executed, if you have provided one.
  • CONFIG:
    This state indicates that Aeon-ZTPS is pushing the static configuration files as part of the Remote-Bootstrap stage.
  • AWAIT-ONLINE:
    This state indicates that Aeon-ZTPS is waiting for the device to come back online and is reachable via the remote management mechanism; e.g. for Arista via eAPI.
  • AWAIT-SYSTEM-READY:
    Some network OS may become remotely reachable (AWAIT-ONLINE completed), but the NOS system management software is not yet ready. For this type of NOS, e.g. NX-OS, this state indicates that Aeon-ZTPS is waiting for the NOS system management to become available.
  • OS-INSTALL:
    This state indicates that Aeon-ZTPS is in the process of installing a new version of the NOS. The specific new version information is provided in the status field.
  • OS-REBOOTING:
    This state indicates that Aeon-ZTPS has initiated a device reboot, and the device is in the process of rebooting.
  • FAILED:
    This state indicates that the Aeon-ZTPS failed to properly process the device. You will need to examine the message field for details. You may also need to examine the logfiles for further details.

The WebGUI

You can access the WebGUI here: http://<yourztps>:8080. At present there is no login/authentication built into the WebGUI. The following is a screen-shot of the “ZTP Status” dashboard page:

../_images/dashboard-devices.png

REST/JSON API

The REST/JSON API URL is: http://<yourztps>:8080/api. At present there is no login/authentication built into the API. The following is a screen-shot of displaying the JSON information about devices processed by Aeon-ZTPS:

../_images/api-devices.png

There are a number of APIs available, which are fully described in a separate reference document. Many of the APIs are used by the Aeon-ZTPS bootstrap scripts; ie. not something you, the User, would have interest in. The following APIs would be of User interest, and they form the basis of providing information:

  • GET /api/about - get information about the Aeon-ZTPS system, e.g. version
  • GET /api/devices - retrieve device(s) status information
  • DELETE /api/devices - remove one or all device entries from the database

Log Files

All of the AEON-ZTPS logs detailing the actual bootstrap process are sent to syslog in the following format: .. code:

Sep 21 19:07:13 aeon-ztps eos-bootstrap INFO 172.20.116.13: config completed OK.
Sep 21 19:07:13 aeon-ztps eos-bootstrap INFO 172.20.116.13: Virtual device. No OS upgrade necessary.

The Aeon-ZTPS system maintains a number of logs in the directory: /var/log/aeon-ztp, as follows:

  • worker1.log
    This logfile used by the background scheduling system, celeryd. This file may be of interest as it shows you when NOS specific bootstrap scripts are launch for each device.
  • nginx.access.log
    This logifle is maintained by the Nginx system. It may be of interest as it shows all of the HTTP commands executed on Aeon-ZTPS.
  • nginx.error.log
    This logifle is maintained by the Nginx system. It may be of interest as it shows any errors experienced by the Nginx system.

Maintenance Operations

  • Flush the Entire Aeon-ZTPS device database

    You can clear the Aeon-ZTPS devices database by using the following command at the Linux prompt:

    user@host$ curl -X DELETE http://<aeonztps>:8080/api/devices?all=1
    {
      "message": "all records deleted",
      "ok": true
    }
    
  • Delete Specific IP-Address from Aeon-ZTPS device database

    You can remove a specific device from the database using the following command at the Linux prompt:

    user@host$ curl -X DELETE http://<aeonztps>:8080/api/devices?ip_addr=192.168.59.54
    {
      "count": 1,
      "message": "1 records deleted",
      "ok": true
    }
    
  • Flush the DHCP Leases

    If your Aeon-ZTPS is also providing DHCP service, you can use the following command at the Linux prompt to clear the dhcpd.leases file and restart the DHCP service.

    admin@aeon-ztps:~$ sudo dhcpd-reset
    + service isc-dhcp-server stop
    + rm -f /var/lib/dhcp/dhcpd.leases
    + service isc-dhcp-server start