-
Notifications
You must be signed in to change notification settings - Fork 700
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
307 changed files
with
20,384 additions
and
5,509 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
--- | ||
title: "Overview" | ||
--- | ||
|
||
Keep supports various deployment and provisioning strategies to accommodate different environments and use cases, from development setups to production deployments. | ||
|
||
### Provisioning Options | ||
|
||
Keep offers two main provisioning options: | ||
|
||
1. [**Provider Provisioning**](/deployment/provision/provider) - Set up and manage data providers for Keep. | ||
2. [**Workflow Provisioning**](/deployment/provision/workflow) - Configure and manage workflows within Keep. | ||
|
||
Choosing the right provisioning strategy depends on your specific use case, deployment environment, and scalability requirements. You can read more about each provisioning option in their respective sections. | ||
|
||
### How To Configure Provisioning | ||
|
||
<Tip> | ||
Some provisioning options require additional environment variables. These will be covered in detail on the specific provisioning pages. | ||
</Tip> | ||
|
||
Provisioning in Keep is controlled through environment variables and configuration files. The main environment variables for provisioning are: | ||
|
||
| Provisioning Type | Environment Variable | Purpose | | ||
|-------------------|----------------------|---------| | ||
| **Provider** | `KEEP_PROVIDERS` | JSON string containing provider configurations | | ||
| **Workflow** | `KEEP_WORKFLOWS_DIRECTORY` | Directory path containing workflow configuration files | | ||
|
||
For more details on each provisioning strategy, including setup instructions and implications, refer to the respective sections. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,58 @@ | ||
--- | ||
title: "Providers Provisioning" | ||
--- | ||
|
||
<Tip>For any questions or issues related to provider provisioning, please join our [Slack](https://slack.keephq.dev) community.</Tip> | ||
|
||
Provider provisioning in Keep allows you to set up and manage data providers dynamically. This feature enables you to configure various data sources that Keep can interact with, such as monitoring systems, databases, or other services. | ||
|
||
### Configuring Providers | ||
|
||
To provision providers, set the `KEEP_PROVIDERS` environment variable with a JSON string containing the provider configurations. Here's an example: | ||
|
||
```json | ||
{ | ||
"keepVictoriaMetrics": { | ||
"type": "victoriametrics", | ||
"authentication": { | ||
"VMAlertHost": "http://localhost", | ||
"VMAlertPort": 1234 | ||
} | ||
}, | ||
"keepClickhouse1": { | ||
"type": "clickhouse", | ||
"authentication": { | ||
"host": "http://localhost", | ||
"port": 1234, | ||
"username": "keep", | ||
"password": "keep", | ||
"database": "keep-db" | ||
} | ||
} | ||
} | ||
``` | ||
|
||
Spin up Keep with this `KEEP_PROVIDERS` value: | ||
```json | ||
# ENV | ||
KEEP_PROVIDERS={"keepVictoriaMetrics":{"type":"victoriametrics","authentication":{"VMAlertHost":"http://localhost","VMAlertPort": 1234}},"keepClickhouse1":{"type":"clickhouse","authentication":{"host":"http://localhost","port":"4321","username":"keep","password":"1234","database":"keepdb"}}} | ||
``` | ||
|
||
### Supported Providers | ||
|
||
Keep supports a wide range of provider types. Each provider type has its own specific configuration requirements. | ||
To see the full list of supported providers and their detailed configuration options, please refer to our comprehensive provider documentation. | ||
|
||
|
||
### Update Provisioned Providers | ||
|
||
Provider configurations can be updated dynamically by changing the `KEEP_PROVIDERS` environment variable. | ||
|
||
On every restart, Keep reads this environment variable and determines which providers need to be added or removed. | ||
|
||
This process allows for flexible management of data sources without requiring manual intervention. By simply updating the `KEEP_PROVIDERS` variable and restarting the application, you can efficiently add new providers, remove existing ones, or modify their configurations. | ||
|
||
The high-level provisioning mechanism: | ||
1. Keep reads the `KEEP_PROVIDERS` value. | ||
2. Keep checks if there are any provisioned providers that are no longer in the `KEEP_PROVIDERS` value, and deletes them. | ||
3. Keep installs all providers from the `KEEP_PROVIDERS` value. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
--- | ||
title: "Workflow Provisioning" | ||
--- | ||
|
||
<Tip>For any questions or issues related to workflow provisioning, please join our [Slack](https://slack.keephq.dev) community.</Tip> | ||
|
||
Workflow provisioning in Keep allows you to set up and manage workflows dynamically. This feature enables you to configure various automated processes and tasks within your Keep deployment. | ||
|
||
### Configuring Workflows | ||
|
||
To provision workflows, follow these steps: | ||
|
||
1. Set the `KEEP_WORKFLOWS_DIRECTORY` environment variable to the path of your workflow configuration directory. | ||
2. Create workflow configuration files in the specified directory. | ||
|
||
Example directory structure: | ||
``` | ||
/path/to/workflows/ | ||
├── workflow1.yaml | ||
├── workflow2.yaml | ||
└── workflow3.yaml | ||
``` | ||
### Update Provisioned Workflows | ||
|
||
On every restart, Keep reads the `KEEP_WORKFLOWS_DIRECTORY` environment variable and determines which workflows need to be added, removed, or updated. | ||
|
||
This process allows for flexible management of workflows without requiring manual intervention. By simply updating the workflow files in the `KEEP_WORKFLOWS_DIRECTORY` and restarting the application, you can efficiently add new workflows, remove existing ones, or modify their configurations. | ||
|
||
The high-level provisioning mechanism: | ||
1. Keep reads the `KEEP_WORKFLOWS_DIRECTORY` value. | ||
2. Keep lists all workflow files under the `KEEP_WORKFLOWS_DIRECTORY` directory. | ||
3. Keep compares the current workflow files with the previously provisioned workflows: | ||
- New workflow files are provisioned. | ||
- Missing workflow files are deprovisioned. | ||
- Updated workflow files are re-provisioned with the new configuration. | ||
4. Keep updates its internal state to reflect the current set of provisioned workflows. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.