Skip to content

Commit 2406f1e

Browse files
authored
Add usefull configuration properties in the documentation. (#1118)
1 parent 680f9b9 commit 2406f1e

File tree

1 file changed

+59
-10
lines changed

1 file changed

+59
-10
lines changed

site/content/in-dev/unreleased/configuration.md

+59-10
Original file line numberDiff line numberDiff line change
@@ -77,16 +77,65 @@ read-only mode, as Polaris only reads the configuration file once, at startup.
7777

7878
## Polaris Configuration Options Reference
7979

80-
Most common configuration settings that users may want to change are:
81-
- `polaris.persistence.type` (see the [Configuring Apache Polaris for Production]({{% ref "configuring-polaris-for-production.md" %}})
82-
guide for specific instructions).
83-
- `polaris.features.defaults.SUPPORTED_CATALOG_STORAGE_TYPES=["S3","GCS","AZURE"]`.
84-
- Note: this excludes the default `FILE` storage type, which is not meaningful in a distributed deployment.
85-
86-
The following configuration options are available for Polaris:
87-
88-
TODO
89-
80+
| Configuration Property | Default Value | Description |
81+
|--------------------------------------------------------------------------------------------|----------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
82+
| `polaris.persistence.type` | `in-memory` | Define the persistence backend used by Polaris (`in-memory`, `eclipse-link`). See [Configuring Apache Polaris for Production)[{{% ref "configuring-polaris-for-production.md" %}}) |
83+
| `polaris.persistence.eclipselink.configurationFile` | | Define the location of the `persistence.xml`. By default, it's the built-in `persistence.xml` in use. |
84+
| `polaris.persistence.eclipselink.persistenceUnit | `polaris` | Define the name of the persistence unit to use, as defined in the `persistence.xml`. |
85+
| `polaris.realm-context.type` | `default` | Define the type of the Polaris realm to use. |
86+
| `polaris.realm-context.realms` | `POLARIS` | Define the list of realms to use. |
87+
| `polaris.realm-context.header-name` | `Polaris-Realm` | Define the header name defining the realm context. |
88+
| `polaris.features.defaults."ENFORCE_PRINCIPAL_CREDENTIAL_ROTATION_REQUIRED_CHECKING"` | `false` | Flag to enforce check if credential rotation. |
89+
| `polaris.features.defaults."SUPPORTED_CATALOG_STORAGE_TYPES"` | `FILE` | Define the catalog supported storage. Supported values are `S3`, `GCS`, `AZURE`, `FILE`. |
90+
| `polaris.features.realm-overrides."my-realm"."INITIALIZE_DEFAULT_CATALOG_FILEIO_FOR_TEST"` | `true` | "Override" realm features, here the catalog init default flag. |
91+
| `polaris.features.realm-overrides."my-realm"."SKIP_CREDENTIAL_SUBSCOPING_INDIRECTION"` | `true` | "Override" realm features, here the skip credential subscoping indirection flag. |
92+
| `polaris.authentication.authenticator.type` | `default` | Define the Polaris authenticator type. |
93+
| `polaris.authentication.token-service.type` | `default` | Define the Polaris token service type. |
94+
| `polaris.authentication.token-broker.type` | `rsa-key-pair` | Define the Polaris token broker type. |
95+
| `polaris.authentication.token-broker.max-token-generation` | `PT1H` | Define the max token generation policy on the token broker. |
96+
| `polaris.authentication.token-broker.rsa-key-pair.public-key-file` | `/tmp/public.key` | Define the location of the public key file. |
97+
| `polaris.authentication.token-broker.rsa-key-pair.private-key-file` | `/tmp/private.key` | Define the location of the private key file. |
98+
| `polaris.authentication.token-broker.symmetric-key.secret` | `secret` | Define the secret of the symmetric key. |
99+
| `polaris.authentication.token-broker.symmetric-key.file` | `/tmp/symmetric.key` | Define the location of the symmetric key file. |
100+
| `polaris.storage.aws.access-key` | `accessKey` | Define the AWS S3 access key. If unset, the default credential provider chain will be used. |
101+
| `polaris.storage.aws.secret-key` | `secretKey` | Define the AWS S3 secret key. If unset, the default credential provider chain will be used. |
102+
| `polaris.storage.gcp.token` | `token` | Define the Google Cloud Storage token. If unset, the default credential provider chain will be used. |
103+
| `polaris.storage.gcp.lifespan` | `PT1H` | Define the Google Cloud Storage lifespan type. If unset, the default credential provider chain will be used. |
104+
| `polaris.log.request-id-header-name` | `Polaris-Request-Id` | Define the header name to match request ID in the log. |
105+
| `polaris.log.mdc.aid` | `polaris` | Define the log context (e.g. MDC) AID. |
106+
| `polaris.log.mdc.sid` | `polaris-service` | Define the log context (e.g. MDC) SID. |
107+
| `polaris.rate-limiter.filter.type` | `no-op` | Define the Polaris rate limiter. Supported values are `no-op`, `token-bucket`. |
108+
| `polaris.rate-limiter.token-bucket.type` | `default` | Define the token bucket rate limiter. |
109+
| `polaris.rate-limiter.token-bucket.requests-per-second` | `9999` | Define the number of requests per second for the token bucket rate limiter. |
110+
| `polaris.rate-limiter.token-bucket.window` | `PT10S` | Define the window type for the token bucket rate limiter. |
111+
| `polaris.metrics.tags.application` | `Polaris` | Define the application name tag in metrics. |
112+
| `polaris.metrics.tags.service` | `polaris` | Define the service tag in metrics. |
113+
| `polaris.metrics.tags.environment` | `prod` | Define the environement tag in metrics. |
114+
| `polaris.metrics.tags.region` | `us-west-2` | Define the region tag in metrics. |
115+
| `polaris.tasks.max-concurrent-tasks` | `100` | Define the max number of concurrent tasks. |
116+
| `polaris.tasks.max-queued-tasks` | `1000` | Define the max number of tasks in queue. |
117+
118+
There are non Polaris configuration properties that can be useful:
119+
120+
| Configuration Property | Default Value | Description |
121+
|------------------------------------------------------|---------------------------------|-----------------------------------------------------------------------------|
122+
| `quarkus.log.level` | `INFO` | Define the root log level. |
123+
| `quarkus.log.category."org.apache.polaris".level` | | Define the log level for a specific category. |
124+
| `quarkus.default-locale` | System locale | Force the use of a specific locale, for instance `en_US`. |
125+
| `quarkus.http.port` | `8181` | Define the HTTP port number. |
126+
| `quarkus.http.auth.basic` | `false` | Enable the HTTP basic authentication. |
127+
| `quarkus.http.limits.max-body-size` | `10240K` | Define the HTTP max body size limit. |
128+
| `quarkus.http.cors.origins` | | Define the HTTP CORS origins. |
129+
| `quarkus.http.cors.methods` | `PATCH, POST, DELETE, GET, PUT` | Define the HTTP CORS covered methods. |
130+
| `quarkus.http.cors.headers` | `\*` | Define the HTTP CORS covered headers. |
131+
| `quarkus.http.cors.exposed-headers` | `\*` | Define the HTTP CORS covered exposed headers. |
132+
| `quarkus.http.cors.access-control-max-age` | `PT10M` | Define the HTTP CORS access control max age. |
133+
| `quarkus.http.cors.access-control-allow-credentials` | `true` | Define the HTTP CORS access control allow credentials flag. |
134+
| `quarkus.management.enabled` | `true` | Enable the management server. |
135+
| `quarkus.management.port` | `8182` | Define the port number of the Polaris management server. |
136+
| `quarkus.management.root-path` | | Define the root path where `/metrics` and `/health` endpoints are based on. |
137+
| `quarkus.otel.sdk.disabled` | `true` | Enable the OpenTelemetry layer. |
138+
90139
## Java Runtime Configuration
91140

92141
> Note: This section is only relevant for Polaris Docker images and Kubernetes deployments.

0 commit comments

Comments
 (0)