Proksi Requests Setempat Tugasan dalam Google Cloud Composer
Cipta Session Requests setempat tugasan dengan laluan eksplisit dan bukan menukar persekitaran proksi proses worker yang dikongsi.
Untuk tugasan Cloud Composer yang memerlukan satu permintaan HTTP keluar melalui proksi, konfigurasikan klien HTTP di dalam callable tugasan itu:
def fetch_status():
import requests
with requests.Session() as session:
session.trust_env = False
with session.get(
'https://api.example/health',
proxies={'https': 'http://proxy.example:8080'},
timeout=(5, 30),
) as response:
response.raise_for_status()
return response.status_code
Gunakan callable ini melalui susunan tugasan DAG yang sedia ada. Proksi mesti boleh dicapai daripada worker yang melaksanakan tugasan itu. Untuk panggilan API awam yang dibenarkan tanpa pengesahan proksi, senarai proksi HTTP membekalkan calon untuk URL proksi HTTP sesi itu. Simpan URL yang disahkan atau konfigurasi akaun lain dalam sumber rahsia yang dimaksudkan oleh penggunaan.
Session dan respons ditutup apabila fungsi keluar. trust_env=False melumpuhkan integrasi persekitaran Requests, menghalang tetapan proksi yang diwarisi daripada menggantikan tingkah laku yang dimaksudkan klien ini, dan juga melumpuhkan pemilihan bundle CA berasaskan persekitaran Requests. Bekalkan bundle CA yang dimaksudkan melalui pilihan verify klien ini jika perlu.
Pemboleh ubah persekitaran yang dikonfigurasikan untuk persekitaran Airflow terurus mempunyai skop lebih luas dan had yang ditentukan platform. Menghantar laluan kepada Session ini mengekalkan keputusan terikat pada operasi HTTP tugasan ini tanpa menukar os.environ untuk kod lain dalam proses worker.