datastax opscenter posturl.conf未向AWS api网关端点发布警报
问题描述:
我试图将Opscenter警报发布到AWS Api Gateway端点(其形式为https://xxxxxxxx.execute-api.us-east-1.amazonaws.com/opscenteralerts/alerts)。我能够从flask server发布到api网关端点。我也尝试将opscenter提醒发布到另一个web服务器。但我无法将其发布到API网关端点。我检查了我的安全组和API端点也是开放的。我错过了什么?datastax opscenter posturl.conf未向AWS api网关端点发布警报
下面是opscenterd.log
堆栈跟踪与API网关2017-07-04 18:58:06,651 [opscenterd] ERROR: [Errno 1] Received fatal alert: handshake_failure
File "/usr/share/opscenter/lib/py/twisted/internet/selectreactor.py", line 149, in _doReadOrWrite
why = getattr(selectable, method)()
File "/usr/share/opscenter/lib/py/twisted/internet/legacy_ssl.py", line 645, in doConnect
self._connectDone()
File "/usr/share/opscenter/lib/py/twisted/internet/legacy_ssl.py", line 1182, in _connectDone
self.startTLS(self.ctxFactory)
File "/usr/share/opscenter/lib/py/twisted/internet/legacy_ssl.py", line 542, in startTLS
if LegacyConnection.startTLS(self, ctx, client):
File "/usr/share/opscenter/lib/py/twisted/internet/tcp.py", line 50, in startTLS
self.socket = JConnection(ctx.getContext(), self.socket, False)
File "/usr/share/opscenter/lib/py/JythonSSLWrapper.py", line 88, in __init__
self._wrapped_socket = self._create_client_socket(sock)
File "/usr/share/opscenter/lib/py/JythonSSLWrapper.py", line 107, in _create_client_socket
return self._context.wrap_socket(sock)
File "/usr/share/opscenter/lib/jvm/jython-standalone-2.7.0.9.jar/Lib/ssl.py", line 991, in wrap_socket
return SSLSocket(sock=sock, server_side=server_side,
File "/usr/share/opscenter/lib/jvm/jython-standalone-2.7.0.9.jar/Lib/ssl.py", line 521, in __init__
self.do_handshake()
File "/usr/share/opscenter/lib/jvm/jython-standalone-2.7.0.9.jar/Lib/ssl.py", line 630, in do_handshake
self._sock._handle_channel_future(handshake, "SSL handshake", wait=True)
File "/usr/share/opscenter/lib/jvm/jython-standalone-2.7.0.9.jar/Lib/_socket.py", line 365, in handle_exception
raise _map_exception(jlx)
(MainThread)
答
大多数SSL握手错误是由客户端不支持SNI造成的。 API网关需要SNI,没有它就无法工作。 Opscenter是否支持SNI?