Menggunakan proxy HTTP

Dokumen ini menunjukkan cara merutekan traffic dari GKE di Azure melalui proxy HTTP/HTTPS. Anda menentukan konfigurasi proxy saat membuat cluster.

Ringkasan

GKE di Azure dapat mengarahkan traffic internet keluar melalui proxy karena alasan berikut:

  • Untuk mendaftarkan cluster dengan Google Cloud melalui Connect
  • Untuk menjalankan Connect Agent
  • Untuk mendownload image dari Container Registry

Batasan

  • Kolom httpProxy dan httpsProxy tidak mendukung URL yang diawali dengan https://. Anda harus menggunakan http://. Permintaan ke port 443 menggunakan HTTPS.
  • Anda harus menetapkan nilai untuk httpProxy, httpsProxy, dan noProxy.
  • Konfigurasi proxy cluster— ID grup resource dan ID rahasia— tidak dapat diubah. Anda harus membuat cluster dan kumpulan node baru untuk memperbarui nilai ini.
  • Anda mungkin perlu menambahkan domain, IP, atau CIDR lain ke kolom noProxy. Sebaiknya tambahkan CIDR subnet bidang kontrol cluster Anda (CIDR alamat pod dan CIDR alamat Layanan ditambahkan secara default).

Prasyarat

Bagian ini menjelaskan prasyarat yang harus Anda terapkan sebelum menggunakan proxy.

Konfigurasi Azure Key Vault

GKE di Azure menyimpan informasi konfigurasi proxy di Azure Key Vault. Untuk mengonfigurasi proxy dengan GKE di Azure, Anda harus memiliki izin untuk membuat secret di Key Vault. Key Vault harus dapat diakses dari VNet cluster Anda.

Daftar Proxy yang Diizinkan

Agar GKE di Azure dapat terhubung ke layanan Google Cloud, server proxy harus mengizinkan traffic ke domain Google dan Microsoft tertentu.

.azure.com
.gcr.io
cloudresourcemanager.googleapis.com
container.googleapis.com
gkeconnect.googleapis.com
gkehub.googleapis.com
oauth2.googleapis.com
securetoken.googleapis.com
storage.googleapis.com
sts.googleapis.com
www.googleapis.com
servicecontrol.googleapis.com
logging.googleapis.com
monitoring.googleapis.com
opsconfigmonitoring.googleapis.com
GCP_LOCATION-gkemulticloud.googleapis.com

Ganti GCP_LOCATION dengan region Google Cloud tempat cluster GKE Enterprise Anda berada. Tentukan us-west1 atau wilayah lain yang didukung.

Persyaratan Subnet Network Security Group

Jika Anda menggunakan Grup Keamanan Jaringan (NSG) untuk mengelola traffic ke subnet, aturan NSG harus mengizinkan traffic TCP keluar ke tujuan berikut:

  • AzureCloud: TCP, port 80 dan 443

Lihat tag layanan Azure untuk mengetahui informasi selengkapnya tentang penggunaan tag layanan dengan NSG.

Membuat file konfigurasi proxy

Konfigurasi proxy disimpan di secret Azure Key Vault sebagai string JSON. Anda dapat meneruskan konfigurasi ini ke alat command line az sebagai file. Bagian ini menjelaskan cara membuat file tersebut.

Tabel berikut menjelaskan isi file ini.

Kolom Deskripsi Contoh Wajib
httpProxy URL server proxy. Nilai ini harus mencakup nama host/alamat IP serta port, nama pengguna, dan sandi jika diinginkan. "http://user:password@10.184.37.42:80"
"10.184.37.42"
Ya
httpsProxy URL proxy untuk traffic HTTPS terenkripsi. URL httpProxy akan digunakan jika httpsProxy memiliki nilai kosong. "http://10.101.16.31:80" Ya
noProxy Daftar URL yang dipisahkan koma yang akan dikecualikan dari proxy. Setiap nilai dapat berupa alamat IP, rentang CIDR, nama domain, atau karakter asterix (*). Domain yang ditentukan dengan titik di awal (misalnya, `.google.com`) menunjukkan bahwa subdomain diperlukan. Asterix tunggal * mengabaikan semua konfigurasi proxy. "1.2.3.4,10.0.0.0/16,example.com,.site.com" Ya
  1. Untuk membuat file konfigurasi, buat file JSON yang berisi nilai untuk kunci httpProxy, noProxy, dan httpsProxy opsional.

    {
      "httpProxy": "AUTHENTICATION_URL",
      "httpsProxy": "AUTHENTICATION_URL",
      "noProxy": "NO_PROXY_ADDRESSES"
    }
    

    Ganti kode berikut:

    • AUTHENTICATION_URL: URL yang dienkode yang berisi nama pengguna dan sandi proxy
    • NO_PROXY_ADDRESSES: Daftar blok CIDR dan URL yang dipisahkan koma, misalnya 10.0.0.0/16,http://example.com

    Simpan file untuk digunakan di bagian berikut.

  2. Buat secret dengan data JSON ini sebagai rahasia di Azure Key Vault menggunakan alat command line az.

    az keyvault secret set --name SECRET_NAME \
    --vault-name KEY_VAULT_NAME \
    --file PROXY_CONFIGURATION_FILE
    

    Ganti kode berikut:

    • SECRET_NAME: nama secret baru
    • KEY_VAULT_NAME: nama Key Vault Anda
    • PROXY_CONFIGURATION_FILE: jalur ke file konfigurasi proxy Anda.

      Output-nya mencakup nama dan isi secret. Sekarang Anda dapat mereferensikan rahasia ini saat membuat cluster.

Membuat cluster yang menggunakan proxy

Untuk mengonfigurasi GKE di Azure agar menggunakan proxy HTTP untuk konektivitas keluar, lakukan langkah-langkah berikut:

Ikuti langkah-langkah di bagian Membuat cluster dan kumpulan node, lalu teruskan flag --proxy-resource-group-id dan --proxy-secret-id.

gcloud container azure clusters create CLUSTER_NAME \
  --proxy-resource-group-id=PROXY_RESOURCE_GROUP_ID \
  --proxy-secret-id=PROXY_SECRET_ID
    ...

Ganti kode berikut:

  • CLUSTER_NAME: nama cluster Anda
  • PROXY_RESOURCE_GROUP_ID: grup resource yang menghosting cluster Anda
  • PROXY_SECRET_ID: ID rahasia yang berisi konfigurasi proxy Anda— misalnya, https://VAULT_NAME.vault.azure.net/secrets/SECRET_NAME/SECRET_VERSION

Langkah selanjutnya