Google Cloud Platform SSH 連線¶
SSH 連線類型提供與 Compute Engine 實例的連線。ComputeEngineSSHHook
使用它在遠端伺服器上執行命令(使用 SSHOperator
)或使用 SFTPOperator
從/向遠端伺服器傳輸檔案。
設定連線¶
為了授權 Google Cloud 服務,此連線應包含與Google Cloud 連線相同的設定。Google Cloud 連線的所有參數也適用於此連線的設定參數。
此外,還支援實例的其他連線參數。也可以將它們作為 hook 建構子的參數傳遞,但連線設定優先於 hook 建構子的參數。
- 主機 (必填)
要連線的遠端主機。如果未傳遞,將自動偵測。
- 使用者名稱 (選填)
用於連線到
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"