diff --git a/daprdocs/content/en/operations/components/component-updates.md b/daprdocs/content/en/operations/components/component-updates.md index e2272b4b064..7977e6e5e9b 100644 --- a/daprdocs/content/en/operations/components/component-updates.md +++ b/daprdocs/content/en/operations/components/component-updates.md @@ -21,6 +21,8 @@ When running in Kubernetes, the process of updating a component involves two ste Unless the [`HotReload` feature gate is enabled](#hot-reloading-preview-feature), the process of updating a component involves a single step of stopping and restarting the `daprd` process to pick up the latest component. +> **Note:** On POSIX-compatible systems (Linux, macOS), you can also send a `SIGHUP` signal to the `daprd` process to reload the runtime in-process without fully restarting it. See [Reloading configuration with SIGHUP]({{% ref "configuration-overview.md#reloading-configuration-with-sighup" %}}) for more information. + ## Hot Reloading (Preview Feature) > This feature is currently in [preview]({{% ref "preview-features.md" %}}). diff --git a/daprdocs/content/en/operations/configuration/configuration-overview.md b/daprdocs/content/en/operations/configuration/configuration-overview.md index e0ed4657f53..0f4540eeed6 100644 --- a/daprdocs/content/en/operations/configuration/configuration-overview.md +++ b/daprdocs/content/en/operations/configuration/configuration-overview.md @@ -76,6 +76,7 @@ The following menu includes all of the configuration settings you can set: - [Disallow usage of certain component types](#disallow-usage-of-certain-component-types) - [Turning on preview features](#turning-on-preview-features) - [Example sidecar configuration](#example-sidecar-configuration) +- [Reloading configuration with SIGHUP](#reloading-configuration-with-sighup) #### Tracing @@ -380,9 +381,31 @@ spec: action: allow ``` +#### Reloading configuration with SIGHUP + +On POSIX-compatible systems (Linux, macOS), you can reload the Dapr sidecar configuration without fully restarting the process by sending a `SIGHUP` signal to `daprd`. When `daprd` receives a `SIGHUP`, it gracefully shuts down the internal runtime and re-initializes it in-process using the current configuration file. This allows you to apply changes to configuration settings such as [tracing](#tracing), [metrics](#metrics), and [logging](#logging) without a full process restart. + +To send a `SIGHUP` signal: + +```bash +# Using the kill command +kill -SIGHUP + +# Or using pkill +pkill -HUP daprd +``` + +{{% alert title="Note" color="primary" %}} +During a SIGHUP reload, the Dapr sidecar is briefly unavailable while the runtime reinitializes. The sidecar will continue to handle graceful shutdown of existing connections before reloading. +{{% /alert %}} + +{{% alert title="Note" color="primary" %}} +SIGHUP-based reloading is only available on POSIX-compatible systems (Linux, macOS). On Windows, a full restart of `daprd` is required to pick up configuration changes. +{{% /alert %}} + ## Control plane configuration -A single configuration file called `daprsystem` is installed with the Dapr control plane system services that applies global settings. +A single configuration file called `daprsystem` is installed with the Dapr control plane system services that applies global settings. > **This is only set up when Dapr is deployed to Kubernetes.**