Skip to content
Merged
Show file tree
Hide file tree
Changes from 10 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 17 additions & 0 deletions roles/graylog_datanode/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,12 @@ graylog_datanode__password_secret: 'Linuxfabrik_GmbH'
* Type: String.
* Default: `'mongodb://127.0.0.1/graylog'`

`graylog_datanode__node_search_cache_size`
Comment thread
NavidSassan marked this conversation as resolved.

* Cache size for searchable snaphots. This space will be automatically reserved if `graylog_datanode__path_repo` is configured. See [docs.opensearch.org - Supported Units](https://docs.opensearch.org/latest/api-reference/units/) for a list of possible options.
Comment thread
NavidSassan marked this conversation as resolved.
Outdated
Comment thread
NavidSassan marked this conversation as resolved.
Outdated
* Type: String
Comment thread
NavidSassan marked this conversation as resolved.
Outdated
* Default: `10gb`

`graylog_datanode__opensearch_data_location`

* Set this OpenSearch folder if you need OpenSearch to be located in a special place.
Expand All @@ -90,6 +96,17 @@ graylog_datanode__password_secret: 'Linuxfabrik_GmbH'
* Type: String.
* Default: 50% of system memory, e.g. `'8g'`

`graylog_datanode__path_repo`

* Filesystem paths where searchable snapshots should be stored
* Type: List of Strings
* Default: `[]`

`graylog_datanode__raw`
* Multiline string. Raw content which will be appended to the `datanode.conf` config file.
Comment thread
NavidSassan marked this conversation as resolved.
Outdated
* Type: String
* Default: unset

`graylog_datanode__service_enabled`

* Enables or disables the graylog-datanode service, analogous to `systemctl enable/disable --now`.
Expand Down
4 changes: 3 additions & 1 deletion roles/graylog_datanode/defaults/main.yml
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
graylog_datanode__bind_address: '127.0.0.1'
graylog_datanode__datanode_http_port: 8999
graylog_datanode__mongodb_uri: 'mongodb://127.0.0.1/graylog'
graylog_datanode__node_search_cache_size: '10gb'
graylog_datanode__opensearch_data_location: '/var/lib/graylog-datanode/opensearch/data'
graylog_datanode__opensearch_heap: '{{ [((ansible_facts["memtotal_mb"] * 0.5) | int), 31744] | min }}m'
graylog_datanode__mongodb_uri: 'mongodb://127.0.0.1/graylog'
graylog_datanode__path_repo: []
Comment thread
NavidSassan marked this conversation as resolved.
Outdated
graylog_datanode__service_enabled: true

# ------
Expand Down
29 changes: 29 additions & 0 deletions roles/graylog_datanode/tasks/main.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,23 @@
- block:

- name: 'Validate that graylog_datanode__password_secret length >= 16 characters'
ansible.builtin.assert:
that:
- 'graylog_datanode__password_secret | length >= 16'
fail_msg: 'graylog_datanode__password_secret must at least 16 characters'
Comment thread
NavidSassan marked this conversation as resolved.
Outdated
quiet: true

- name: 'Validate that graylog_datanode__node_search_cache_size follows OpenSearch Bytes format'
ansible.builtin.assert:
that:
- 'graylog_datanode__node_search_cache_size | regex_search("^[0-9]+(b|kb|mb|gb|tb|pb)$")'
Comment thread
NavidSassan marked this conversation as resolved.
Outdated
fail_msg: '"{{ graylog_datanode__node_search_cache_size }}" does not follow OpenSearch Bytes format'
Comment thread
NavidSassan marked this conversation as resolved.
Outdated
quiet: true

tags:
- 'graylog_datanode'
- 'graylog_datanode:configure'

Comment thread
NavidSassan marked this conversation as resolved.
- block:

- name: 'Install graylog-datanode'
Expand Down Expand Up @@ -62,6 +82,15 @@
group: 'graylog-datanode'
mode: 0o755

- name: 'mkdir -p {{ item }}; chown graylog-datanode:graylog-datanode {{ item }}'
ansible.builtin.file:
path: '{{ item }}'
state: 'directory'
owner: 'graylog-datanode'
group: 'graylog-datanode'
mode: 0o740
loop: '{{ graylog_datanode__path_repo }}'

tags:
- 'graylog_datanode'
- 'graylog_datanode:configure'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -163,3 +163,13 @@ opensearch_logs_location = /var/log/graylog-datanode/opensearch
# indexer_jwt_auth_token_expiration_duration = 180s

opensearch_heap = {{ graylog_datanode__opensearch_heap }}

Comment thread
NavidSassan marked this conversation as resolved.
#### Data Tiering Properties

node_search_cache_size = {{ graylog_datanode__node_search_cache_size }}
path_repo = {{ graylog_datanode__path_repo | join(',') }}
Comment thread
NavidSassan marked this conversation as resolved.
Outdated

{% if graylog_datanode__raw is defined and graylog_datanode__raw | length %}
#### Raw ####
{{ graylog_datanode__raw }}
{% endif %}
Original file line number Diff line number Diff line change
Expand Up @@ -163,3 +163,13 @@ opensearch_logs_location = /var/log/graylog-datanode/opensearch
# indexer_jwt_auth_token_expiration_duration = 180s

opensearch_heap = {{ graylog_datanode__opensearch_heap }}

#### Data Tiering Properties

node_search_cache_size = {{ graylog_datanode__node_search_cache_size }}
path_repo = {{ graylog_datanode__path_repo | join(',') }}

{% if graylog_datanode__raw is defined and graylog_datanode__raw | length %}
#### Raw ####
{{ graylog_datanode__raw }}
{% endif %}
Original file line number Diff line number Diff line change
Expand Up @@ -163,3 +163,13 @@ opensearch_logs_location = /var/log/graylog-datanode/opensearch
# indexer_jwt_auth_token_expiration_duration = 180s

opensearch_heap = {{ graylog_datanode__opensearch_heap }}

#### Data Tiering Properties

node_search_cache_size = {{ graylog_datanode__node_search_cache_size }}
path_repo = {{ graylog_datanode__path_repo | join(',') }}

{% if graylog_datanode__raw is defined and graylog_datanode__raw | length %}
#### Raw ####
{{ graylog_datanode__raw }}
{% endif %}
Original file line number Diff line number Diff line change
Expand Up @@ -163,3 +163,13 @@ opensearch_logs_location = /var/log/graylog-datanode/opensearch
# indexer_jwt_auth_token_expiration_duration = 180s

opensearch_heap = {{ graylog_datanode__opensearch_heap }}

#### Data Tiering Properties

node_search_cache_size = {{ graylog_datanode__node_search_cache_size }}
path_repo = {{ graylog_datanode__path_repo | join(',') }}

{% if graylog_datanode__raw is defined and graylog_datanode__raw | length %}
#### Raw ####
{{ graylog_datanode__raw }}
{% endif %}
13 changes: 13 additions & 0 deletions roles/graylog_server/tasks/main.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,16 @@
- block:

- name: 'Validate that graylog_server__password_secret length >= 16 characters'
ansible.builtin.assert:
that:
- 'graylog_server__password_secret | length >= 16'
fail_msg: 'graylog_server__password_secret must be at least 16 characters'
quiet: true

tags:
- 'graylog_server'
- 'graylog_server:configure'

Comment thread
NavidSassan marked this conversation as resolved.
- block:

- name: 'Install graylog-server'
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# {{ ansible_managed }}
# 2026012102
# 2026032701
# 6.1
############################
# GRAYLOG CONFIGURATION FILE
Expand Down Expand Up @@ -781,3 +781,9 @@ integrations_scripts_dir = /usr/share/graylog-server/scripts
# event-processor-execution-v1
# notification-execution-v1
#job_scheduler_concurrency_limits = event-processor-execution-v1:2,notification-execution-v1:2

##################
# Privacy settings
##################

telemetry_enabled = false
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# {{ ansible_managed }}
# 2026012102
# 2026032701
# 6.2
############################
# GRAYLOG CONFIGURATION FILE
Expand Down Expand Up @@ -815,3 +815,9 @@ integrations_scripts_dir = /usr/share/graylog-server/scripts
# instability. Proceed with caution.
# Default: 0
#search_query_engine_data_lake_jobs_queue_size = 0

##################
# Privacy settings
##################

telemetry_enabled = false
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# {{ ansible_managed }}
# 2026012102
# 2026032701
# 6.3
############################
# GRAYLOG CONFIGURATION FILE
Expand Down Expand Up @@ -815,3 +815,9 @@ integrations_scripts_dir = /usr/share/graylog-server/scripts
# instability. Proceed with caution.
# Default: 0
#search_query_engine_data_lake_jobs_queue_size = 0

##################
# Privacy settings
##################

telemetry_enabled = false
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# {{ ansible_managed }}
# 2026012102
# 2026032701
# 7.0
############################
# GRAYLOG CONFIGURATION FILE
Expand Down Expand Up @@ -819,3 +819,9 @@ integrations_scripts_dir = /usr/share/graylog-server/scripts
# instability. Proceed with caution.
# Default: 0
#search_query_engine_data_lake_jobs_queue_size = 0

##################
# Privacy settings
##################

telemetry_enabled = false
Loading