Membuat ulang dan mengupdate Dataproc di cluster virtual GKE

Anda dapat menyalin konfigurasi cluster virtual Dataproc di GKE yang ada, memperbarui konfigurasi yang disalin, lalu membuat cluster Dataproc di GKE baru menggunakan konfigurasi yang diperbarui.

Membuat ulang dan mengupdate cluster Dataproc di GKE

gcloud

  1. Menetapkan variabel lingkungan:

    CLUSTER=existing Dataproc on GKE  cluster name \
      REGION=region
    

  2. Ekspor konfigurasi cluster Dataproc di GKE yang ada ke file YAML.

    gcloud dataproc clusters export $CLUSTER \
        --region=$REGION > "${CLUSTER}-config.yaml"
    

  3. Perbarui konfigurasi.

    1. Hapus kolom kubernetesNamespace. Penghapusan kolom ini diperlukan untuk menghindari konflik namespace saat Anda membuat cluster yang diupdate.

      Contoh perintah sed untuk menghapus kolom kubernetesNamespace:

      sed -E "s/kubernetesNamespace: .+$//g" ${CLUSTER}-config.yaml
      

    2. Lakukan perubahan tambahan untuk memperbarui setelan konfigurasi cluster virtual Dataproc di GKE, seperti mengubah componentVersion Spark.

  4. Hapus cluster virtual Dataproc on GKE yang ada jika Anda akan membuat cluster yang memiliki nama yang sama dengan cluster yang sedang diupdate (jika Anda mengganti cluster asli).

  5. Tunggu hingga operasi penghapusan sebelumnya selesai, lalu impor konfigurasi cluster yang telah diupdate untuk membuat cluster virtual Dataproc di GKE baru dengan setelan konfigurasi yang telah diupdate.

    gcloud dataproc clusters import $CLUSTER \
        --region=$REGION \
        --source="${CLUSTER}-config.yaml"

API

  1. Menetapkan variabel lingkungan:

    CLUSTER=existing Dataproc on GKE  cluster name \
      REGION=region
    

  2. Ekspor konfigurasi cluster Dataproc di GKE yang ada ke file YAML.

    curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)"  "https://dataproc.googleapis.com/v1/projects/${PROJECT}/regions/${REGION}/clusters/${CLUSTER}?alt=json" > "${CLUSTER}-config.json"

  3. Perbarui konfigurasi.

    1. Hapus kolom kubernetesNamespace. Penghapusan kolom ini diperlukan untuk menghindari konflik namespace saat Anda membuat cluster yang diupdate.

      Contoh perintah jq untuk menghapus kolom kubernetesNamespace:

      jq 'del(.virtualClusterConfig.kubernetesClusterConfig.kubernetesNamespace)'
      

    2. Lakukan perubahan tambahan untuk memperbarui setelan konfigurasi cluster virtual Dataproc di GKE, seperti mengubah componentVersion Spark.

  4. Hapus cluster virtual Dataproc on GKE yang ada jika Anda akan membuat cluster yang memiliki nama yang sama dengan cluster yang sedang diupdate (jika Anda mengganti cluster asli).

    curl -X DELETE -H "Authorization: Bearer $(gcloud auth print-access-token)" "https://dataproc.googleapis.com/v1/projects/${PROJECT}/regions/${REGION}/clusters/${CLUSTER}"
    

  5. Tunggu hingga operasi penghapusan sebelumnya selesai, lalu impor konfigurasi cluster yang telah diupdate untuk membuat cluster virtual Dataproc di GKE baru dengan setelan yang telah diupdate.

    curl -i -X POST  -H "Authorization: Bearer $(gcloud auth print-access-token)"  -H "Content-Type: application/json; charset=utf-8" -d "@${CLUSTER}-config.json" "https://dataproc.googleapis.com/v1/projects/${PROJECT}/regions/${REGION}/clusters?alt=json"
    

Konsol

Konsol Google Cloud tidak mendukung pembuatan ulang cluster virtual Dataproc di GKE dengan mengimpor konfigurasi cluster yang ada.