Zebra - OS Update - Large File Deployment - Low Bandwidth Locations

WW
Will Worland
Enterprise Holdings, Inc

Hey folks, looking for insights on deploying large OS update files (+1GB) for Zebra (7.x to 8.x) to locations with low bandwidth (DSL/T1) connections. 

We have a fleet of TC75x devices that are presently running Nougat and we need to update to Oreo soon. 

  • No local machine resources for Stage Now.
  • We've considered SD, USB on site, but would prefer not to go this route.
  • Looking for a low/zero touch solution.

We're working with Zebra to engineer an alternate solution, but thought I'd check to see if anyone has already dealt with this scenario. 

@Matt Dermody - thoughts?

6 years ago
Android
ANSWERS
MD
Matt Dermody Diamond Contributor
6 years ago

Hopefully you already are managing those TC75x on Nougat using AEDO? If not, you're going to have to migrate to AEDO in order to have them enrolled and managed in SOTI. I have upgraded countless Atlas devices (VC80x, MC3300, TC51, TC70x, etc) like the TC75x from Nougat to Oreo via SOTI but I've had to be on AEDO in the first place. DA based management is not currently possible, nor do I think it will every be on Zebra Oreo devices in SOTI.

Now, assuming you have the DA / DO management ironed out and you specifically are working on the file delivery problem then you have the following options.

- Use a File Sync Rule (NOT a Package to deliver the updates). If you want to limit bandwidth consumption you could possibly do one device at a time but that might be a time consuming process. 

OR

- If you have a local relay server of sorts, like an FTP server in each location, you can use a Zebra MX configuration to retrieve the files from a local server rather than from the SOTI server directly

OR

- Similar to using the Zebra MX profile you could attempt to leverage the SOTI FTP script. 

ftp Copies a file or directory from an ftp server ftp [get|mget|wget] [-r,-o] source destination

Where

  • get copies a file on the ftp server to the local computer
  • wget copies a file on the local computer to the ftp server
  • -r specifies recursive
  • -o specifies to override existing files

Example

To copy a file from ftp to local SD card on the device:

ftp get -o

To copy a folder from the device to ftp server:

ftp wget -o -r ftp:://user:password@server/folder 

And the TC75x are WAN /Cellular data capable. Can you not use the cellular data to pull the download since the T1 line won't cut it?

WW
Will Worland
6 years ago

Thanks Matt, they are already AEDO, but unfortunately, we do not have any local machines to use for MX or FTP functionality. 

There are a large amount of devices that are not cellular enabled and the ones that are, tend to be in poor coverage areas, so cellular is pretty much as bad as the local connections. 

Really appreciate the great response.  Hopefully Zebra will be able to help us engineer something.  We're going to ask them about possibly "chunking" the file or creating a "torrent" version of the file to make the data more manageable.

I'll let everyone know what we end up doing!

Best, 
Will

S
Scott
6 years ago

Is the concern just getting the files in place within a specific time frame? That you can't get the files staged at all due to interruptions?  Or, that you have to keep the bandwidth utilization below some value?

I've got a few locations with very low bandwidth but as long as I'm not in a hurry I just use a file sync rule to stage them.  I've tried several transfer mechanisms and ended up going back to file sync rules as the other methods don't handle interrupted transfers very well.  The file sync seems to do a better job of starting where it left off previously.

Do all of the remote devices have higher bandwidth to each other locally?  If so, as you mentioned, you could potentially put together a torrent based system.  Use an SD card to put the files on one device and then allow the other devices to feed off of that one.  Might take some time to get that set up though.  Good Luck.