Airflow 1.7.0 不支持 SSL。我刚刚检查了气流 1.7.0 的网络服务器代码。代码如下。这个函数只是使用主机和端口在 HTTP 上启动 flask/gunicorn 应用程序。如果您提供证书并将端口提及为 443,它将简单地启动应用程序http://<host>:443
。它不接受 SSL 密钥和证书。Airflow 1.7.0 的 webserver 功能如下所示。
最新版本的 Apache Airflow 提供 SSL 功能。请使用最新版本的 SSL 支持。
def webserver(args):
print(settings.HEADER)
from airflow.www.app import cached_app
app = cached_app(configuration)
workers = args.workers or configuration.get('webserver', 'workers')
if args.debug:
print(
"Starting the web server on port {0} and host {1}.".format(
args.port, args.hostname))
app.run(debug=True, port=args.port, host=args.hostname)
else:
print(
'Running the Gunicorn server with {workers} {args.workerclass}'
'workers on host {args.hostname} and port '
'{args.port}...'.format(**locals()))
sp = subprocess.Popen([
'gunicorn', '-w', str(args.workers), '-k', str(args.workerclass),
'-t', '120', '-b', args.hostname + ':' + str(args.port),
'airflow.www.app:cached_app()'])
sp.wait()