On the CBW call yesterday it was asked what specs the operating systems would target for APs and there was a range of feedback from 512M of storage (Ubuntu Core) to 2G of storage (including ONIE). Ubuntu Core itself recommends 512M of storage and 256M of ram (including OpenWRT.snap), but requires more when using ONIE, probably similar to other solutions mentioned on the call. I went back and looked into it a bit more so for those interested in the numbers ...
In theory we could do something as low as 128M of storage, but it would be extremely tight and not allow for expected / normal behavior. In the case of Ubuntu Core you would lose the functionality of being able to do atomic transnational updates with roll-backs. It would force you into a single-function, non-extensible, firmware-like experience. In addition, this is "in theory" and would require additional engineering work to get to that small (Ubuntu Core installed is about 150M now depending on the target platform). >From the Ubuntu Core Side, about 150M+ is used by the kernel.snap and os.snap (roughly 50/50). In order to do transactional updates with rollback of these two snaps, double that to 300M+ for the base distribution. Then you'll want to leave some room to install applications and additional functionality, getting us to the nice round number of 512M. For reference, the OpenWrt.snap package is 3M in size. You can install that by running "sudo snap install --devmode --edge openwrt" I have been doing this on a Rasberry Pi3 Ubuntu Core image and it has been working well. Once installed it does not take any additional space (it is a compressed squashfs). Double that to 6M for updates/rollbacks and a few KB for local configuration, etc. This is small because it leverages the running Ubuntu Core kernel. To give another example of disk space usage, installing nmap.deb on classic Ubuntu takes up about 30MB of disk space including unique-to-only-nmap dependencies. Installing nmap.snap takes up about 6MB of diskspace (including all dependencies). So for most environments you'll use/need less disk space with Ubuntu Core, including add-on software, than classic Linux despite the inclusion of dependencies into the snap. Images will start to show up here: http://cdimage.ubuntu. com/ubuntu-core/xenial/daily-preinstalled/current/ If you want Pi3 images they will show up above "soon", or e-mail me and I can point you to where they are currently hosted, and I can also provide you scripts to convert Ubuntu Core images to ONIE installable-images. Anyone can start building kernel snaps, Ubuntu Core images, snaps, and ONIE compatible images today. 256M memory + 512M storage minimum recommendations for Ubuntu assumes locally installed or PXE-installed. This is currently how we have been installing on wifi/AP devices (developer focused devices like the Pi3 or enterprise devices like the Dell IoT Gateway). If using ONIE there are a couple of additional requirements, you will need space for the ONIE kernel, install environment, etc, on disk. The onie-installer as currently written downloads the NOS image to memory, expands it, then writes to disk. We need about 750MB of free usable memory (after ONIE), so at least ~1G of memory but I have not tested this myself and may need more as all the switches I've ONIE-installed to have had more than this. In theory this could be reduced if we ported the native OS installer streaming-to-disk functionality to ONIE (instead of using the ONIE template we based off of). I think it is fair to point out that ONIE is one supported bootloader for OCP hardware but it is not a requirement. David -- David Duffey +1-512-850-6776 (work), +1-512-287-4289 (work fax)
_______________________________________________ opencompute-networking mailing list Unsubscribe: http://lists.opencompute.org/mailman/options/opencompute-networking opencompute-networking@lists.opencompute.org http://lists.opencompute.org/mailman/listinfo/opencompute-networking