Preparing access to Clickhouse, Redis, Temporal and Redpanda
Your hosted Moose application requires access to hosted Clickhouse and Redis service instances. You can also optionally use Redpanda for event streaming. You can stand up open source versions of these applications within your environments or opt to use cloud-hosted versions available at:
Clickhouse Configuration
For Clickhouse, you’ll need the following information:
Parameter | Description | Default Value |
---|---|---|
DB_NAME | Database name to use | Your branch or application ID |
USER | Username for authentication | - |
PASSWORD | Password for authentication | - |
HOST | Hostname or IP address | - |
HOST_PORT | HTTPS port | 8443 |
USE_SSL | Whether to use SSL (1 for true, 0 for false) | 1 |
NATIVE_PORT | Native protocol port | 9440 |
These values are used to configure the Moose application’s connection to Clickhouse through environment variables following this pattern:
MOOSE_CLICKHOUSE_CONFIG__<PARAMETER>=<value>
For example:
MOOSE_CLICKHOUSE_CONFIG__DB_NAME=myappdb
MOOSE_CLICKHOUSE_CONFIG__HOST=myclickhouse.example.com
MOOSE_CLICKHOUSE_CONFIG__USE_SSL=1
MOOSE_CLICKHOUSE_CONFIG__HOST_PORT=8443
MOOSE_CLICKHOUSE_CONFIG__NATIVE_PORT=9440
Redis Configuration
Moose requires Redis for caching and as a message broker. You’ll need the following configuration:
Parameter | Description |
---|---|
URL | Redis connection URL |
KEY_PREFIX | Prefix for Redis keys to isolate namespaces |
These values are configured through:
MOOSE_REDIS_CONFIG__URL=redis://username:password@redis.example.com:6379
MOOSE_REDIS_CONFIG__KEY_PREFIX=myapp
Temporal Configuration (Optional)
Temporal is an optional workflow orchestration platform that can be used with Moose. If you choose to use Temporal, you’ll need the following configuration:
Parameter | Description | Default Value |
---|---|---|
CA_CERT | Path to CA certificate | /etc/ssl/certs/ca-certificates.crt |
API_KEY | Temporal Cloud API key | - |
TEMPORAL_HOST | Temporal Cloud namespace host | Your namespace + .tmprl.cloud |
These values are configured through:
MOOSE_TEMPORAL_CONFIG__CA_CERT=/etc/ssl/certs/ca-certificates.crt
MOOSE_TEMPORAL_CONFIG__API_KEY=your-temporal-api-key
MOOSE_TEMPORAL_CONFIG__TEMPORAL_HOST=your-namespace.tmprl.cloud
Redpanda Configuration (Optional)
Redpanda is an optional component that can be used for event streaming. If you choose to use Redpanda, you’ll need the following information:
Parameter | Description | Default Value |
---|---|---|
BROKER | Bootstrap server address | - |
NAMESPACE | Namespace for isolation (often same as branch or app ID) | - |
MESSAGE_TIMEOUT_MS | Message timeout in milliseconds | 10043 |
SASL_USERNAME | SASL username for authentication | - |
SASL_PASSWORD | SASL password for authentication | - |
SASL_MECHANISM | SASL mechanism | SCRAM-SHA-256 |
SECURITY_PROTOCOL | Security protocol | SASL_SSL |
REPLICATION_FACTOR | Topic replication factor | 3 |
These values are used to configure the Moose application’s connection to Redpanda through environment variables following this pattern:
MOOSE_REDPANDA_CONFIG__<PARAMETER>=<value>
For example:
MOOSE_REDPANDA_CONFIG__BROKER=seed-5fbcae97.example.redpanda.com:9092
MOOSE_REDPANDA_CONFIG__NAMESPACE=myapp
MOOSE_REDPANDA_CONFIG__SECURITY_PROTOCOL=SASL_SSL
MOOSE_REDPANDA_CONFIG__SASL_MECHANISM=SCRAM-SHA-256
MOOSE_REDPANDA_CONFIG__REPLICATION_FACTOR=3
Using Environment Variables in Deployment
When deploying your Moose application, you’ll need to pass these configurations as environment variables. Refer to the deployment guides for your specific platform (Kubernetes, ECS, etc.) for details on how to securely provide these values to your application.