David Duffey <mailto:david.duf...@canonical.com>
October 18, 2016 at 11:45 AM


On Tue, Oct 18, 2016 at 1:34 PM, Carlos Cardenas <car...@cumulusnetworks.com <mailto:car...@cumulusnetworks.com>> wrote:

    David,

    I think what you are describing are some good points on the
    resource constraints on the WAPs.

    However, saying that using ONIE increases your disk storage by
    1.5GB is over the top.


Hi Carlos, the 2GB statement / recommended minimum requirement did not come from me nor was it in reference to Canonical / Ubuntu. On the call I reported 512MB of storage recommended minimum requirement for Ubuntu Core.
Yes the 2G statement came from me based on how ONL installs currently.

128M for ONIE
128M for ONL-BOOT
128M for ONL-CONFIG
400+M for ONL-IMAGES
and the rest for ONL-DATA

ONL images are around 120M (but can be bigger depending on the system), so there is space for two on images. If you install ONL to disk it takes about 700MB right now. Putting all those numbers together, we get > 1G so 2G since those are common flash disk sizes. If you don't install ONL to disk, you can run with < 1G.

    For example, take a look at the Edgecore 4600, it's an old PPC/BCM
    Apollo2 1G switch with 1GB of Flash and 2GB of RAM and one of the
    first switches to support ONIE.  Grant it, it's more than the
    current WAPs but ONIE/NOS functionality is just fine (even during
    installation).  ONIE is just 4MB on this box.

    I think what you are describing (limitations and constraints) is
    an artifact with the Ubuntu installer more than anything.  Would
    you agree?


No, the _Ubuntu_ installer does not have this problem.

To split hairs, the current onie-installer that installs Ubuntu has this limitation/constraints but is not unique to Ubuntu. (Again, this was NOT brought up by Canonical/Ubuntu, but am following up to say that it affects the onie-installer for Ubuntu as well).

    And yes, ONIE is a requirement for OCP hardware. (Until such time
    something better replaces it)


I'm not touching that one with a ten-foot-pole :)






    +--+
    Carlos

    On Tue, Oct 18, 2016 at 11:09 AM, David Duffey
    <david.duf...@canonical.com <mailto:david.duf...@canonical.com>>
    wrote:


        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/
        
<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 <tel:%2B1-512-850-6776> (work),
        +1-512-287-4289 <tel:%2B1-512-287-4289> (work fax)

        _______________________________________________
        opencompute-networking mailing list
        Unsubscribe:
        http://lists.opencompute.org/mailman/options/opencompute-networking
        <http://lists.opencompute.org/mailman/options/opencompute-networking>

        opencompute-networking@lists.opencompute.org
        <mailto:opencompute-networking@lists.opencompute.org>
        http://lists.opencompute.org/mailman/listinfo/opencompute-networking
        <http://lists.opencompute.org/mailman/listinfo/opencompute-networking>





--
David Duffey
+1-512-850-6776 (work), +1-512-287-4289 (work fax)
Carlos Cardenas <mailto:car...@cumulusnetworks.com>
October 18, 2016 at 11:34 AM
David,

I think what you are describing are some good points on the resource constraints on the WAPs.

However, saying that using ONIE increases your disk storage by 1.5GB is over the top.

For example, take a look at the Edgecore 4600, it's an old PPC/BCM Apollo2 1G switch with 1GB of Flash and 2GB of RAM and one of the first switches to support ONIE. Grant it, it's more than the current WAPs but ONIE/NOS functionality is just fine (even during installation). ONIE is just 4MB on this box.

I think what you are describing (limitations and constraints) is an artifact with the Ubuntu installer more than anything. Would you agree?

And yes, ONIE is a requirement for OCP hardware. (Until such time something better replaces it)





+--+
Carlos


David Duffey <mailto:david.duf...@canonical.com>
October 18, 2016 at 11:09 AM

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/ <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 <tel:%2B1-512-850-6776> (work), +1-512-287-4289 <tel:%2B1-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

_______________________________________________
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

Reply via email to