Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Cannot add external execution node on AWX 24.6.1 due to 'work type did not expect a signature' error #16124

@chtidav

Description

@chtidav

Please confirm the following

  • I agree to follow this project's code of conduct.
  • I have checked the current issues for duplicates.
  • I understand that AWX is open source software provided for free and that I might not receive a timely response.
  • I am NOT reporting a (potential) security vulnerability. (These should be emailed to [email protected] instead.)

Bug Summary

External execution node fails to connect on AWX 24.6.1 with "work type did not expect a signature" error.

AWX version

24.6.1

Select the relevant components

  • UI
  • UI (tech preview)
  • API
  • Docs
  • Collection
  • CLI
  • Other

Installation method

kubernetes

Modifications

no

Ansible version

ansible [core 2.15.12]
config file = None
configured module search path = ['/root/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
ansible python module location = /usr/local/lib/python3.9/site-packages/ansible
ansible collection location = /root/.ansible/collections:/usr/share/ansible/collections
executable location = /usr/local/bin/ansible
python version = 3.9.19 (main, Jun 11 2024, 00:00:00) [GCC 11.4.1 20231218 (Red Hat 11.4.1-3)] (/usr/bin/python3)
jinja version = 3.1.4
libyaml = True

Operating system

linux

Web browser

No response

Steps to reproduce

  1. Deploy AWX 24.6.1 using AWX Operator 2.19.1.
  2. Generate an installer bundle for a new external execution node.
  3. Deploy the execution node on a separate host using the official quay.io/ansible/awx-ee:24.6.1 image and the generated bundle.
  4. Observe the connection logs on both the awx-task pod and the external node container.

Expected results

The external execution node should successfully connect to the AWX mesh, complete its health check, and become available in the AWX topology with a "Ready" status.

Actual results

The node enters a connect/disconnect loop. The connection is established, but the first health check from the awx-task pod fails.
The external node log shows: ERROR: work type did not expect a signature.
The awx-task pod log shows: Remote error: ERROR: could not parse response: ERROR: work type did not expect a signature.

Additional information

  • The issue persists even after a full regeneration of the installer bundle.
  • All TLS certificates, CAs, and work-signing keys have been verified and are correctly paired.
  • Network connectivity via a Traefik reverse proxy using TLS passthrough has been confirmed working with openssl s_client.
  • The configuration setting AWX_ENABLE_WORK_SIGNING does not appear to exist in this version, as attempts to check it in the Django shell result in an AttributeError.
  • The issue seems to be a protocol incompatibility where the control plane signs a --worker-info health check command, and the receptor binary in the awx-ee image cannot process it.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions