diff options
author | Nathan Kinder <nkinder@redhat.com> | 2018-01-04 12:01:11 -0800 |
---|---|---|
committer | Nathan Kinder <nkinder@redhat.com> | 2018-01-04 12:01:11 -0800 |
commit | 3c5539a339145af54536d2731d7444b04f4cdf64 (patch) | |
tree | ca5dec8ee82a66b5eab48d81cbdb0e5dcc962ff1 | |
parent | 9f19afc7529bd7293433b27e834b9ee3479e646f (diff) | |
download | openshift-3c5539a339145af54536d2731d7444b04f4cdf64.tar.gz openshift-3c5539a339145af54536d2731d7444b04f4cdf64.tar.bz2 openshift-3c5539a339145af54536d2731d7444b04f4cdf64.tar.xz openshift-3c5539a339145af54536d2731d7444b04f4cdf64.zip |
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.
-rw-r--r-- | roles/openshift_logging/README.md | 3 | ||||
-rw-r--r-- | roles/openshift_logging_mux/defaults/main.yml | 1 | ||||
-rw-r--r-- | roles/openshift_logging_mux/tasks/main.yaml | 2 |
3 files changed, 5 insertions, 1 deletions
diff --git a/roles/openshift_logging/README.md b/roles/openshift_logging/README.md index 27cfc17d6..a192bd67e 100644 --- a/roles/openshift_logging/README.md +++ b/roles/openshift_logging/README.md @@ -177,6 +177,9 @@ Elasticsearch OPS too, if using an OPS cluster: clients will use to connect to mux, and will be used in the TLS server cert subject. - `openshift_logging_mux_port`: 24284 +- `openshift_logging_mux_external_address`: The IP address that mux will listen + on for connections from *external* clients. Default is the default ipv4 + interface as reported by the `ansible_default_ipv4` fact. - `openshift_logging_mux_cpu_request`: 100m - `openshift_logging_mux_memory_limit`: 512Mi - `openshift_logging_mux_default_namespaces`: Default `["mux-undefined"]` - the diff --git a/roles/openshift_logging_mux/defaults/main.yml b/roles/openshift_logging_mux/defaults/main.yml index db6f23126..dbf4549c4 100644 --- a/roles/openshift_logging_mux/defaults/main.yml +++ b/roles/openshift_logging_mux/defaults/main.yml @@ -30,6 +30,7 @@ openshift_logging_mux_allow_external: False openshift_logging_use_mux: "{{ openshift_logging_mux_allow_external | default(False) }}" openshift_logging_mux_hostname: "{{ 'mux.' ~ openshift_master_default_subdomain }}" openshift_logging_mux_port: 24284 +openshift_logging_mux_external_address: "{{ ansible_default_ipv4.address }}" # the namespace to use for undefined projects should come first, followed by any # additional namespaces to create by default - users will typically not need to set this openshift_logging_mux_default_namespaces: ["mux-undefined"] diff --git a/roles/openshift_logging_mux/tasks/main.yaml b/roles/openshift_logging_mux/tasks/main.yaml index a281c6a53..eb1561f14 100644 --- a/roles/openshift_logging_mux/tasks/main.yaml +++ b/roles/openshift_logging_mux/tasks/main.yaml @@ -148,7 +148,7 @@ port: "{{ openshift_logging_mux_port }}" targetPort: "mux-forward" external_ips: - - "{{ ansible_eth0.ipv4.address }}" + - "{{ openshift_logging_mux_external_address }}" when: openshift_logging_mux_allow_external | bool - name: Set logging-mux service for internal communication |