| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Signed-off-by: Vadim Rutkovsky <vrutkovs@redhat.com>
|
|
|
|
| |
Signed-off-by: Vadim Rutkovsky <vrutkovs@redhat.com>
|
|
|
|
| |
Signed-off-by: Vadim Rutkovsky <vrutkovs@redhat.com>
|
|\
| |
| | |
Initial support for 3.10
|
| | |
|
|/ |
|
|\
| |
| | |
Move more plugins to lib_utils
|
| |
| |
| |
| |
| |
| |
| | |
This commit continues moving plugins into lib_utils.
This commit does not move any plugins for add-on roles
such as logging and metrics.
|
|\ \
| | |
| | | |
Bug 1527178 - installation of logging stack failed: Invalid version s…
|
| |/
| |
| |
| |
| |
| |
| |
| | |
specified for Elasticsearch
openshift_logging_{curator,elasicsearch,fluentd,kibana,mux}/vars/main.yml:
- adding "3_9" to __allowed_.*_versions
- bumping __latest_.*_version to "3_9"
|
|\ \
| |/
|/|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Automatic merge from submit-queue.
Don't hardcode the network interface in the openshift_logging_mux role
The openshift_logging_mux role hardcodes the 'eth0' interface alias
for determining the IP address to use for incoming external client
connections. This will cause the playbook to fail with an undefined
variable error on systems where an 'eth0' interface does not exist.
This patch changes the default IP address for external connections
to use the 'ansible_default_ipv4' fact. It also allows this to be
overridden by a new 'openshift_logging_mux_external_address' variable.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The openshift_logging_mux role hardcodes the 'eth0' interface alias
for determining the IP address to use for incoming external client
connections. This will cause the playbook to fail with an undefined
variable error on systems where an 'eth0' interface does not exist.
This patch changes the default IP address for external connections
to use the 'ansible_default_ipv4' fact. It also allows this to be
overridden by a new 'openshift_logging_mux_external_address' variable.
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In Ansible 2.2, the include_role directive came into existence as
a Tech Preview. It is still a Tech Preview through Ansible 2.4
(and in current devel branch), but with a noteable change. The
default behavior switched from static: true to static: false
because that functionality moved to the newly introduced
import_role directive (in order to stay consistent with include*
being dynamic in nature and `import* being static in nature).
The dynamic include is considerably more memory intensive as it will
dynamically create a role import for every host in the inventory
list to be used. (Also worth noting, there is at the time of this
writing an object allocation inefficiency in the dynamic include
that can in certain situations amplify this effect considerably)
This change is meant to mitigate the pressure on memory for the
Ansible control host.
We need to evaluate where it makes sense to dynamically include roles
and revert back to dynamic inclusion if and where it makes sense to do
so.
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Automatic merge from submit-queue.
Update logging to use existing cluster deployment for defaults
This will allow us to use logging facts to set defaults of specific configurations such as ES index replicas and shard count.
The update to logging facts yields us output like:
```json
"elasticsearch": {
"clusterrolebindings": {},
"configmaps": {
"logging-elasticsearch": {
"elasticsearch.yml": {
"cloud": {
"kubernetes": {
"namespace": "${NAMESPACE}",
"pod_label": "${POD_LABEL}",
"pod_port": 9300
}
},
"cluster": {
"name": "${CLUSTER_NAME}"
},
"discovery": {
"type": "kubernetes",
"zen.minimum_master_nodes": "${NODE_QUORUM}",
"zen.ping.multicast.enabled": false
},
"gateway": {
"expected_nodes": "${RECOVER_EXPECTED_NODES}",
"recover_after_nodes": "${NODE_QUORUM}",
"recover_after_time": "${RECOVER_AFTER_TIME}"
},
"index": {
"number_of_replicas": 0,
"number_of_shards": 1,
"translog": {
"flush_threshold_period": "5m",
"flush_threshold_size": "256mb"
},
"unassigned.node_left.delayed_timeout": "2m"
},
"io.fabric8.elasticsearch.authentication.users": [
"system.logging.kibana",
"system.logging.fluentd",
"system.logging.curator",
"system.admin"
],
```
TODO:
- [x] Update logging facts to pull out settings from config maps
- [x] Move `openshift_sanitize_inventory/library/conditional_set_fact.py` up to repo level
- [x] Generate diffs against currently deployed configs and correctly patch in custom changes from customers
- [x] Use `conditional_set_fact` to easily set defaults for logging based on logging facts, or falling back to role defaults when not specified in the inventory
- [x] Update all components to follow patching configmaps
|
| |
| |
| |
| | |
files, use diffs to keep custom changes, white list certain settings when creating diffs
|
|/
|
|
|
|
|
|
| |
specified for Elasticsearch
openshift_logging_{curator,elasicsearch,fluentd,kibana,mux}/vars/main.yml:
- adding "3_8" to __allowed_.*_versions
- replacing the value of __latest_.*_version "3_6" with "3_8".
|
|
|
|
|
|
|
| |
Move openshift_deployment_type check into sanity_check
action plugin. Remove compatibility for deployment_type.
deployment_type has been deprecated for some time now.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit relocates filter_plugings to lib_utils,
changes the namespacing to prevent unintended use of
older versions that may be present in filter_plugins/
directory on existing installs.
Add lib_utils to meta depends for roles
Also consolidate some plugins into lib_utils from
various other areas.
Update rpm spec, obsolete plugin rpms.
|
|
|
|
|
| |
. fixing a typo in fluentd template
. adjusting the default value of openshift_logging_mux_file_buffer_limit
|
| |
|
|
|
|
|
|
| |
Remove hosted vars from openshift_facts.
The current pattern is causing a bunch of undesired sideffects.
|
| |
|
|
|
|
|
|
|
|
|
| |
The mux containerPort must be an int
The eventrouter REPLICAS must use the double quote/double brace
syntax documented here:
https://docs.openshift.org/latest/dev_guide/templates.html#writing-parameters
And must be escaped because it uses double braces, as explained here:
http://jinja.pocoo.org/docs/dev/templates/#escaping
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Automatic merge from submit-queue.
Add enclosing <store> tags to sample secure-forward.conf files
This fixes [BZ#1498398](https://bugzilla.redhat.com/show_bug.cgi?id=1498398)
The examples provided in the documentation to configure the secure forward mention the configuration must be enclosed between the <store> tag. For that I think the examples should include it as well.
See [3.6 Documentation](https://docs.openshift.com/container-platform/3.6/install_config/aggregate_logging.html#aggregated-fluentd)
~~~
<store>
@type secure_forward
self_hostname pod-${HOSTNAME}
shared_key thisisasharedkey
secure yes
enable_strict_verification yes
ca_cert_path /etc/fluent/keys/your_ca_cert
ca_private_key_path /etc/fluent/keys/your_private_key
ca_private_key_passphrase passphrase
<server>
host ose1.example.com
port 24284
</server>
<server>
host ose2.example.com
port 24284
standby
</server>
<server>
host ose3.example.com
port 24284
standby
</server>
</store>
~~~
|
| | |
|
| | |
|
| |
| |
| |
| | |
openshift_logging pattern
|
| | |
|
| |
| |
| |
| |
| | |
- all images logging and metrics change their default imagePullPolicy
from Always to IfNotPresent
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We now use a CPU request to ensure logging infrastructure pods are
not capped by default for CPU usage. It is still important to ensure
we have a minimum amount of CPU.
We keep the use of the variables *_cpu_limit so that the existing
behavior is maintained.
Note that we don't want to cap an infra pod's CPU usage by default,
since we want to be able to use the necessary resources to complete
it's tasks.
Bug 1501960 (https://bugzilla.redhat.com/show_bug.cgi?id=1501960)
|
|
|
|
|
|
|
|
| |
Includes the following code review fixes, and a rebase with upstream/master
- mux.j2 template needed mux specific parameters for syslog configs
- fixed bug in IF condition not checking for true-ness
- updated README wording to remove ambiguity of payload_key's datatype
|
|
|
|
| |
Adding <label @OUTPUT> to fluent.conf.
|
|\
| |
| | |
Merged by openshift-bot
|
| | |
|
|/ |
|
| |
|
|\
| |
| | |
logging set memory request to limit
|
| | |
|
|/
|
|
|
|
| |
Allowing to specify an image version for each logging component
https://bugzilla.redhat.com/show_bug.cgi?id=1471322
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of the `openshift_logging_use_mux_client` boolean parameter,
use `openshift_logging_mux_client_mode` which will allow us to support
different mux client use cases:
The value `maximal` will cause Fluentd to perform as much of the
processing as possible at the local node. This currently means all of
the processing *except* for the Kubernetes metadata processing, which will
be done by mux. This is the currently recommended mode to use due to
current scaling issues.
The value `minimal` means that Fluentd will do *no* processing at all,
and send the raw logs to mux for processing. This is currently not
recommended to use due to current scaling issues. Ansible will warn
you if you try to use this mode.
`MUX_ALLOW_EXTERNAL` is no longer needed in the mux dc. mux now always
operates to process external logs. The ansible setting
`openshift_logging_mux_allow_external` is still required in order to
set up the mux service to accept connections from outside of the
cluster.
|
|
|
|
| |
(cherry picked from commit 231a7c4ce27ff944d9e14169062f487f57c94dd6)
|
|
|
|
| |
creeping
|
|
|
|
|
|
|
|
|
|
| |
"openshift_logging_fluentd_use_journal=false" nor omitted collects the log entries
https://bugzilla.redhat.com/show_bug.cgi?id=1466152
Do not set openshift_logging_fluentd_use_journal or USE_JOURNAL at
all unless it is explicitly set as an ansible param. It is almost
always better to let fluentd figure out which log driver docker
is using.
|
|\
| |
| | |
Sync environment variables FLUENTD/MUX_CPU_LIMIT FLUENTD/MUX_MEMORY_L…
|
| |
| |
| |
| | |
with the resource limit values.
|
|/
|
|
|
|
| |
https://bugzilla.redhat.com/show_bug.cgi?id=1465168
The fix is to pass the value through the `lower` filter. The value is
set in defaults/main.yaml so it should always have a value.
|
|\
| |
| | |
Merged by openshift-bot
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
adding
openshift_logging_fluentd_buffer_queue_limit: 1024
openshift_logging_fluentd_buffer_size_limit: 1m
openshift_logging_mux_buffer_queue_limit: 1024
openshift_logging_mux_buffer_size_limit: 1m
and setting the matched environment variables.
|
| |
| |
| |
| |
| |
| |
| |
| | |
roles/openshift_logging_fluentd/defaults/main.yml.
Adding the description for openshift_hosted_logging_fluentd_{cpu,memory}_limit to README.md.
Replaced openshift_hosted_logging_mux_.* with openshift_logging_mux_.*.
|
| |
| |
| |
| | |
MUX_CPU_LIMIT, MUX_MEMORY_LIMIT.
|