Life update

So I was going to post this on facebook.. but then no. I barely use facebook these days, and there’s little value to dropping any more data into that sinkhole.

I might’ve posted it on reddit, but it’s a slice of life kind of post, and I don’t really want to expose that for cross referencing, I already give enough life details by accident.

I might’ve posted on one of the new sites, post.news, etc, but they’re really new to me, and I don’t know that I want to start doing that somewhere I may not stay.

So, here I am.

I have this week off. It’s the first time in a while I’ve had this many days off, and it’s been fantastic.  I’ve continued my efforts to replace all of the initial network wiring I did .. back in 2014… when we got the house.  Yeah, I know, keeping hack jobs is bad karma, but it’s been working, so it was hard to justify changing it.

I have maybe 2 or 3 more network cables to replace, then I’m done with that kind of wizardry for the near term.

I have a patch panel coming for the main rack.. getting it in place will require more than a few changes to the rack layout, I’m not even starting that until mid/late January however.

I’ve discovered the bathroom counters we JUST had replaced.. suck.  MDF anywhere near water is a bad idea.  I had a bad feeling, but I got sucked into that sunk costs fallacy, and didn’t cancel that part of the work before it went in.

Now, we pay for it twice I guess.  Second time will be with Floform, who did our kitchen counter (and wow, amazing).

Also need to replace the garage door this year – I’ve put it off and put it off, but I really shouldn’t wait until I don’t have a choice.  I have a few companies in mind to call this spring to get quotes from, we’ll be doing one of them for sure by summer.

We also need to again look at a new washer/dryer — these ones are occasionally frustrating, and the dryer is starting to sound like it’s wearing out.  A not surprising expense, they only seem to last a handful of years, and we use them every day, sometimes several times a day.

I have additionally considered getting permanent A/C for our bedroom — I think that’s going to slip a year, but I do want to make it happen. Portable units .. work, but they are bulky and somewhat loud.

Similarly, I have a plan to get our windows replaced – they’re not outside of their lifespan yet, but some are in less than great shape, and better to do them while we can still afford it.

Work is .. well, working out.  Some future plans are slowly coming together – winning the lottery would help, but in the meantime the slow path is still progress.

Puppet to saltstack

With Perforce acquiring Puppet, I finally found the motivation required to really look at my configuration management system and imagine replacing it.

Saltstack came up as an option. I almost immediately started to appreciate how easily you could schedule a run, run on a minion, or trigger a minion run from a master. Being able to target specific commands or sls files is amazing.

I was a bit shocked at how few manuals are out there, and how most of them were written ~2014. The prebuilt formulas are also a bit deprecated, and in some cases they’re just completely busted.

Still, the tools work. The docs at saltstack are good – not perfect (some items are mentioned briefly but not detailed), but still good enough to serve.

As of today, I have 51 formulas – about 30 of those are community formulas I forked to either a) make the code function at all b) add support for more recent versions and config settings or c) cover my specific edge cases.

At this point saltstack manages 17 hosts (including itself). It manages configs for powerdns, zabbix, telegraf, samba, nfs .. and my entire mail suite.

The biggest challenge I faced was inertia – this kept me from converting earlier as well. Salt applies configs for a minimum of 200 items per host. This is up to 400 on some very complicated hosts .. and all of those pieces required configuration, be it SLS files, pillar, or grains.

Similarly though, once I’d reached a certain point in this journey, inertia started working with me. I wanted to trial loki and promtail — it took about 30 minutes to write a formula for promtail to call into loki. It’ll take seconds to roll that out to my hosts.

It took about 3 months of casual tinkering to get the components duplicated out of puppet and running on salt. When I cut over, I simply removed and purged puppet, and ran the salt bootstrap. A few minor errors popped up, but by this point I knew how to fix them.

A note, I actually deviated a bit from the norm. I went with Pillarstack over pillar for most of my configuration. I found the yaml syntax did what I needed, and the very few places I needed SLS, I used pillar. It works.

I’m a real fan of how lists are processed *in order*, so my list of roles for a given host in pillarstack apply in that order, every time. Puppet would do them consistently for a given host, but not identically across hosts.

I’m a fan of how you can piggyback another value or value set onto an existing setting in pillarstack (for example add host specific path to a common list of paths for backups)

I’m definitely not using Salt to it’s limits, there are whole areas which it supports that I haven’t touched. I also don’t use (don’t currently need) separate salt environments, though it would be pretty handy if this managing a product, instead of my lab.

It was a lot of effort, but it was worth it.

Saltstack adventures

Still working through Saltstack. Definitely a small community at work on this, but pretty regular software updates. In some ways it reminds me of Ansible and how it can be challenging to find a bit of prebuilt boilerplate to meet a specific need — I’ve been a bit spoiled in that regard with Puppet.

That said, I’ve been making good progress. I have a minimum-spec list of things I need this to do, and every day I’m able to cross off another one. I’ll admit I’m quite drawn to a client-server model that’s *push* and *pull*, not just one or the other. I’m not sure why it’s not more popular, that combination alone makes it tremendously appealing to me.
It’ll still be some time before I try applying this to any of my working hosts, and some (like my mailserver) will be a massive undertaking.

