Settings
Settings is a resource that configures external integrations for PaletteAI. Settings can be created in the Tenant or Project scope. Settings created in the Tenant scope are the default fallback for all projects in the Tenant. You can also create a Settings in the Project namespace and override the default Tenant Settings.
A Palette integration is required to deploy AI/ML applications and models. The Palette integration is used to authenticate with the Palette API, discover and utilize available Compute resources, and deploy Compute Pools for applications and models.
Scope and Inheritance
Settings are namespace-scoped resources. Where you create them determines their scope:
- Tenant namespace - Settings created in a Tenant's namespace serve as the default for all Projects in that Tenant.
- Project namespace - Settings created in a Project's namespace override the Tenant default for that specific Project.
This allows you to use shared Palette credentials for most Projects while configuring different credentials for specific Projects that need them. Refer to the Tenants and Projects page for more information on how Tenant and Project resources, such as Settings, interact.
A Palette integration must be unique for each Settings resource. In other words, you cannot have two Settings resources that reference the same Palette integration.
To use the same Palette credentials across multiple Projects, create a single Settings resource at the Tenant namespace level and have all Projects reference it. Alternatively, create a separate Settings resource for each project that uses different Palette credentials. This design helps prevent potential race conditions when accessing compute resources.
Secret Configuration
To add a Palette integration, you must create a Kubernetes Secret in the same namespace as the Settings resource. The Settings resource then references the secret to authenticate with the Palette API. To learn more about Palette integrations, refer to the Integrate with Palette page.
The secret must contain the following fields:
| Field | Description |
|---|---|
apiKey | API key for the Palette tenant |
defaultProjectID | Default Palette project ID |
hostUrl | Palette API URL |
tenant | Palette tenant name |
skipSSLCertificateVerification | If true, the server's SSL certificate is not verified. Enable this only for servers that use a self-signed SSL certificate. Defaults to false. |
apiVersion: v1
kind: Secret
metadata:
name: palette-api-secret
namespace: primary-dev
type: Opaque
stringData:
palette: |
{
"apiKey": "***************************",
"defaultProjectID": "**************************",
"hostUrl": "https://console.spectrocloud.com",
"tenant": "docs",
"skipSSLCertificateVerification": false
}