diff options
| -rw-r--r-- | about/resources.html | 208 | ||||
| -rw-r--r-- | gemfeed/2025-07-14-f3s-kubernetes-with-freebsd-part-6.html | 66 | ||||
| -rw-r--r-- | gemfeed/atom.xml | 70 | ||||
| -rw-r--r-- | index.html | 2 | ||||
| -rw-r--r-- | uptime-stats.html | 50 |
5 files changed, 262 insertions, 134 deletions
diff --git a/about/resources.html b/about/resources.html index ea534198..a05027a2 100644 --- a/about/resources.html +++ b/about/resources.html @@ -50,112 +50,112 @@ <span>In random order:</span><br /> <br /> <ul> -<li>Raku Fundamentals; Moritz Lenz; Apress</li> -<li>Amazon Web Services in Action; Michael Wittig and Andreas Wittig; Manning Publications</li> -<li>Terraform Cookbook; Mikael Krief; Packt Publishing</li> -<li>Developing Games in Java; David Brackeen and others...; New Riders</li> -<li>DevOps And Site Reliability Engineering Handbook; Stephen Fleming; Audible</li> +<li>Think Raku (aka Think Perl 6); Laurent Rosenfeld, Allen B. Downey; O'Reilly</li> +<li>100 Go Mistakes and How to Avoid Them; Teiva Harsanyi; Manning Publications</li> <li>Ultimate Go Notebook; Bill Kennedy</li> +<li>Systems Performance Tuning; Gian-Paolo D. Musumeci and others...; O'Reilly</li> +<li>Hands-on Infrastructure Monitoring with Prometheus; Joel Bastos, Pedro Araujo; Packt </li> +<li>The Pragmatic Programmer; David Thomas; Addison-Wesley</li> +<li>21st Century C: C Tips from the New School; Ben Klemens; O'Reilly</li> <li>The Docker Book; James Turnbull; Kindle</li> -<li>The Practise of System and Network Administration; Thomas A. Limoncelli, Christina J. Hogan, Strata R. Chalup; Addison-Wesley Professional Pro Git; Scott Chacon, Ben Straub; Apress</li> -<li>The DevOps Handbook; Gene Kim, Jez Humble, Patrick Debois, John Willis; Audible</li> +<li>Programming Ruby 3.3 (5th Edition); Noel Rappin, with Dave Thomas; The Pragmatic Bookshelf</li> +<li>Terraform Cookbook; Mikael Krief; Packt Publishing</li> +<li>Leanring eBPF; Liz Rice; O'Reilly</li> +<li>Clusterbau mit Linux-HA; Michael Schwartzkopff; O'Reilly</li> <li>Kubernetes Cookbook; Sameer Naik, Sébastien Goasguen, Jonathan Michaux; O'Reilly</li> -<li>The KCNA (Kubernetes and Cloud Native Associate) Book; Nigel Poulton</li> -<li>97 things every SRE should know; Emil Stolarsky, Jaime Woo; O'Reilly</li> -<li>Modern Perl; Chromatic ; Onyx Neon Press</li> -<li>Go Brain Teasers - Exercise Your Mind; Miki Tebeka; The Pragmatic Programmers</li> -<li>DNS and BIND; Cricket Liu; O'Reilly</li> +<li>Funktionale Programmierung; Peter Pepper; Springer</li> +<li>DevOps And Site Reliability Engineering Handbook; Stephen Fleming; Audible</li> +<li>Raku Fundamentals; Moritz Lenz; Apress</li> <li>The Go Programming Language; Alan A. A. Donovan; Addison-Wesley Professional</li> -<li>Programming Perl aka "The Camel Book"; Tom Christiansen, brian d foy, Larry Wall & Jon Orwant; O'Reilly</li> +<li>The Practise of System and Network Administration; Thomas A. Limoncelli, Christina J. Hogan, Strata R. Chalup; Addison-Wesley Professional Pro Git; Scott Chacon, Ben Straub; Apress</li> +<li>Polished Ruby Programming; Jeremy Evans; Packt Publishing</li> +<li>DNS and BIND; Cricket Liu; O'Reilly</li> +<li>Systemprogrammierung in Go; Frank Müller; dpunkt</li> <li>Distributed Systems: Principles and Paradigms; Andrew S. Tanenbaum; Pearson</li> -<li>Tmux 2: Productive Mouse-free Development; Brain P. Hogan; The Pragmatic Programmers </li> -<li>21st Century C: C Tips from the New School; Ben Klemens; O'Reilly</li> -<li>Effective Java; Joshua Bloch; Addison-Wesley Professional</li> -<li>Effective awk programming; Arnold Robbins; O'Reilly</li> -<li>100 Go Mistakes and How to Avoid Them; Teiva Harsanyi; Manning Publications</li> +<li>C++ Programming Language; Bjarne Stroustrup;</li> <li>Seeking SRE: Conversations About Running Production Systems at Scale; David N. Blank-Edelman; eBook</li> -<li>Learn You Some Erlang for Great Good; Fred Herbert; No Starch Press</li> -<li>The Kubernetes Book; Nigel Poulton; Unabridged Audiobook</li> -<li>Object-Oriented Programming with ANSI-C; Axel-Tobias Schreiner</li> -<li>Think Raku (aka Think Perl 6); Laurent Rosenfeld, Allen B. Downey; O'Reilly</li> -<li>Clusterbau mit Linux-HA; Michael Schwartzkopff; O'Reilly</li> -<li>Java ist auch eine Insel; Christian Ullenboom; </li> -<li>Hands-on Infrastructure Monitoring with Prometheus; Joel Bastos, Pedro Araujo; Packt </li> -<li>Higher Order Perl; Mark Dominus; Morgan Kaufmann</li> -<li>Funktionale Programmierung; Peter Pepper; Springer</li> -<li>Systemprogrammierung in Go; Frank Müller; dpunkt</li> -<li>Leanring eBPF; Liz Rice; O'Reilly</li> +<li>Amazon Web Services in Action; Michael Wittig and Andreas Wittig; Manning Publications</li> <li>Raku Recipes; J.J. Merelo; Apress</li> -<li>C++ Programming Language; Bjarne Stroustrup;</li> +<li>Object-Oriented Programming with ANSI-C; Axel-Tobias Schreiner</li> <li>Concurrency in Go; Katherine Cox-Buday; O'Reilly</li> -<li>Chaos Engineering - System Resiliency in Practice; Casey Rosenthal and Nora Jones; eBook</li> +<li>97 things every SRE should know; Emil Stolarsky, Jaime Woo; O'Reilly</li> +<li>Java ist auch eine Insel; Christian Ullenboom; </li> +<li>Site Reliability Engineering; How Google runs production systems; O'Reilly</li> +<li>Modern Perl; Chromatic ; Onyx Neon Press</li> +<li>Tmux 2: Productive Mouse-free Development; Brain P. Hogan; The Pragmatic Programmers </li> +<li>Pro Puppet; James Turnbull, Jeffrey McCune; Apress</li> <li>Perl New Features; Joshua McAdams, brian d foy; Perl School</li> -<li>Systems Performance Tuning; Gian-Paolo D. Musumeci and others...; O'Reilly</li> +<li>Effective Java; Joshua Bloch; Addison-Wesley Professional</li> <li>Data Science at the Command Line; Jeroen Janssens; O'Reilly</li> -<li>Pro Puppet; James Turnbull, Jeffrey McCune; Apress</li> -<li>Site Reliability Engineering; How Google runs production systems; O'Reilly</li> -<li>Polished Ruby Programming; Jeremy Evans; Packt Publishing</li> <li>Learn You a Haskell for Great Good!; Miran Lipovaca; No Starch Press</li> -<li>The Pragmatic Programmer; David Thomas; Addison-Wesley</li> -<li>Programming Ruby 3.3 (5th Edition); Noel Rappin, with Dave Thomas; The Pragmatic Bookshelf</li> +<li>Go Brain Teasers - Exercise Your Mind; Miki Tebeka; The Pragmatic Programmers</li> +<li>The Kubernetes Book; Nigel Poulton; Unabridged Audiobook</li> +<li>Effective awk programming; Arnold Robbins; O'Reilly</li> +<li>Programming Perl aka "The Camel Book"; Tom Christiansen, brian d foy, Larry Wall & Jon Orwant; O'Reilly</li> +<li>Higher Order Perl; Mark Dominus; Morgan Kaufmann</li> +<li>Learn You Some Erlang for Great Good; Fred Herbert; No Starch Press</li> +<li>Developing Games in Java; David Brackeen and others...; New Riders</li> +<li>The DevOps Handbook; Gene Kim, Jez Humble, Patrick Debois, John Willis; Audible</li> +<li>The KCNA (Kubernetes and Cloud Native Associate) Book; Nigel Poulton</li> +<li>Chaos Engineering - System Resiliency in Practice; Casey Rosenthal and Nora Jones; eBook</li> </ul><br /> <h2 style='display: inline' id='technical-references'>Technical references</h2><br /> <br /> <span>I didn't read them from the beginning to the end, but I am using them to look up things. The books are in random order:</span><br /> <br /> <ul> +<li>Algorithms; Robert Sedgewick, Kevin Wayne; Addison Wesley</li> +<li>BPF Performance Tools - Linux System and Application Observability, Brendan Gregg; Addison Wesley</li> +<li>Relayd and Httpd Mastery; Michael W Lucas</li> +<li>The Linux Programming Interface; Michael Kerrisk; No Starch Press </li> <li>Understanding the Linux Kernel; Daniel P. Bovet, Marco Cesati; O'Reilly</li> <li>Groovy Kurz & Gut; Joerg Staudemeier; O'Reilly</li> -<li>Go: Design Patterns for Real-World Projects; Mat Ryer; Packt</li> <li>Implementing Service Level Objectives; Alex Hidalgo; O'Reilly</li> -<li>Relayd and Httpd Mastery; Michael W Lucas</li> -<li>BPF Performance Tools - Linux System and Application Observability, Brendan Gregg; Addison Wesley</li> -<li>Algorithms; Robert Sedgewick, Kevin Wayne; Addison Wesley</li> -<li>The Linux Programming Interface; Michael Kerrisk; No Starch Press </li> +<li>Go: Design Patterns for Real-World Projects; Mat Ryer; Packt</li> </ul><br /> <h2 style='display: inline' id='self-development-and-soft-skills-books'>Self-development and soft-skills books</h2><br /> <br /> <span>In random order:</span><br /> <br /> <ul> -<li>The Courage to Be Disliked; Ichiro Kishimi and Fumitake Koga; Audiobook</li> -<li>The Phoenix Project - A Novel About IT, DevOps, and Helping your Business Win; Gene Kim and Kevin Behr; Trade Select</li> -<li>Deep Work; Cal Newport; Piatkus</li> -<li>So Good They Can't Ignore You; Cal Newport; Business Plus</li> -<li>Time Management for System Administrators; Thomas A. Limoncelli; O'Reilly</li> -<li>The Daily Stoic; Ryan Holiday, Stephen Hanselman; Profile Books</li> -<li>The Power of Now; Eckhard Tolle; Yellow Kite</li> -<li>The Obstacle Is The Way; Ryan Holiday; Profile Books Ltd</li> -<li>Getting Things Done; David Allen</li> <li>The 7 Habits Of Highly Effective People; Stephen R. Covey; Simon & Schuster UK</li> -<li>Eat That Frog!; Brian Tracy; Hodder Paperbacks</li> -<li>The Bullet Journal Method; Ryder Carroll; Fourth Estate</li> -<li>Coders at Work - Reflections on the craft of programming, Peter Seibel and Mitchell Dorian et al., Audiobook</li> -<li>The Software Engineer's Guidebook: Navigating senior, tech lead, and staff engineer positions at tech companies and startups; Gergely Orosz; Audiobook </li> -<li>Slow Productivity; Cal Newport; Penguin Random House</li> <li>Ultralearning; Anna Laurent; Self-published via Amazon</li> -<li>Staff Engineer: Leadership beyond the management track; Will Larson; Audiobook</li> -<li>Consciousness: A Very Short Introduction; Susan Blackmore; Oxford Uiversity Press</li> -<li>The Off Switch; Mark Cropley; Virgin Books (RE-READ 1ST TIME)</li> -<li>Buddah and Einstein walk into a Bar; Guy Joseph Ale, Claire Bloom; Blackstone Publishing</li> -<li>Soft Skills; John Sommez; Manning Publications</li> -<li>Ultralearning; Scott Young; Thorsons</li> +<li>Getting Things Done; David Allen</li> +<li>Psycho-Cybernetics; Maxwell Maltz; Perigee Books</li> +<li>Never Split the Difference; Chris Voss, Tahl Raz; Random House Business</li> <li>The Joy of Missing Out; Christina Crook; New Society Publishers</li> -<li>Digital Minimalism; Cal Newport; Portofolio Penguin</li> -<li>Who Moved My Cheese?; Dr. Spencer Johnson; Vermilion</li> -<li>Influence without Authority; A. Cohen, D. Bradford; Wiley</li> -<li>Meditation for Mortals, Oliver Burkeman, Audiobook</li> -<li>The Complete Software Developer's Career Guide; John Sonmez; Unabridged Audiobook</li> +<li>The Software Engineer's Guidebook: Navigating senior, tech lead, and staff engineer positions at tech companies and startups; Gergely Orosz; Audiobook </li> +<li>The Obstacle Is The Way; Ryan Holiday; Profile Books Ltd</li> <li>101 Essays that change the way you think; Brianna Wiest; Audiobook</li> -<li>The Good Enough Job; Simone Stolzoff; Ebury Edge</li> <li>97 Things Every Engineering Manager Should Know; Camille Fournier; Audiobook</li> +<li>The Power of Now; Eckhard Tolle; Yellow Kite</li> +<li>The Courage to Be Disliked; Ichiro Kishimi and Fumitake Koga; Audiobook</li> +<li>Who Moved My Cheese?; Dr. Spencer Johnson; Vermilion</li> +<li>The Bullet Journal Method; Ryder Carroll; Fourth Estate</li> +<li>Search Inside Yourself - The Unexpected path to Achieving Success, Happiness (and World Peace); Chade-Meng Tan, Daniel Goleman, Jon Kabat-Zinn; HarperOne</li> +<li>Influence without Authority; A. Cohen, D. Bradford; Wiley</li> +<li>Soft Skills; John Sommez; Manning Publications</li> +<li>Buddah and Einstein walk into a Bar; Guy Joseph Ale, Claire Bloom; Blackstone Publishing</li> <li>Atomic Habits; James Clear; Random House Business</li> -<li>Eat That Frog; Brian Tracy</li> -<li>Never Split the Difference; Chris Voss, Tahl Raz; Random House Business</li> +<li>The Good Enough Job; Simone Stolzoff; Ebury Edge</li> +<li>Deep Work; Cal Newport; Piatkus</li> +<li>The Off Switch; Mark Cropley; Virgin Books (RE-READ 1ST TIME)</li> +<li>Slow Productivity; Cal Newport; Penguin Random House</li> +<li>The Phoenix Project - A Novel About IT, DevOps, and Helping your Business Win; Gene Kim and Kevin Behr; Trade Select</li> +<li>Meditation for Mortals, Oliver Burkeman, Audiobook</li> +<li>Consciousness: A Very Short Introduction; Susan Blackmore; Oxford Uiversity Press</li> +<li>Time Management for System Administrators; Thomas A. Limoncelli; O'Reilly</li> +<li>The Daily Stoic; Ryan Holiday, Stephen Hanselman; Profile Books</li> +<li>Coders at Work - Reflections on the craft of programming, Peter Seibel and Mitchell Dorian et al., Audiobook</li> +<li>Eat That Frog!; Brian Tracy; Hodder Paperbacks</li> +<li>Digital Minimalism; Cal Newport; Portofolio Penguin</li> +<li>So Good They Can't Ignore You; Cal Newport; Business Plus</li> <li>Solve for Happy; Mo Gawdat (RE-READ 1ST TIME)</li> +<li>Ultralearning; Scott Young; Thorsons</li> +<li>Staff Engineer: Leadership beyond the management track; Will Larson; Audiobook</li> +<li>Eat That Frog; Brian Tracy</li> +<li>The Complete Software Developer's Career Guide; John Sonmez; Unabridged Audiobook</li> <li>Stop starting, start finishing; Arne Roock; Lean-Kanban University </li> -<li>Search Inside Yourself - The Unexpected path to Achieving Success, Happiness (and World Peace); Chade-Meng Tan, Daniel Goleman, Jon Kabat-Zinn; HarperOne</li> -<li>Psycho-Cybernetics; Maxwell Maltz; Perigee Books</li> </ul><br /> <a class='textlink' href='../notes/index.html'>Here are notes of mine for some of the books</a><br /> <br /> @@ -164,30 +164,30 @@ <span>Some of these were in-person with exams; others were online learning lectures only. In random order:</span><br /> <br /> <ul> -<li>Developing IaC with Terraform (with Live Lessons); O'Reilly Online</li> <li>The Well-Grounded Rubyist Video Edition; David. A. Black; O'Reilly Online</li> +<li>Scripting Vim; Damian Conway; O'Reilly Online</li> +<li>MySQL Deep Dive Workshop; 2-day on-site training</li> +<li>Developing IaC with Terraform (with Live Lessons); O'Reilly Online</li> <li>Linux Security and Isolation APIs Training; Michael Kerrisk; 3-day on-site training</li> +<li>Functional programming lecture; Remote University of Hagen</li> +<li>Red Hat Certified System Administrator; Course + certification (Although I had the option, I decided not to take the next course as it is more effective to self learn what I need)</li> <li>Cloud Operations on AWS - Learn how to configure, deploy, maintain, and troubleshoot your AWS environments; 3-day online live training with labs; Amazon</li> +<li>AWS Immersion Day; Amazon; 1-day interactive online training </li> +<li>Apache Tomcat Best Practises; 3-day on-site training</li> <li>The Ultimate Kubernetes Bootcamp; School of Devops; O'Reilly Online</li> -<li>MySQL Deep Dive Workshop; 2-day on-site training</li> +<li>F5 Loadbalancers Training; 2-day on-site training; F5, Inc. </li> <li>Protocol buffers; O'Reilly Online</li> +<li>Ultimate Go Programming; Bill Kennedy; O'Reilly Online</li> <li>Structure and Interpretation of Computer Programs; Harold Abelson and more...; </li> -<li>F5 Loadbalancers Training; 2-day on-site training; F5, Inc. </li> -<li>Functional programming lecture; Remote University of Hagen</li> <li>Algorithms Video Lectures; Robert Sedgewick; O'Reilly Online</li> -<li>Apache Tomcat Best Practises; 3-day on-site training</li> -<li>Ultimate Go Programming; Bill Kennedy; O'Reilly Online</li> -<li>AWS Immersion Day; Amazon; 1-day interactive online training </li> -<li>Red Hat Certified System Administrator; Course + certification (Although I had the option, I decided not to take the next course as it is more effective to self learn what I need)</li> -<li>Scripting Vim; Damian Conway; O'Reilly Online</li> </ul><br /> <h2 style='display: inline' id='technical-guides'>Technical guides</h2><br /> <br /> <span>These are not whole books, but guides (smaller or larger) which I found very useful. in random order:</span><br /> <br /> <ul> -<li>Raku Guide at https://raku.guide </li> <li>How CPUs work at https://cpu.land</li> +<li>Raku Guide at https://raku.guide </li> <li>Advanced Bash-Scripting Guide </li> </ul><br /> <h2 style='display: inline' id='podcasts'>Podcasts</h2><br /> @@ -197,61 +197,61 @@ <span>In random order:</span><br /> <br /> <ul> -<li>Fallthrough [Golang]</li> -<li>The ProdCast (Google SRE Podcast)</li> -<li>Cup o' Go [Golang]</li> -<li>The Changelog Podcast(s)</li> -<li>Modern Mentor</li> -<li>Backend Banter</li> +<li>Hidden Brain</li> <li>BSD Now [BSD]</li> -<li>Wednesday Wisdom</li> -<li>The Pragmatic Engineer Podcast</li> -<li>Dev Interrupted</li> -<li>Fork Around And Find Out</li> <li>Pratical AI</li> <li>Deep Questions with Cal Newport</li> -<li>Hidden Brain</li> +<li>Dev Interrupted</li> +<li>Wednesday Wisdom</li> +<li>Modern Mentor</li> <li>Maintainable</li> +<li>The Pragmatic Engineer Podcast</li> +<li>Fallthrough [Golang]</li> +<li>Cup o' Go [Golang]</li> +<li>Backend Banter</li> +<li>The ProdCast (Google SRE Podcast)</li> +<li>The Changelog Podcast(s)</li> +<li>Fork Around And Find Out</li> </ul><br /> <h3 style='display: inline' id='podcasts-i-liked'>Podcasts I liked</h3><br /> <br /> <span>I liked them but am not listening to them anymore. The podcasts have either "finished" (no more episodes) or I stopped listening to them due to time constraints or a shift in my interests.</span><br /> <br /> <ul> +<li>Modern Mentor</li> +<li>FLOSS weekly</li> <li>Go Time (predecessor of fallthrough)</li> <li>CRE: Chaosradio Express [german]</li> -<li>FLOSS weekly</li> -<li>Modern Mentor</li> -<li>Ship It (predecessor of Fork Around And Find Out)</li> <li>Java Pub House</li> +<li>Ship It (predecessor of Fork Around And Find Out)</li> </ul><br /> <h2 style='display: inline' id='newsletters-i-like'>Newsletters I like</h2><br /> <br /> <span>This is a mix of tech and non-tech newsletters I am subscribed to. In random order:</span><br /> <br /> <ul> -<li>Ruby Weekly</li> -<li>VK Newsletter</li> -<li>The Pragmatic Engineer</li> -<li>Andreas Brandhorst Newsletter (Sci-Fi author)</li> -<li>Monospace Mentor</li> +<li>Golang Weekly</li> <li>The Imperfectionist</li> <li>Applied Go Weekly Newsletter</li> -<li>Golang Weekly</li> <li>The Valuable Dev</li> <li>byteSizeGo</li> +<li>Ruby Weekly</li> <li>Register Spill</li> +<li>Monospace Mentor</li> +<li>The Pragmatic Engineer</li> <li>Changelog News</li> +<li>VK Newsletter</li> +<li>Andreas Brandhorst Newsletter (Sci-Fi author)</li> </ul><br /> <h2 style='display: inline' id='magazines-i-liked'>Magazines I like(d)</h2><br /> <br /> <span>This is a mix of tech I like(d). I may not be a current subscriber, but now and then, I buy an issue. In random order:</span><br /> <br /> <ul> -<li>LWN (online only)</li> <li>freeX (not published anymore)</li> -<li>Linux Magazine</li> <li>Linux User</li> +<li>LWN (online only)</li> +<li>Linux Magazine</li> </ul><br /> <h1 style='display: inline' id='formal-education'>Formal education</h1><br /> <br /> diff --git a/gemfeed/2025-07-14-f3s-kubernetes-with-freebsd-part-6.html b/gemfeed/2025-07-14-f3s-kubernetes-with-freebsd-part-6.html index 3df72356..879219f4 100644 --- a/gemfeed/2025-07-14-f3s-kubernetes-with-freebsd-part-6.html +++ b/gemfeed/2025-07-14-f3s-kubernetes-with-freebsd-part-6.html @@ -13,7 +13,7 @@ </p> <h1 style='display: inline' id='f3s-kubernetes-with-freebsd---part-6-storage'>f3s: Kubernetes with FreeBSD - Part 6: Storage</h1><br /> <br /> -<span class='quote'>Published at 2025-07-13T16:44:29+03:00, last updated: 04.01.2026</span><br /> +<span class='quote'>Published at 2025-07-13T16:44:29+03:00, last updated: 27.01.2026</span><br /> <br /> <span>This is the sixth blog post about the f3s series for self-hosting demands in a home lab. f3s? The "f" stands for FreeBSD, and the "3s" stands for k3s, the Kubernetes distribution used on FreeBSD-based physical machines.</span><br /> <br /> @@ -139,6 +139,70 @@ http://www.gnu.org/software/src-highlite --> <CT1000BX500SSD1 M6CR072> at scbus1 target <font color="#000000">0</font> lun <font color="#000000">0</font> (pass1,ada1) </pre> <br /> +<span class='quote'>Update: 27.01.2026</span><br /> +<br /> +<span>I have since replaced the 1TB drives with 4TB drives for more storage capacity. The upgrade procedure was different for each node:</span><br /> +<br /> +<span>**Upgrading f1 (simpler approach):**</span><br /> +<br /> +<span>Since f1 is the replication sink, the upgrade was straightforward:</span><br /> +<br /> +<span>1. Physically replaced the 1TB drive with the 4TB drive</span><br /> +<span>2. Re-setup the drive as described earlier in this blog post</span><br /> +<span>3. Re-replicated all data from f0 to f1 via zrepl</span><br /> +<span>4. Reloaded the encryption keys as described in this blog post</span><br /> +<span>5. Set the mount point again for the encrypted dataset, explicitly as read-only (since f1 is the replication sink)</span><br /> +<br /> +<span>**Upgrading f0 (using ZFS resilvering):**</span><br /> +<br /> +<span>For f0, which is the primary storage node, I used ZFS resilvering to avoid data loss:</span><br /> +<br /> +<span>1. Plugged the new 4TB drive into an external USB SSD drive reader</span><br /> +<span>2. Attached the 4TB drive to the zdata pool for resilvering</span><br /> +<span>3. Once resilvering completed, detached the 1TB drive from the zdata pool</span><br /> +<span>4. Shutdown f0 and physically replaced the internal drive</span><br /> +<span>5. Booted with the new drive in place</span><br /> +<span>6. Expanded the pool to use the full 4TB capacity:</span><br /> +<br /> +<!-- Generator: GNU source-highlight 3.1.9 +by Lorenzo Bettini +http://www.lorenzobettini.it +http://www.gnu.org/software/src-highlite --> +<pre>paul@f0:~ % doas zpool online -e /dev/ada<font color="#000000">1</font> +</pre> +<br /> +<span>7. Reloaded the encryption keys as described in this blog post</span><br /> +<span>8. Set the mount point again for the encrypted dataset</span><br /> +<br /> +<span>This was a one-time effort on both nodes - after a reboot, everything was remembered and came up normally. Here are the updated outputs:</span><br /> +<br /> +<!-- Generator: GNU source-highlight 3.1.9 +by Lorenzo Bettini +http://www.lorenzobettini.it +http://www.gnu.org/software/src-highlite --> +<pre>paul@f0:~ % doas zpool list +NAME SIZE ALLOC FREE CKPOINT EXPANDSZ FRAG CAP DEDUP HEALTH ALTROOT +zdata <font color="#000000">3</font>.63T 677G <font color="#000000">2</font>.97T - - <font color="#000000">3</font>% <font color="#000000">18</font>% <font color="#000000">1</font>.00x ONLINE - +zroot 472G <font color="#000000">68</font>.4G 404G - - <font color="#000000">13</font>% <font color="#000000">14</font>% <font color="#000000">1</font>.00x ONLINE - + +paul@f0:~ % doas camcontrol devlist +<512GB SSD D910R170> at scbus0 target <font color="#000000">0</font> lun <font color="#000000">0</font> (pass0,ada0) +<SD Ultra 3D 4TB 530500WD> at scbus1 target <font color="#000000">0</font> lun <font color="#000000">0</font> (pass1,ada1) +<Generic Flash Disk <font color="#000000">8.07</font>> at scbus2 target <font color="#000000">0</font> lun <font color="#000000">0</font> (da0,pass2) +</pre> +<br /> +<span>We're still using different SSD models on f1 (WD Blue SA510 4TB) to avoid simultaneous failures:</span><br /> +<br /> +<!-- Generator: GNU source-highlight 3.1.9 +by Lorenzo Bettini +http://www.lorenzobettini.it +http://www.gnu.org/software/src-highlite --> +<pre>paul@f1:~ % doas camcontrol devlist +<512GB SSD D910R170> at scbus0 target <font color="#000000">0</font> lun <font color="#000000">0</font> (pass0,ada0) +<WD Blue SA510 <font color="#000000">2.5</font> 4TB 530500WD> at scbus1 target <font color="#000000">0</font> lun <font color="#000000">0</font> (pass1,ada1) +<Generic Flash Disk <font color="#000000">8.07</font>> at scbus2 target <font color="#000000">0</font> lun <font color="#000000">0</font> (da0,pass2) +</pre> +<br /> <h2 style='display: inline' id='zfs-encryption-keys'>ZFS encryption keys</h2><br /> <br /> <span>ZFS native encryption requires encryption keys to unlock datasets. We need a secure method to store these keys that balances security with operational needs:</span><br /> diff --git a/gemfeed/atom.xml b/gemfeed/atom.xml index 14c0f6a0..bf41e311 100644 --- a/gemfeed/atom.xml +++ b/gemfeed/atom.xml @@ -1,6 +1,6 @@ <?xml version="1.0" encoding="utf-8"?> <feed xmlns="http://www.w3.org/2005/Atom"> - <updated>2026-01-24T23:12:38+02:00</updated> + <updated>2026-01-27T09:50:13+02:00</updated> <title>foo.zone feed</title> <subtitle>To be in the .zone!</subtitle> <link href="https://foo.zone/gemfeed/atom.xml" rel="self" /> @@ -6449,7 +6449,7 @@ content = "{CODE}" <title>f3s: Kubernetes with FreeBSD - Part 6: Storage</title> <link href="https://foo.zone/gemfeed/2025-07-14-f3s-kubernetes-with-freebsd-part-6.html" /> <id>https://foo.zone/gemfeed/2025-07-14-f3s-kubernetes-with-freebsd-part-6.html</id> - <updated>2025-07-13T16:44:29+03:00, last updated: 04.01.2026</updated> + <updated>2025-07-13T16:44:29+03:00, last updated: 27.01.2026</updated> <author> <name>Paul Buetow aka snonux</name> <email>paul@dev.buetow.org</email> @@ -6459,7 +6459,7 @@ content = "{CODE}" <div xmlns="http://www.w3.org/1999/xhtml"> <h1 style='display: inline' id='f3s-kubernetes-with-freebsd---part-6-storage'>f3s: Kubernetes with FreeBSD - Part 6: Storage</h1><br /> <br /> -<span class='quote'>Published at 2025-07-13T16:44:29+03:00, last updated: 04.01.2026</span><br /> +<span class='quote'>Published at 2025-07-13T16:44:29+03:00, last updated: 27.01.2026</span><br /> <br /> <span>This is the sixth blog post about the f3s series for self-hosting demands in a home lab. f3s? The "f" stands for FreeBSD, and the "3s" stands for k3s, the Kubernetes distribution used on FreeBSD-based physical machines.</span><br /> <br /> @@ -6585,6 +6585,70 @@ http://www.gnu.org/software/src-highlite --> <CT1000BX500SSD1 M6CR072> at scbus1 target <font color="#000000">0</font> lun <font color="#000000">0</font> (pass1,ada1) </pre> <br /> +<span class='quote'>Update: 27.01.2026</span><br /> +<br /> +<span>I have since replaced the 1TB drives with 4TB drives for more storage capacity. The upgrade procedure was different for each node:</span><br /> +<br /> +<span>**Upgrading f1 (simpler approach):**</span><br /> +<br /> +<span>Since f1 is the replication sink, the upgrade was straightforward:</span><br /> +<br /> +<span>1. Physically replaced the 1TB drive with the 4TB drive</span><br /> +<span>2. Re-setup the drive as described earlier in this blog post</span><br /> +<span>3. Re-replicated all data from f0 to f1 via zrepl</span><br /> +<span>4. Reloaded the encryption keys as described in this blog post</span><br /> +<span>5. Set the mount point again for the encrypted dataset, explicitly as read-only (since f1 is the replication sink)</span><br /> +<br /> +<span>**Upgrading f0 (using ZFS resilvering):**</span><br /> +<br /> +<span>For f0, which is the primary storage node, I used ZFS resilvering to avoid data loss:</span><br /> +<br /> +<span>1. Plugged the new 4TB drive into an external USB SSD drive reader</span><br /> +<span>2. Attached the 4TB drive to the zdata pool for resilvering</span><br /> +<span>3. Once resilvering completed, detached the 1TB drive from the zdata pool</span><br /> +<span>4. Shutdown f0 and physically replaced the internal drive</span><br /> +<span>5. Booted with the new drive in place</span><br /> +<span>6. Expanded the pool to use the full 4TB capacity:</span><br /> +<br /> +<!-- Generator: GNU source-highlight 3.1.9 +by Lorenzo Bettini +http://www.lorenzobettini.it +http://www.gnu.org/software/src-highlite --> +<pre>paul@f0:~ % doas zpool online -e /dev/ada<font color="#000000">1</font> +</pre> +<br /> +<span>7. Reloaded the encryption keys as described in this blog post</span><br /> +<span>8. Set the mount point again for the encrypted dataset</span><br /> +<br /> +<span>This was a one-time effort on both nodes - after a reboot, everything was remembered and came up normally. Here are the updated outputs:</span><br /> +<br /> +<!-- Generator: GNU source-highlight 3.1.9 +by Lorenzo Bettini +http://www.lorenzobettini.it +http://www.gnu.org/software/src-highlite --> +<pre>paul@f0:~ % doas zpool list +NAME SIZE ALLOC FREE CKPOINT EXPANDSZ FRAG CAP DEDUP HEALTH ALTROOT +zdata <font color="#000000">3</font>.63T 677G <font color="#000000">2</font>.97T - - <font color="#000000">3</font>% <font color="#000000">18</font>% <font color="#000000">1</font>.00x ONLINE - +zroot 472G <font color="#000000">68</font>.4G 404G - - <font color="#000000">13</font>% <font color="#000000">14</font>% <font color="#000000">1</font>.00x ONLINE - + +paul@f0:~ % doas camcontrol devlist +<512GB SSD D910R170> at scbus0 target <font color="#000000">0</font> lun <font color="#000000">0</font> (pass0,ada0) +<SD Ultra 3D 4TB 530500WD> at scbus1 target <font color="#000000">0</font> lun <font color="#000000">0</font> (pass1,ada1) +<Generic Flash Disk <font color="#000000">8.07</font>> at scbus2 target <font color="#000000">0</font> lun <font color="#000000">0</font> (da0,pass2) +</pre> +<br /> +<span>We're still using different SSD models on f1 (WD Blue SA510 4TB) to avoid simultaneous failures:</span><br /> +<br /> +<!-- Generator: GNU source-highlight 3.1.9 +by Lorenzo Bettini +http://www.lorenzobettini.it +http://www.gnu.org/software/src-highlite --> +<pre>paul@f1:~ % doas camcontrol devlist +<512GB SSD D910R170> at scbus0 target <font color="#000000">0</font> lun <font color="#000000">0</font> (pass0,ada0) +<WD Blue SA510 <font color="#000000">2.5</font> 4TB 530500WD> at scbus1 target <font color="#000000">0</font> lun <font color="#000000">0</font> (pass1,ada1) +<Generic Flash Disk <font color="#000000">8.07</font>> at scbus2 target <font color="#000000">0</font> lun <font color="#000000">0</font> (da0,pass2) +</pre> +<br /> <h2 style='display: inline' id='zfs-encryption-keys'>ZFS encryption keys</h2><br /> <br /> <span>ZFS native encryption requires encryption keys to unlock datasets. We need a secure method to store these keys that balances security with operational needs:</span><br /> @@ -13,7 +13,7 @@ </p> <h1 style='display: inline' id='hello'>Hello!</h1><br /> <br /> -<span class='quote'>This site was generated at 2026-01-24T23:12:38+02:00 by <span class='inlinecode'>Gemtexter</span></span><br /> +<span class='quote'>This site was generated at 2026-01-27T09:50:13+02:00 by <span class='inlinecode'>Gemtexter</span></span><br /> <br /> <span>Welcome to the foo.zone!</span><br /> <br /> diff --git a/uptime-stats.html b/uptime-stats.html index 299a6bb2..f692e259 100644 --- a/uptime-stats.html +++ b/uptime-stats.html @@ -13,7 +13,7 @@ </p> <h1 style='display: inline' id='my-machine-uptime-stats'>My machine uptime stats</h1><br /> <br /> -<span class='quote'>This site was last updated at 2026-01-24T23:12:38+02:00</span><br /> +<span class='quote'>This site was last updated at 2026-01-27T09:50:13+02:00</span><br /> <br /> <span>The following stats were collected via <span class='inlinecode'>uptimed</span> on all of my personal computers over many years and the output was generated by <span class='inlinecode'>guprecords</span>, the global uptime records stats analyser of mine.</span><br /> <br /> @@ -35,7 +35,7 @@ | Pos | Host | Boots | Last Kernel | +-----+----------------+-------+------------------------------+ | 1. | alphacentauri | 671 | FreeBSD 11.4-RELEASE-p7 | -| 2. | *earth | 224 | Linux 6.18.4-200.fc43.x86_64 | +| 2. | *earth | 225 | Linux 6.18.4-200.fc43.x86_64 | | 3. | mars | 207 | Linux 3.2.0-4-amd64 | | 4. | callisto | 153 | Linux 4.0.4-303.fc22.x86_64 | | 5. | dionysus | 136 | FreeBSD 13.0-RELEASE-p11 | @@ -46,13 +46,13 @@ | 10. | *makemake | 81 | Linux 6.9.9-200.fc40.x86_64 | | 11. | uranus | 59 | NetBSD 10.1 | | 12. | pluto | 51 | Linux 3.2.0-4-amd64 | -| 13. | mega15289 | 50 | Darwin 23.4.0 | -| 14. | *mega-m3-pro | 50 | Darwin 24.6.0 | -| 15. | *fishfinger | 50 | OpenBSD 7.7 | +| 13. | *fishfinger | 50 | OpenBSD 7.7 | +| 14. | mega15289 | 50 | Darwin 23.4.0 | +| 15. | *mega-m3-pro | 50 | Darwin 24.6.0 | | 16. | *t450 | 46 | FreeBSD 14.2-RELEASE | | 17. | *blowfish | 45 | OpenBSD 7.7 | -| 18. | mega8477 | 40 | Darwin 13.4.0 | -| 19. | phobos | 40 | Linux 3.4.0-CM-g1dd7cdf | +| 18. | phobos | 40 | Linux 3.4.0-CM-g1dd7cdf | +| 19. | mega8477 | 40 | Darwin 13.4.0 | | 20. | sun | 33 | FreeBSD 10.3-RELEASE-p24 | +-----+----------------+-------+------------------------------+ </pre> @@ -67,7 +67,7 @@ +-----+----------------+-----------------------------+-----------------------------------+ | 1. | vulcan | 4 years, 5 months, 6 days | Linux 3.10.0-1160.81.1.el7.x86_64 | | 2. | *blowfish | 4 years, 1 months, 6 days | OpenBSD 7.7 | -| 3. | *earth | 3 years, 12 months, 30 days | Linux 6.18.4-200.fc43.x86_64 | +| 3. | *earth | 4 years, 1 months, 5 days | Linux 6.18.4-200.fc43.x86_64 | | 4. | sun | 3 years, 9 months, 26 days | FreeBSD 10.3-RELEASE-p24 | | 5. | uranus | 3 years, 9 months, 5 days | NetBSD 10.1 | | 6. | uugrn | 3 years, 5 months, 5 days | FreeBSD 11.2-RELEASE-p4 | @@ -77,7 +77,7 @@ | 10. | tauceti | 2 years, 3 months, 19 days | Linux 3.2.0-4-amd64 | | 11. | mega15289 | 1 years, 12 months, 17 days | Darwin 23.4.0 | | 12. | tauceti-f | 1 years, 9 months, 18 days | Linux 3.2.0-3-amd64 | -| 13. | *mega-m3-pro | 1 years, 7 months, 28 days | Darwin 24.6.0 | +| 13. | *mega-m3-pro | 1 years, 8 months, 3 days | Darwin 24.6.0 | | 14. | *t450 | 1 years, 7 months, 26 days | FreeBSD 14.2-RELEASE | | 15. | mega8477 | 1 years, 3 months, 25 days | Darwin 13.4.0 | | 16. | host0 | 1 years, 3 months, 9 days | FreeBSD 6.2-RELEASE-p5 | @@ -97,7 +97,7 @@ | Pos | Host | Score | Last Kernel | +-----+----------------+-------+-----------------------------------+ | 1. | uranus | 340 | NetBSD 10.1 | -| 2. | *earth | 281 | Linux 6.18.4-200.fc43.x86_64 | +| 2. | *earth | 282 | Linux 6.18.4-200.fc43.x86_64 | | 3. | vulcan | 275 | Linux 3.10.0-1160.81.1.el7.x86_64 | | 4. | *blowfish | 259 | OpenBSD 7.7 | | 5. | sun | 238 | FreeBSD 10.3-RELEASE-p24 | @@ -112,7 +112,7 @@ | 14. | *makemake | 139 | Linux 6.9.9-200.fc40.x86_64 | | 15. | *t450 | 128 | FreeBSD 14.2-RELEASE | | 16. | tauceti-f | 108 | Linux 3.2.0-3-amd64 | -| 17. | *mega-m3-pro | 106 | Darwin 24.6.0 | +| 17. | *mega-m3-pro | 108 | Darwin 24.6.0 | | 18. | tauceti-e | 96 | Linux 3.2.0-4-amd64 | | 19. | callisto | 86 | Linux 4.0.4-303.fc22.x86_64 | | 20. | mega8477 | 80 | Darwin 13.4.0 | @@ -162,7 +162,7 @@ | 2. | dionysus | 8 years, 6 months, 17 days | FreeBSD 13.0-RELEASE-p11 | | 3. | alphacentauri | 6 years, 9 months, 13 days | FreeBSD 11.4-RELEASE-p7 | | 4. | *makemake | 4 years, 10 months, 16 days | Linux 6.9.9-200.fc40.x86_64 | -| 5. | *earth | 4 years, 6 months, 28 days | Linux 6.18.4-200.fc43.x86_64 | +| 5. | *earth | 4 years, 7 months, 4 days | Linux 6.18.4-200.fc43.x86_64 | | 6. | vulcan | 4 years, 5 months, 6 days | Linux 3.10.0-1160.81.1.el7.x86_64 | | 7. | *blowfish | 4 years, 1 months, 7 days | OpenBSD 7.7 | | 8. | sun | 3 years, 10 months, 2 days | FreeBSD 10.3-RELEASE-p24 | @@ -177,7 +177,7 @@ | 17. | callisto | 2 years, 3 months, 13 days | Linux 4.0.4-303.fc22.x86_64 | | 18. | tauceti-e | 2 years, 1 months, 29 days | Linux 3.2.0-4-amd64 | | 19. | tauceti-f | 1 years, 9 months, 20 days | Linux 3.2.0-3-amd64 | -| 20. | *mega-m3-pro | 1 years, 8 months, 24 days | Darwin 24.6.0 | +| 20. | *mega-m3-pro | 1 years, 8 months, 31 days | Darwin 24.6.0 | +-----+----------------+-----------------------------+-----------------------------------+ </pre> <br /> @@ -192,7 +192,7 @@ | 1. | FreeBSD 10... | 551 | | 2. | Linux 3... | 550 | | 3. | *FreeBSD 14... | 339 | -| 4. | *Linux 6... | 209 | +| 4. | *Linux 6... | 210 | | 5. | Linux 5... | 162 | | 6. | Linux 4... | 161 | | 7. | FreeBSD 11... | 153 | @@ -207,8 +207,8 @@ | 16. | Darwin 15... | 15 | | 17. | Darwin 22... | 12 | | 18. | Darwin 18... | 11 | -| 19. | FreeBSD 7... | 10 | -| 20. | OpenBSD 4... | 10 | +| 19. | OpenBSD 4... | 10 | +| 20. | FreeBSD 7... | 10 | +-----+----------------+-------+ </pre> <br /> @@ -224,14 +224,14 @@ | 2. | *OpenBSD 7... | 8 years, 1 months, 7 days | | 3. | FreeBSD 10... | 5 years, 9 months, 9 days | | 4. | Linux 5... | 4 years, 10 months, 21 days | -| 5. | *Linux 6... | 3 years, 3 months, 30 days | +| 5. | *Linux 6... | 3 years, 4 months, 5 days | | 6. | *FreeBSD 14... | 2 years, 11 months, 5 days | | 7. | Linux 4... | 2 years, 7 months, 22 days | | 8. | FreeBSD 11... | 2 years, 4 months, 28 days | | 9. | Linux 2... | 1 years, 11 months, 21 days | | 10. | Darwin 13... | 1 years, 3 months, 25 days | | 11. | FreeBSD 6... | 1 years, 3 months, 9 days | -| 12. | *Darwin 24... | 0 years, 12 months, 4 days | +| 12. | *Darwin 24... | 0 years, 12 months, 11 days | | 13. | Darwin 23... | 0 years, 11 months, 3 days | | 14. | OpenBSD 4... | 0 years, 8 months, 12 days | | 15. | Darwin 21... | 0 years, 8 months, 2 days | @@ -255,14 +255,14 @@ | 2. | *OpenBSD 7... | 517 | | 3. | FreeBSD 10... | 406 | | 4. | Linux 5... | 317 | -| 5. | *Linux 6... | 225 | +| 5. | *Linux 6... | 226 | | 6. | *FreeBSD 14... | 211 | | 7. | Linux 4... | 175 | | 8. | FreeBSD 11... | 159 | | 9. | Linux 2... | 121 | | 10. | Darwin 13... | 80 | | 11. | FreeBSD 6... | 75 | -| 12. | *Darwin 24... | 63 | +| 12. | *Darwin 24... | 64 | | 13. | Darwin 23... | 55 | | 14. | OpenBSD 4... | 39 | | 15. | Darwin 21... | 38 | @@ -283,7 +283,7 @@ | Pos | KernelName | Boots | +-----+------------+-------+ | 1. | *FreeBSD | 1204 | -| 2. | *Linux | 1104 | +| 2. | *Linux | 1105 | | 3. | *Darwin | 155 | | 4. | *OpenBSD | 115 | | 5. | NetBSD | 1 | @@ -298,10 +298,10 @@ +-----+------------+-----------------------------+ | Pos | KernelName | Uptime | +-----+------------+-----------------------------+ -| 1. | *Linux | 28 years, 4 months, 22 days | +| 1. | *Linux | 28 years, 4 months, 28 days | | 2. | *FreeBSD | 12 years, 10 months, 8 days | | 3. | *OpenBSD | 8 years, 8 months, 18 days | -| 4. | *Darwin | 5 years, 3 months, 18 days | +| 4. | *Darwin | 5 years, 3 months, 25 days | | 5. | NetBSD | 0 years, 1 months, 1 days | +-----+------------+-----------------------------+ </pre> @@ -314,10 +314,10 @@ +-----+------------+-------+ | Pos | KernelName | Score | +-----+------------+-------+ -| 1. | *Linux | 1884 | +| 1. | *Linux | 1885 | | 2. | *FreeBSD | 912 | | 3. | *OpenBSD | 557 | -| 4. | *Darwin | 344 | +| 4. | *Darwin | 345 | | 5. | NetBSD | 0 | +-----+------------+-------+ </pre> |
