Cloud Native Distributed Storage in Kubernetes with Longhorn

แชร์
ฝัง
  • เผยแพร่เมื่อ 10 ธ.ค. 2024

ความคิดเห็น • 226

  • @TechnoTim
    @TechnoTim  3 ปีที่แล้ว +38

    How are you managing storage in kubernetes?
    BTW if you're new here welcome! Be sure to subscribe for more content like this!

    • @piresashwin
      @piresashwin 3 ปีที่แล้ว

      Hi Tim.
      Thanks for the tutorial. I have created a custom cluster. When I try to install longhorn, the Longhorn-manager pods are in CrashLoopBackOff and the installation fails. Can you help?

    • @blaiseutube
      @blaiseutube ปีที่แล้ว

      Do you have an opinion disk configuration?
      For example, my server has five disks in a striped RAID, resulting in 3TB of filesystem ext4.
      Should I reconfigure as RAID 0 and let longhorn manage the redundancy?

    • @MartinHiggs84
      @MartinHiggs84 ปีที่แล้ว

      Random Q have you been able to add longhorn to your ansible script? Just watching the k3s + ansible video at the moment.

  • @odytrice
    @odytrice 3 ปีที่แล้ว +21

    I tried OpenEBS, NFS, StorageOS, LocalProvisioner and they were ALL a pain to deploy and finicky to use. But so far Longhorn has been simple.
    The dedicated UI helps a ton whenever I allocate a pvc and can't the pod can't attach to the PV.
    Your Video also showed other features that I never explored like backups and snapshots. Keep up the great content! You are now one of my favorite channels. Subbed with Notification Bell

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว +2

      Than you so much! Looks like you have quite the experience in Rancher and Storage. Keep it up! Thanks for the comment!

  • @mamadouyayadiallo7364
    @mamadouyayadiallo7364 7 วันที่ผ่านมา +1

    3 years laters still top TechnoTim, awesome thanks for your contents

  • @gpoleze
    @gpoleze 3 ปีที่แล้ว +4

    Dude, how can I give two thumbs up!? I was trying to solve this volumes issues for a while, and then you came and did it for me, again.
    Thank you so much!!!

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว

      Like & Subscribe works :) Thank you!

  • @aixxia-vr6op
    @aixxia-vr6op 11 หลายเดือนก่อน

    🎯 Key Takeaways for quick navigation:
    00:00 Challenges *with Kubernetes storage.*
    01:46 Longhorn: *Lightweight, reliable Kubernetes storage.*
    04:49 Installing *Longhorn in Kubernetes.*
    10:28 Using *tags instead of taints for storage nodes.*
    11:23 Setting *up persistent volumes with Longhorn.*
    16:58 Creating *backups and snapshots with Longhorn.*
    Made with HARPA AI

  • @devin.n
    @devin.n 3 ปีที่แล้ว +10

    Ahhhh yes! My favorite time of the week, when Techno Tim releases a new vid.

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว +2

      Woohoo! (Also Woohoo for Saturday!)

  • @pratikbin
    @pratikbin 3 ปีที่แล้ว +14

    What a coincidence... I was just reading longhorn docs to use in our prod, and you just made it easier 😁 thanks

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว

      Nice!

    • @vermiumsifell
      @vermiumsifell 3 ปีที่แล้ว

      @@TechnoTim I also wonder about the question Ariel said

  • @jaysistar2711
    @jaysistar2711 3 ปีที่แล้ว +2

    Thanks! A storage node manager, redundancy, and backups were exactly what I was looking to find. It's a great plus that it has a nice UI, too.

  • @CrankyCoder
    @CrankyCoder 3 ปีที่แล้ว +4

    I have longhorn installed on my 12 node pi4 cluster with a few of my nodes with extra SSD storage. Works great!

    • @CrankyCoder
      @CrankyCoder 3 ปีที่แล้ว

      @@notquitecopacetic oh lordy that's a loaded question lol. Ok. So Ill try to keep it brief on how I have my cluster setup. Whole thing is built with ansible and k3s. 3 master nodes - booting off ssd. Those 3 master nodes also run as longhorn storage nodes. Remaining nodes are currently running of SD cards. Those nodes are worker nodes only. The SSD boot is FAST for sure. But I don't have any issues (yet) with the sd cards.

  • @goldenmunky6512
    @goldenmunky6512 3 ปีที่แล้ว +6

    This is freakin amazing! Thank you SO much for this video!

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว

      Glad you liked it!

  • @hoangphuloctruong8433
    @hoangphuloctruong8433 ปีที่แล้ว

    Very thank you TIm, you provided me a new approach to the storage in k8s

  • @stompreaper
    @stompreaper 3 ปีที่แล้ว +2

    Thanks Tim. This was very timely. I was just starting think about the issue.

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว

      Glad it was helpful!

  • @Standbackforscience
    @Standbackforscience 3 ปีที่แล้ว +8

    Tim : "Thanks ahead of time for the likes"
    Me : Instantly likes video.

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว +1

      Thanks after the time for the likes!

  • @georgioskatsanakis1711
    @georgioskatsanakis1711 ปีที่แล้ว

    man happy I found your channel, planning for homelab for my projects, and you made my life easier.

    • @TechnoTim
      @TechnoTim  ปีที่แล้ว +2

      Glad I could help!

  • @acetin
    @acetin 3 ปีที่แล้ว +1

    very high quality content together with the documentation site, amazing work!

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว +1

      Much appreciated!

  • @dimaa
    @dimaa 3 ปีที่แล้ว +9

    fine, you convinced me to use rancher with k3s.

  • @mnrsociety5103
    @mnrsociety5103 3 ปีที่แล้ว +2

    Thanks for very useful content. Thanks a lot and Happy New Year!

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว

      Thank you! Happy new year!

  • @renatocron
    @renatocron 2 ปีที่แล้ว

    dude you rocks! just going straight to the points and showing all the good features

  • @Peter1215
    @Peter1215 3 ปีที่แล้ว

    Just stumbled on this vid. Really nice explanation and pretty on time for me. Just about to start exploring Longhorn. Thank you!

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว

      Welcome aboard!

  • @bisdak5761
    @bisdak5761 3 ปีที่แล้ว +4

    More Rancher how to's please. great job on this.

  • @FabianoChagas
    @FabianoChagas 3 ปีที่แล้ว

    I'm always learning a lot from your videos. Thanks for sharing!

  • @kosikond
    @kosikond 3 ปีที่แล้ว

    Chaps, - don't symlink anything from /var/lib/longhorn as I did,all volumes will stay unbound. Learned hard way. And thanks for the video TIm!

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว

      Good call! I think you need to set up fstab maybe? Not sure. Let me know!

  • @Nahuectl
    @Nahuectl 3 ปีที่แล้ว +50

    Well... I'm certain it is pronounced Maria and not Maria

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว +10

      Finally! I now know how to pronounce Maria! It's as simple as saying "Maria"!

  • @blaiseutube
    @blaiseutube ปีที่แล้ว

    Thank you!!
    I love k3s and looking forward to longhorn

  • @thomastthai
    @thomastthai ปีที่แล้ว +1

    Excellent video Tim! Demonstrating an automated disaster recovery would be an area to enhance this video further -- perhaps an idea for a follow-up video.

  • @trungnguyen6708
    @trungnguyen6708 3 ปีที่แล้ว +1

    thanks so much,now i have the good choice option fir storageclass

  • @ThePandaGuitar
    @ThePandaGuitar 3 ปีที่แล้ว

    Thanks a lot for this video Tim! 🔥

  • @bobwong8268
    @bobwong8268 3 ปีที่แล้ว

    Great Job! And thanks for writing good Description. Appreciated.

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว +1

      Thank you!

  • @DamjanKumin
    @DamjanKumin 3 ปีที่แล้ว +6

    Great video indeed - I deployed Longhorn before this video (but not by much) and I always used worker nodes for storage. Now I wanted to setup, as you did, nodes dedicated only to storage workload -- regardless how I use the taints, I cannot get it to work - if I set taint, all nodes go red, regardless what I set the taint, and the setting in the webconsole settings input. Any light on that?

    • @communityusorg
      @communityusorg 2 ปีที่แล้ว

      You figure taints out? My experience is the same. I did the stuff Tim mentioned in his docs. Nodes say "Down" until I remove the taint mentioned in the docs. Longhorn docs say to remove all the disk and then edit the yaml. Haven't tried that.

  • @wstrater
    @wstrater 3 ปีที่แล้ว +6

    What was the benefit of spinning up storage nodes versus attaching additional volumes to your existing agent nodes? That should keep the storage of Docker images and logs separate from Longhorn storage.

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว

      Good point. Dedicating these nodes to this role allows greater control and security over these nodes.

    • @wstrater
      @wstrater 3 ปีที่แล้ว +1

      @@TechnoTim Have you looked at the fsGroup within the securityContext? I have not used one but you should be able to create a custom group/GUID on the host which owns the Longhorn data directory and then modify the Longhorn Daemonset or Deployment to use that GUID allowing it access. Other Pods without the correct securityContext should be denied access.

  • @firewall6810
    @firewall6810 3 ปีที่แล้ว +1

    It is so interesting. Never thought to be so interested into docker, kube, rancher. Since I started to look your videos. I am 25 years in the it business but now it’s time to learn new things and setup my home cluster services instead of installing everytime a new Ubuntu server for an application into a containerized docker cluster (based on proxmox) Thank you so much Tim 👍🏻. Btw is there a video to setup the cluster? In the setup Video (docker, kube, Rancher) you didn’t do it

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว

      Thank you! Glad you like it! Here it is! th-cam.com/video/UoOcLXfa8EU/w-d-xo.html

  • @about92dwarves30
    @about92dwarves30 3 ปีที่แล้ว +4

    Would you please make videos on MinIO whenever you figure out the cert piece and possibly a video on setting up a local Git instance?

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว

      I'd love to get MinIO working (and it does with TrueNAS) but I think the issue is with Longhorn. It doesn't like self signed certs.

    • @greatnile
      @greatnile 3 ปีที่แล้ว

      @@TechnoTim what does longhorn has to do with certificates?
      coincidentally, half an hour ago I was able to have minio deployed using longhorn storage class and it works lime a charm when port-forwarding the minio and the console services to my local, however, minio operator is quite unorganized in terms of documentation, so I wasn't able to expose my minio with an ingress resource.
      I appreciate if you can help here. 🙏

    • @greatnile
      @greatnile 3 ปีที่แล้ว +1

      back again,
      I was able to securely expose my minio (which is using longhorn volumes) with nginx 😍😍😍 will try to share the manifests later

  • @camaycama7479
    @camaycama7479 2 ปีที่แล้ว +1

    keep up the good work dude! Seriously, your channel targets so well what I'm working on, month after month! Is there a telepathy thing there? ;)

    • @TechnoTim
      @TechnoTim  2 ปีที่แล้ว +1

      haha! Thank you! 🤯

  • @spyko01360
    @spyko01360 3 ปีที่แล้ว

    i'm using longhorn right now !
    Thanks you

  • @sethalump
    @sethalump 3 ปีที่แล้ว

    Thx man. I've been quite curious about this.

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว

      Glad you enjoy it!

  • @barrybay3696
    @barrybay3696 3 ปีที่แล้ว +1

    Love your videos mate, keep it up, you are amazing, clear and understandable and well explained on each topic, can you please make a video about proxmox solo on storage options and possibilities and ways to configure mate.

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว

      Thank you! Possibly!

  • @PhilipLon7
    @PhilipLon7 3 ปีที่แล้ว

    Great video! Short video but good explanation of everything important.

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว +1

      Thank you! I try not to make them too long!

  • @Jarek.
    @Jarek. 3 ปีที่แล้ว +2

    Fantastic video, as always 👍One thing I'm missing is a description of the lower layers. OK, we have these 4 Worker Nodes which probably are running on top of VMs in Proxmox but are they distributed across different physical servers? What are underlying VM disk devices? Having 4 WNodes and replica=2, how do you prevent that both primary and replica data does not go to WNodes running in same physical server? What is minimum number of servers to provide redundancy and avoid split-brain? Asking these question because this seem important from resilience point of view.

  • @rpetti
    @rpetti 3 ปีที่แล้ว

    I've actually been using the nfs-subdir-external-provisioner storage class to automatically mount a subdirectory from an exported FreeNAS NFS share. It works, but longhorn seems a lot more robust!

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว

      Yeah, I too use nfs client provisioner but I don’t have HA NFS! This gives you HA block storage!

  • @nexovec
    @nexovec ปีที่แล้ว

    Maaria is the official Luigi approved pronounciation of that database.

  • @zainulabiddin5285
    @zainulabiddin5285 ปีที่แล้ว

    Excellent video Tim! how to Set up a Storage Class with failover capability using longhorn

  • @tommykozlowski9185
    @tommykozlowski9185 3 ปีที่แล้ว

    Thanks I like your way of explaining things, this is to the point

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว

      Glad it was helpful!

  • @gideonstowell3070
    @gideonstowell3070 3 ปีที่แล้ว +1

    Great video and I like that you went more in depth. I'm trying to figure this out for an enterprise solution. Side note: love seeing your face, but sometimes the face cam blocks areas of the screen where you are typing or clicking. I've noticed this on a few vids. Not a big deal, but it would be helpful to see everything you are seeing.

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว +1

      Thanks for the feedback! I am usually pretty good about hiding the camera but missed a few scenes on this one. Noted!

  • @ebiscaia
    @ebiscaia ปีที่แล้ว

    Great video. Unfortunately I did not solve my issue with navidrome and its SQLite database concurrency problem. Even with all the nodes being VMs inside the same machine

  • @andrewvandonselaar731
    @andrewvandonselaar731 3 ปีที่แล้ว +2

    Would you be able to make a tutorial for containerizing a non-catalog app and running it on a persistent volume? It would be super cool to see something like linuxserver/unifi running on Kubernetes. I don't think the community has done something like that before.

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว

      Thank you! Any app on my self-hosted playlist will work in this way. Just choose longhorn as your volume instead of bing mounting to a host path! th-cam.com/play/PL8cwSAAaP9W3bztxsC-1Huve-sXKUZmb5.html

    • @sashrr
      @sashrr 3 ปีที่แล้ว

      @@TechnoTim support him, can u make a video explanation on how to use piece of longhorn with generic app like dockerhub
      ginx or dockerhub\ubuntu on rancher 2.6? i tried - unsucessfull.

  • @LeHoang-cb7ng
    @LeHoang-cb7ng 2 ปีที่แล้ว +1

    please make a video about MinIO. Thanks

  • @knightrider6478
    @knightrider6478 3 ปีที่แล้ว +1

    Hi Tim, I have a question regarding this longhorn which is a good choice but still needs some tuning on the cpu and ram resources as without any specification it consumes a lot of cpu and ram when is doing his job so my question would be if you have some optimal configuration of cpu and ram requests and limits. I have deployed within k8s by using helm charts. Thank you and best regards !

  • @scottamolinari
    @scottamolinari 2 ปีที่แล้ว

    Great intro video! Thanks!

  • @JoakimKanon
    @JoakimKanon 3 ปีที่แล้ว +3

    For somebody as paranoid as me, is there a quick and easy way to verify the integrity of a backed up volume?
    Like, mount it as a regular volume and check a file...?

  • @eivinha
    @eivinha 3 ปีที่แล้ว +2

    Great video! Typo in the thumbnail though: «longhoNrn» ;)

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว

      Good eye! Thank you, fixed!

  • @unstoppablemango2370
    @unstoppablemango2370 3 ปีที่แล้ว

    As always, great video! I've been trying to setup longhorn for a while now and was lowkey hoping you'd make a vid so I could see how you did it.
    The setup is, as you said, incredibly simple. Which is awesome! The hardest part for me has been volumes failing to attach. They'll just get stuck in an attaching/detaching loop. I assume it's something to do with my networking config, and networking is the bane of my existence.

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว +1

      Be sure your nodes have all the dependencies installed. They are in my docs! Thank you!

    • @unstoppablemango2370
      @unstoppablemango2370 3 ปีที่แล้ว

      @@TechnoTim So I never found out what the root cause was, but I did find out RancherOS is explicitly not supported by Longhorn. Which is the OS my nodes were running. Re-upped with a less niche OS and things are running great :) Your docs on taints and tolerations were a lifesaver! Would have taken me hours to figure out otherwise.

  • @Dough296
    @Dough296 3 ปีที่แล้ว

    Thank you for all the work you share !
    What kind of file you'll find on the NFS server when doing a backup ?
    Also what do you think about de k3os ISO, I tried to work with it but really didn't get anything about Proxmox Cloud-Init... maybe an idea for a next video :-)

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว

      Thanks! I've always opted out of distros dedicated to kubernetes/k3s/rancher. Although I do gain some hardening, I lose more control over the OS than I'd like. Also, I am familiar with care and feeding of Ubuntu and not so much with k3os/rancherOS/etc...

  • @pauljennings
    @pauljennings 3 ปีที่แล้ว

    Thanks for sharing! Great Video and love your glasses! What make and model are they please?

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว +1

      Warby Parker!

  • @johnjbateman
    @johnjbateman 3 ปีที่แล้ว

    At 6:53 you mention you can add a drive to any device on your network. If you have a NAS, I assume you link to it's NFS path? Or how is this accomplished? Great video!

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว

      Yes! That's right. These storage nodes can mount an nfs path too!

  • @benjaminchesko3761
    @benjaminchesko3761 3 ปีที่แล้ว

    Great stuff ! Keep it going

  • @weitanglau162
    @weitanglau162 3 ปีที่แล้ว +2

    Please do a video on MinIO integration :)

  • @epochphilosophy
    @epochphilosophy ปีที่แล้ว +1

    Who the fuck thought it would be a good idea to call the things "taints" lol

  • @Jonathan-ns1sp
    @Jonathan-ns1sp 3 ปีที่แล้ว

    Awesome video!!!
    By the way, in your thumbnail is a typo... ;-)

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว

      It might be cached! Try refreshing a few times!

  • @LampJustin
    @LampJustin 3 ปีที่แล้ว +1

    Great video! But btw longhorn is most likely not your default storage class! That's because you deployed k3s with the local-path storage provider and k3s always reapplys the Deployments in /var/lib/rancher/k3s/server/manifest (or might be in /etc/rancher or something I'm not quite sure right now). So even if do kubectl edit storageclass local-path and set it to not be the default it will automatically reapply the storage class yaml and set it back to the default. So either you edit it in there (.../manifest) or you just delete the file in there and use kubectl edit

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว

      Good call! I've noticed too that I can have more than one default 🤔 ???

    • @LampJustin
      @LampJustin 3 ปีที่แล้ว

      @@TechnoTim nope 😜

    • @funkel1989
      @funkel1989 3 ปีที่แล้ว

      @@TechnoTim Did you ever discover a solution to this?

  • @sovereignmedia1885
    @sovereignmedia1885 2 ปีที่แล้ว

    Great information on Longhorn. Can you point me to setup information how we could use Kubernetes/Longhorn to create a development wordpress node that is disconnected from the production nodes and when the changes are implemented how it can be depliyed to the kubernetes node setup? Thanks in Advance

  • @benedictlins8810
    @benedictlins8810 3 ปีที่แล้ว +3

    What about setting up gitlab using helm next? Love the chanel btw ;D

  • @bothorsen4292
    @bothorsen4292 2 ปีที่แล้ว

    Monty, the guy who wrote MySQL and did the MariaDB fork, says the name is "ma-ree-ah", not "ma-rai-a" :) Oh, and BTW, he also says it's "my s q l", not "my sequel" (Sequel is not the same as SQL). The two databases are named after his daughters, My (pronounced as the first part of myriad, but even monty says "mai s q l") and Maria.

  • @rodrimora
    @rodrimora 2 ปีที่แล้ว

    I'm using the latest Rancher version 2.6 and I don't see the wordpress app, do I need to add a new repository?

  • @abdelrahimahmad7801
    @abdelrahimahmad7801 2 ปีที่แล้ว

    This is great, man. Thank you. Can you make a comparison between it and ondat? and what is your opinion?
    Thanks

  • @TechMeOut5
    @TechMeOut5 3 ปีที่แล้ว

    Excellent video! loved it!

  • @RadosawKorzeniewski
    @RadosawKorzeniewski 3 ปีที่แล้ว +2

    You forget to mention that iscsi package installed on k8s nodes is required to use longhorn. Without that it never up.

    • @TechnoTim
      @TechnoTim  2 ปีที่แล้ว +1

      Thanks! This is in the docs but thanks for calling it out here!

  • @TimotheFillionBrunet
    @TimotheFillionBrunet 3 ปีที่แล้ว

    I'm using nfs-provisioner because I don't want to use space from my proxmox cluster. One big problem I see with longhorm is replication taking too much space if all volume is duplicated on each node, in your case 4 time the space allocated and it can add up fast. I suggest 10gb network and nfs behind a zraid of ssd or in my case I created 2 storage class. The default use hdd and a nfs-ssd

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว

      Thank you! The only downside about the nfs-provisioner is that if my nfs goes down (reboot/upgrade/whatever) I lose the mounts for every pod in my cluster.

    • @TimotheFillionBrunet
      @TimotheFillionBrunet 3 ปีที่แล้ว

      @@TechnoTim hmm have you looked at ceph?

  • @NiklasRooms
    @NiklasRooms 3 ปีที่แล้ว

    Thank you for your video! It helped a lot!
    I noticed, that Longhorn acts as a Block storage device -> it won't support

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว

      Sorry, what?

    • @NiklasRooms
      @NiklasRooms 3 ปีที่แล้ว

      @@TechnoTim ups sorry!
      I meant to say:
      that to my knowledge, it’s not possible to use a block storage device in a multi pod read / write config.
      For example: when scaling a Drupal / Wordpress server, I would use a few Webserver pods all accessing the same volume. This isn’t possible with Longhorn. NFS acts on a file system level -> this would work.
      I still have to find a solution similar to Longhorn but for multi pod setups 😅

  • @seyedmohammadhosseini5793
    @seyedmohammadhosseini5793 3 ปีที่แล้ว

    Great video! Thank you!

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว

      You are welcome!

  • @whatthefunction9140
    @whatthefunction9140 ปีที่แล้ว +1

    If i have 5 servers each with 1 tb disks, and i run longhorn on each. How much usable space do i have access to?

    • @TechnoTim
      @TechnoTim  ปีที่แล้ว

      it will use the remaining space of each drive, depends on how you use it. Long horn will create 3 replicas so something like total space = drives * space - n replicas (volume * 3 replicas)

  • @ThiesBroetje
    @ThiesBroetje 3 ปีที่แล้ว

    Thanks for the great video Tim ;)
    How do you think Longhorn compares to OpenEBS Jiva?
    I really love how easy it is to manage volumes and backups in longhorn, but in the past Longhorn has been a bit unreliable for me, with volumes being disconnected on extensive writes, whereas OpenEBS has been rock solid.
    Have you encountered similar issues?

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว

      I haven't tried openEBS, how is it?

    • @bjrnjrgensen7408
      @bjrnjrgensen7408 3 ปีที่แล้ว

      You dont have to formate yours disk to juse longhorn

  • @shalandichannel
    @shalandichannel ปีที่แล้ว

    Great video, couple of questions:
    * You show that you have 2 replicas per volume in the "table view" but once you go into the volume details one can see 3 replicas, is that normal?
    * If we use 3 storage nodes, can we achieve HA by only having 2 replicas per volume, or does longhorn calculate quorum on replicas and not on nodes?
    * Pods: i see you drained a node and a new PV was create in longhorn, why so? Shouldn't it be possible to reuse the same PV on a different node? How do we know that PV1 and PV2 in your example are copies of each other? Is there any hint from longhorn? And what happens if the node 1 goes completely down, will the same principle apply?

  • @samueldepogandan5229
    @samueldepogandan5229 3 ปีที่แล้ว

    How are you getting your host disks mounted to your storage nodes? Mounting a host path from the hypervisor, or creating a VM disk? Also side question, if you didn't have any workloads that required VMs, would you roll with Kubernetes on baremetal? You could try out another rancher product called Harvester for VM management (its technically HCI though)

    • @LampJustin
      @LampJustin 3 ปีที่แล้ว +1

      I can only speak for myself, but I would definitely be running bare metal + kubeVirt. (Thanks for mentioning harvester, haven't heard about that before!)
      Especially when considering that all of wikipedia is running on bare metal kubernetes clusters. Niantic with Pokemón Go are doing sth similar, they're running lxc containers as worker nodes, because they would otherwise run into the 100 pods per node limit.
      So for that reason why not? If they're doing it, it can't be that bad.

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว

      Harvester looks interesting for sure! My node disks are mounted via virtual disk. Since I dedicated 4 nodes to storage, I am just using the storage on those nodes. MY PVCs are pretty small, I just need them available!

    • @EvilDesktop
      @EvilDesktop 3 ปีที่แล้ว

      You can passthrough the SSD/HDD to the VM, that's what I ended up doing after going crazy with ceph. My mental illness is in recovery right now, thanks to Tim

  • @JohnWeland
    @JohnWeland 2 ปีที่แล้ว

    would love ot see this revisited in the context of harvester. Attempting to setup now and Harvester says the default storage class is harvester-longhorn. My Rancher install is a VM on harvester and passing Harvester back through so Rancher can deploy to it. Rancher doesn't show Longhorn as installed (by default) but since its running on Harvester, shouldn't it be Longhorn? IDK

  • @brtalbot007ify
    @brtalbot007ify 3 ปีที่แล้ว

    Thanks Tim. You next step Harvester?
    *3 nodes rke cluster with longhorn and harvester installed* Who needs proxmox?

  • @antoniosmoljo6472
    @antoniosmoljo6472 3 ปีที่แล้ว

    Hi. Excellent work. Can you make a video how to make backup and restore with Longhorn? I tried a few different ways and never succeed. Longhorn documentation is not very detailed and clear. With Snapshot always successfully return the data.

  • @jamesajohnson82
    @jamesajohnson82 2 ปีที่แล้ว

    Is there a way to bring in iscsi nas into longhorn? I have a Dell equal logic ps4000 (very old, I know) and I am having a hard time finding documentation on getting that storage so it's available for all my services. Thanks for all the great content!

    • @TechnoTim
      @TechnoTim  2 ปีที่แล้ว

      There may be, but I know for sure you could use NFS

  • @xasmaniusvolk8416
    @xasmaniusvolk8416 3 ปีที่แล้ว +2

    1:48 Longhorn is WindowsVista Alpha:p

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว

      Haha! You guessed it!

  • @SG-tq9tk
    @SG-tq9tk 3 ปีที่แล้ว

    Great video..Thanks...Sorry if this is a dumb question...but how do you browse and edit files in a Longhorn volume from outside the Pod. For example - for Home Assistant, I would like to be able to edit the HA config files from my PC and restart the Pod for new automations to take effect. My Longhorn volume is mounted on a path in my home directory and the "replicas" directory is owned by root. If I browse into the directory as root, I find an "img" file which can't be browsed. Any ideas?

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว

      You can, just google kubectl exec and you can remote into the pod and make changes. Thanknyou!

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว

      Or use kubectl cp and copy a file to your pod. That might be better so you can use an editor.

    • @SG-tq9tk
      @SG-tq9tk 3 ปีที่แล้ว

      @@TechnoTim Thanks for the pointers. I found a better option for Home Assistant by adding a VSCode (code-server) container as a sidecar to the HA workload with the port 8443 published as a L4 Load Balancer and the HA config path as the /config/workspace mount point. I'm also experimenting with adding an OpenSSH sidecar on a L4 Load Balancing port to workloads that require external access.

  • @JohnWeland
    @JohnWeland ปีที่แล้ว

    having revisited and use the taints in the docs, the storage nodes show at "DOWN" in the Longhorn Dashboard now, but the storage capacity seems right. weird

  • @shapedthought
    @shapedthought 3 ปีที่แล้ว

    Yep felt that minio cert pain

  • @YT_html
    @YT_html 3 ปีที่แล้ว

    I learned a lot by watching the video. ❤ 🌹

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว +1

      Glad it was helpful!

  • @junejuan8561
    @junejuan8561 3 ปีที่แล้ว

    Hi Tim,
    In your setup, is it also possible to scale out the pod(wordpress)?
    TIA

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว

      I am not sure! Most of my frontends are client side apps so I can scale to 10000 if I want!

  • @majorgear1021
    @majorgear1021 ปีที่แล้ว

    Is there a way to deploy longhorn without Rancher ? I can’t get Rancher to import my cluster.
    Probably because my cluster master’s are running on arm processors.

  • @Equality-and-Liberty
    @Equality-and-Liberty 3 ปีที่แล้ว

    Again great video and with the video's you posted, i was finally able to install Kubernetes (k3s), Rancher, and Longhorn. There are a couple of things i want to mention though First about Longhorn; i created 3 more nodes for storage purposes and i attach 150gig for each node, but in Longhorn, i only see 128 gigs available. I thought it would be 450gig. What is the purpose of spinning more nodes? The second thing i want to mention is that when the Load Balancer was set up in the K3s video it was a 4 layer LB. By launching WordPress it gave me an error caused in the Rancher configuration page it asked for a 7 layer load balancer. I don't have that so i disabled that option. What will happen if the nodes become unavailable where WordPress is running, since i can connect to WordPress through the IP Address of the worker node it is running with a port number? I thought the idea was to connect through the LB and the LB is bringing you to the container you want to connect to independently of the worker node it is running. Sorry for the long comment.

  • @LarsKniep
    @LarsKniep 3 ปีที่แล้ว

    Somehow i can't get the UI pod to startup: it logs an error from nginx containing: host not found in upstream "longhorn-backend" any idea?

    • @LarsKniep
      @LarsKniep 3 ปีที่แล้ว

      I think it was somehow O.S. related, i was using debian 11.
      I switched to k3os (yes a k3s OS) and now everything works smoothly.

  • @myraelix
    @myraelix 3 ปีที่แล้ว

    it works very well, of course it needs ssd disks otherwise the performances could reduce a lot it’s not the most faster and doesn’t support yet the disk encryption. There are other solutions like rook-ceph or trident by netapp, but longhorn from my point of view is the most reliable.

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว +1

      Good call!

  • @pablorafaelcarrizo1080
    @pablorafaelcarrizo1080 3 ปีที่แล้ว

    Hello Tim, your videos are so great! Can Longhorn be used in docker swarm?

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว

      Thank you! No, it's for kubernetes!

  • @royboivin
    @royboivin 3 ปีที่แล้ว

    Here is a challenging use case im working on solving... i have around 20TB of longhorn storage in my cluster spread across 5 worker nodes with s3 backups enables. I would like to some how expose the longhorn storage through samba shares or NFS or iSCSI to my vmware stack or desktops for a more reliable storage DR storage option than i have. any ideas on how to accomplish this? I was thinking a container using a longhorn PV ruining NFS of some type and exposing it to my main network.

  • @mrjamiebowman
    @mrjamiebowman ปีที่แล้ว

    How does Rancher Longhorn manage how much space is available for all of the nodes? I need more space. I added new hard drives that were twice the size as the previous.

    • @mrjamiebowman
      @mrjamiebowman ปีที่แล้ว

      OK, so ESXi was running 3 VMs. I had to go and expand the LVM space so that Rancher Longhorn could fully utilize the disk for /dev/sda3...
      sudo fdisk -l
      sudo growpart /dev/sda 3 # grows the partition; note the space
      sudo lvextend -l +100%FREE -r /dev/ubuntu-vg/ubuntu-lv

  • @royboivin
    @royboivin 3 ปีที่แล้ว

    So i have been running longhorn for some time now and backing up to S3... some how i got one of my PVs corrupted and accidentally deleted the PV. i cant figure out how to restore from back becuase when i click on backups it shows nothing

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว

      Hmmm not sure. I've always been able to restore a backup from the gui and reconnect it to the container. Sometimes the service call fails and you have to click it multiple times. you can see the failures in the Chrome dev tools. It's kind of annoying because it fails silently.

  • @JoeXhungary
    @JoeXhungary 2 ปีที่แล้ว

    Hi Tim! Is there any way to apply this "longhorn way" to databases? I don't want to all my pods pull a db-container, just because it needs a database. How cool it would be to do the same thing with databases...

    • @TechnoTim
      @TechnoTim  2 ปีที่แล้ว

      Would be awesome but not sure I would replicate a DB this way. The DB storage, yes, but not HA DBs. I would leave them up to a real HA DB service or k8s operator.

    • @JoeXhungary
      @JoeXhungary 2 ปีที่แล้ว

      @@TechnoTim yes, the truth is yours. What i think i have a lot of legacy, monolit sites on my home dev server. When i start them, all is starting a single, non HA db.

  • @mohamedfazrin2844
    @mohamedfazrin2844 3 ปีที่แล้ว

    Hi Tim,
    I am using longhorn for Volume Provisioning. When I deploy a statefulset with 5 PVCs, It takes more time to attach, Also sometimes they become Detached. Can you suggest a method to find the cause of why it happens?

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว

      You can check out the logs on each node or the logs in longhorn. Sometimes these are hard to track down.

  • @squalazzo
    @squalazzo 3 ปีที่แล้ว

    in my test lab, i've setup an nfs share directly on the proxmox physical host, can i use this share as a storage repo for longhorn? Maybe creating 2 folders, 1 for storage and 1 for backup... remember, it's just a test env, to learn k8s :)

    • @LampJustin
      @LampJustin 3 ปีที่แล้ว +1

      Yes you can ;) I even went as far as to use the NFS share of my Proxmox host with NFS-client-provisioner ;)

  • @n.a.n1990
    @n.a.n1990 2 ปีที่แล้ว

    I have some questions regarding Longhorn. 1. I am using Proxmox and i backup all my vm's with Proxmox backup. Can you tell me what the difference is between backing up all my vm's with proxmox and backup my volume's with longhorn? 2. sometimes i need to have access to the data. I haven't figure out yet how to access the data stored in a longhorn volume. Is there a way to achieve that?

    • @TechnoTim
      @TechnoTim  2 ปีที่แล้ว

      Backing up your PVCs is more efficient than backing up all your VMS, especially for kubernetes. They are just cattle. RE how to access data: You can exec into the pod to see / edit the data if you need, or use something like filebrowser and connect it to that PVC so you can have a GUI to look at it.

  • @devin.n
    @devin.n 3 ปีที่แล้ว +1

    Not sure if you are aware of this but there is a typo in the video thumbnail @Techno Tim

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว

      Thanks so much, fixed but unfortunately it's cached, might not be next time you check!

  • @hemaltandel7793
    @hemaltandel7793 3 ปีที่แล้ว

    Thanks for all your hard work. Learned a lot by watching your video's. Need little help with access copy the data/files to/from PV/replicas created by longhorn.

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว

      use kubectl cp. If you need them there when the container starts, mount the file system to another generic container (like ubuntu or busybox) and then kubectl cp the files there.

  • @ramaranon5202
    @ramaranon5202 3 ปีที่แล้ว

    What do you think of Dell's Powerflex vs Longhorn?

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว

      I don't know enough about Powerflex but I do know that Longhorn gives you shared kubernetes storage really easy!

  • @vespidflamegaming
    @vespidflamegaming 3 ปีที่แล้ว

    Tried every which way to get it going and I always end up with
    "CreateContainerError: failed to generate container "8d3d73cd684473b793b5aaddd432676f56220d044181674d056df4431be009a0" spec: failed to generate spec: path "/var/lib/longhorn/" is mounted on "/" but it is not a shared mount"
    Am I missing something?

    • @TechnoTim
      @TechnoTim  3 ปีที่แล้ว

      did you install the dependencies? Check out my docs, they are listed there!

    • @vespidflamegaming
      @vespidflamegaming 3 ปีที่แล้ว

      @@TechnoTim I seen the nfs and isci install on your documentation. I threw that in and retried. Still nothing. I am able to install it on my cluster rather than the 'local' like you demonstrated in your video. Also if this helps if am running rancher v2.5.11

  • @juancruzpallares503
    @juancruzpallares503 2 ปีที่แล้ว

    Nice video, but how config aws s3 bucket? someone have a video or something? I dont know how confg s3 bucket with keys for longhorn.. :(

    • @TechnoTim
      @TechnoTim  2 ปีที่แล้ว +1

      I did with minio!