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

Migrate to Kubernetes 1.19+ and Rancher 2.5 #21

Open
2 of 3 tasks
asoltesz opened this issue Jun 25, 2020 · 1 comment
Open
2 of 3 tasks

Migrate to Kubernetes 1.19+ and Rancher 2.5 #21

asoltesz opened this issue Jun 25, 2020 · 1 comment
Milestone

Comments

@asoltesz
Copy link
Owner

asoltesz commented Jun 25, 2020

Reasons

  • VolumeSnapshot API for backup tools
  • Other, non-beta API versions (K3S compatibility)
  • Newer, more powerful Rancher

VolumeSnapshot API

Currently, VolumeSnapshot based backups cannot be implemented because both Stash and Velero requires the v1beta1 API version and that is not available on Kubernetes v1.15.x that we target. Note: the v1alpha1 API version is there but that is ignored by both.

The VolumeSnapshot v1beta1 API is first available in Kubernetes 1.17.

IMPORTANT NOTE: Neither Velero 1.4, nor Stash 0.90 implements consistent filesystem backups by using VolumeSnapshots and Restic in a combined manner. Without this, consistent, online, point-in-time, offsite backup of the VolumeSnapshotContent cannot be implemented. In theory, Velero has a mechanism for this but it needs a special volume plugin which is not available for neither Rook/Ceph, nor Hetzner Cloud Volumes.

Restic based backups are inconsistent when the workload is online (files may be changed by the workload while the Restic backup is progressing ahead on a large volume filesystem)

Via the VolumeSnapshot API, point-in-time, online volume backups would become available for at least Rook/Ceph.

Stash issue: stashed/stash#1099
Velero issue: vmware-tanzu/velero#2671

Other, non-beta API versions (K3S compatibility)

K3S is a lightweight Kubernetes distribution for Rancher. It is ideal for running on low-end hardware and cheaper VMs.

However, K3S drops all of the old API versions where there are production ones (e.g.: apps/v1)

SolaKube could work against K3S clusters if all components were updated to new APIs.

Newer, more powerful Rancher

Rancher 2.5 is more advanced than the 2.3 version we use for Kubernetes 1.15 cluster building (RKE).

Upgrading to 2.5 would allow using the new Cluster Explorer feature and other advancements in Rancher.

Issues / checklist

  • All deployers, Helm charts and deployment descriptors moved to API levels supported by Kubernetes 1.19
  • Test cluster builds with Rancher 2.5 and Kubernetes 1.19.4
  • FirewallD rules for required ports

FirewallD issues (port requirements)

Rancher port requirements may have changed because I can only make cluster deployment finish in Rancher if I completely disable firewalld on the CentOS 7 nodes.

@asoltesz asoltesz changed the title Migrate to Kubernetes 1.17+ to have VolumeSnapshot API v1beta1 Migrate to Kubernetes 1.19+ to have VolumeSnapshot API v1beta1 Nov 29, 2020
@asoltesz asoltesz added this to the v0.7 milestone Nov 29, 2020
@asoltesz asoltesz changed the title Migrate to Kubernetes 1.19+ to have VolumeSnapshot API v1beta1 Migrate to Kubernetes 1.19+ and Rancher 2.5 Dec 6, 2020
@asoltesz
Copy link
Owner Author

asoltesz commented Dec 7, 2020

Currently, the 0.7 (develop) can only succeed in provisioning a cluster if we completely disable FirewallD (comment it out in provision.yaml).

Issue is discussed here: rancher/rancher#28840

Rejected firewalld traffic can be investigated like this

@asoltesz asoltesz modified the milestones: v0.7, v0.8 Dec 11, 2022
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

No branches or pull requests

1 participant