diff options
| -rw-r--r-- | about/resources.html | 200 | ||||
| -rw-r--r-- | gemfeed/2025-07-14-f3s-kubernetes-with-freebsd-part-6.html | 14 | ||||
| -rw-r--r-- | gemfeed/DRAFT-f3s-kubernetes-with-freebsd-part-X-OBSERVABILITY2.html | 154 | ||||
| -rw-r--r-- | gemfeed/atom.xml | 16 | ||||
| -rw-r--r-- | index.html | 2 | ||||
| -rw-r--r-- | uptime-stats.html | 2 |
6 files changed, 281 insertions, 107 deletions
diff --git a/about/resources.html b/about/resources.html index f622b0df..b2e09a6d 100644 --- a/about/resources.html +++ b/about/resources.html @@ -50,112 +50,112 @@ <span>In random order:</span><br /> <br /> <ul> -<li>Hands-on Infrastructure Monitoring with Prometheus; Joel Bastos, Pedro Araujo; Packt </li> -<li>Raku Fundamentals; Moritz Lenz; Apress</li> -<li>Site Reliability Engineering; How Google runs production systems; O'Reilly</li> -<li>C++ Programming Language; Bjarne Stroustrup;</li> <li>Funktionale Programmierung; Peter Pepper; Springer</li> -<li>Perl New Features; Joshua McAdams, brian d foy; Perl School</li> -<li>Pro Puppet; James Turnbull, Jeffrey McCune; Apress</li> -<li>Systems Performance Tuning; Gian-Paolo D. Musumeci and others...; O'Reilly</li> -<li>DNS and BIND; Cricket Liu; O'Reilly</li> -<li>Amazon Web Services in Action; Michael Wittig and Andreas Wittig; Manning Publications</li> -<li>Clusterbau mit Linux-HA; Michael Schwartzkopff; O'Reilly</li> -<li>The Go Programming Language; Alan A. A. Donovan; Addison-Wesley Professional</li> -<li>Leanring eBPF; Liz Rice; O'Reilly</li> +<li>C++ Programming Language; Bjarne Stroustrup;</li> +<li>Think Raku (aka Think Perl 6); Laurent Rosenfeld, Allen B. Downey; O'Reilly</li> +<li>21st Century C: C Tips from the New School; Ben Klemens; O'Reilly</li> +<li>Object-Oriented Programming with ANSI-C; Axel-Tobias Schreiner</li> +<li>Site Reliability Engineering; How Google runs production systems; 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>Concurrency in Go; Katherine Cox-Buday; O'Reilly</li> -<li>Learn You a Haskell for Great Good!; Miran Lipovaca; No Starch Press</li> -<li>Distributed Systems: Principles and Paradigms; Andrew S. Tanenbaum; Pearson</li> -<li>Higher Order Perl; Mark Dominus; Morgan Kaufmann</li> -<li>The Pragmatic Programmer; David Thomas; Addison-Wesley</li> -<li>Developing Games in Java; David Brackeen and others...; New Riders</li> -<li>Programming Ruby 3.3 (5th Edition); Noel Rappin, with Dave Thomas; The Pragmatic Bookshelf</li> -<li>Ultimate Go Notebook; Bill Kennedy</li> -<li>Effective awk programming; Arnold Robbins; O'Reilly</li> -<li>Java ist auch eine Insel; Christian Ullenboom; </li> <li>The KCNA (Kubernetes and Cloud Native Associate) Book; Nigel Poulton</li> -<li>Modern Perl; Chromatic ; Onyx Neon Press</li> -<li>100 Go Mistakes and How to Avoid Them; Teiva Harsanyi; Manning Publications</li> -<li>Think Raku (aka Think Perl 6); Laurent Rosenfeld, Allen B. Downey; O'Reilly</li> -<li>Programming Perl aka "The Camel Book"; Tom Christiansen, brian d foy, Larry Wall & Jon Orwant; O'Reilly</li> -<li>Seeking SRE: Conversations About Running Production Systems at Scale; David N. Blank-Edelman; eBook</li> -<li>97 things every SRE should know; Emil Stolarsky, Jaime Woo; O'Reilly</li> -<li>Systemprogrammierung in Go; Frank Müller; dpunkt</li> -<li>Go Brain Teasers - Exercise Your Mind; Miki Tebeka; The Pragmatic Programmers</li> -<li>The Docker Book; James Turnbull; Kindle</li> -<li>Tmux 2: Productive Mouse-free Development; Brain P. Hogan; The Pragmatic Programmers </li> +<li>The DevOps Handbook; Gene Kim, Jez Humble, Patrick Debois, John Willis; Audible</li> <li>Terraform Cookbook; Mikael Krief; Packt Publishing</li> +<li>DNS and BIND; Cricket Liu; O'Reilly</li> +<li>Developing Games in Java; David Brackeen and others...; New Riders</li> +<li>Systemprogrammierung in Go; Frank Müller; dpunkt</li> +<li>Java ist auch eine Insel; Christian Ullenboom; </li> +<li>Data Science at the Command Line; Jeroen Janssens; O'Reilly</li> +<li>Systems Performance Tuning; Gian-Paolo D. Musumeci and others...; O'Reilly</li> <li>Polished Ruby Programming; Jeremy Evans; Packt Publishing</li> -<li>The DevOps Handbook; Gene Kim, Jez Humble, Patrick Debois, John Willis; Audible</li> -<li>Learn You Some Erlang for Great Good; Fred Herbert; No Starch Press</li> +<li>The Go Programming Language; Alan A. A. Donovan; Addison-Wesley Professional</li> +<li>97 things every SRE should know; Emil Stolarsky, Jaime Woo; O'Reilly</li> +<li>Distributed Systems: Principles and Paradigms; Andrew S. Tanenbaum; Pearson</li> +<li>Hands-on Infrastructure Monitoring with Prometheus; Joel Bastos, Pedro Araujo; Packt </li> +<li>Raku Fundamentals; Moritz Lenz; Apress</li> +<li>Kubernetes Cookbook; Sameer Naik, Sébastien Goasguen, Jonathan Michaux; O'Reilly</li> <li>DevOps And Site Reliability Engineering Handbook; Stephen Fleming; Audible</li> +<li>The Docker Book; James Turnbull; Kindle</li> <li>Chaos Engineering - System Resiliency in Practice; Casey Rosenthal and Nora Jones; eBook</li> -<li>Effective Java; Joshua Bloch; Addison-Wesley Professional</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>Perl New Features; Joshua McAdams, brian d foy; Perl School</li> +<li>Learn You Some Erlang for Great Good; Fred Herbert; No Starch Press</li> +<li>Amazon Web Services in Action; Michael Wittig and Andreas Wittig; Manning Publications</li> +<li>Tmux 2: Productive Mouse-free Development; Brain P. Hogan; The Pragmatic Programmers </li> +<li>Seeking SRE: Conversations About Running Production Systems at Scale; David N. Blank-Edelman; eBook</li> +<li>Concurrency in Go; Katherine Cox-Buday; O'Reilly</li> <li>Raku Recipes; J.J. Merelo; Apress</li> -<li>Object-Oriented Programming with ANSI-C; Axel-Tobias Schreiner</li> -<li>21st Century C: C Tips from the New School; Ben Klemens; O'Reilly</li> -<li>Kubernetes Cookbook; Sameer Naik, Sébastien Goasguen, Jonathan Michaux; O'Reilly</li> +<li>The Pragmatic Programmer; David Thomas; Addison-Wesley</li> +<li>Leanring eBPF; Liz Rice; O'Reilly</li> +<li>Programming Perl aka "The Camel Book"; Tom Christiansen, brian d foy, Larry Wall & Jon Orwant; O'Reilly</li> +<li>Effective Java; Joshua Bloch; Addison-Wesley Professional</li> +<li>Clusterbau mit Linux-HA; Michael Schwartzkopff; O'Reilly</li> +<li>Learn You a Haskell for Great Good!; Miran Lipovaca; No Starch Press</li> +<li>100 Go Mistakes and How to Avoid Them; Teiva Harsanyi; Manning Publications</li> +<li>Effective awk programming; Arnold Robbins; O'Reilly</li> <li>The Kubernetes Book; Nigel Poulton; Unabridged Audiobook</li> -<li>Data Science at the Command Line; Jeroen Janssens; O'Reilly</li> +<li>Ultimate Go Notebook; Bill Kennedy</li> +<li>Higher Order Perl; Mark Dominus; Morgan Kaufmann</li> +<li>Modern Perl; Chromatic ; Onyx Neon Press</li> +<li>Pro Puppet; James Turnbull, Jeffrey McCune; Apress</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>Understanding the Linux Kernel; Daniel P. Bovet, Marco Cesati; O'Reilly</li> +<li>Go: Design Patterns for Real-World Projects; Mat Ryer; Packt</li> <li>Algorithms; Robert Sedgewick, Kevin Wayne; Addison Wesley</li> -<li>Implementing Service Level Objectives; Alex Hidalgo; O'Reilly</li> -<li>Relayd and Httpd Mastery; Michael W Lucas</li> <li>Groovy Kurz & Gut; Joerg Staudemeier; O'Reilly</li> -<li>Go: Design Patterns for Real-World Projects; Mat Ryer; Packt</li> -<li>The Linux Programming Interface; Michael Kerrisk; No Starch Press </li> +<li>Implementing Service Level Objectives; Alex Hidalgo; O'Reilly</li> <li>BPF Performance Tools - Linux System and Application Observability, Brendan Gregg; Addison Wesley</li> -<li>Understanding the Linux Kernel; Daniel P. Bovet, Marco Cesati; O'Reilly</li> +<li>The Linux Programming Interface; Michael Kerrisk; No Starch Press </li> +<li>Relayd and Httpd Mastery; Michael W Lucas</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 Power of Now; Eckhard Tolle; Yellow Kite</li> -<li>Ultralearning; Anna Laurent; Self-published via Amazon</li> -<li>Coders at Work - Reflections on the craft of programming, Peter Seibel and Mitchell Dorian et al., Audiobook</li> -<li>Getting Things Done; David Allen</li> -<li>The Daily Stoic; Ryan Holiday, Stephen Hanselman; Profile Books</li> +<li>Stop starting, start finishing; Arne Roock; Lean-Kanban University </li> +<li>Digital Minimalism; Cal Newport; Portofolio Penguin</li> +<li>Influence without Authority; A. Cohen, D. Bradford; Wiley</li> +<li>Who Moved My Cheese?; Dr. Spencer Johnson; Vermilion</li> +<li>Solve for Happy; Mo Gawdat (RE-READ 1ST TIME)</li> <li>Meditation for Mortals, Oliver Burkeman, Audiobook</li> +<li>Buddah and Einstein walk into a Bar; Guy Joseph Ale, Claire Bloom; Blackstone Publishing</li> <li>The Bullet Journal Method; Ryder Carroll; Fourth Estate</li> -<li>Ultralearning; Scott Young; Thorsons</li> -<li>Soft Skills; John Sommez; Manning Publications</li> -<li>The Obstacle Is The Way; Ryan Holiday; Profile Books Ltd</li> -<li>97 Things Every Engineering Manager Should Know; Camille Fournier; Audiobook</li> -<li>Solve for Happy; Mo Gawdat (RE-READ 1ST TIME)</li> -<li>The Off Switch; Mark Cropley; Virgin Books (RE-READ 1ST TIME)</li> -<li>The Phoenix Project - A Novel About IT, DevOps, and Helping your Business Win; Gene Kim and Kevin Behr; Trade Select</li> -<li>So Good They Can't Ignore You; Cal Newport; Business Plus</li> -<li>Staff Engineer: Leadership beyond the management track; Will Larson; Audiobook</li> +<li>The Power of Now; Eckhard Tolle; Yellow Kite</li> +<li>The Good Enough Job; Simone Stolzoff; Ebury Edge</li> +<li>Ultralearning; Anna Laurent; Self-published via Amazon</li> +<li>The Joy of Missing Out; Christina Crook; New Society Publishers</li> <li>101 Essays that change the way you think; Brianna Wiest; Audiobook</li> <li>The Courage to Be Disliked; Ichiro Kishimi and Fumitake Koga; Audiobook</li> -<li>Stop starting, start finishing; Arne Roock; Lean-Kanban University </li> -<li>Atomic Habits; James Clear; Random House Business</li> -<li>Digital Minimalism; Cal Newport; Portofolio Penguin</li> +<li>97 Things Every Engineering Manager Should Know; Camille Fournier; Audiobook</li> +<li>Never Split the Difference; Chris Voss, Tahl Raz; Random House Business</li> +<li>So Good They Can't Ignore You; Cal Newport; Business Plus</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>Eat That Frog!; Brian Tracy; Hodder Paperbacks</li> <li>The Complete Software Developer's Career Guide; John Sonmez; Unabridged Audiobook</li> -<li>Never Split the Difference; Chris Voss, Tahl Raz; Random House Business</li> -<li>Time Management for System Administrators; Thomas A. Limoncelli; O'Reilly</li> +<li>The Obstacle Is The Way; Ryan Holiday; Profile Books Ltd</li> +<li>Slow Productivity; Cal Newport; Penguin Random House</li> +<li>Consciousness: A Very Short Introduction; Susan Blackmore; Oxford Uiversity Press</li> <li>The 7 Habits Of Highly Effective People; Stephen R. Covey; Simon & Schuster UK</li> +<li>Atomic Habits; James Clear; Random House Business</li> +<li>The Daily Stoic; Ryan Holiday, Stephen Hanselman; Profile Books</li> +<li>Staff Engineer: Leadership beyond the management track; Will Larson; Audiobook</li> <li>Eat That Frog; Brian Tracy</li> +<li>The Off Switch; Mark Cropley; Virgin Books (RE-READ 1ST TIME)</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>The Good Enough Job; Simone Stolzoff; Ebury Edge</li> -<li>The Joy of Missing Out; Christina Crook; New Society Publishers</li> -<li>Slow Productivity; Cal Newport; Penguin Random House</li> -<li>Deep Work; Cal Newport; Piatkus</li> -<li>Consciousness: A Very Short Introduction; Susan Blackmore; Oxford Uiversity Press</li> -<li>Influence without Authority; A. Cohen, D. Bradford; Wiley</li> -<li>Who Moved My Cheese?; Dr. Spencer Johnson; Vermilion</li> +<li>Time Management for System Administrators; Thomas A. Limoncelli; O'Reilly</li> <li>Psycho-Cybernetics; Maxwell Maltz; Perigee Books</li> -<li>Buddah and Einstein walk into a Bar; Guy Joseph Ale, Claire Bloom; Blackstone Publishing</li> +<li>Getting Things Done; David Allen</li> +<li>Coders at Work - Reflections on the craft of programming, Peter Seibel and Mitchell Dorian et al., Audiobook</li> +<li>Deep Work; Cal Newport; Piatkus</li> +<li>Eat That Frog!; Brian Tracy; Hodder Paperbacks</li> +<li>Soft Skills; John Sommez; Manning Publications</li> +<li>Ultralearning; Scott Young; Thorsons</li> +<li>The Phoenix Project - A Novel About IT, DevOps, and Helping your Business Win; Gene Kim and Kevin Behr; Trade Select</li> </ul><br /> <a class='textlink' href='../notes/index.html'>Here are notes of mine for some of the books</a><br /> <br /> @@ -164,31 +164,31 @@ <span>Some of these were in-person with exams; others were online learning lectures only. In random order:</span><br /> <br /> <ul> -<li>Ultimate Go Programming; Bill Kennedy; O'Reilly Online</li> -<li>Algorithms Video Lectures; Robert Sedgewick; O'Reilly Online</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>Protocol buffers; O'Reilly Online</li> -<li>Linux Security and Isolation APIs Training; Michael Kerrisk; 3-day on-site training</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>The Ultimate Kubernetes Bootcamp; School of Devops; O'Reilly Online</li> -<li>The Well-Grounded Rubyist Video Edition; David. A. Black; O'Reilly Online</li> +<li>Algorithms Video Lectures; Robert Sedgewick; O'Reilly Online</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>Structure and Interpretation of Computer Programs; Harold Abelson and more...; </li> -<li>MySQL Deep Dive Workshop; 2-day on-site training</li> +<li>Ultimate Go Programming; Bill Kennedy; O'Reilly Online</li> +<li>Apache Tomcat Best Practises; 3-day on-site training</li> +<li>Functional programming lecture; Remote University of Hagen</li> <li>Developing IaC with Terraform (with Live Lessons); O'Reilly Online</li> -<li>AWS Immersion Day; Amazon; 1-day interactive online training </li> +<li>The Well-Grounded Rubyist Video Edition; David. A. Black; O'Reilly Online</li> +<li>Linux Security and Isolation APIs Training; Michael Kerrisk; 3-day on-site training</li> <li>Scripting Vim; Damian Conway; O'Reilly Online</li> -<li>Apache Tomcat Best Practises; 3-day on-site training</li> -<li>F5 Loadbalancers Training; 2-day on-site training; F5, Inc. </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>How CPUs work at https://cpu.land</li> <li>Raku Guide at https://raku.guide </li> <li>Advanced Bash-Scripting Guide </li> -<li>How CPUs work at https://cpu.land</li> </ul><br /> <h2 style='display: inline' id='podcasts'>Podcasts</h2><br /> <br /> @@ -197,61 +197,61 @@ <span>In random order:</span><br /> <br /> <ul> -<li>Hidden Brain</li> +<li>The Changelog Podcast(s)</li> <li>BSD Now [BSD]</li> <li>Backend Banter</li> -<li>Deep Questions with Cal Newport</li> -<li>Maintainable</li> -<li>The ProdCast (Google SRE Podcast)</li> <li>Dev Interrupted</li> <li>The Pragmatic Engineer Podcast</li> -<li>Modern Mentor</li> +<li>Maintainable</li> +<li>The ProdCast (Google SRE Podcast)</li> +<li>Fallthrough [Golang]</li> +<li>Hidden Brain</li> +<li>Deep Questions with Cal Newport</li> <li>Fork Around And Find Out</li> <li>Wednesday Wisdom</li> -<li>Fallthrough [Golang]</li> -<li>The Changelog Podcast(s)</li> <li>Cup o' Go [Golang]</li> <li>Pratical AI</li> +<li>Modern Mentor</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>Java Pub House</li> <li>FLOSS weekly</li> +<li>Modern Mentor</li> +<li>Go Time (predecessor of fallthrough)</li> <li>CRE: Chaosradio Express [german]</li> <li>Ship It (predecessor of Fork Around And Find Out)</li> -<li>Go Time (predecessor of fallthrough)</li> -<li>Modern Mentor</li> -<li>Java Pub House</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>VK Newsletter</li> <li>Changelog News</li> -<li>The Valuable Dev</li> +<li>Golang Weekly</li> <li>byteSizeGo</li> -<li>VK Newsletter</li> -<li>Ruby Weekly</li> +<li>Register Spill</li> <li>Monospace Mentor</li> -<li>Golang Weekly</li> -<li>The Pragmatic Engineer</li> <li>Andreas Brandhorst Newsletter (Sci-Fi author)</li> -<li>Register Spill</li> <li>Applied Go Weekly Newsletter</li> +<li>The Valuable Dev</li> +<li>Ruby Weekly</li> <li>The Imperfectionist</li> +<li>The Pragmatic Engineer</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>Linux Magazine</li> <li>Linux User</li> <li>LWN (online only)</li> <li>freeX (not published anymore)</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 86e1b8d6..aa845763 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 @@ -1741,13 +1741,23 @@ Domain = lan.buetow.org . </pre> <br /> -<span>And afterwards, we need to run the following on all 3 Rocky hosts::</span><br /> +<span>We also need to increase the inotify limit, otherwise nfs-idmapd may fail to start with "Too many open files":</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>[root@r0 ~]<i><font color="silver"># systemctl enable --now nfs-idmapd</font></i> +<pre>[root@r0 ~]<i><font color="silver"># echo 'fs.inotify.max_user_instances = 512' > /etc/sysctl.d/99-inotify.conf</font></i> +[root@r0 ~]<i><font color="silver"># sysctl -w fs.inotify.max_user_instances=512</font></i> +</pre> +<br /> +<span>And afterwards, we need to run the following on all 3 Rocky hosts:</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>[root@r0 ~]<i><font color="silver"># systemctl start nfs-idmapd</font></i> [root@r0 ~]<i><font color="silver"># systemctl enable --now nfs-client.target</font></i> </pre> <br /> diff --git a/gemfeed/DRAFT-f3s-kubernetes-with-freebsd-part-X-OBSERVABILITY2.html b/gemfeed/DRAFT-f3s-kubernetes-with-freebsd-part-X-OBSERVABILITY2.html new file mode 100644 index 00000000..44048b17 --- /dev/null +++ b/gemfeed/DRAFT-f3s-kubernetes-with-freebsd-part-X-OBSERVABILITY2.html @@ -0,0 +1,154 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> +<title>f3s: Kubernetes with FreeBSD - Part 9: Enabling etcd Metrics</title> +<link rel="shortcut icon" type="image/gif" href="/favicon.ico" /> +<link rel="stylesheet" href="../style.css" /> +<link rel="stylesheet" href="style-override.css" /> +</head> +<body> +<p class="header"> +<a href="https://foo.zone">Home</a> | <a href="https://codeberg.org/snonux/foo.zone/src/branch/content-md/gemfeed/DRAFT-f3s-kubernetes-with-freebsd-part-X-OBSERVABILITY2.md">Markdown</a> | <a href="gemini://foo.zone/gemfeed/DRAFT-f3s-kubernetes-with-freebsd-part-X-OBSERVABILITY2.gmi">Gemini</a> +</p> +<h1 style='display: inline' id='f3s-kubernetes-with-freebsd---part-9-enabling-etcd-metrics'>f3s: Kubernetes with FreeBSD - Part 9: Enabling etcd Metrics</h1><br /> +<br /> +<h2 style='display: inline' id='introduction'>Introduction</h2><br /> +<br /> +<span>This post covers enabling etcd metrics monitoring for the k3s cluster. The etcd dashboard in Grafana initially showed no data because k3s uses an embedded etcd that doesn't expose metrics by default.</span><br /> +<br /> +<a class='textlink' href='./2025-12-07-f3s-kubernetes-with-freebsd-part-8.html'>Part 8: Observability</a><br /> +<br /> +<h2 style='display: inline' id='enabling-etcd-metrics-in-k3s'>Enabling etcd metrics in k3s</h2><br /> +<br /> +<span>On each control-plane node (r0, r1, r2), create /etc/rancher/k3s/config.yaml:</span><br /> +<br /> +<pre> +etcd-expose-metrics: true +</pre> +<br /> +<span>Then restart k3s on each node:</span><br /> +<br /> +<pre> +systemctl restart k3s +</pre> +<br /> +<span>After restarting, etcd metrics are available on port 2381:</span><br /> +<br /> +<pre> +curl http://127.0.0.1:2381/metrics | grep etcd +</pre> +<br /> +<h2 style='display: inline' id='configuring-prometheus-to-scrape-etcd'>Configuring Prometheus to scrape etcd</h2><br /> +<br /> +<span>In persistence-values.yaml, enable kubeEtcd with the node IP addresses:</span><br /> +<br /> +<pre> +kubeEtcd: + enabled: true + endpoints: + - 192.168.1.120 + - 192.168.1.121 + - 192.168.1.122 + service: + enabled: true + port: 2381 + targetPort: 2381 +</pre> +<br /> +<span>Apply the changes:</span><br /> +<br /> +<pre> +just upgrade +</pre> +<br /> +<h2 style='display: inline' id='verifying-etcd-metrics'>Verifying etcd metrics</h2><br /> +<br /> +<span>After the changes, all etcd targets are being scraped:</span><br /> +<br /> +<pre> +kubectl exec -n monitoring prometheus-prometheus-kube-prometheus-prometheus-0 \ + -c prometheus -- wget -qO- 'http://localhost:9090/api/v1/query?query=etcd_server_has_leader' | \ + jq -r '.data.result[] | "\(.metric.instance): \(.value[1])"' +</pre> +<br /> +<span>Output:</span><br /> +<br /> +<pre> +192.168.1.120:2381: 1 +192.168.1.121:2381: 1 +192.168.1.122:2381: 1 +</pre> +<br /> +<span>The etcd dashboard in Grafana now displays metrics including Raft proposals, leader elections, and peer round trip times.</span><br /> +<br /> +<h2 style='display: inline' id='complete-persistence-valuesyaml'>Complete persistence-values.yaml</h2><br /> +<br /> +<span>The complete updated persistence-values.yaml:</span><br /> +<br /> +<pre> +kubeEtcd: + enabled: true + endpoints: + - 192.168.1.120 + - 192.168.1.121 + - 192.168.1.122 + service: + enabled: true + port: 2381 + targetPort: 2381 + +prometheus: + prometheusSpec: + additionalScrapeConfigsSecret: + enabled: true + name: additional-scrape-configs + key: additional-scrape-configs.yaml + storageSpec: + volumeClaimTemplate: + spec: + storageClassName: "" + accessModes: ["ReadWriteOnce"] + resources: + requests: + storage: 10Gi + selector: + matchLabels: + type: local + app: prometheus + +grafana: + persistence: + enabled: true + type: pvc + existingClaim: "grafana-data-pvc" + + initChownData: + enabled: false + + podSecurityContext: + fsGroup: 911 + runAsUser: 911 + runAsGroup: 911 +</pre> +<br /> +<h2 style='display: inline' id='summary'>Summary</h2><br /> +<br /> +<span>Enabled etcd metrics monitoring for the k3s embedded etcd by:</span><br /> +<br /> +<ul> +<li>Adding etcd-expose-metrics: true to /etc/rancher/k3s/config.yaml on each control-plane node</li> +<li>Configuring Prometheus to scrape etcd on port 2381</li> +</ul><br /> +<span>The etcd dashboard now provides visibility into cluster health, leader elections, and Raft consensus metrics.</span><br /> +<br /> +<a class='textlink' href='https://codeberg.org/snonux/conf/src/branch/master/f3s/prometheus'>prometheus configuration on Codeberg</a><br /> +<p class="footer"> + Generated with <a href="https://codeberg.org/snonux/gemtexter">Gemtexter 3.0.1-develop</a> | + served by <a href="https://www.OpenBSD.org">OpenBSD</a>/<a href="https://man.openbsd.org/relayd.8">relayd(8)</a>+<a href="https://man.openbsd.org/httpd.8">httpd(8)</a> | + <a href="https://foo.zone/site-mirrors.html">Site Mirrors</a> + <br /> + Webring: <a href="https://shring.sh/foo.zone/previous">previous</a> | <a href="https://shring.sh">shring</a> | <a href="https://shring.sh/foo.zone/next">next</a> +</p> +</body> +</html> diff --git a/gemfeed/atom.xml b/gemfeed/atom.xml index 994c89f9..7e7f3733 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>2025-12-26T08:51:40+02:00</updated> + <updated>2025-12-26T23:33:35+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" /> @@ -6673,13 +6673,23 @@ Domain = lan.buetow.org . </pre> <br /> -<span>And afterwards, we need to run the following on all 3 Rocky hosts::</span><br /> +<span>We also need to increase the inotify limit, otherwise nfs-idmapd may fail to start with "Too many open files":</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>[root@r0 ~]<i><font color="silver"># systemctl enable --now nfs-idmapd</font></i> +<pre>[root@r0 ~]<i><font color="silver"># echo 'fs.inotify.max_user_instances = 512' > /etc/sysctl.d/99-inotify.conf</font></i> +[root@r0 ~]<i><font color="silver"># sysctl -w fs.inotify.max_user_instances=512</font></i> +</pre> +<br /> +<span>And afterwards, we need to run the following on all 3 Rocky hosts:</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>[root@r0 ~]<i><font color="silver"># systemctl start nfs-idmapd</font></i> [root@r0 ~]<i><font color="silver"># systemctl enable --now nfs-client.target</font></i> </pre> <br /> @@ -13,7 +13,7 @@ </p> <h1 style='display: inline' id='hello'>Hello!</h1><br /> <br /> -<span class='quote'>This site was generated at 2025-12-26T08:51:39+02:00 by <span class='inlinecode'>Gemtexter</span></span><br /> +<span class='quote'>This site was generated at 2025-12-26T23:33:35+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 e6307ca5..b20bca2a 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 2025-12-26T08:51:39+02:00</span><br /> +<span class='quote'>This site was last updated at 2025-12-26T23:33:35+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 /> |
