As partner is away this evening I am going to enjoy myself by hacking  and exploring some (loud) switches.

And apparently it’s already
 and 🍕 time to fuel this session \o/

status report:

- pizza annihilated!
- wine consumed!
- switch borked!
- switch recovered!
- much learning and fun is being had

and we're not done yet.

I learned a few things about #Arista switches in the process.

- there's a full linux OS underneath, you can run anything on it, including plain bash
- the `aboot` loader also has bash

- there are 2 versions of the aboot loader with different zip formats used for loading EOS
- I couldn't upgrade the older boot loader to a newer one
- but you can repackage the newer one in the older format yourself

Their API & config setup is a pleasure to use in comparison to the fs.com ones I've got locally. Much more accessible and comprehensive documentation.

@dch as far as I remember in the early 2010s, the folks at living social ran chef clients on their Arista switches for config management and it absolutely blew my mind
@mrtazz I’m looking at something like cfengine for this - lightweight runtime, single static binary, constant convergence
@dch @mrtazz I so want to build this. I am so tired of everything.
@klimpong @dch this is my private safe space playground where I go whenever I think "this can't be that hard to build in a non terrible way". As you can tell it also isn't that easy 😆🙃
@mrtazz @dch Wann converge legal???
@mrtazz @dch memory safe space* 😁
@klimpong me too, me too… why not just use cfengine? Or have you seen the incredibly cool but staggeringly badly named https://mgmtconfig.com/ | https://github.com/purpleidea/mgmt ?
@mrtazz
Home

@dch this looks very interesting. The docs are confusing, but the simplicity is really appealing. Thanks for sharing!

I can imagine attaching mgmtconfig files to my blog tutorials or just keep a collection for common stuff that I configure on my servers (ssh, nftables, nginx, etc.)

@klimpong @mrtazz

@i @dch @mrtazz yes, I was not aware of mgmt either.

As for cfengine, I had no idea it was still a thing. Haven’t used it in 20 years. 😅

@i @dch @mrtazz … and re: cfengine: I don’t want the server/agent/client model. Was a big fan of how chef-solo worked.

I’ll have a look at mgmt. But I want an adhoc exec model with sensible defaults and idempotency, then if I can use an actual programming language instead of yaml that’s a big plus.

Ansible could be good, if it didn’t require python on the node to interpret your instructions while it runs. I also find it’s tedious to stay on top of any development.

@klimpong @i @mrtazz I used not to be fond of cfengine syntax but after a decade of yaml-inflicted pain it looks a lot less intimidating.
@dch @i @mrtazz I have some go that’s similar to how Ansible works, but never get around to building it into a proper library for re-use. But it lets me describe what I need with actual code that compiles.