-
Couldn't load subscription status.
- Fork 0
feat: add LiteLLM Dashboard helm chart for deployment #20
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
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.
Awesome.
Could we add health and readiness checks?
| **To create and inject your secrets:** | ||
|
|
||
| 1. **Create a `secret.yaml` file:** Copy the content of `charts/litellm-dashboard/templates/secret.example.yaml` to a new file named `secret.yaml` (or any other desired name) outside of the Helm chart directory. | ||
| ```bash | ||
| cp charts/litellm-dashboard/templates/secret.example.yaml secret.yaml | ||
| ``` | ||
|
|
||
| 2. **Populate with your sensitive data:** Edit the `secret.yaml` file and replace the placeholder values with your actual sensitive information. | ||
| ```yaml | ||
| apiVersion: v1 | ||
| kind: Secret | ||
| metadata: | ||
| name: litellm-credentials-secret | ||
| type: Opaque | ||
| stringData: | ||
| LITELLM_PROXY_URL: "your-litellm-proxy-url" | ||
| LITELLM_API_KEY: "your-litellm-api-key" | ||
| NEXT_AUTH_SECRET: "your-next-auth-secret" | ||
| ADMIN_EMAIL: "your-admin-email" | ||
| ADMIN_PASSWORD: "your-admin-password" | ||
| NODE_ENV: "production" | ||
| ``` | ||
|
|
||
| 3. **Apply the secret to your Kubernetes cluster:** | ||
| ```bash | ||
| kubectl apply -f secret.yaml -n <your-namespace> | ||
| ``` | ||
| Replace `<your-namespace>` with the namespace where you intend to deploy the LiteLLM Dashboard. | ||
|
|
||
| 4. **Helm Chart Integration:** The `values.yaml` file within this Helm chart is already configured to reference the `litellm-credentials-secret`. This ensures that the environment variables are automatically injected into the LiteLLM Dashboard pod when the chart is deployed, without hardcoding sensitive data directly into the chart. | ||
|
|
||
| --- |
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.
Perfect!
Is it possible to do better with these secrets? Like to have them injected from an environment variable instead? I am skeptical about having to manually apply the secret.
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.
You should add secret.yaml to .gitignore for safety.
| command: | ||
| - /bin/sh | ||
| - -c | ||
| - SKIP_ENV_VALIDATION=1 yarn start |
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 will not be needed if the image if built correctly.
| probes: | ||
| liveness: | ||
| enabled: true | ||
| custom: false | ||
| spec: | ||
| httpGet: | ||
| path: /health | ||
| port: http | ||
| initialDelaySeconds: 10 | ||
| periodSeconds: 10 | ||
| timeoutSeconds: 3 | ||
| failureThreshold: 3 | ||
| readiness: | ||
| enabled: true | ||
| custom: false | ||
| spec: | ||
| httpGet: | ||
| path: /health | ||
| port: http | ||
| initialDelaySeconds: 5 | ||
| periodSeconds: 5 | ||
| timeoutSeconds: 3 | ||
| failureThreshold: 3 |
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.
Is the /health endpoint expose by the lite-llm-customer server?
| **To create and inject your secrets:** | ||
|
|
||
| 1. **Create a `secret.yaml` file:** Copy the content of `charts/litellm-dashboard/templates/secret.example.yaml` to a new file named `secret.yaml` (or any other desired name) outside of the Helm chart directory. | ||
| ```bash | ||
| cp charts/litellm-dashboard/templates/secret.example.yaml secret.yaml | ||
| ``` | ||
|
|
||
| 2. **Populate with your sensitive data:** Edit the `secret.yaml` file and replace the placeholder values with your actual sensitive information. | ||
| ```yaml | ||
| apiVersion: v1 | ||
| kind: Secret | ||
| metadata: | ||
| name: litellm-credentials-secret | ||
| type: Opaque | ||
| stringData: | ||
| LITELLM_PROXY_URL: "your-litellm-proxy-url" | ||
| LITELLM_API_KEY: "your-litellm-api-key" | ||
| NEXT_AUTH_SECRET: "your-next-auth-secret" | ||
| ADMIN_EMAIL: "your-admin-email" | ||
| ADMIN_PASSWORD: "your-admin-password" | ||
| NODE_ENV: "production" | ||
| ``` | ||
|
|
||
| 3. **Apply the secret to your Kubernetes cluster:** | ||
| ```bash | ||
| kubectl apply -f secret.yaml -n <your-namespace> | ||
| ``` | ||
| Replace `<your-namespace>` with the namespace where you intend to deploy the LiteLLM Dashboard. | ||
|
|
||
| 4. **Helm Chart Integration:** The `values.yaml` file within this Helm chart is already configured to reference the `litellm-credentials-secret`. This ensures that the environment variables are automatically injected into the LiteLLM Dashboard pod when the chart is deployed, without hardcoding sensitive data directly into the chart. | ||
|
|
||
| --- |
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.
You should add secret.yaml to .gitignore for safety.
No description provided.