-
Notifications
You must be signed in to change notification settings - Fork 77
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
29ba224
commit 234e75c
Showing
1 changed file
with
66 additions
and
0 deletions.
There are no files selected for viewing
66 changes: 66 additions & 0 deletions
66
src/blog/_posts/2024-10-01-announcing-cadence-helm-charts-v0.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,66 @@ | ||
--- | ||
title: "Announcement: Cadence Helm Charts v0 Release" | ||
|
||
date: 2024-10-01 | ||
author: Taylan Isikdemir | ||
authorlink: https://www.linkedin.com/in/taylan-isikdemir | ||
--- | ||
We’ve heard your feedback: deploying Cadence has been a challenge, especially with limited documentation on operational aspects. So far, we’ve only provided a few [docker compose files](https://github.com/uber/cadence/tree/master/docker) to help you get started on a development machine. However, deploying and managing Cadence at scale requires a deep understanding of underlying services, configurations and their dependencies. | ||
|
||
To address these challenges, we’re launching several initiatives to make it easier to deploy and operate Cadence clusters. These include deployment specs for common scenarios, monitoring dashboards, alerts, runbooks, and more comprehensive documentation. | ||
|
||
## Introducing Cadence Kubernetes Helm Chart v0 | ||
|
||
Today, we are happy to announce the release of [Cadence Kubernetes Helm Chart v0](https://github.com/uber/cadence-charts). This will be the starting point for standardizing Cadence deployments on Kubernetes. We chose Kubernetes because it's the leading compute platform, but Cadence remains flexible and can run on any infrastructure. | ||
|
||
## How to Get Started | ||
|
||
[Helm](https://helm.sh) must be installed to use the charts. Please refer to Helm's [documentation](https://helm.sh/docs) to get started. | ||
|
||
Once Helm has been set up correctly, add the repo as follows: | ||
|
||
``` | ||
helm repo add cadence https://uber.github.io/cadence-charts | ||
``` | ||
|
||
If you had already added this repo earlier, run `helm repo update` to retrieve the latest versions of the packages. You can then run `helm search repo cadence` to see the charts. | ||
|
||
To install the cadence chart: | ||
``` | ||
helm install my-cadence cadence/cadence | ||
``` | ||
|
||
To uninstall the chart: | ||
``` | ||
helm delete my-cadence | ||
``` | ||
|
||
See [CONTRIBUTING.md](https://github.com/uber/cadence-charts/blob/main/CONTRIBUTING.md) for details on how to validate the deployment by running sample workflows. | ||
|
||
## Current State of the Chart | ||
|
||
There were a few community-created Cadence Helm charts but they were not actively maintained and had a few glitches that Cadence team @Uber wasn't able to provide support for. With the introduction of the new official Cadence Helm chart, our team is committed to provide support and evolve it with input from community. | ||
|
||
The v0 chart contains only the basics at the moment: | ||
- Cadence backend services as separate deployments: frontend, history, matching, worker. | ||
- Customizable replica counts and resource limitations. | ||
- Customizable dynamic config as a configmap. | ||
- A single instance ephemeral Cassandra container. This is included so that no external depency is required to get started. Ideally you should have your own external (hosted or managed) DB instance that you can specify in values.yaml. | ||
- The chart comes with `cadence:master-auto-setup` as the default image and capable of setting up Cassandra DB schema on first installation. | ||
|
||
What is (obviously) missing: | ||
- Support for advanced visibility stores like Elasticsearch or Pinot. | ||
- Support for persistent plugins configurations besides Cassandra. | ||
- Support for fully customizable service config via values.yaml. | ||
- Metrics integration with Prometheus (and more out of the box prometheus dashboards) | ||
- Custom annotations/lables/tolerations etc. | ||
- Support for ingress | ||
|
||
|
||
## Next Steps | ||
|
||
Since this is an early release, we would love to hear from you. Feel free to start [discussions](https://github.com/uber/cadence-charts/discussions) or report [issues](https://github.com/uber/cadence-charts/issues). | ||
|
||
Also check out the [contribution guideline](https://github.com/uber/cadence-charts/blob/main/CONTRIBUTING.md) if you are interested to contribute. Don't hesitate to send a PR and ping us over slack if we miss it. | ||
|
||
P.S. Huge thanks to our summer intern [Nikita Bhardwaj](https://github.com/nikitab7) for kickstarting the Cadence Helm charts initiative. |