Cloud Composer даалгаварт проксигоор нэг гадагш HTTP хүсэлт илгээх шаардлагатай бол HTTP клиентийг даалгаврын callable дотор тохируулна:

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

Энэ callable-г DAG-ийн одоо байгаа даалгаврын зохион байгуулалтаар ашигла. Прокси нь даалгаврыг гүйцэтгэж буй worker-ээс хүртээмжтэй байх ёстой. Прокси баталгаажуулалтгүй зөвшөөрөгдсөн нийтийн API дуудлагад HTTP прокси жагсаалт нь session-ийн HTTP прокси URL-ийн сонголтыг өгдөг. Баталгаажсан URL эсвэл бусад бүртгэлийн тохиргоог байршуулалтын зориулалтын нууц эх сурвалжид хадгал.

Функц дуусахад Session болон хариу хаагдана. trust_env=False нь Requests-ийн орчны интеграц-ыг идэвхгүй болгож, өвлөгдсөн прокси тохиргоо энэ клиентийн зориулалтын зан төлөвийг орлуулахаас сэргийлнэ, мөн Requests-ийн орчин дахь CA багцын сонголтыг идэвхгүй болгоно. Шаардлагатай бол зориулалтын CA багцыг энэ клиентийн verify опцоор өг.

Удирдлагатай Airflow орчинд тохируулсан орчны хувьсагчид илүү өргөн хүрээтэй бөгөөд платформоос тодорхойлсон хязгаарлалттай. Маршрутыг энэ Session-д дамжуулснаар шийдвэр нь зөвхөн энэ даалгаврын HTTP үйлдэлд хамааралтай хэвээр байх ба worker процессын бусад кодын os.environ-ыг өөрчлөхгүй.

Холбоотой нийтлэлүүд