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

feat: In Kubernetes We Trust #70

Merged
merged 6 commits into from
Nov 26, 2024
Merged

feat: In Kubernetes We Trust #70

merged 6 commits into from
Nov 26, 2024

Conversation

ibuziuk
Copy link
Member

@ibuziuk ibuziuk commented Nov 25, 2024

@ibuziuk ibuziuk requested review from l0rd and dkwon17 as code owners November 25, 2024 21:15
_posts/2024-11-26-in-kubernetes-we-trust.adoc Outdated Show resolved Hide resolved
_posts/2024-11-26-in-kubernetes-we-trust.adoc Outdated Show resolved Hide resolved
_posts/2024-11-26-in-kubernetes-we-trust.adoc Outdated Show resolved Hide resolved
_posts/2024-11-26-in-kubernetes-we-trust.adoc Outdated Show resolved Hide resolved
_posts/2024-11-26-in-kubernetes-we-trust.adoc Outdated Show resolved Hide resolved
_posts/2024-11-26-in-kubernetes-we-trust.adoc Outdated Show resolved Hide resolved
_posts/2024-11-26-in-kubernetes-we-trust.adoc Outdated Show resolved Hide resolved
Signed-off-by: Ilya Buziuk <[email protected]>
_posts/2024-11-26-in-kubernetes-we-trust.adoc Outdated Show resolved Hide resolved
_posts/2024-11-26-in-kubernetes-we-trust.adoc Outdated Show resolved Hide resolved

=== GitOps

Do NOT manage the Kubernetes clusters manually otherwise you would end up with a snowflake environment. Application definitions, configurations, and environments should be declarative and version controlled. Application deployment and lifecycle management should be automated, auditable, and easy to understand. Using a GitOps CD solution for Kubernetes such as link:https://argo-cd.readthedocs.io/[Argo CD] is a must-have when managing a complex application platform for developers.
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
Do NOT manage the Kubernetes clusters manually otherwise you would end up with a snowflake environment. Application definitions, configurations, and environments should be declarative and version controlled. Application deployment and lifecycle management should be automated, auditable, and easy to understand. Using a GitOps CD solution for Kubernetes such as link:https://argo-cd.readthedocs.io/[Argo CD] is a must-have when managing a complex application platform for developers.
Do NOT manage Kubernetes clusters manually otherwise you would end up with a snowflake environment. Application definitions, configurations, and environments should be declarative and version controlled. Application deployment and lifecycle management should be automated, auditable, and easy to understand. Using a GitOps CD solution for Kubernetes such as link:https://argo-cd.readthedocs.io/[Argo CD] is a must-have when managing a complex application platform for developers.

_posts/2024-11-26-in-kubernetes-we-trust.adoc Outdated Show resolved Hide resolved
_posts/2024-11-26-in-kubernetes-we-trust.adoc Outdated Show resolved Hide resolved

=== Autoscaling

Although autoscaling is a powerful Kubernetes feature, you cannot always fall back on it, and should always consider predictive scaling by analyzing the load data on your environment to detect daily or weekly usage patterns. If your workloads follow some pattern, e.g. there are huge spikes based on the time of the day, you should consider provisioning worker nodes in advance (e.g. a lot of users turn on their smart speakers in the morning between 7 - 9 am, and there is a huge spike in the requests that on infrastructure level is predicted and handled in advance).
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
Although autoscaling is a powerful Kubernetes feature, you cannot always fall back on it, and should always consider predictive scaling by analyzing the load data on your environment to detect daily or weekly usage patterns. If your workloads follow some pattern, e.g. there are huge spikes based on the time of the day, you should consider provisioning worker nodes in advance (e.g. a lot of users turn on their smart speakers in the morning between 7 - 9 am, and there is a huge spike in the requests that on infrastructure level is predicted and handled in advance).
Although autoscaling is a powerful Kubernetes feature, you cannot always fall back on it, and should always consider predictive scaling by analyzing the load data on your environment to detect daily or weekly usage patterns. If your workloads follow some pattern, e.g. there are huge spikes based on the time of the day, you should consider provisioning worker nodes in advance (e.g. a lot of users turn on their smart speakers in the morning between 7 - 9 am, causing a huge spike in requests which can be predicted and handled in advance on the infrastructure level).

_posts/2024-11-26-in-kubernetes-we-trust.adoc Show resolved Hide resolved
_posts/2024-11-26-in-kubernetes-we-trust.adoc Outdated Show resolved Hide resolved
@ibuziuk ibuziuk merged commit 5848b25 into main Nov 26, 2024
8 checks passed
@ibuziuk ibuziuk deleted the in-k8s-we-trust branch November 26, 2024 18:01
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.

3 participants