-
Notifications
You must be signed in to change notification settings - Fork 4
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
k3s production use considerations (and validation) #217
Comments
Here is what we found so far from our testing.
We will continue testing further and will report new findings. |
@jigar-arc10 - thank you for the additional testing. Thoughts on some of the points raised above:
Current Akash Provider documentation and install process assumes install is being run as root as stated here: As this is part of pre-existing methodologies - do not view this as an issue - but please let us know if you feel otherwise and/or if it will provoke issues in Praetor use.
Current Akash Provider > Helm install based instructions recommend/assume Ubuntu use as stated here: Based on this being part of the pre-existing standard - do not believe this is an issue but please let us know if you feel otherwise and/or if this may cause issues for Praetor users.
Will look into this issue further. Initial testing of scaling down procedure only tested the ability to scale down K3s nodes. Have not yet tested scaling down with Akash provider and related operators installed. Will test those scenarios ASAP. |
@chainzero - Thanks for the response.
After deep consideration, we agree that root user access should be required as it also helps with GPU driver installation steps.
It's a non-issue.
After many iterations of testing regarding node removal with updated scripts, the issue about operator-inventory-hardware is gone, and the node was successfully removed. |
Here are the considerations which can be while using k3s instead of k8s. CNI plugins/calico
In the K3S setup, we use the default Calico CNI plugin provided by k3s to ensure high performance for internal networking. This configuration is essential for optimizing communication between Kubernetes services and applications, especially for high-traffic services like Rook-Ceph, to prevent significant performance lag and avoid metered external traffic costs.
customize
|
Great job @devalpatel67 @jigar-arc10 and @chainzero ! |
FWIW, k3s upgrades seem to be straightforward: |
@chainzero created the k3s method of provider installation, described here https://akashengineers.xyz/provider-build-scripts
Before getting this to the Production use the following points must be considered, addressed/verified to be supported with the k3s K8s cluster deployment method:
etcd
can be scaled (to avoid SPOF)control-plane
can be scaledetcd
instance or/andcontrol-plane
);etcd
instance or/andcontrol-plane
);nodefs
&imagefs
locations: similarly to how it's described hereetcd
backup & restore procedure (kubespray does this automatically each time you run it against your K8s cluster)etcd
performance - AFAIK, k3s uses sqlite3 DB for the etcd; so there should be some quick perf test for it such asetcdctl check perf
we have hereAdditioanlly/Ideally
nodefs
&imagefs
thresholds (ref)kubelet_logfiles_max_nr
, as well as the max.size of the container log file before it is rotatedkubelet_logfiles_max_size
(ref)The text was updated successfully, but these errors were encountered: