Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Redo openebs #54

Open
wants to merge 4 commits into
base: main
Choose a base branch
from
Open

Conversation

madalinignisca
Copy link

Thank you for making MicroK8s better

Fixes #41 and #42

For long time, even while working on my book for WordPress on MicroK8S, I could not cope with how openebs has been added. I used it all the time by installing it myself with helm and now I managed to get the time to make a pull request with my version.

  1. will not install components that are not suitable for small clusters
  2. will ensure hostpath, jiva and nfs provisioner are installed and sets sensible storage class names

The reasons are: lower memory usage with minimal components and nfs provisioner to support RWM accessmode.

Also updated to 3.2.x and I'll try to make PR everytime a new release is tested to be working.

Also verify you have:

Help will ensure to remove everything it installed. Any PVC/PV in use, will block uninstall of  dependent resources until the User will wipe them himself, so complete cleanup would happen also if user has destroyed his applications using the volumes
@madalinignisca
Copy link
Author

I would look in the future for making smaller addons for each component in openebs. I have a case where ndm, cstor and nfs would be prefered vs hostpath, jiva and nfs.

@madalinignisca
Copy link
Author

Would any maintainer give it a shot please?

@neoaggelos neoaggelos self-requested a review June 14, 2022 11:15
addons/openebs/enable Show resolved Hide resolved
addons/openebs/enable Show resolved Hide resolved
@neoaggelos
Copy link
Contributor

@madalinignisca please also sign the CLA, thank you!

@neoaggelos
Copy link
Contributor

Similarly, I would like to see the NFS storage class behind a command-line argument as well (we should not assume that the kernel driver will be available, and we should avoid installing extra things on clusters as much as possible).

Also, sorry for taking long to come to this PR.

@madalinignisca
Copy link
Author

@madalinignisca please also sign the CLA, thank you!

I did, how this can be checked?

@madalinignisca
Copy link
Author

Similarly, I would like to see the NFS storage class behind a command-line argument as well (we should not assume that the kernel driver will be available, and we should avoid installing extra things on clusters as much as possible).

Also, sorry for taking long to come to this PR.

Do not worry. I think it should be splitted on components and instruct to handle custom storage classes to mix between operators

@ktsakalozos
Copy link
Member

Hi @madalinignisca, any update on this PR? The 1.25 release is a couple of weeks away and we would like to include this PR in it. Thank you.

@madalinignisca
Copy link
Author

Hi @madalinignisca, any update on this PR? The 1.25 release is a couple of weeks away and we would like to include this PR in it. Thank you.

Hi. I'm back from some long holidays after some overworked time. I'll be on this the next few days. My last experiments worked nice.

Sorry I did not pay attention too much, as lately I started to prefer Helm over using addons.

@madalinignisca
Copy link
Author

I have to make the NFS and "default storage class" controlled by arguments and should be good to go.

As it is now, works on my clusters perfect, as I have 3 common cases:

  1. hostpath used by mysql-operator
  2. jiva used by single mysql/mariadb/postgresql deployments
  3. jiva used by the nfs provisioner to give legacy apps like WordPress capability to scale horizontal.

Having NFS optional might make sense for most people.

@berkayoz berkayoz self-requested a review October 19, 2022 10:44
Copy link
Member

@berkayoz berkayoz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey there, there are some minor things that needs changing. I left some comments for those.

We should also change the status check in addons.yaml for the openebs addon, since that check is obsolete the addon does not get detected as enabled hence disabling does not work.

check_status: "deployment.apps/openebs-jiva-operator"

Thank you.

@@ -9,132 +9,10 @@ OPENEBS_NS="openebs"

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should replace (line 6-7)

HELM="$SNAP_DATA/bin/helm3 --kubeconfig=$SNAP_DATA/credentials/client.config"
KUBECTL="$SNAP/kubectl --kubeconfig=${SNAP_DATA}/credentials/client.config"

with

HELM="$SNAP/microk8s-helm3.wrapper"
KUBECTL="$SNAP/microk8s-kubectl.wrapper"

since helm is now packaged in the snap and there is a wrapper for kubectl now.

@@ -15,6 +15,14 @@ print_iscsi_help() {
echo "Please refer to the OpenEBS prerequisites (https://docs.openebs.io/docs/next/prerequisites.html)"
}

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should replace (line 7)

KUBECTL="$SNAP/kubectl --kubeconfig=${SNAP_DATA}/credentials/client.config"

with

KUBECTL="$SNAP/microk8s-kubectl.wrapper"

since there is a wrapper for kubectl now.

@@ -33,17 +47,21 @@ HELM="$SNAP_DATA/bin/helm3 --kubeconfig=$SNAP_DATA/credentials/client.config"

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should replace (line 46)

HELM="$SNAP_DATA/bin/helm3 --kubeconfig=$SNAP_DATA/credentials/client.config"

with

HELM="$SNAP/microk8s-helm3.wrapper"

since helm is now packaged in the snap.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

OpenEBS: why is cstor enabled?
4 participants