The controller throws an exception for a missing shared library (libssl.so.1.0.0). This appears to be related to the recent uplift to Alpine 3.7. Error only occurs when connecting to DC/OS Enterprise using key-based authentication.
Mesos Version
DC/OS Enterprise 1.10
Marathon Version
1.5.5
Controller Version
master
BIG-IP Version
Any
Diagnostic Information
2018-02-26 20:12:13,233 controller: ERROR : Unexpected error!
Traceback (most recent call last):
File "/app/marathon-bigip-ctlr.py", line 903, in do_reset
sorted(get_apps(self.marathon.list(),
File "/app/marathon-bigip-ctlr.py", line 500, in list
params={'embed': 'apps.tasks'})["apps"]
File "/app/marathon-bigip-ctlr.py", line 493, in api_req
verify=self.__verify, kwargs).json()
File "/app/marathon-bigip-ctlr.py", line 475, in api_req_raw
kwargs
File "/usr/local/lib/python2.7/site-packages/requests/api.py", line 53, in request
return session.request(method=method, url=url, **kwargs)
File "/usr/local/lib/python2.7/site-packages/requests/sessions.py", line 454, in request
prep = self.prepare_request(req)
File "/usr/local/lib/python2.7/site-packages/requests/sessions.py", line 388, in prepare_request
hooks=merge_hooks(request.hooks, self.hooks),
File "/usr/local/lib/python2.7/site-packages/requests/models.py", line 297, in prepare
self.prepare_auth(auth, url)
File "/usr/local/lib/python2.7/site-packages/requests/models.py", line 490, in prepare_auth
r = auth(self)
File "/app/common.py", line 118, in call
token = jwt.encode(payload, self.private_key, self.scheme)
File "/usr/local/lib/python2.7/site-packages/jwt/api_jwt.py", line 56, in encode
json_payload, key, algorithm, headers, json_encoder
File "/usr/local/lib/python2.7/site-packages/jwt/api_jws.py", line 97, in encode
key = alg_obj.prepare_key(key)
File "/usr/local/lib/python2.7/site-packages/jwt/algorithms.py", line 167, in prepare_key
key = load_pem_private_key(key, password=None, backend=default_backend())
File "/usr/local/lib/python2.7/site-packages/cryptography/hazmat/backends/init.py", line 35, in default_backend
_default_backend = MultiBackend(_available_backends())
File "/usr/local/lib/python2.7/site-packages/cryptography/hazmat/backends/init.py", line 22, in _available_backends
"cryptography.backends"
File "/usr/local/lib/python2.7/site-packages/pkg_resources/init.py", line 2414, in resolve
module = import__(self.module_name, fromlist=['name'], level=0)
File "/usr/local/lib/python2.7/site-packages/cryptography/hazmat/backends/openssl/init.py", line 7, in
from cryptography.hazmat.backends.openssl.backend import backend
File "/usr/local/lib/python2.7/site-packages/cryptography/hazmat/backends/openssl/backend.py", line 45, in
from cryptography.hazmat.bindings._openssl import ffi as _ffi
ImportError: Error loading shared library libssl.so.1.0.0: No such file or directory (needed by /usr/local/lib/python2.7/site-packages/cryptography/hazmat/bindings/_openssl.so)
Description
The controller throws an exception for a missing shared library (libssl.so.1.0.0). This appears to be related to the recent uplift to Alpine 3.7. Error only occurs when connecting to DC/OS Enterprise using key-based authentication.
Mesos Version
DC/OS Enterprise 1.10
Marathon Version
1.5.5
Controller Version
master
BIG-IP Version
Any
Diagnostic Information
2018-02-26 20:12:13,233 controller: ERROR : Unexpected error! Traceback (most recent call last): File "/app/marathon-bigip-ctlr.py", line 903, in do_reset sorted(get_apps(self.marathon.list(), File "/app/marathon-bigip-ctlr.py", line 500, in list params={'embed': 'apps.tasks'})["apps"] File "/app/marathon-bigip-ctlr.py", line 493, in api_req verify=self.__verify, kwargs).json() File "/app/marathon-bigip-ctlr.py", line 475, in api_req_raw kwargs File "/usr/local/lib/python2.7/site-packages/requests/api.py", line 53, in request return session.request(method=method, url=url, **kwargs) File "/usr/local/lib/python2.7/site-packages/requests/sessions.py", line 454, in request prep = self.prepare_request(req) File "/usr/local/lib/python2.7/site-packages/requests/sessions.py", line 388, in prepare_request hooks=merge_hooks(request.hooks, self.hooks), File "/usr/local/lib/python2.7/site-packages/requests/models.py", line 297, in prepare self.prepare_auth(auth, url) File "/usr/local/lib/python2.7/site-packages/requests/models.py", line 490, in prepare_auth r = auth(self) File "/app/common.py", line 118, in call token = jwt.encode(payload, self.private_key, self.scheme) File "/usr/local/lib/python2.7/site-packages/jwt/api_jwt.py", line 56, in encode json_payload, key, algorithm, headers, json_encoder File "/usr/local/lib/python2.7/site-packages/jwt/api_jws.py", line 97, in encode key = alg_obj.prepare_key(key) File "/usr/local/lib/python2.7/site-packages/jwt/algorithms.py", line 167, in prepare_key key = load_pem_private_key(key, password=None, backend=default_backend()) File "/usr/local/lib/python2.7/site-packages/cryptography/hazmat/backends/init.py", line 35, in default_backend _default_backend = MultiBackend(_available_backends()) File "/usr/local/lib/python2.7/site-packages/cryptography/hazmat/backends/init.py", line 22, in _available_backends "cryptography.backends" File "/usr/local/lib/python2.7/site-packages/pkg_resources/init.py", line 2414, in resolve module = import__(self.module_name, fromlist=['name'], level=0) File "/usr/local/lib/python2.7/site-packages/cryptography/hazmat/backends/openssl/init.py", line 7, in
from cryptography.hazmat.backends.openssl.backend import backend
File "/usr/local/lib/python2.7/site-packages/cryptography/hazmat/backends/openssl/backend.py", line 45, in
from cryptography.hazmat.bindings._openssl import ffi as _ffi
ImportError: Error loading shared library libssl.so.1.0.0: No such file or directory (needed by /usr/local/lib/python2.7/site-packages/cryptography/hazmat/bindings/_openssl.so)