... all of them... But I think I'm going to spend today going over your previous Minecraft video and see if I can get a VM to host services. My question to you, though, how would one run Apache with different versions of, say, PHP off one container? I have some code that works on PHP4 only, and I don't want to convert, mean while, PHP7 is out and I need a web service to run that. CAN one (or multiple) containers run different versions of PHP off of one "instance" of Apache?
Recently found your videos, it's all fantastic stuff! One thing I would be extremely interested in seeing is a series where you go through from the very beginning of a bare-metal server, and doing everything from scratch. It would be nice to have a full process to work through and also see what cool products you would put on it.
Instead of messing with exec'ing into the SQL container to restore data, you can also make the mysql socket available on your host computer (by volume mapping) and accessing the dockerized mysql with a mysql client on the outside. Simple, painless.
I am struggling to install MYSQL on HA cluster you help me build. The issue hinges on persistent storage and replication. What would be a good solution of HA MYSQL (or MARIADB) installation. I am intrigued by the Mariadb Galera integration as it creates multiple masters. Perhaps a good topic for a new video!
I did not need to migrate to a container but this is a great guide to do it or even just start a fresh SQL database. Prolly gonna need that somewhere in the future.
I've been moving services (including tomcat AJP port 8009) to k3s using Traefik though I still need those services to be available outside the k3s cluster. Where I'm currently stuck is how to set up Traefik to listen on other ports, I had it working briefly and could see port 8009 on the traefik dashboard but it later went away because I didn't do it via Helm which I didn't know was how Traefik was deployed via k3s. I'm also interested in doing this for things like InfluxDB and Redis which do use a http protocol but I'd like to expose their standard port #s instead of reconfiguring everything to use 80/443. Do you have a video (or could you) on how to properly add additional routing ports for Traefik as installed by k3s?
Chihuahua's man... Had two dogs as a kid, one Collie and one Chihuahua. The collie was super protective of me. but sadly she passed sometime in my teens. Leaving us with the other one, a chihuahua who throughout my childhood and until the day he died, would go for me or anyone who dare be in the same room as him. Little yappy bitey boi. Loved him to bits but what a nightmare to deal with, I used to think it was a Cat in a Dog's body. You know, one of those pets you can be stroking them and playing one second and the next, they've turned into a rage filled horror beast and is trying to bite your face off.
Very informative video! I would love to see you containerize MongoDB, but not as one running instance. MongoDB has a Kubernetes Operator to manage replicas and shards. A HA setup of MongoDB would be my wish for a future video! :)
bind-mount directory from host is really not an ideal configuration. Much better to use a Storage Class (to use a Storage provider, probably with built-in redundancy like Longhorn) and persistent volume claims all the way through and then mount the storage and copy your data into the folders corresponding to your PVCs. Also, the easiest way to migrate a SQL Database in my experience is just using phpmyadmin. Just connect one instance to both databases one after the other or have one running for each database, if your network setup doesn't allow for one to connect to both. Then just download an SQL file from the old database server and upload and import it on the new one. Easy as that. When I was migrating ~35 workloads from a single docker server to a rancher orchestrated Kubernetes cluster, thereof around 30 with MySQL databases, that proved to be very reliable and fast.
Great video! I do have a question tho, what happens when a node where the sql container is running on crashes? Will the config that you did manually to import your backup into the container still be there? Because as i understand it when a node crashes the scheduler tries to start up the container on another node (if there is one ofcourse), but when it does that the node will just pull the docker image you have specified, in this case mysql:some_version, however that newly created mysql container doesn't have any of the backed up data in it seeing that it is a new container. In the video you did this manually but this won't work in case of a pod restart or recreation. Did i miss something or is this indeed a problem? Cheers!
Not sure if you've had a video about this (slowly working through the backlog of videos you have here) but any chance you can do a video which involves the scaling features of kubernetes, how do we make a deployment, say a basic website that can scale up to meet requirements? As everything we've used so far has been hostport based, i'm not sure how we'd create and manage connections inbound to additional pods.
how would you make for example persistent changes to my.cnf ? Poerformance tunning in private use may be not such a big thing, but for example i would never run a apache webserver without working through /etc/apache
For experimental or lab work, a DB in a container or pod is OK, but not for any kind of production instance unless the data is transitory but even then I'd avoid it like the plague.
Hi Tim. I really appreciate all your videos. GREAT learning experience for me. With my "small business" growing so rapidly, I am needing to have an inventory system that I can scan things in/out of a "warehouse". I would REALLY prefer to keep it on a server within my network. I do NOT want to continue to pay subscriptions on some "cloud". Would you have any recommendations of how to build (mysql, etc), what software to use to run this database on the server (docker, windows, linux, etc)? I'm not a "complete noob", but not far from it. Thanks again for all the great videos! Ps. running dream machine pro, unifi switch, NAS, etc...
Thanks so much! I would start with docker and containerize you db engine that way on Linux if you feel comfortable. Makes upgrades, backups, and migrations easy. You got this!
@technotim, thank you for all the wonderful insights, tutorials, and solid info on docker (especially using Rancher)! I tried searching for your website, but couldn't find one. Are you only generating content on TH-cam?
I really like your videos. They have a lot of information in them. I just have one suggestion. I'm new to learning linux, docker, kubernetes, rancher, etc. So many of your videos are relevant to what I want to learn. It'd be helpful if you had a diagram of the overall VMs and containers and how they relate to one another. For example, you have a NAS with a huge 20TB drive. Is that where you are storing the mysql database file? I understand that it just needs to be on a permanent storage mount/bind location, but am curious how you set yours up. And then, where are your kubernetes pods running? Do you have 3 VMs, 1 for master node and 2 for worker nodes? Or did you set them up a different way? Thanks so much for your knowledge and advice.
Love the video. You do such a great job pulling all this together. How would you do performance monitoring with all these things? Things like CPU, memory and disk I/O usage. Do you have to run a Docker performance monitor, a Rancher performance monitor and a Kubernetes performance monitor, as well as a Linux or Windows perf mon? What if you add a new pod and performance goes to crap? How do you troubleshoot? Thanks!
Just a recommendation, but you might look at doing a video about MSSQL (windows) to MSSQL (linux) Docker/ Rancher. A lot of companies use mssql express and moving from an existing Windows to Linux would be a cool video.
Just installed a ProxMox Type 1, used a few versions of Ubuntu in the past, but getting into the VMs/LXCs, etc and learned a lot (about where to start) from your videos. I love the idea of putting as much into containers vice VMs as possible, but I have specific question regarding Portainer vs Rancher (or can you run them side by side if you really wanted to?). You seem to like Rancher, but I was seeing a lot of great templates for Portainer, etc. Then I see you've got some good things to say about Portainer, so I believe I'm a bit confused. Will running them both hurt / cause issues, or when/why would you use one over the other? Great videos, by the way, keep up the good work!
@technotim - How do you perform upgrades on K8s/Docker/Rancher when you need HA for your DB and or Clustered File Storage? Thanks and love your content!!! Keep them coming. Request: Please do a video on selecting budget solutions for practicing with K8, Ansible, Docker, Proxmox, and implementing HA!
Thank you! If you're running HA kubernetes, upgrade one node at a time. This does not take down the container and they will continue to run, so basically just upgrade! Noted about low power options!
Good video sir. I have a couple of questions for you if I may ask. Can i run Kubernetes as a container? or can i run it on a Synology NAS? Have you ever tried Openshift? I hear that it is better than Ranger.
Dude, your content is amazing! I really want to try and self-host some stuff myself, but the whole thing kinda scares me atm. Probably going to move my little chatbot from heroku to home, when I'll turn my old pc into a server
Tim loved this video, but I feel like you avoided the 10,000lb gorilla in the room on databases. I know you covered this from a home lab perspective but in enterprise environments there’s a lot of considerations specifically around restoring and HA and DR. I’d love to see you dive into this topic more. Not so much from a technical perspective (although that would be cool) but a business operations perspective. Thanks Tim!
Anyone else plagued with the WebSocket Error in Rancher 2.4.8? I had a major system crash and reinstalled Debian, Docker then rancher/rancher:stable docker image and now I'm stuck with the WebSocket Error.
still trying to figure out why you would move a database into a virtualized environment within a virtualized environment. i get the container for organization.. but seriously, lets look at VM's.. are they NOT a container of their own? if your a real admin, then you have already scripted the server build and import of backup for Disaster recovery.. so what's the point? why ADD another layer of virtualization? unless you just hate powershell API for esxi. lol.
Why manage a whole entire OS, CPU, Disk space, patching for just one service? Then, multiply that by every service you have? Then don't forget about every service requires dependencies... this is why Docker and Kubernetes exist :) Check out th-cam.com/video/pxwUXJmAER4/w-d-xo.html
@@TechnoTim ya, ya, ya.. i've been a systems admin for 25+ years, i know what it is, i also run them. but i can tell you its not all what its cracked up to be.. who says you have to run 1 service on an entire VM with an OS. with the right design, 1 single vm can do MUCH more than just run 1 service. as far as dependencies are concerned, a good design doesn't have a dependency concern, they flow together. i see it as just two different ways of seeing things.. anyways.. have fun.
Database in a container? Deffinitely not a good idea. For testing its fine. For production is a no no. Imagine large databases running on containers that run on nodes which are shared which who knows how many other containers. Databases are sensitive to IOPS and containers are not the best at offering that. Containers are cool and save a lot of money but not for everything.
@@TechnoTim I should have listened to you. Now I try to host a server, and it's as if the wsl 2 is only existent within windows, and windows itself has begun to use a vEthernet ipv4. Honestly, I am lost.
I've joined Tim's discord but I don't see any mention or links to documentation. Can someone enlighten me? Hmmm, maybe I haven't been given permissions yet?
Why in the world would you put a database in kube. It should be an antipattern. The best database is a hosted one, where you don't manage replication, high availability, voting, leaders, storage space etc.
@@TechnoTim The reason people give is you're basically adding extra steps for the network connection to go through which would make the connection slower... but if you're already running in a VM the same thing would apply. So if you were happy with the performance in a VM, Docker should be fine as well
The containerization of DBs are tricky because storage, resources and HA. So first storage: if you use a multiple node cluster you need to have a storage solutions that allows to mount the storage in every node. Could something simple like NFS or something more efficient like CSI driver for cloud storage (EBS for example). Second if your db needs a alot a memory that cloud fill all your node so what makes sense to containerize that db. As example your nodes have 8GB and you need 4GB for your db maybe keep that db in VM. Third HA, DBs like MySQL already have mechanisms for HA with replication so the Deployment resources and State full sets could me more complex to config that the regular services.
search "automysqlbackup", a very well done script, you can configure it via external conf file or directly via the 1st part of the script itself, then you can schedule it and have it run your backups, have them compressed, email logs or backups themselves, rotate them periodically... excellent job, like this video! :)
Running Databases on Kubernetes is the worst thing you would ever do. This is burn with red iron on your brain on the Certified kubernetes Administrator.
Which services have you been putting off migrating to Docker?
My backup tools
I've actually got everything switched over now. And added a few more services along the way such as Ubooquity.
MS RDSH :)
... all of them... But I think I'm going to spend today going over your previous Minecraft video and see if I can get a VM to host services.
My question to you, though, how would one run Apache with different versions of, say, PHP off one container? I have some code that works on PHP4 only, and I don't want to convert, mean while, PHP7 is out and I need a web service to run that. CAN one (or multiple) containers run different versions of PHP off of one "instance" of Apache?
@@Mr76Pontiac this is the perfect use case for Docker. I run 5 different versions of NodeJS and 2 versions of MySQL and a few versions of php.
It freaks me out having 1987 Johnny Depp telling me about containerization.
🤓
You're one of my favourite techs on here. If not my favourite
Thank you so much!
Recently found your videos, it's all fantastic stuff!
One thing I would be extremely interested in seeing is a series where you go through from the very beginning of a bare-metal server, and doing everything from scratch. It would be nice to have a full process to work through and also see what cool products you would put on it.
Thank you! Start with proxmox install, then ubuntu on proxmox, then Rancher install, then here. That’s the order 😀. They are all there!
Instead of messing with exec'ing into the SQL container to restore data, you can also make the mysql socket available on your host computer (by volume mapping) and accessing the dockerized mysql with a mysql client on the outside. Simple, painless.
I am struggling to install MYSQL on HA cluster you help me build. The issue hinges on persistent storage and replication. What would be a good solution of HA MYSQL (or MARIADB) installation. I am intrigued by the Mariadb Galera integration as it creates multiple masters. Perhaps a good topic for a new video!
I noticed you didn’t specify any node affinity in scheduling your MySQL pod. Do you only have one node in your cluster?
In this demo, yes! Good eye!
Use the Physical backup method for backup of mysql and restore the same into the docker container.
I did not need to migrate to a container but this is a great guide to do it or even just start a fresh SQL database. Prolly gonna need that somewhere in the future.
I've been moving services (including tomcat AJP port 8009) to k3s using Traefik though I still need those services to be available outside the k3s cluster. Where I'm currently stuck is how to set up Traefik to listen on other ports, I had it working briefly and could see port 8009 on the traefik dashboard but it later went away because I didn't do it via Helm which I didn't know was how Traefik was deployed via k3s. I'm also interested in doing this for things like InfluxDB and Redis which do use a http protocol but I'd like to expose their standard port #s instead of reconfiguring everything to use 80/443. Do you have a video (or could you) on how to properly add additional routing ports for Traefik as installed by k3s?
Chihuahua's man... Had two dogs as a kid, one Collie and one Chihuahua.
The collie was super protective of me. but sadly she passed sometime in my teens. Leaving us with the other one, a chihuahua who throughout my childhood and until the day he died, would go for me or anyone who dare be in the same room as him. Little yappy bitey boi.
Loved him to bits but what a nightmare to deal with, I used to think it was a Cat in a Dog's body. You know, one of those pets you can be stroking them and playing one second and the next, they've turned into a rage filled horror beast and is trying to bite your face off.
Very informative video! I would love to see you containerize MongoDB, but not as one running instance. MongoDB has a Kubernetes Operator to manage replicas and shards. A HA setup of MongoDB would be my wish for a future video! :)
Good idea!
bind-mount directory from host is really not an ideal configuration. Much better to use a Storage Class (to use a Storage provider, probably with built-in redundancy like Longhorn) and persistent volume claims all the way through and then mount the storage and copy your data into the folders corresponding to your PVCs. Also, the easiest way to migrate a SQL Database in my experience is just using phpmyadmin. Just connect one instance to both databases one after the other or have one running for each database, if your network setup doesn't allow for one to connect to both. Then just download an SQL file from the old database server and upload and import it on the new one. Easy as that. When I was migrating ~35 workloads from a single docker server to a rancher orchestrated Kubernetes cluster, thereof around 30 with MySQL databases, that proved to be very reliable and fast.
For sure! I did it for the sake of not going into storage options. Those are coming in a later tutorial! Thank you!
Great video! I do have a question tho, what happens when a node where the sql container is running on crashes? Will the config that you did manually to import your backup into the container still be there? Because as i understand it when a node crashes the scheduler tries to start up the container on another node (if there is one ofcourse), but when it does that the node will just pull the docker image you have specified, in this case mysql:some_version, however that newly created mysql container doesn't have any of the backed up data in it seeing that it is a new container. In the video you did this manually but this won't work in case of a pod restart or recreation. Did i miss something or is this indeed a problem? Cheers!
We persisted the volume to disk!
@@TechnoTim Will a newly created container be able to just work right out of the gate with that volume? Is there no further config required first?
@@TechnoTim Yes, but the disk is on one node/VM, isn't it? Do you use anything like Longhorn to sync the volumes across nodes?
Here's my longhorn video! th-cam.com/video/eKBBHc0t7bc/w-d-xo.html
@@TechnoTim Thanks man! Cool that you remembered!
Not sure if you've had a video about this (slowly working through the backlog of videos you have here) but any chance you can do a video which involves the scaling features of kubernetes, how do we make a deployment, say a basic website that can scale up to meet requirements? As everything we've used so far has been hostport based, i'm not sure how we'd create and manage connections inbound to additional pods.
thank you so much for this great explanation
how would you make for example persistent changes to my.cnf ? Poerformance tunning in private use may be not such a big thing, but for example i would never run a apache webserver without working through /etc/apache
For experimental or lab work, a DB in a container or pod is OK, but not for any kind of production instance unless the data is transitory but even then I'd avoid it like the plague.
There are operators now to help with HA DBs on k8s!
@@TechnoTim there are but I deal with databases that are 7TB in size. 😉
Hi Tim - many thanks for the great videos.
Glad you like them!
Hi Tim. I really appreciate all your videos. GREAT learning experience for me. With my "small business" growing so rapidly, I am needing to have an inventory system that I can scan things in/out of a "warehouse". I would REALLY prefer to keep it on a server within my network. I do NOT want to continue to pay subscriptions on some "cloud". Would you have any recommendations of how to build (mysql, etc), what software to use to run this database on the server (docker, windows, linux, etc)? I'm not a "complete noob", but not far from it. Thanks again for all the great videos! Ps. running dream machine pro, unifi switch, NAS, etc...
Thanks so much! I would start with docker and containerize you db engine that way on Linux if you feel comfortable. Makes upgrades, backups, and migrations easy. You got this!
@technotim, thank you for all the wonderful insights, tutorials, and solid info on docker (especially using Rancher)!
I tried searching for your website, but couldn't find one. Are you only generating content on TH-cam?
All my socials are in the description! Twitch, Twitter, etc. thank you!!!
Your the most unique Content Creater And I love it
Thank you so much!
@@TechnoTim Are you ceh
Is it wise to pin the bugfix version, with 5.6 you would get the important security bugfixes?
I really like your videos. They have a lot of information in them. I just have one suggestion. I'm new to learning linux, docker, kubernetes, rancher, etc. So many of your videos are relevant to what I want to learn. It'd be helpful if you had a diagram of the overall VMs and containers and how they relate to one another. For example, you have a NAS with a huge 20TB drive. Is that where you are storing the mysql database file? I understand that it just needs to be on a permanent storage mount/bind location, but am curious how you set yours up. And then, where are your kubernetes pods running? Do you have 3 VMs, 1 for master node and 2 for worker nodes? Or did you set them up a different way? Thanks so much for your knowledge and advice.
Thanks for the demo and info, have a great day
Thanks for watching!
Love the video. You do such a great job pulling all this together. How would you do performance monitoring with all these things? Things like CPU, memory and disk I/O usage. Do you have to run a Docker performance monitor, a Rancher performance monitor and a Kubernetes performance monitor, as well as a Linux or Windows perf mon? What if you add a new pod and performance goes to crap? How do you troubleshoot? Thanks!
Great suggestion!
Just a recommendation, but you might look at doing a video about MSSQL (windows) to MSSQL (linux) Docker/ Rancher. A lot of companies use mssql express and moving from an existing Windows to Linux would be a cool video.
Thanks for the tip!
Just installed a ProxMox Type 1, used a few versions of Ubuntu in the past, but getting into the VMs/LXCs, etc and learned a lot (about where to start) from your videos. I love the idea of putting as much into containers vice VMs as possible, but I have specific question regarding Portainer vs Rancher (or can you run them side by side if you really wanted to?). You seem to like Rancher, but I was seeing a lot of great templates for Portainer, etc. Then I see you've got some good things to say about Portainer, so I believe I'm a bit confused. Will running them both hurt / cause issues, or when/why would you use one over the other? Great videos, by the way, keep up the good work!
I'm still running MariaDB over NFS on ZFS mirror (3x HDD) :D
Dino-setup, definitely slow, but proven itself rock solid.
Thanks for sharing
Really like your videos and your ideas.
Thank you very much!
Hi Tim,
Can you do a video on statefulsets? on how to add a disk and it works?
Great idea!
Great video! Interesting topic, very clear explanation and awesome production quality!
Glad you enjoyed it!
If you are attaching a volume to persist the data in the db... Wouldn't that count as a backup?
Because if something goes wrong with the container wouldn't you be able to deploy a new service persisting the data in /home/technotim/mysql-data ?
@technotim - How do you perform upgrades on K8s/Docker/Rancher when you need HA for your DB and or Clustered File Storage?
Thanks and love your content!!! Keep them coming.
Request: Please do a video on selecting budget solutions for practicing with K8, Ansible, Docker, Proxmox, and implementing HA!
Thank you! If you're running HA kubernetes, upgrade one node at a time. This does not take down the container and they will continue to run, so basically just upgrade! Noted about low power options!
Good video sir. I have a couple of questions for you if I may ask. Can i run Kubernetes as a container? or can i run it on a Synology NAS? Have you ever tried Openshift? I hear that it is better than Ranger.
Hi. You cannot run kubernetes in a container, because it manages containers :)
@@TechnoTim Well, there's kind (kubernetes-in-docker). That's mainly targetted for a local testing env, but technically that's possible :)
Dude, your content is amazing! I really want to try and self-host some stuff myself, but the whole thing kinda scares me atm. Probably going to move my little chatbot from heroku to home, when I'll turn my old pc into a server
Thank you so much. You can do it!
Tim loved this video, but I feel like you avoided the 10,000lb gorilla in the room on databases. I know you covered this from a home lab perspective but in enterprise environments there’s a lot of considerations specifically around restoring and HA and DR. I’d love to see you dive into this topic more. Not so much from a technical perspective (although that would be cool) but a business operations perspective. Thanks Tim!
Anyone else plagued with the WebSocket Error in Rancher 2.4.8? I had a major system crash and reinstalled Debian, Docker then rancher/rancher:stable docker image and now I'm stuck with the WebSocket Error.
I haven't seen this
I did not find the mysql backup script on your website. Would you help me ?
The docs now have their own site techno-tim.github.io/
We would like to see videos related to security of containers and k8s
still trying to figure out why you would move a database into a virtualized environment within a virtualized environment. i get the container for organization.. but seriously, lets look at VM's.. are they NOT a container of their own? if your a real admin, then you have already scripted the server build and import of backup for Disaster recovery.. so what's the point? why ADD another layer of virtualization? unless you just hate powershell API for esxi. lol.
Why manage a whole entire OS, CPU, Disk space, patching for just one service? Then, multiply that by every service you have? Then don't forget about every service requires dependencies... this is why Docker and Kubernetes exist :) Check out th-cam.com/video/pxwUXJmAER4/w-d-xo.html
@@TechnoTim ya, ya, ya.. i've been a systems admin for 25+ years, i know what it is, i also run them. but i can tell you its not all what its cracked up to be.. who says you have to run 1 service on an entire VM with an OS. with the right design, 1 single vm can do MUCH more than just run 1 service. as far as dependencies are concerned, a good design doesn't have a dependency concern, they flow together. i see it as just two different ways of seeing things.. anyways.. have fun.
Thanks for the insight!!!
Database in a container? Deffinitely not a good idea. For testing its fine. For production is a no no. Imagine large databases running on containers that run on nodes which are shared which who knows how many other containers. Databases are sensitive to IOPS and containers are not the best at offering that. Containers are cool and save a lot of money but not for everything.
Thanks for the insight!
How about a MyIsam database engine ? Is it working well ?
Haven't tried but I am sure they have a docker image too!
Great content!! Can you make a video using a database on longhorn volumes? Thanks in advance!! Cheers from Brazil!
Thank you Sir!
You are welcome!
I do the import in HeidiSQL instead of inside that container
...why would you put something that is as persistent as it can be (a database) into something as ephemeral as it can be (a container)?
Once you map the volumes, the data is persistent. Then it makes upgrades, running multiple versions, and moving very easy!
@@TechnoTim You have a point there but the kind of databases I have to deal with would really bo out of place inside containers.... SAP Hana and such.
You might want to look into kubedb
Thank you!
Can you show how to update your mysql database to latest version ???
You would probably migrate your existing DB first, then migrate to Kubernetes!
Are you using wsl2?
I am still using 1. 2 is a network nightmare for web development.
@@TechnoTim Ah, I just switched to wsl2😪 Been enjoying your videos, btw!
@@TechnoTim I should have listened to you. Now I try to host a server, and it's as if the wsl 2 is only existent within windows, and windows itself has begun to use a vEthernet ipv4. Honestly, I am lost.
I've joined Tim's discord but I don't see any mention or links to documentation. Can someone enlighten me? Hmmm, maybe I haven't been given permissions yet?
It's all listed in #free-tutorials channel Also, you can ask in there, we won't bite 🦈
Only one channel is shown: start-here (read-only). I think I'm somehow in some wrong mode.
what and why is a mount point?
A mount point in docker is a path that you mount from the container to the host
Why in the world would you put a database in kube. It should be an antipattern. The best database is a hosted one, where you don't manage replication, high availability, voting, leaders, storage space etc.
Informative video bro. But can you make a video for beginner in docker and Kubernetes. 👌
Sure 👍 Already have on th-cam.com/video/oILc0ywDVTk/w-d-xo.html
put it of forever thats my way to go becuase i have 5 differnt verisons onf mysql running in the vm
Nice!!! The time is now!
Please make one video on longhorn with rancher
Possibly!
Done! Here's my longhorn video! th-cam.com/video/eKBBHc0t7bc/w-d-xo.html
@@TechnoTim thank you so much 😊
Basically in the day I just wanted to put DB on k8.
Nice!
I don't know where I heard that moving databases to Docker was a bad idea. 🤔
Hey, me neither. It's great! Not sure why I put this one off for so long. I think it's because I had to many DBs on there!
@@TechnoTim The reason people give is you're basically adding extra steps for the network connection to go through which would make the connection slower... but if you're already running in a VM the same thing would apply. So if you were happy with the performance in a VM, Docker should be fine as well
@@42jnyl Thanks for the insight!
The containerization of DBs are tricky because storage, resources and HA.
So first storage: if you use a multiple node cluster you need to have a storage solutions that allows to mount the storage in every node. Could something simple like NFS or something more efficient like CSI driver for cloud storage (EBS for example).
Second if your db needs a alot a memory that cloud fill all your node so what makes sense to containerize that db. As example your nodes have 8GB and you need 4GB for your db maybe keep that db in VM.
Third HA, DBs like MySQL already have mechanisms for HA with replication so the Deployment resources and State full sets could me more complex to config that the regular services.
search "automysqlbackup", a very well done script, you can configure it via external conf file or directly via the 1st part of the script itself, then you can schedule it and have it run your backups, have them compressed, email logs or backups themselves, rotate them periodically... excellent job, like this video! :)
yeah; its super simple; uses the etc/mysql/conf.d/debian "backdoor" to login, so its as simple as apt install automysqlbackup ; and it runs;
Thank you!
Running Databases on Kubernetes is the worst thing you would ever do. This is burn with red iron on your brain on the Certified kubernetes Administrator.
hahaha!
Ignore me, im here for the algorythm.
Ignore this comment, it is just for the algorithm ;)
Now we won't need DBA's ... w00t!,!I get to retire!
We still need DBAs!
1st :D
you were!