Upgrade
Upgrades from Beta-1 onwards
Starting with Beta-1 release and onwards, the upgrade process is more streamlined and fully automated. The control node is upgraded in place and the agents/switches are upgraded using the control node.
In order to apply the upgrade, use the following instructions:
- Generate the current configuration of your fabric:
- On a control node:
kubectl hhfab config export > fab.yaml
- On a control node:
- On the node with the new version of
hhfab:hhfab init -c fab.yaml -f, using the fab.yaml from the previous step- run
hhfab build --mode=manualto generate fully self-contained (airgap) upgrade package; for a control node namedcontrol-1, it will beresult/control--control-1--install.tgz
- upload it to the control node (e.g. using
scp) - unpack and run
hhfab-recipe upgradefrom the resulting directory
The upgrade will do all necessary steps to upgrade the control node and the
agents/switches. The upgrade process will prompt the user to reboot, as part of
upgrading Flatcar on the control node. To validate that the version has been deployed,
run kubectl -n fab get fab/default -o=jsonpath='{.status.versions.fabricator.controller}'
and compare to the fabricator version in the release notes.
Upgrade process is idempotent and can be run multiple times without any issues.
Check the release notes for your version to see if a SONiC Upgrade is available.
Install SONiC using ONIE
As the switches boot up, select the ONIE option from the grub screen. From
there select the ONIE: Install OS option. In the grub boot menu the asterisk
(*) character functions as an indicator of the option that would be executed
if the enter key was pressed. For example to enter the ONIE menu it would
appear as *ONIE on the screen. The install option will cause the switch to
begin searching for installation media, this media is supplied by the control node.
Upgrade SONiC
Occasionally some fabric upgrades will include upgrades to the SONiC Network Operating System. Upgrading SONiC will cause the switch to not pass traffic during the upgrade process. For that reason, SONiC is not upgraded automatically and the user is encouraged to schedule a maintenance window for the upgrade.
To upgrade a switch on an existing deployment use the command kubectl fabric
switch reinstall --name switch-name. The switch will be gracefully shutdown,
and reboot into the ONIE boot environment for reinstallation. After the
switch boots the hedgehog agent will automatically restore the configuration
and traffic will resume without user intervention.