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 merutekan 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 node pool baru untuk memperbarui nilai ini.
  • Anda mungkin perlu menambahkan domain, IP, atau CIDR tambahan ke kolom noProxy field. 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 on 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 yang Diizinkan Proxy

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 Google Cloud region tempat cluster GKE Enterprise Anda berada. Tentukan us-west1 atau wilayah yang didukung lainnya.

Persyaratan Network Security Group Subnet

Jika Anda menggunakan Network Security Group (NSG) untuk mengelola traffic ke subnet, aturan NSG Anda 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 dalam 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 harus menyertakan nama host/alamat IP dan opsionalnya port, nama pengguna, dan sandi. "http://user:password@10.184.37.42:80"
"10.184.37.42"
Ya
httpsProxy URL proxy untuk traffic HTTPS yang terenkripsi. URL httpProxy akan digunakan jika httpsProxy memiliki nilai kosong. "http://10.101.16.31:80" Ya
noProxy Daftar URL yang dipisahkan koma untuk dikecualikan dari proxy. Setiap nilai dapat berupa alamat IP, rentang CIDR, nama domain, atau karakter asteris (*). Domain yang ditentukan dengan titik di depannya (misalnya, `.google.com`) menunjukkan bahwa subdomain diperlukan. Satu tanda bintang * 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 httpProxy, noProxy, dan kunci 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 berikutnya.

  2. Buat secret dengan data JSON ini sebagai secret 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 mencakup nama dan konten rahasia. Sekarang Anda dapat mereferensikan secret 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 Membuat cluster dan node pool dan teruskan tanda --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 secret yang berisi konfigurasi proxy Anda—misalnya, https://VAULT_NAME.vault.azure.net/secrets/SECRET_NAME/SECRET_VERSION

Langkah berikutnya