xetys / hetzner-kube

A CLI tool for provisioning kubernetes clusters on Hetzner Cloud
Apache License 2.0
743 stars 117 forks source link

OpenEBS addon requirement: iSCSI #302

Open tholu opened 4 years ago

tholu commented 4 years ago

The OpenEBS addon requires iSCSI to be running on the worker nodes: https://docs.openebs.io/docs/next/prerequisites.html

I already created my cluster. How can I now make sure, that all my worked nodes have this service installed and running? And how do you make sure, that your packages on the worker nodes are up-to-date (basically regularly running apt-get upgrade)?

xetys commented 4 years ago

One solution for the moment is the cloud-init approach, to install iSCSI.

Actually we should add an installation routine to the OpenEBS addon as well. About the upgrade question, ubuntu would usually upgrade all packages which are not marked to be kept.

Would you like to propose a PR for this here as well?

tholu commented 4 years ago

I have several questions here, sorry I'm quite new to Kubernetes and hetzner-kube in general.

One solution for the moment is the cloud-init approach, to install iSCSI.

Do I have to recreate the nodes or can I install it into the running cluster via cloud-init somehow?

About the upgrade question, ubuntu would usually upgrade all packages which are not marked to be kept.

When exactly would this be happening? Can I trigger this somehow?

I'll gladly do the PR, once I have a better understanding of the best practices here.

xetys commented 4 years ago

In the end, you just can SSH to your nodes and install iSCSI in your own. There is no need to go via cloud-init afterwards.

The upgrade happens when you ‘apt update && apt upgrade‘

The best practice for this issue would be to install iSCSI during add-on installation of openebs, and in the best case uninstall it when running the remove procedure if the add-on

tholu commented 4 years ago

@xetys Manually ssh-ing into the nodes and installing packages seems like a last-resort solution. Of course this works, but it would be great to automate this more. How are you making sure that your nodes don't use outdated software?