The Kubernetes Homelab That Prints Job Offers - 2025
Read full transcript 13 segments
-
I've been running a kubernetes home lab I've been running a kubernetes home lab for well over a year and it's the number for well over a year and it's the number for well over a year and it's the number one thing that makes me stand out from one thing that makes me stand out from one thing that makes me stand out from other devops candidates and in this other devops candidates and in this other devops candidates and in this video I'm going to show you how I've set video I'm going to show you how I've set video I'm going to show you how I've set up my home lab and what I'm running on up my home lab and what I'm running on up my home lab and what I'm running on there so hopefully it can be some there so hopefully it can be some there so hopefully it can be some inspiration for you to start your home inspiration for you to start your home inspiration for you to start your home lab today my home lab is completely lab today my home lab is completely lab today my home lab is completely running on kubernetes and the sonology running on kubernetes and the sonology running on kubernetes and the sonology nas those are the two components that I nas those are the two components that I nas those are the two components that I have on my home lab and in terms of have on my home lab and in terms of have on my home lab and in terms of Hardware I am using a Thinkpad Hardware I am using a Thinkpad Hardware I am using a Thinkpad T430 as my control plan and my worker T430 as my control plan and my worker T430 as my control plan and my worker nodes are HP Elite desk mini mini PCS or nodes are HP Elite desk mini mini PCS or nodes are HP Elite desk mini mini PCS or thin clients they are very these are thin clients they are very these are thin clients they are very these are refurbished Hardware from Enterprise refurbished Hardware from Enterprise refurbished Hardware from Enterprise environments and you can get them for environments and you can get them for environments and you can get them for really cheap but they work super well I really cheap but they work super well I really cheap but they work super well I have those clustered up and I can if I have those clustered up and I can if I have those clustered up and I can if I do K get noes here you can see my do K get noes here you can see my do K get noes here you can see my production cluster so this is my production cluster so this is my production cluster so this is my ThinkPad and these are my three worker ThinkPad and these are my three worker ThinkPad and these are my three worker notes so I currently have four notes in notes so I currently have four notes in notes so I currently have four notes in my production kubernetes cluster all my production kubernetes cluster all my production kubernetes cluster all running on cheap refurbished Hardware running on cheap refurbished Hardware running on cheap refurbished Hardware the the OS that I'm using is tals tals the the OS that I'm using is tals tals the the OS that I'm using is tals tals Linux and this is has been a great Linux and this is has been a great Linux and this is has been a great experience for me to set that up and it experience for me to set that up and it experience for me to set that up and it has been it basically is production has been it basically is production has been it basically is production grade Enterprise grade Security in your grade Enterprise grade Security in your grade Enterprise grade Security in your kubernetes home lab out of the box you kubernetes home lab out of the box you kubernetes home lab out of the box you can't even SSH into your machines can't even SSH into your machines can't even SSH into your machines anymore it takes over your entire dis anymore it takes over your entire dis anymore it takes over your entire dis and it just exposes an API and it has and it just exposes an API and it has and it just exposes an API and it has been working really well for me but I been working really well for me but I been working really well for me but I don't recommend using this as a beginner don't recommend using this as a beginner don't recommend using this as a beginner when you do want to start a kubernetes
-
when you do want to start a kubernetes when you do want to start a kubernetes home lab then I highly recommend you home lab then I highly recommend you home lab then I highly recommend you start with k3s which is easy to set up start with k3s which is easy to set up start with k3s which is easy to set up but you still get access to the Linux but you still get access to the Linux but you still get access to the Linux server and that way you learn a bit more server and that way you learn a bit more server and that way you learn a bit more about it now my home lab is set up with about it now my home lab is set up with about it now my home lab is set up with Talos Linux and then I'm using flock CD Talos Linux and then I'm using flock CD Talos Linux and then I'm using flock CD as my gitops solution and the reason why as my gitops solution and the reason why as my gitops solution and the reason why I use gitops in my home lab is because I use gitops in my home lab is because I use gitops in my home lab is because this allows me to have my home lab code this allows me to have my home lab code this allows me to have my home lab code P publicly available in my G GI GitHub P publicly available in my G GI GitHub P publicly available in my G GI GitHub repo over here so as you can see I have repo over here so as you can see I have repo over here so as you can see I have almost a thousand commits in this almost a thousand commits in this almost a thousand commits in this project and this is basically my own project and this is basically my own project and this is basically my own open- source project that I use for open- source project that I use for open- source project that I use for reference when I apply for freelance reference when I apply for freelance reference when I apply for freelance contracts or for even if I were was contracts or for even if I were was contracts or for even if I were was applying for jobs I would show this and applying for jobs I would show this and applying for jobs I would show this and then people could see what my thinking then people could see what my thinking then people could see what my thinking process is as an engineer and how I tend process is as an engineer and how I tend process is as an engineer and how I tend to approach these things so this is a to approach these things so this is a to approach these things so this is a really really effective visitor card for really really effective visitor card for really really effective visitor card for you and if you are transitioning your you and if you are transitioning your you and if you are transitioning your career if you are in the beginning of career if you are in the beginning of career if you are in the beginning of your career then this is a perfect way your career then this is a perfect way your career then this is a perfect way of showing to the world what you're of showing to the world what you're of showing to the world what you're learning and what you can do it also learning and what you can do it also learning and what you can do it also forces you to think about security and forces you to think about security and forces you to think about security and you you won't the only secret that I you you won't the only secret that I you you won't the only secret that I have here is my gravana secret that is have here is my gravana secret that is have here is my gravana secret that is uh that's the only password I've uh that's the only password I've uh that's the only password I've committed here still haven't gone around committed here still haven't gone around committed here still haven't gone around to fixing that but since that that's not to fixing that but since that that's not to fixing that but since that that's not available to the public it's okay available to the public it's okay available to the public it's okay otherwise all of my other secrets are otherwise all of my other secrets are otherwise all of my other secrets are stored in Azure key s and nobody can get stored in Azure key s and nobody can get stored in Azure key s and nobody can get into my cluster because everything is into my cluster because everything is into my cluster because everything is super secure and I can say that because
-
super secure and I can say that because super secure and I can say that because I've put a lot of time in securing my I've put a lot of time in securing my I've put a lot of time in securing my cluster and I have confidence in that cluster and I have confidence in that cluster and I have confidence in that nobody can get can get in and that they nobody can get can get in and that they nobody can get can get in and that they can't hack me so this gives you by can't hack me so this gives you by can't hack me so this gives you by forcing yourself to think about it by forcing yourself to think about it by forcing yourself to think about it by forcing thing to expose things towards forcing thing to expose things towards forcing thing to expose things towards the internet then this gives you a lot the internet then this gives you a lot the internet then this gives you a lot of confidence in your capabilities as an of confidence in your capabilities as an of confidence in your capabilities as an engineer I have created a full course on engineer I have created a full course on engineer I have created a full course on this just so you know you might like it this just so you know you might like it this just so you know you might like it it's a full kubernetes home lab where I it's a full kubernetes home lab where I it's a full kubernetes home lab where I teach you how to expose services on your teach you how to expose services on your teach you how to expose services on your kubernetes home lab to the internet kubernetes home lab to the internet kubernetes home lab to the internet 247 and how you can use old Hardware to 247 and how you can use old Hardware to 247 and how you can use old Hardware to create a full kubernetes cluster it's create a full kubernetes cluster it's create a full kubernetes cluster it's eight hours long it's amazing so many eight hours long it's amazing so many eight hours long it's amazing so many people have G given me positive feedback people have G given me positive feedback people have G given me positive feedback on this so check it out if you want to on this so check it out if you want to on this so check it out if you want to so the first app that I have running on so the first app that I have running on so the first app that I have running on my kubernetes cluster is homepage this my kubernetes cluster is homepage this my kubernetes cluster is homepage this is basically my my entry point into my is basically my my entry point into my is basically my my entry point into my home home lab and this is basically my home home lab and this is basically my home home lab and this is basically my personal start page to the internet this personal start page to the internet this personal start page to the internet this is completely configured by myself it's is completely configured by myself it's is completely configured by myself it's running in a container you can see it running in a container you can see it running in a container you can see it over here if I open K9s and then open it over here if I open K9s and then open it over here if I open K9s and then open it here I just restarted it and this is the here I just restarted it and this is the here I just restarted it and this is the pod that's running my homepage and here pod that's running my homepage and here pod that's running my homepage and here you can see the logs as I'm going you can see the logs as I'm going you can see the logs as I'm going through it so it's just running as a through it so it's just running as a through it so it's just running as a container on my cluster and I can container on my cluster and I can container on my cluster and I can approach it through the browser and this approach it through the browser and this approach it through the browser and this basically is my my the entry point I basically is my my the entry point I basically is my my the entry point I created from for myself so first of all created from for myself so first of all created from for myself so first of all you see that I have py hole running so I you see that I have py hole running so I you see that I have py hole running so I have my local DNS and I filter out all have my local DNS and I filter out all have my local DNS and I filter out all of the ads using py
-
of the ads using py of the ads using py Hole uh this is actually running on my Hole uh this is actually running on my Hole uh this is actually running on my sonology Nas then next I have PG admin I sonology Nas then next I have PG admin I sonology Nas then next I have PG admin I like this because I am running a lot of like this because I am running a lot of like this because I am running a lot of databases on my kubernetes cluster and databases on my kubernetes cluster and databases on my kubernetes cluster and this gives me a graphical interface this gives me a graphical interface this gives me a graphical interface towards those databases if I just want towards those databases if I just want towards those databases if I just want to look up something really quickly so I to look up something really quickly so I to look up something really quickly so I can go to my tables and to my diet table can go to my tables and to my diet table can go to my tables and to my diet table and I'll show you what this is about but and I'll show you what this is about but and I'll show you what this is about but I can get the first 100 rows from my uh I can get the first 100 rows from my uh I can get the first 100 rows from my uh from my table here and here you see that from my table here and here you see that from my table here and here you see that uh on this date I have eaten 2,800 uh on this date I have eaten 2,800 uh on this date I have eaten 2,800 calories and I'll show you what this is calories and I'll show you what this is calories and I'll show you what this is about in the next section um in in terms about in the next section um in in terms about in the next section um in in terms of monitoring I am using grafana I'm of monitoring I am using grafana I'm of monitoring I am using grafana I'm just using the CU Promethea stack and I just using the CU Promethea stack and I just using the CU Promethea stack and I really like data and and custom really like data and and custom really like data and and custom dashboards and I'm going to show more of dashboards and I'm going to show more of dashboards and I'm going to show more of this project later uh for now I'm just this project later uh for now I'm just this project later uh for now I'm just going to skip over this one so um I just going to skip over this one so um I just going to skip over this one so um I just want to get into the apps over here so want to get into the apps over here so want to get into the apps over here so another app that I use is comma feed another app that I use is comma feed another app that I use is comma feed this is my RSS feed reader I sub this is my RSS feed reader I sub this is my RSS feed reader I sub subscribed to a ton of RSS feeds and subscribed to a ton of RSS feeds and subscribed to a ton of RSS feeds and then I just pull them all in here and then I just pull them all in here and then I just pull them all in here and it's super it's a very very nice UI I it's super it's a very very nice UI I it's super it's a very very nice UI I believe I I think and it works really believe I I think and it works really believe I I think and it works really well and as you see I am a bit behind on well and as you see I am a bit behind on well and as you see I am a bit behind on reading my my uh RSS feeds but the good reading my my uh RSS feeds but the good reading my my uh RSS feeds but the good thing is that this is available uh to thing is that this is available uh to thing is that this is available uh to the internet and I can just go and open the internet and I can just go and open the internet and I can just go and open my phone while I'm sitting on the bus my phone while I'm sitting on the bus my phone while I'm sitting on the bus for example and I can just read my RSS for example and I can just read my RSS for example and I can just read my RSS RSS feeds from there so that is a very
-
RSS feeds from there so that is a very RSS feeds from there so that is a very um nice way of of of running your RSS um nice way of of of running your RSS um nice way of of of running your RSS feeds before I was doing newsboat in my feeds before I was doing newsboat in my feeds before I was doing newsboat in my terminal my command line and my problem terminal my command line and my problem terminal my command line and my problem was that I couldn't view those when I was that I couldn't view those when I was that I couldn't view those when I was sitting on the bus for example the was sitting on the bus for example the was sitting on the bus for example the next app I have running in my home lab next app I have running in my home lab next app I have running in my home lab is wabag this is a read later app this is wabag this is a read later app this is wabag this is a read later app this is all self-hosted and as I am browsing is all self-hosted and as I am browsing is all self-hosted and as I am browsing the internet I will add things to here the internet I will add things to here the internet I will add things to here they even have a browser extension they even have a browser extension they even have a browser extension that's very easy to set up and I can that's very easy to set up and I can that's very easy to set up and I can just click click and then it's added just click click and then it's added just click click and then it's added here and then it will it will uh scrape here and then it will it will uh scrape here and then it will it will uh scrape the entire article and then add all of the entire article and then add all of the entire article and then add all of the text into the app itself so all of the text into the app itself so all of the text into the app itself so all of this is being stored in a database that this is being stored in a database that this is being stored in a database that I'm running myself so the text all of I'm running myself so the text all of I'm running myself so the text all of this is is stored in my own database and this is is stored in my own database and this is is stored in my own database and in my own read later app so if the in my own read later app so if the in my own read later app so if the author at some point decides to take author at some point decides to take author at some point decides to take this off from the internet I still have this off from the internet I still have this off from the internet I still have all of my I still have my article all of my I still have my article all of my I still have my article available to me and I'm using this to available to me and I'm using this to available to me and I'm using this to save articles for later when I and when save articles for later when I and when save articles for later when I and when I get the time I will read I get the time I will read I get the time I will read them now next I have this is just my them now next I have this is just my them now next I have this is just my homepage where I just have links to the homepage where I just have links to the homepage where I just have links to the the to the Internet so this is these are the to the Internet so this is these are the to the Internet so this is these are not apps that are running on my on my not apps that are running on my on my not apps that are running on my on my cluster but one but here is the next cluster but one but here is the next cluster but one but here is the next section of apps so I am also using section of apps so I am also using section of apps so I am also using LinkedIn as my bookmark manager so here LinkedIn as my bookmark manager so here LinkedIn as my bookmark manager so here I can if I find a nice website so for I can if I find a nice website so for I can if I find a nice website so for example my cubecraft devops community if example my cubecraft devops community if example my cubecraft devops community if I find that website interesting I can
-
I find that website interesting I can I find that website interesting I can just click this browser extension and just click this browser extension and just click this browser extension and save and then this is saved to my save and then this is saved to my save and then this is saved to my LinkedIn instance that I'm self-hosting LinkedIn instance that I'm self-hosting LinkedIn instance that I'm self-hosting and here we go my cubecraft devops and here we go my cubecraft devops and here we go my cubecraft devops community is now saved into my bookmarks community is now saved into my bookmarks community is now saved into my bookmarks an advantage of this is that I tend to an advantage of this is that I tend to an advantage of this is that I tend to switch browsers a lot and try new things switch browsers a lot and try new things switch browsers a lot and try new things and I just have a single place where I and I just have a single place where I and I just have a single place where I store my bookmarks which is then store my bookmarks which is then store my bookmarks which is then available to me wherever I am so I can available to me wherever I am so I can available to me wherever I am so I can also get get access to this on my phone also get get access to this on my phone also get get access to this on my phone if I'm visiting a friend and I can just if I'm visiting a friend and I can just if I'm visiting a friend and I can just what what is that thing about Argo CD what what is that thing about Argo CD what what is that thing about Argo CD that I saw the other day or flux well I that I saw the other day or flux well I that I saw the other day or flux well I can then just or open I can just search can then just or open I can just search can then just or open I can just search and Pull up The Bookmark and then easily and Pull up The Bookmark and then easily and Pull up The Bookmark and then easily shared with my friend so this is also an shared with my friend so this is also an shared with my friend so this is also an application that I'm really happy with application that I'm really happy with application that I'm really happy with it's been doing running really well for it's been doing running really well for it's been doing running really well for me and it works super me and it works super me and it works super clean the next application that I clean the next application that I clean the next application that I recently discovered was n8n and this is recently discovered was n8n and this is recently discovered was n8n and this is a very very cool um low code platform so a very very cool um low code platform so a very very cool um low code platform so I've been getting into low code I've been getting into low code I've been getting into low code platforms like make.com and Zar because platforms like make.com and Zar because platforms like make.com and Zar because of my business and I for example when of my business and I for example when of my business and I for example when someone joins my school Community then I someone joins my school Community then I someone joins my school Community then I add them to a certain welcome sequence add them to a certain welcome sequence add them to a certain welcome sequence Etc so all of this is done through these Etc so all of this is done through these Etc so all of this is done through these low code platforms because they low code platforms because they low code platforms because they integrate with the school Community integrate with the school Community integrate with the school Community now this locco platform is then now this locco platform is then now this locco platform is then self-hosted and I was experimenting with self-hosted and I was experimenting with self-hosted and I was experimenting with this because maybe this is a nice bridge
-
this because maybe this is a nice bridge this because maybe this is a nice bridge to my my data project but I wear an aing to my my data project but I wear an aing to my my data project but I wear an aing and this data it it tracks my sleep it and this data it it tracks my sleep it and this data it it tracks my sleep it tracks all of my my activity scores Etc tracks all of my my activity scores Etc tracks all of my my activity scores Etc and this data is then exposed to the and this data is then exposed to the and this data is then exposed to the Internet by Aura with an API so you can Internet by Aura with an API so you can Internet by Aura with an API so you can access this just by from Aura itself access this just by from Aura itself access this just by from Aura itself this is just the aura uh dashboard and this is just the aura uh dashboard and this is just the aura uh dashboard and here you see I had a good sleep last here you see I had a good sleep last here you see I had a good sleep last night of 8 hours and 17 minutes but I night of 8 hours and 17 minutes but I night of 8 hours and 17 minutes but I also wanted to have this data in my own also wanted to have this data in my own also wanted to have this data in my own postgress databases so I'm going to get postgress databases so I'm going to get postgress databases so I'm going to get into how I run these databases into how I run these databases into how I run these databases afterwards but what I did was I first I afterwards but what I did was I first I afterwards but what I did was I first I was like writing my own python code and was like writing my own python code and was like writing my own python code and then creating my own Docker images and then creating my own Docker images and then creating my own Docker images and running that on my kubernetes cluster running that on my kubernetes cluster running that on my kubernetes cluster which is fine but this time I just went which is fine but this time I just went which is fine but this time I just went with n8n so I set some dates and then I with n8n so I set some dates and then I with n8n so I set some dates and then I can do an API call with my credential can do an API call with my credential can do an API call with my credential and then I just split the data and and then I just split the data and and then I just split the data and upsert that into a postgress database upsert that into a postgress database upsert that into a postgress database and with that I can then go to my and with that I can then go to my and with that I can then go to my grafana here and then I go to my health grafana here and then I go to my health grafana here and then I go to my health metrics and here if I go to sleep for metrics and here if I go to sleep for metrics and here if I go to sleep for example here I have my aura sleep score example here I have my aura sleep score example here I have my aura sleep score in my from my own postgress database so in my from my own postgress database so in my from my own postgress database so if I I go to the last um 90 days for if I I go to the last um 90 days for if I I go to the last um 90 days for example I I have my full Aura data example I I have my full Aura data example I I have my full Aura data available to me in my postgress database available to me in my postgress database available to me in my postgress database and this is mostly because I wanted to and this is mostly because I wanted to and this is mostly because I wanted to learn about databases and I wanted to
-
learn about databases and I wanted to learn about databases and I wanted to have a fun project to do but it is also have a fun project to do but it is also have a fun project to do but it is also about having my own data Gathering my about having my own data Gathering my about having my own data Gathering my own data and and storing that on my own own data and and storing that on my own own data and and storing that on my own on my own on my own Hardware because who on my own on my own Hardware because who on my own on my own Hardware because who knows what happens right if Aura somehow knows what happens right if Aura somehow knows what happens right if Aura somehow decides to stop their service and I decides to stop their service and I decides to stop their service and I don't have access to the data anymore don't have access to the data anymore don't have access to the data anymore but at least I have then stored it in my but at least I have then stored it in my but at least I have then stored it in my own database and I can do fun stuff with own database and I can do fun stuff with own database and I can do fun stuff with it in terms of AI another one is the it in terms of AI another one is the it in terms of AI another one is the health metrics I am exporting things health metrics I am exporting things health metrics I am exporting things from Apple Health into my own postgress from Apple Health into my own postgress from Apple Health into my own postgress database so here you can see that over database so here you can see that over database so here you can see that over the past six months I have been the past six months I have been the past six months I have been increasing my calories per day and I am increasing my calories per day and I am increasing my calories per day and I am uh currently bulking so my body mass is uh currently bulking so my body mass is uh currently bulking so my body mass is going up my body fat percentage is going going up my body fat percentage is going going up my body fat percentage is going up and my body weight is going up but up and my body weight is going up but up and my body weight is going up but also my lean body mass is going up so also my lean body mass is going up so also my lean body mass is going up so that's an so you can have all of this that's an so you can have all of this that's an so you can have all of this available in available in available in grafana now all of this is just I'm grafana now all of this is just I'm grafana now all of this is just I'm doing all of this just for fun and doing all of this just for fun and doing all of this just for fun and because I want to learn so now I learn because I want to learn so now I learn because I want to learn so now I learn how postgress databases work on a more how postgress databases work on a more how postgress databases work on a more deeper level and I know how to work with deeper level and I know how to work with deeper level and I know how to work with data so that's also why I have this this data so that's also why I have this this data so that's also why I have this this um PG admin because of course I can just um PG admin because of course I can just um PG admin because of course I can just go in and for for example if I check go in and for for example if I check go in and for for example if I check health I can go into my uh Health health I can go into my uh Health health I can go into my uh Health database I can list the databases if I database I can list the databases if I database I can list the databases if I connect to health and DT I can list my connect to health and DT I can list my connect to health and DT I can list my tables and if I then tables and if I then tables and if I then select uh star from diet then here I
-
select uh star from diet then here I select uh star from diet then here I have all of the data from diet so I can have all of the data from diet so I can have all of the data from diet so I can just do it from the CLI but this is just just do it from the CLI but this is just just do it from the CLI but this is just a nice way of doing it um in a nice way of doing it um in a nice way of doing it um in a visual Manner and also I find that in a visual Manner and also I find that in a visual Manner and also I find that in in work environments production in work environments production in work environments production environments then these types of tools environments then these types of tools environments then these types of tools are often used a lot so it's good to are often used a lot so it's good to are often used a lot so it's good to have some experience with it and this have some experience with it and this have some experience with it and this way I can just learn it in in the way I can just learn it in in the way I can just learn it in in the comfort of my own home lab so this was a comfort of my own home lab so this was a comfort of my own home lab so this was a fun one to do now I run these databases fun one to do now I run these databases fun one to do now I run these databases using something called the EDB operator using something called the EDB operator using something called the EDB operator so if I do K get all namespace post SQL so if I do K get all namespace post SQL so if I do K get all namespace post SQL operator system here we see that I have operator system here we see that I have operator system here we see that I have a deployment running it's the EDB a deployment running it's the EDB a deployment running it's the EDB postgress for kubernetes operator postgress for kubernetes operator postgress for kubernetes operator and there are two operators there is the and there are two operators there is the and there are two operators there is the Enterprise DB order there as Cloud Enterprise DB order there as Cloud Enterprise DB order there as Cloud native PG and I like EDB because I this native PG and I like EDB because I this native PG and I like EDB because I this was what they were using at my job at was what they were using at my job at was what they were using at my job at the time so I just wanted to use this the time so I just wanted to use this the time so I just wanted to use this for to get more experience with this for to get more experience with this for to get more experience with this particular operator but if you don't particular operator but if you don't particular operator but if you don't like that then you can also go to Cloud like that then you can also go to Cloud like that then you can also go to Cloud native PG native PG native PG and use that for uh provisioning and use that for uh provisioning and use that for uh provisioning databases on your kubernetes cluster and databases on your kubernetes cluster and databases on your kubernetes cluster and the way this works is if I go to for the way this works is if I go to for the way this works is if I go to for example my settle cast and tracker Nam example my settle cast and tracker Nam example my settle cast and tracker Nam space I can create a cluster object on space I can create a cluster object on space I can create a cluster object on the kubernetes cluster that might sound
-
the kubernetes cluster that might sound the kubernetes cluster that might sound weird but that's how it works so if I go weird but that's how it works so if I go weird but that's how it works so if I go to my home lab to my home lab to my home lab repo and then if I open my zettle cast repo and then if I open my zettle cast repo and then if I open my zettle cast database for example this is what a CL database for example this is what a CL database for example this is what a CL object looks like you just Define it in object looks like you just Define it in object looks like you just Define it in yaml and then when I apply that with my yaml and then when I apply that with my yaml and then when I apply that with my uh CI with my flux CD then it creates a uh CI with my flux CD then it creates a uh CI with my flux CD then it creates a cluster resource on the on the cluster resource on the on the cluster resource on the on the kubernetes cluster kga cluster so this kubernetes cluster kga cluster so this kubernetes cluster kga cluster so this is a postgress cluster and here we see is a postgress cluster and here we see is a postgress cluster and here we see the status cluster in healthy State and the status cluster in healthy State and the status cluster in healthy State and it just deploys three pods each of them it just deploys three pods each of them it just deploys three pods each of them being a St a primary and a stand standby being a St a primary and a stand standby being a St a primary and a stand standby of the postest of the postest of the postest cluster and this way I just have a full cluster and this way I just have a full cluster and this way I just have a full fullon postgress cluster running on my fullon postgress cluster running on my fullon postgress cluster running on my kubernetes cluster and I can then store kubernetes cluster and I can then store kubernetes cluster and I can then store data in it just like you would do in any data in it just like you would do in any data in it just like you would do in any other way so this is super fun to play other way so this is super fun to play other way so this is super fun to play around with and what I then do is I back around with and what I then do is I back around with and what I then do is I back up these datab bases to the cloud to up these datab bases to the cloud to up these datab bases to the cloud to Azure blob storage using the barmon Azure blob storage using the barmon Azure blob storage using the barmon object store and this is all integrated object store and this is all integrated object store and this is all integrated into the operator and this is a real into the operator and this is a real into the operator and this is a real fine way of of running databases because fine way of of running databases because fine way of of running databases because at any time time I can just restore my at any time time I can just restore my at any time time I can just restore my database from the cloud and this has database from the cloud and this has database from the cloud and this has happened multiple times the power was happened multiple times the power was happened multiple times the power was cut and all of my data got corrupted cut and all of my data got corrupted cut and all of my data got corrupted well no problem I just deleted my entire well no problem I just deleted my entire well no problem I just deleted my entire cluster and then pointed it to the cluster and then pointed it to the cluster and then pointed it to the object store and then it restored my object store and then it restored my object store and then it restored my entire postgress cluster super easy it
-
entire postgress cluster super easy it entire postgress cluster super easy it works super well so this is a great works super well so this is a great works super well so this is a great learning opportunity to learn about learning opportunity to learn about learning opportunity to learn about databases how to put data into them and databases how to put data into them and databases how to put data into them and how to run databases and how to back how to run databases and how to back how to run databases and how to back them up them up them up and what's even cooler is that they also and what's even cooler is that they also and what's even cooler is that they also have great dashboards for this so I can have great dashboards for this so I can have great dashboards for this so I can I have this amazing dashboard for all of I have this amazing dashboard for all of I have this amazing dashboard for all of my databases I can just check out my uh my databases I can just check out my uh my databases I can just check out my uh data Nam space here and my health data Nam space here and my health data Nam space here and my health database well here we see that I database well here we see that I database well here we see that I actually should up the memory for my for actually should up the memory for my for actually should up the memory for my for my me Health database here and we can my me Health database here and we can my me Health database here and we can see that it was last see that it was last see that it was last archived 2 minutes ago and the base archived 2 minutes ago and the base archived 2 minutes ago and the base backup was 5 hours ago and I can just backup was 5 hours ago and I can just backup was 5 hours ago and I can just check check out all of the stats here I check check out all of the stats here I check check out all of the stats here I can fine tune it if I want to I can find can fine tune it if I want to I can find can fine tune it if I want to I can find problems so this is a a really great way problems so this is a a really great way problems so this is a a really great way to learn databases and database to learn databases and database to learn databases and database operations on kubernetes from the operations on kubernetes from the operations on kubernetes from the comfort of your own home with super comfort of your own home with super comfort of your own home with super cheap cheap cheap Hardware so I have that one and then Hardware so I have that one and then Hardware so I have that one and then another thing that I built is this another thing that I built is this another thing that I built is this settle cast and tracker so I if I go settle cast and tracker so I if I go settle cast and tracker so I if I go back to my grafana and then go to my back to my grafana and then go to my back to my grafana and then go to my ttle cast and track ER this is a Tracker ttle cast and track ER this is a Tracker ttle cast and track ER this is a Tracker that tracks all of the the total notes that tracks all of the the total notes that tracks all of the the total notes in my settle Casten and not taking in my settle Casten and not taking in my settle Casten and not taking system so since I started this let me system so since I started this let me system so since I started this let me see if I filter on a year when I started see if I filter on a year when I started see if I filter on a year when I started I had I had I had 2,200 notes and I'm now at almost 4,000 2,200 notes and I'm now at almost 4,000 2,200 notes and I'm now at almost 4,000 so I almost doubled my notes in that
-
so I almost doubled my notes in that so I almost doubled my notes in that period and this is just fun like I'm a period and this is just fun like I'm a period and this is just fun like I'm a geek I like just Gathering the data and geek I like just Gathering the data and geek I like just Gathering the data and seeing it in grafana it's just silly but seeing it in grafana it's just silly but seeing it in grafana it's just silly but it teaches me a lot on how to do it uh it teaches me a lot on how to do it uh it teaches me a lot on how to do it uh and oh yeah I should probably mention and oh yeah I should probably mention and oh yeah I should probably mention that when you have databases then you that when you have databases then you that when you have databases then you can just read them as a data source here can just read them as a data source here can just read them as a data source here in uh in grafana so you just point that in uh in grafana so you just point that in uh in grafana so you just point that to the service that exposes the database to the service that exposes the database to the service that exposes the database and then you can just use queries to and then you can just use queries to and then you can just use queries to visualize these things so for example my visualize these things so for example my visualize these things so for example my sleep database here if I edit this this sleep database here if I edit this this sleep database here if I edit this this is just a SQL query which is then is just a SQL query which is then is just a SQL query which is then visualized by grafana so this is a super visualized by grafana so this is a super visualized by grafana so this is a super fun way to create projects for yourself fun way to create projects for yourself fun way to create projects for yourself and to uh learn a and to uh learn a and to uh learn a lot and lastly I also track my bedroom lot and lastly I also track my bedroom lot and lastly I also track my bedroom temperature for example so I can see for temperature for example so I can see for temperature for example so I can see for the past year how the bedroom the past year how the bedroom the past year how the bedroom temperature first was like 26° in the temperature first was like 26° in the temperature first was like 26° in the summer and now it has gone down to about summer and now it has gone down to about summer and now it has gone down to about 16° and coincidentally I can also see 16° and coincidentally I can also see 16° and coincidentally I can also see that my sleep score has increased when that my sleep score has increased when that my sleep score has increased when the the the uh bedroom temperature has decreased and uh bedroom temperature has decreased and uh bedroom temperature has decreased and yeah this excites me I I like data and yeah this excites me I I like data and yeah this excites me I I like data and seeing those graphs and seeing the seeing those graphs and seeing the seeing those graphs and seeing the implications of that but I hope this implications of that but I hope this implications of that but I hope this gave you some inspiration and some apps gave you some inspiration and some apps gave you some inspiration and some apps that you can try in your home lab and if that you can try in your home lab and if that you can try in your home lab and if you know any other good tips for me that you know any other good tips for me that you know any other good tips for me that I should try please drop them in the I should try please drop them in the I should try please drop them in the comments below I would love to hear from
-
comments below I would love to hear from comments below I would love to hear from them and if you're interested in them and if you're interested in them and if you're interested in learning more about running your own learning more about running your own learning more about running your own kubernetes home lab do check out my kubernetes home lab do check out my kubernetes home lab do check out my private devops community private devops community private devops community we have an entire section on home we have an entire section on home we have an entire section on home labbing here and I have my full labbing here and I have my full labbing here and I have my full kubernetes home lab course it's the only kubernetes home lab course it's the only kubernetes home lab course it's the only course on about this on the internet all course on about this on the internet all course on about this on the internet all right check it out and see you in the right check it out and see you in the right check it out and see you in the next one
Summary
This video details setting up a Kubernetes home lab using affordable refurbished hardware and Talos Linux, highlighting its advanced security features and suitability as a DevOps portfolio piece. The presenter emphasizes using GitOps with FluxCD to manage the lab's configuration, which is publicly available on GitHub to demonstrate engineering skills. For beginners, starting with K3s is recommended before moving to more complex setups like Talos.