-
Notifications
You must be signed in to change notification settings - Fork 63
Add Valkey on k0rdent blog post #301
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
base: main
Are you sure you want to change the base?
Conversation
2464395
to
6bdc694
Compare
Signed-off-by: s3rj1k <[email protected]>
6bdc694
to
9512cba
Compare
@stockholmux Are you going to review this one? |
@madolson It's on my list. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a really good blog post!
It has some issues to resolve (the biggest is the author bio) but it's mostly stylistic changes. I think we can get this published on the timeline (by 07-21)
title = "Using k0rdent MultiClusterService Template for Valkey on Kubernetes" | ||
description = "Learn how to deploy and manage Valkey across multiple Kubernetes clusters using k0rdent's template-driven approach for simplified multi-cluster application delivery." | ||
date = "2025-07-21 01:01:42" | ||
authors= [ "s3rj1k"] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
When I tested the website build:
Error: Failed to render page '/Users/kyledvs/repos/s3rj1k-valkey-website/content/blog/2025-07-21-valkey-on-k0rdent.md'
Error: Reason: Failed to render 'blog-page.html'
Error: Reason: Function call 'get_page' failed
Error: Reason: Page `authors/s3rj1k.md` not found.
Looks like you need to add a corresponding author page, for example here is mine: https://github.com/valkey-io/valkey-io.github.io/blob/main/content/authors/kyledvs.md
authors= [ "s3rj1k"] | ||
+++ | ||
|
||
## Introduction |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No need to have a subhead as the first line of a blog, so please remove this line.
|
||
## Introduction | ||
|
||
Managing distributed applications across multiple Kubernetes clusters can be complex and time-consuming. This guide demonstrates how to streamline Valkey deployment using k0rdent's MultiClusterService template, providing a practical example of modern multi-cluster application delivery. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
'k0rdent' should be linked here since it's the first instance of the project in the post's narrative.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
'MultiClusterService' -> 'MultiClusterService
'
|
||
Managing distributed applications across multiple Kubernetes clusters can be complex and time-consuming. This guide demonstrates how to streamline Valkey deployment using k0rdent's MultiClusterService template, providing a practical example of modern multi-cluster application delivery. | ||
|
||
In this tutorial, we'll walk through deploying Valkey (a high-performance Redis alternative) across Kubernetes clusters using k0rdent's template-driven approach. By the end of this guide, the reader will understand how to leverage k0rdent for simplified Valkey deployment and multi-cluster application management. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
'(a high-performance Redis alternative)' <- you can drop this. We're starting to shy away from 'alternative' terminology and if someone lands on this blog post, I think they know the other parts.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Valkey tends to use 2nd person rather than 3rd person grammatical constructs - so change 'the reader' to 'you' in all case and make the required grammatical cases.
- Kubernetes clusters and core concepts | ||
- Helm charts and package management | ||
|
||
The reader will also need the following tools installed: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would link kind and helm.
|
||
Feel free to play around with Valkey Operator by leveraging the MultiClusterService object together with additional Helm Chart values and when finished, cleaning up this environment is as simple as deleting the KinD cluster. | ||
|
||
This is all for today dear reader, thanks for spending this time with me! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would replace this line with a call to action. What should the reader do next? Read the k0rdent docs? Join a k0rdent slack channel? Up to you.
|
||
[k0rdent](https://k0rdent.io/) is a Kubernetes-native distributed container management platform that simplifies and automates the deployment, scaling, and lifecycle management of Kubernetes clusters across multi-cloud and hybrid environments using a template-driven approach. The reader can think of it as a super control plane for multiple child clusters that are controlled by different CAPI providers across multi-cloud environments. | ||
|
||
All providers (infrastructure, cluster) are packaged as Helm templates and exposed to the consumer via an entry point object called ClusterDeployment. The ClusterDeployment object is what the consumer uses to declaratively define a new child cluster and combined with credentials-related objects, this provides the consumer with a managed Kubernetes cluster on any platform that has existing CAPI providers. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
'ClusterDeployment' -> 'ClusterDeployment
'
|
||
For any child cluster under k0rdent management, the consumer can control application delivery via service template objects, meaning that it is possible to install applications into the child clusters and have everything controlled from the super-control-plane (management cluster) where k0rdent itself runs. | ||
|
||
The k0rdent project maintains a public repository called the "[Catalog](https://catalog.k0rdent.io/latest/)" where the consumer can find pre-built application service templates. While templates can be created locally, and there is no hard requirement to use the catalog, we'll use the catalog for a more streamlined experience with Valkey delivery to child clusters. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do you ever want to link Valkey's specific item in the catalog?
|
||
1. Use KinD for the management cluster | ||
2. Deploy to a child cluster using Cluster API Provider Docker (CAPD) | ||
3. Use Hyperspike's Valkey Operator to manage Valkey instances |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We should link the hyperspike repo.
|
||
## Verifying the Child Cluster | ||
|
||
Let's get the child cluster kubeconfig out and check if the cluster itself looks good: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
kubeconfig -> kubeconfig
Signed-off-by: s3rj1k <[email protected]>
Description
Adds blog post "Using k0rdent MultiClusterService Template for Valkey on Kubernetes"
Issues Resolved
closes: #287
Check List
--signoff
By submitting this pull request, I confirm that my contribution is made under the terms of the BSD-3-Clause License.