Bug 1282520 - Routing-daemon does not create the openshift_application_aliases policy
Routing-daemon does not create the openshift_application_aliases policy
Status: CLOSED ERRATA
Product: OpenShift Container Platform
Classification: Red Hat
Component: Routing (Show other bugs)
2.2.0
Unspecified Unspecified
unspecified Severity unspecified
: ---
: ---
Assigned To: Miciah Dashiel Butler Masters
zhaozhanqi
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2015-11-16 11:38 EST by Timothy Williams
Modified: 2015-12-17 12:11 EST (History)
4 users (show)

See Also:
Fixed In Version: rubygem-openshift-origin-routing-daemon-0.26.4.3-1.el6op
Doc Type: Bug Fix
Doc Text:
When the routing daemon is configured with F5 BIG-IP®, the routing daemon is supposed to check for the `openshift_application_aliases` local traffic policy on startup and create the policy if it does not exist. However, a logic error introduced with the release of routing-daemon-0.23.2.0-1 in OpenShift Enterprise 2.2.5 prevented this check from functioning properly. If the `openshift_application_aliases` policy did not already exist, this caused the routing daemon to fail to configure policy rules. This bug fix addresses the logic error in the routing daemon's initialization, and as a result the routing daemon now creates the `openshift_application_aliases` local traffic policy on startup if required.
Story Points: ---
Clone Of:
Environment:
Last Closed: 2015-12-17 12:11:35 EST
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Timothy Williams 2015-11-16 11:38:11 EST
Description of problem:
When using F5, the routing-daemon does not create the openshift_application_aliases policy.

Version-Release number of selected component (if applicable):
2.2.7

How reproducible:
Always

Steps to Reproduce:
1. When the openshift_application_aliases policy has not yet been created in F5, start the routing-daemon
2.
3.

Actual results:
The openshift_application_aliases policy is not created during initalization

Expected results:
The openshift_application_aliases policy is created during initialization

Additional Info:

Fixed in https://github.com/openshift/origin-server/commit/e131a07c8568877001d74b504315c2d838ac0a58
Comment 4 Anping Li 2015-11-23 06:21:43 EST
Failed to get policy. 

/opt/rh/ruby193/root/usr/share/gems/gems/openshift-origin-routing-daemon-0.26.4.1/lib/openshift/routing/models/f5-icontrol-rest.rb:98:in `rescue in rest_request': got ArgumentError exception: must pass :url (OpenShift::LBModelException)
        from /opt/rh/ruby193/root/usr/share/gems/gems/openshift-origin-routing-daemon-0.26.4.1/lib/openshift/routing/models/f5-icontrol-rest.rb:64:in `rest_request'
        from /opt/rh/ruby193/root/usr/share/gems/gems/openshift-origin-routing-daemon-0.26.4.1/lib/openshift/routing/models/f5-icontrol-rest.rb:105:in `get'
        from /opt/rh/ruby193/root/usr/share/gems/gems/openshift-origin-routing-daemon-0.26.4.1/lib/openshift/routing/models/f5-icontrol-rest.rb:390:in `initialize'
        from /opt/rh/ruby193/root/usr/share/gems/gems/openshift-origin-routing-daemon-0.26.4.1/lib/openshift/routing/controllers/simple.rb:148:in `new'
        from /opt/rh/ruby193/root/usr/share/gems/gems/openshift-origin-routing-daemon-0.26.4.1/lib/openshift/routing/controllers/simple.rb:148:in `initialize'
        from /opt/rh/ruby193/root/usr/share/gems/gems/openshift-origin-routing-daemon-0.26.4.1/lib/openshift/routing/daemon.rb:168:in `new'
        from /opt/rh/ruby193/root/usr/share/gems/gems/openshift-origin-routing-daemon-0.26.4.1/lib/openshift/routing/daemon.rb:168:in `initialize'
        from /etc/init.d/openshift-routing-daemon:74:in `new'
        from /etc/init.d/openshift-routing-daemon:74:in `block (2 levels) in <main>'
        from /opt/rh/ruby193/root/usr/share/gems/gems/daemons-1.0.10/lib/daemons/application.rb:215:in `call'
        from /opt/rh/ruby193/root/usr/share/gems/gems/daemons-1.0.10/lib/daemons/application.rb:215:in `block in start_proc'
        from /opt/rh/ruby193/root/usr/share/gems/gems/daemons-1.0.10/lib/daemons/daemonize.rb:192:in `call'
        from /opt/rh/ruby193/root/usr/share/gems/gems/daemons-1.0.10/lib/daemons/daemonize.rb:192:in `call_as_daemon'
        from /opt/rh/ruby193/root/usr/share/gems/gems/daemons-1.0.10/lib/daemons/application.rb:219:in `start_proc'
        from /opt/rh/ruby193/root/usr/share/gems/gems/daemons-1.0.10/lib/daemons/application.rb:255:in `start'
        from /opt/rh/ruby193/root/usr/share/gems/gems/daemons-1.0.10/lib/daemons/controller.rb:69:in `run'
        from /opt/rh/ruby193/root/usr/share/gems/gems/daemons-1.0.10/lib/daemons.rb:188:in `block in run_proc'
        from /opt/rh/ruby193/root/usr/share/gems/gems/daemons-1.0.10/lib/daemons/cmdline.rb:105:in `call'
        from /opt/rh/ruby193/root/usr/share/gems/gems/daemons-1.0.10/lib/daemons/cmdline.rb:105:in `catch_exceptions'
        from /opt/rh/ruby193/root/usr/share/gems/gems/daemons-1.0.10/lib/daemons.rb:187:in `run_proc'
        from /etc/init.d/openshift-routing-daemon:73:in `block in <main>'
        from /etc/init.d/openshift-routing-daemon:37:in `block (2 levels) in locked'
        from /opt/rh/ruby193/root/usr/share/gems/gems/openshift-origin-common-1.29.4.1/lib/openshift-origin-common/utils/path_utils.rb:94:in `block in flock'
        from /opt/rh/ruby193/root/usr/share/gems/gems/openshift-origin-common-1.29.4.1/lib/openshift-origin-common/utils/path_utils.rb:88:in `open'
        from /opt/rh/ruby193/root/usr/share/gems/gems/openshift-origin-common-1.29.4.1/lib/openshift-origin-common/utils/path_utils.rb:88:in `flock'
        from /etc/init.d/openshift-routing-daemon:36:in `block in locked'
        from /opt/rh/ruby193/root/usr/share/ruby/timeout.rb:69:in `timeout'
        from /etc/init.d/openshift-routing-daemon:35:in `locked'
        from /etc/init.d/openshift-routing-daemon:72:in `<main>'
Comment 5 Miciah Dashiel Butler Masters 2015-11-23 18:11:49 EST
Sorry for the silly error.  The fix will be in the next puddle.
Comment 8 Miciah Dashiel Butler Masters 2015-11-24 14:47:01 EST
The presence of pools in partitions other than the "Common" partition caused the most recent failures.  It appears the F5 BIG-IP test instance has some pools in non-Common partitions, probably in order to test a feature of the F5 integration in OpenShift 3, and the routing-daemon for OpenShift 2 fails on these pools.

The latest update to the routing-daemon filters out pools, monitors, and pool members that do not belong to the "Common" partition, which should resolve the most recent failures.
Comment 10 Anping Li 2015-11-24 21:53:52 EST
openshift_application_aliases policy can be created. The pool can be added and removed, the application can be access via F5 Router. so move bug to F5.
Comment 12 errata-xmlrpc 2015-12-17 12:11:35 EST
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

Note You need to log in before you can comment on or make changes to this bug.