Modding/upgrading Arista switches?

Discussion in 'Networking' started by oddball, May 18, 2018.

  1. WANg

    WANg Active Member

    Joined:
    Jun 10, 2018
    Messages:
    404
    Likes Received:
    147
    Well, that's the thing - I think most DCS7050QX-32S models are Crow (since it's first announced in late 2015 and pretty close to the Athlon II Neo EOL), but some of the early productions are Raven, at least to the point where they specify it. If you look at the filesystem on your switch where they specify the familial relationships for the NorCal family of switches, you'll see this:

    Code:
    find /usr/share/NorCal/ -type f -name "*.fdl" | xargs grep 7050QX-32S\"
    
    /usr/share/NorCal/ClearlakeCrowS1.fdl:baseSku = "DCS-7050QX-32S"
    /usr/share/NorCal/ClearlakeRavenS1.fdl:baseSku = "DCS-7050QX-32S"
    Arista definitely specified both boards as officially supported in the model.

    And yeah, the machine is called ClearLake(Crow|Raven). ClearLake switch (that's 32 QX/40GBit QSFP+ ports + 4 10GbE SFP+ ports in the S model) + (Crow|Raven) CPU/management board.

    As for whether non-ECC is kosher, that's an even trickier question. Technically the GX420CA APU can support both ECC and non-ECC consumer (aka desktop) DDR3/3L RAM, and in most installations that's usually 1.35v (whether it support 1.5v depends on the hardware implementation). The ECC is the unbuffered, unregistered type. I know that the APU has a built-in single channel RAM controller, and it's supposedly quad rank max. 4 and 8GB ECC RAM denominations will definitely work (since 8GB ECC RAM is shipped on the ClearLakePlusCrow models, that is, the DCS-7050QX2-32S).
    The thing I am not sure about is whether the APU can deal with 16GB DIMMs (since most implementors of GX420CA hardware like the HP t620 Plus will roll out dual DIMM slots, and in the case of the t620, 2 8GB laptop DIMMs will get it to 16GB max. @fossexplorer ordered a pair of 16GB SODIMMs, so if the RAM works on the t620 Plus, then we know that there is a chance of getting it to work on the Crow. This is useful since the Crows only have a single DIMM slot, and 16GB is a great amount for a switch.

    As for 1.35 versus 1.5? I am not 100% sure - you might have a revision that can do 1.35 and 1.5. I have a few 4GB DDR3 (1.5v) desktop DIMMs in the office, but I didn't have a chance to try it yet. As for non-ECC? I think @oddball said that he tried non-ECC and it worked, but registered RAM will puke. For toying around regular desktop DIMM will work, but if it's something you rely upon, I'll go ECC.
     
    #81
    Last edited: Nov 26, 2018
  2. spali

    spali New Member

    Joined:
    Nov 4, 2018
    Messages:
    22
    Likes Received:
    2
    The soldering points are on the board... so in theory it could also be possible to add a second slot. Did anyone made pictures of the bottom of the board? Usually this pins are not too small and I think it should be possible to solder it. But I don't know where to get a slot from ;)
    It's not clear if he spoke about the "normal" or the ECC registered. What I got during my researches... ECC registered is not compatible with ECC unregistered. I think if he would try ECC unregistered it would work as on mine. But I could be wrong.
     
    #82
  3. WANg

    WANg Active Member

    Joined:
    Jun 10, 2018
    Messages:
    404
    Likes Received:
    147
    You could, in theory. Just look through Mouser or Newark (the people behind Element14) for a 240 Pin DDR3 SODIMM socket, or you could pull it from a dead board. As for the entire RAM thing, he was referring to ECC unregistered. I looked through the datasheet for the GX420CA, and it specifically mentioned UDIMMs or SODIMMs, no RDIMMs, and I really doubt that the APU (optimized for embedded applications) baked in support for it.
     
    #83
    Last edited: Nov 26, 2018
  4. WANg

    WANg Active Member

    Joined:
    Jun 10, 2018
    Messages:
    404
    Likes Received:
    147
    Okay, so I can now confirm that why yes, the DCS7050QX-32S can take non-ECC RAM @ 1.5v. Managed to find a stick of HyperX Fury DDR3-1866 8GB RAM in a spare machine at work, and to my surprise, it seems to work just fine. I don't recommend using non-ECC for production, but if you don't mind your homelab going down once in awhile, this is probably okay. Next step is to hunt down some 16GB desktop DDR3L units and see how that one jives.

    [​IMG]

    Also, it looks like the 4 pin USB2 header works just fine with the 9 pin USB DOM connector. That's the Sandisk Cruzer yet again sticking out of the USB port. So there we go, how to avoid spending stupid money on something un-necessary (like a USB DOM).

    [​IMG]

    BTW, @Patrick, something funny with the forum software? Both photos on this posting looks fine on preview but only the top one seems to render correctly.
     
    #84
    Last edited: Nov 26, 2018
    spali and fohdeesha like this.
  5. fohdeesha

    fohdeesha Kaini Industries

    Joined:
    Nov 20, 2016
    Messages:
    980
    Likes Received:
    716
    got my M2 drive in and got EOS installed and booting off of it:

    Code:
    ##FORMAT M2
    ##like the USB DOM, it doesn't want partitions
    ##if you mkfs.ext4 to sda1 instead of sda, it complains on boot
    enable
    bash
    sudo umount /mnt/drive
    sudo mkfs.ext4 /dev/sda
    exit
    reload (save and confirm changes)
    It'll reboot, /mnt/drive will now be available in aboot and EOS. Back in EOS, run the install image script:

    Code:
    enable
    bash
    image-install -d /mnt/drive /mnt/usb1/EOS-4.21.2F.swi
    reboot
    it'll reboot the switch, now booting off the M2 SSD instead of the USB DOM. It definitely boots faster, however there's at least one (pretty big) caveat so far: it seems some of their python scripts, at least the reload script, do not like "dir" EOS installs:

    Code:
    7050QX-32S#reload
    
    % Internal error
    % To see the details of this error, run the command 'show error 0'
    
    Code:
    =============== Exception raised in 'ConfigAgent     -d -i --dlopen -p -f  -l libLoadDynamicLibs.so procmgr libProcMgrSetup.so --daemonize ' (PID 1401; PPID 1156) ===============
    Local variables by frame (innermost frame last):
    
      File "/usr/lib/python2.7/site-packages/Cli.py", line 295, in runFrontendCmds
                  currThread = <CliThread(Thread-5, started -902825152)>
                     excInfo = (<type 'exceptions.ValueError'>, ValueError("Unknown URL scheme: 'dir:'",), <traceback object at 0xcbcb6694>)
    
    That's the only command I've found so far that errors out after a dir install, but I haven't tried a whole lot (it's 3am here). Who knows. I'll poke around more tomorrow after some sleep
     
    #85
    spali likes this.
  6. spali

    spali New Member

    Joined:
    Nov 4, 2018
    Messages:
    22
    Likes Received:
    2
    Got my SSD too.

    for me it worked, but I created a DOS partition table first with fdisk. Not sure if this makes the difference. It does not complain in my case.
    updated: it did during the first boot, but now I don't get any complains anymore.
    updated3: tried some other scenarios, it does not complain if you boot from the drive, but you are right, it complains about the drive with a partition table if you boot from image on flash.
    So I suggest to format it as you did (the whole drive as ext4) without a partition table.

    Code:
    EOS Image on flash
    ------------------
    0:13    Press Control-C now to enter Aboot shell
    1:10    Switching rootfs
    2:18    Starting Power OCompleting EOS initialization
    3:33    console login
    4:13    green led
    
    Unpacked EOS on SSD (drive)
    ---------------------------
    0:11    Press Control-C now to enter Aboot shell
    0:17    Switching rootfs
    0:59    Starting Power OCompleting EOS initialization
    2:00    Login prompt on console
    2:35    Leds switching from red to green
    
    EOS Omage on SSD (drive)
    ---------------------------
    0:11    Press Control-C now to enter Aboot shell
    0:30    Switching rootfs
    1:40    Starting Power OCompleting EOS initialization
    2:54    Login prompt on console
    3:34    Leds switching from red to green
    the last variant in the list is booting with the image file on the SSD but packed (drive:EOS-4.21.2F.swi). It's also a bit faster. I assume it saves the time due faster unpack of the image on the ssd just before the switch to the unpacked rootfs.

    I can reproduce your error with the reload command.
    I also noticed, booting from unpacked image seems to have something different in the filesystem. The /usr/sbin/image-install is not there if you boot from a directory. Not yet figured out what's the reason for this behavior.

    updated2: reload does also not work with drive:EOS-4.21.2F.swi. It does not throw an error, but just do a logout.
    updated3: I looked at the scripts that throws the error. They do some checks on the boot-config and the image specified. They use a library that just does not support "dir:" format. So this could be theoretically patched.
     
    #86
    Last edited: Nov 28, 2018
    fohdeesha likes this.
  7. oddball

    oddball Active Member

    Joined:
    May 18, 2018
    Messages:
    121
    Likes Received:
    33
    In a wild twist of fate I was able to find a 7150S-24 on eBay that the seller claimed had no internals (drive, software, plus PSU/fans) for $200. Turns out they had no idea what they were selling. Switch was intact sans psu/fans, which I swapped from a 7124sx.

    I had modded my 7124 with a 16GB USB DOM and a 128GB SATA SSD and 8GB of RAM. Pulled all out, dumped in the 7150 and it booted like a champ. Since both switches have 24 10G ports even the configuration was pulled over.

    What's interesting about this switch is the Agileports. They allow you to group 4x 10G into a single 40g port. The switch uses an Intel chip and can convert from 10G to 40G in cut through mode without dropping to store and forward. So in theory you can get 10G to 40G speed change at 350ns in latency.

    So now I will have a 7124sx without psu/fans I need to sell... I'll be racking the 7150 and connecting it to the 7050qx-32s' this week hopefully.
     
    #87
  8. WANg

    WANg Active Member

    Joined:
    Jun 10, 2018
    Messages:
    404
    Likes Received:
    147
    #88
Similar Threads: Modding/upgrading Arista
Forum Title Date
Networking Arista - disable STP on interface/port Jan 10, 2019
Networking Arista 7050QX - hard reboot and packet-storm Sep 20, 2018
Networking Arista DCS-7050QX-32S, 4-SFP+ ports - can't configure Sep 15, 2018
Networking Arista EOS for MLAG Upgrade Sep 11, 2018
Networking Arista 7050 - Which Firmware are you using Sep 3, 2018

Share This Page