It’s taken a bit to get semi-comfortable with Jinja templating, but it’s similar in many regards to ERB, so other than how ugly each looks prior to processing, I have no real complaints.

I did have to discover the difference between {{ var }}, {{ var | json }}, and {{ var | yaml }} — which for ordered lists comes out as [‘var’], [“var”], and [var] respectively. Yes, I put that here so I can find it again later 🙂

Old Grey

Old grey kitty came by today. A good thing too, it’s been brutally cold out, and she’s a feral.

Life hasn’t been easy for her. Originally she and old black were constant companions, sparring with young black.
 
Someone poisoned old black with antifreeze a few years ago, and we found him cold, in one of the safe spaces we’d built for them.
 
We brought him to be cremated, and then it was old grey and young black, joined by young grey. Nobody got along, really, though eventually young black and old grey stopped fighting as much. Then young black got sick a few times, then vanished. We know what that means.
 
Old grey and young grey actively dislike each other, and they fight enough that they come back limping at times. We still feed them both.
 
At this point old grey has used our yard as home base for .. 3 years now? We’ve had a few heartbreaking moments early on where we saw her sitting covered in snow.. and we started supplying homes. There’s .. 3 wooden cat houses (with foam insulation), 2 insulated boxes packed with shredded paper, an insulated popup cat house, and a cat tower outside — with hopes that these will provide enough chances for survival.
 
I hadn’t seen old grey much for the last few days though, and the last time she’d come by it was just to have a little water — no food.
Today she stayed longer, and ate some food.  It wasn’t as much as I’d hoped, but it was something.
Feral cats have a hard, short life on average.  We are doing a little to make those lives longer, and maybe a bit less harsh.
Tomorrow I’m going to see if we can’t get her to eat a bit more. Maybe something warm?  I added more padding to one of the houses today as well, and I saw her check it out.
I hope this helps.

A moment of mortality

I’ve been pondering the end.  Not the end of all things, but my own personal end.

I’m not considering ending things before their time (or perhaps before life simply can’t continue).  I have read a few existentialist writings recently, which have me imagining the last moment, and then the moment after.

People have documented their near death experiences, and ignoring for a moment the ones where misfiring synapses caused hallucinations, the rest seem to generally agree that there’s nothing.

Not ‘oh I’m alone in a dark place‘.  No.  Nothing.  A complete absence not only of things, but of thought, of awareness.  I can liken this to the last time I had to go in for surgery.

I was there breathing, they were counting down, then it was hours later.  I remember nothing.  I dreamt nothing.  I thought nothing.  I’d say that I wasn’t .. anything, for that period of time.  I can only imagine the end is like that.  Nothing to miss, because there’s nothing at all, not even me.

This has me wondering now about several things.  My mind reels considering billions of lights just like mine, but going out all the time; their lives as important to them as my own, their endings also vanishing into silence.

I wonder about my own end.  I wonder if I’ll have the strength to say ‘this is enough’ when the machine fails, and to step off into the dark.  I honestly don’t know if I’m more afraid of going, or being gone.

I wonder if I’m using this time well enough.  How do I quantify that? Who judges?  I already know I’m going to leave precious little behind, and I don’t know how I’d change that.  I don’t know if I want to, or if I even should want to.  I wonder if I should be more upset that we leave no children behind, or glad that we’re not adding to a generation which might not survive to full term.

I’ll admit the fear comes back from time to time.  It returns now and takes up residence in the animal part of my brain, demanding an answer – anything to stem the flow of days and prevent the end.  I am reminded again why people believe in impossible things against all proof.  A beautiful lie is often more palatable than a painful truth.

I’ll make peace with this.  Somehow.  I’ll continue to enjoy what I have, and try not to let the end spoil the middle.

It’s been a few months

September was hard.

We lived with the quiet for a little while, until catching a dark shadow out of the corner of our eye and finding it to be .. just a shadow became intolerable.

We reached out to the rescue society who brought us Shamus and Bongo so many years ago.  They had two kittens we chose and got (extremely rapidly), Atlas and Ophelia.

They had a rough start as well, with stomach issues that persisted for .. longer than we wanted.  We managed to work through them just in time for their spay/neuter appointments, so really, it was sometime in november before things stopped being completely insane.

Bundles of joy, that’s what they are.  Atlas is a gentle giant, and at 8 months old is bigger than Shamus was at full growth, and I suspect he has some more growing to do.  His sister Ophelia is much smaller, she was the runt.  She makes up for it with a very dominant personality.

Her favorite position is ‘tree branch’, where she’s draped across one of my arms as I pack her around.  I’ve somehow managed to become her favorite (I’m not complaining), just as Atlas has chosen Christina.

We also had a number of tasks pop up in rapid succession this winter.

