Google Cloud Platform SSH 连接¶
SSH 连接类型提供与 Compute Engine 实例的连接。 ComputeEngineSSHHook
使用它通过 SSHOperator
在远程服务器上运行命令,或通过 SFTPOperator
从/向远程服务器传输文件。
配置连接¶
要获得 Google Cloud 服务的授权,此连接应包含与 Google Cloud 连接 相同的配置。Google Cloud 连接的所有参数也都是此连接的有效配置参数。
此外,还支持到实例的其他连接参数。也可以将它们作为钩子构造函数的参数传递,但连接配置优先于钩子构造函数的参数。
- 主机(必需)
要连接的远程主机。如果未传递,则会自动检测。
- 用户名(可选)
连接到
remote_host
的用户名。- 额外(可选)
指定可在 ssh 连接中使用的额外参数(作为 json 字典)。除了描述 Google Cloud 连接的参数外,还支持以下参数。
instance_name
- Compute Engine 实例的名称。zone
- Compute Engine 实例的区域。use_internal_ip
- 是否使用内部 IP 连接。use_iap_tunnel
- 是否通过 IAP 隧道连接。use_oslogin
- 是否使用 OsLogin API 管理密钥。如果为 false,则使用实例元数据管理密钥。expire_time
- 私钥过期前的时间最大值(以秒为单位)。
环境变量¶
你还可以使用 AIRFLOW_CONN_{CONN_ID}
环境变量创建连接。
例如
export AIRFLOW_CONN_GOOGLE_CLOUD_SQL_DEFAULT="gcpssh://conn-user@conn-host?\
instance_name=conn-instance-name&\
zone=zone&\
use_internal_ip=True&\
use_iap_tunnel=True&\
use_oslogin=False&\
expire_time=4242"