Description of problem: On a node host, the broker host configured in these two locations should be the same: /etc/openshift/node.conf:BROKER_HOST /etc/openshift/env/OPENSHIFT_BROKER_HOST Same for CLOUD_DOMAIN. Jenkins cart uses the variables from env, but nothing else AFAICS. oo-accept-node should test for this for as long as something is using both. Steps to Reproduce: 1. Install OSE 2.0 2. Change /etc/openshift/env/OPENSHIFT_BROKER_HOST to something bogus 3. Run oo-accept-node Expected results: Should complain that these values don't match.
Is a check in oo-accept-node sufficient, or should we actually set the values in /etc/openshift/env to match the node.conf values when starting mcollective on the nodes?
If you ask me, we should modify Jenkins not to be the only user of obscure settings. But to answer directly, having mcollective set conf values at start seems a bit outside its intended purpose. I think I'd rather just have oo-accept-node report on it.
Side note: when oo-diagnostics checks for SSL cert problems, it should probably also check that contacting OPENSHIFT_BROKER_HOST gets a matching cert (could be a LB URL serving up different cert from broker), since I suspect Jenkins java client will refuse to connect otherwise.
In oo-diagnostics, there is a method named 'test_node_env_vars_match' that is checking to see if BROKER_HOST and CLOUD_DOMAIN are consistent with node.conf variables. So, there is no need to add similar functionality to oo-accept-node which is run by oo-diagnostics. The PR <https://github.com/openshift/origin-server/pull/6275> is submitted to fix the SSL cert issue that is mentioned above in comment #4.
Verified this bug with rubygem-openshift-origin-common-1.29.4.1-1.el6op.noarch, and PASS. When the value of BROKER_HOST is different on a node between the `/etc/openshift/node.conf` file and the `/etc/openshift/env/OPENSHIFT_BROKER_HOST` environment variable file, oo-diagnostics reports an WARNNING about the inconsistency # oo-diagnostics <--snip--> INFO: running: test_node_env_vars_match WARN: block in test_node_env_vars_match /etc/openshift/env/OPENSHIFT_BROKER_HOST contains 'broker.ose22-auto.com.cn' /etc/openshift/node.conf:BROKER_HOST specifies 'node2.ose22-auto.com.cn' These should match; an incorrect value in either case could cause problems. node.conf values are used in defining application DNS records and proxy routing, while env var files are used for contacting the broker for application management actions. <--snip-->
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://rhn.redhat.com/errata/RHSA-2015-2666.html