Our washer started acting up, so we replaced both washer and dryer.  (The dryer ended up needing service as it was installed off center and was knocking, but that ended up working out)

We replaced our hot water tank.  The old one was showing some rust in places that made us uncomfortable.  The new one installed relatively easily.  It’s much bigger.  We haven’t run out of hot water since.  The installation job was ugly however, and we received no satisfaction from even the CEO of the company who did the work… we won’t be using them again.

We had the tree in our front yard trimmed.  Big heavy branches, and it was getting uncomfortably close to the power lines.  The tree trimmers did what they could, but it’s still a bit funky looking.  Not their fault.  Our timing was great as there have been several large windstorms since.

We finally got tired of our kitchen sink, with the rotting out countertop which made the faucet wiggle and impossible to tighten.  We had the countertop and sink replaced, the counter with quartz , and the double basin sink with a single (huge) basin.  That hit a little snag as well, some of the trim pieces didn’t ship out of Quebec in time for our install, so next week the work completes.  No complaints however, as the company doing this was amazingly responsive and the installers were the most professional I’ve seen.

We still have bathroom renovations pending.  A complete replacement downstairs, a new sink and shower in the main bath, and a new sink in the ensuite.  Crazy money, but I keep reminding myself we’ll only do this once more, so we may as well make it count.

After this we’ll only have a garage door to replace, a retaining wall to get rebuilt, and an ensuite bathtub to replace.  Those’ll be in the next 5 years or so.  Everything else is just maintenance – repairing a tap, getting the house professionally washed, etc.

I’m keeping ahead of some of the worst bits of winter.  I don’t think I’ll ever deal with it well, even with regular doses of vitamin d (which are helping).  How many years did I not realize this?  A lot of hard years that could’ve been easier.  They’re in the rear view now, can’t change them.

 

Next day, through the gauntlet.

We spent today busy. Rightly so, yesterday was a bad day. Today we painted the inside of the new shed. White. Christina had already given it a coat with some paint we had left over, but she didn’t have quite enough. This time we both went to town on it, and .. well, it’s white now!
She also painted the door (red). We have been cleaning up .. mementos as part of getting through that ‘punched in the gut’ feeling you get when you find an object that triggers a memory. Mostly that’s all cleaned up.
We’ve also both agreed that hell no, it’s too lonely just us. We’re going to see if we can’t adopt another pair of kittens. Turns out the rescue society we found Shamus and Bongo at still exists, and they’re still rescuing cats in need. We’ll go that route again.
That gives us something to look forward to, which is a heck of a lot better than sitting here looking backward and second guessing signs and clues, and regretting our losses.
That doesn’t mean regret doesn’t still happen, but at least it’s not the only thing.

My poor Bongo.

I’m glad this is a long weekend, I don’t expect I’ll be good for much for a few days
Tomorrow afternoon we bring Boo back to the vet. Final trip. I am witness to how accurate the vet was. He said weeks, but in just a few days Boo has started limping more, drooling, and yowling. These are new things, and they highlight how goddamn fast this is moving.
Weeks, maybe. Horrible weeks.
It’s been 13 years and 3 homes. Of the 7 animals we started with, he’s the last. Our final bright spark. So much bigger than the tiny kitten who hid behind the toilet shaking in fear when we brought him home.
I will miss him.

2020 is the worst year ever.

WordPress is being junky with this post.

It’s helping to replace my grief with rage.

Bongo has cancer.  We brought him in to get checked for rapid weight loss, but now we are looking at at most weeks before he dies of this shit.

We’re bringing him back on friday so they can euthanize him, which is a damn sight better than dying in agony, which is apparently the only other option.  He’s already been too sick for surgery, he probably wouldn’t make it through this, and if he did his immune system is suppressed (intentionally due to an autoimmune disorder), so the first infection he got would do him in.

I hate this.

I hate it.

My poor cat.

I have to write something, so that Rosey isn’t the first story I see.

I haven’t written in a while, and coming back to discover my grief when Rosey died is a quiet punch in the gut.

I know this post isn’t much better, I’m still referencing it, but what can you expect?  It’s still raw.  I still walk into the room and expect her to be there.  I make a noise and turn to see if it woke her.

I’ll get past it.  I don’t think I’ll get over it.  It’s almost Bongo’s time as well, he’s getting thinner pretty rapidly, and he doesn’t eat much at all.  All of the steroids in his system (that prevent the autoimmune disorder from eating him alive) have consequences that are inevitable.

I’m hoping we take in 2021 with him, but I’m not certain.  I find myself wondering “How bad will he need to be before we bring him in?”.

Leaving him to eventually expire is not an option.  I shouldn’t have left Rosey to that fate.  I won’t leave Bongo to fight for one more breath.  It was agonizing to watch, I can’t bear to subject our Boo to that as well.

That does of course lead to the thought that I’ll probably want to find a similar service for *me* when everything finally breaks down.  There’s no victory in trying to fight inevitability.

I still have a long time before I need to consider that.  If I’m lucky, maybe 40 years?  That’ll be enough time I think.