Introduction
This article explains how to manage edge nodes using the ZEDEDA CLI, including create, update, delete, activate, deactivate, and reboot commands, with examples for each action.
This is a series of articles. You will likely follow them in this order.
- Edge Node Overview
- Onboard an Edge Node
- Manage an Edge Node
- Use the ZEDEDA CLI to Manage an Edge Node - You are here!
Prerequisites
- ZCLI is running.
- You must have either the SysManager or SysAdmin role in your ZEDEDA Cloud enterprise.
Create an Edge Node
Create an edge node from the ZCLI. Note that the onboarding flow in the GUI contains network and project configurations that are not available in the zcli edge-node command. For those configurations, you will use zcli network and zcli project.
zcli edge-node create <name> --project=<project> --model=<model> [--title=<title>] [--description=<description>] [--tags=<key:value>...] [--local-profile-server-config=<key:value>...] ([--edge-node-certificate=<certificate>] | [--onboarding-certificate=<certificate>] | [(--onboarding-key=<key> --serial=<serial-number> [--token=<token>])]) [--network=<network>...] [--network-tag=<key:value>...] [--gen-soft-serial] [--edgeview-config=<json-file-path>] [--loc_url=<loc_url>] [--deployment-tag=<deployment-tag>] [--activate]
zcli edge-node create MY_EDGE_NODE --project=MY_PROJECT --model=Advantech-2012
View an Edge Node
After you create an edge node cluster, you can view it.
zcli edge-node show [[[<name> | --uuid=<uuid>] [--detail] [--summary] [--raw] [--bootstrap] [--edgeview]] | [[--name-pattern=<name-pattern>] [--admin-state=<admin-state>] [--page-size=<page-size>] [--project=<project>] [--state=<state>] [--tags=<key:value>]]] [--new]
zcli edge-node show
Response:
Edge Node Serial No. State Run State Active Image
--------- ------- ------ ------- ----------
MY_EDGE_NODE 1421 Registered Online 12.0.6-lts-kvm-amd64
zcli edge-node show MY_EDGE_NODE
Response:
Edge Node Name: MY_EDGE_NODE Edge Node Title: MY_EDGE_NODE Tags: Model: Advantech-2012 Project: MY_PROJECT State: Created Run State: Online Edge Node Config Serial Number: Configured Current Eve Image: Configured Next Eve Image: Device Status Reported Serial Number: Geo Located Edgeview (UNSPECIFIED) Expire on: Thu Jan 1 00:00:00 1970, Dev: 0, App: 0 Created at: Mon Mar 24 2025 10:38:13 PM Last Config update: Mon Mar 24 2025 10:38:13 PM
Update an Edge Node
After you create an edge node, you can update it whenever things change.
zcli edge-node update <name> [--title=<title>] [--description=<description>] [--tags=<key:value>...] [--local-profile-server-config=<key:value>...] [--project=<project>] [--clear-onboarding-certs] [--config=<key:value>...] [--network=<network>...] [--network-tag=<key:value>...] [--edgeview-config=<json-file-path>] [--loc_url=<loc_url>] [--deployment-tag=<deployment-tag>]
zcli edge-node update MY_EDGE_NODE --title=MY_NEW_TITLE
Activate an Edge Node
After you add an edge node, it changes to admin status of active by default when it’s online. If you deactivate it, you need to activate it when you’re ready to put it back into operational state.
zcli edge-node activate <name>
zcli edge-node activate MY_EDGE_NODE
Deactivate an Edge Node
After you activate an edge node, you can deactivate it if you need to stop all the application instances running in the cluster. For example, one reason to deactivate it might be to stop resource consumption, but you might have any reason.
zcli edge-node deactivate <name>
zcli edge-node deactivate MY_EDGE_NODE
Reboot an Edge Node
After you activate an edge node, you can reboot the active edge node to apply changes or recover from issues.
zcli edge-node reboot [-f] <name>
zcli edge-node reboot -f MY_EDGE_NODE
Prepare Power Off an Edge Node
After you activate an edge node, you can prepare to power off when you need to gracefully shut down the applications running on EVE-OS.
zcli edge-node prepare-poweroff <name> [-f]
zcli edge-node prepare-poweroff MY_EDGE_NODE -f
Delete an Edge Node
After you create an edge node, you can delete it if you no longer need it. If you don’t use the -f option, you’ll be prompted to confirm.
zcli edge-node delete <name> [-f]
zcli edge-node delete MY_EDGE_NODE -f
Update EVE-OS Image on an Edge Node
If the edge node is already running the latest EVE-OS image no action is taken.
zcli edge-node eveimage-update <name> --image=<image> [--activate] [--retry] [-f]
zcli edge-node eveimage-update MY_EDGE_NODE -f
Remove EVE-OS Image on an Edge Node
Remove older versions to save space or make sure that edge nodes run the latest software, for example.
zcli edge-node eveimage-remove <name> --image=<image>
zcli edge-node eveimage-remove MY_EDGE_NODE
Get Config on an Edge Node
Save the edge node's configuration to a file that you can use as a way to store the configuration for later use or analysis. The default directory for the file is /home/zcli, unless you have changed to a different directory to run the command.
zcli edge-node get-config <name> [--offline] [--summary] [--next] [--bootstrap]
zcli edge-node get-config MY_EDGE_NODE
Response:
edge-node config written to the file MY_EDGE_NODE.cfg
Get Local Operator Config on an Edge Node
You need to set up Edge Sync before you can get the config.
zcli edge-node get-loc-config <name>
zcli edge-node get-loc-config MY_EDGE_NODE
Trigger Config Generation of an Edge Node
This checks the latest configuration that the cloud has for the edge node and then generates an updated configuration on the edge node.
zcli edge-node gen-config <name>
zcli edge-node gen-config MY_EDGE_NODE
Fetch PCR Values of an Edge Node
Save the edge node's platform config register (PCR) values to a file that you can use to compare the retrieved PCR values with known-good values to detect any unauthorized modifications, for example. The default directory for the file is /home/zcli, unless you have changed to a different directory to run the command.
zcli edge-node get-pcr <name>
zcli edge-node get-pcr MY_EDGE_NODE
Response:
edge-node PCR values written to file MY_EDGE_NODE.pcr
Enable Debug Knob on an Edge Node
Enable debug knob to store raw metrics on the device. See Set-Log-Levels for further details about logs.
zcli edge-node enable-debug-knob <name> [--expiry=<expiry>]>
zcli edge-node enable-debug-knob MY_EDGE_NODE
Disable Debug Knob on an Edge Node
Disable debug knob to stop storing raw metrics on the device.
zcli edge-node disable-debug-knob <name> [--expiry=<expiry>]>
zcli edge-node disable-debug-knob MY_EDGE_NODE
Edge View on an Edge Node
See Edge View for configuration and usage details.
Generate a Single-Use Installer for an Edge Node
Generates a single-use EVE-OS Installer. This command needs to be used for devices created using the "Single Use Eve Installer" in the UI or "zcli edge-node create … --gen-soft-serial" ZCLI option. This command does the following:
- Downloads Edge Dev config
- Downloads Bootstrap config for the device
- Downloads EVE image configured for the device
- Generates an EVE installer that includes all the information required for the device to be installed and onboarded
NOTE - the generated installer must be used only ONCE and only for the specified device.
zcli edge-node gen-single-use-eve-installer <name> [--dry-run]
zcli edge-node gen-single-use-eve-installer MY_EDGE_NODE
Next Steps
This is a series of articles. You will likely follow them in this order.
- Edge Node Overview
- Onboard an Edge Node
- Manage an Edge Node
- Use the ZEDEDA CLI to Manage an Edge Node - You are here!
After you complete the series, you might be interested in the following articles:
-
Add edge applications from the Marketplace, which represents the Metadata manifest of the software application.
- Add Storage if you’re adding your own app to the local marketplace.
- Configure inbound and outbound firewall rules for network traffic. For example, see inbound and outbound rules in Add a Container as an Edge App Type or Add a Virtual Machine as an Edge App Type.
- Configure a network instance to enable network connectivity for your edge apps, including enabling edge apps on the same edge node to communicate with one another.
- Deploy the edge application on the edge node.