Memperbarui dan menambahkan patch perangkat

Halaman ini menjelaskan langkah-langkah untuk mengupdate dan menambal perangkat appliance Google Distributed Cloud (GDC) yang terisolasi.

Mempersiapkan upgrade

Pastikan Anda memenuhi persyaratan yang tercantum di bagian ini sebelum melakukan upgrade.

Sebelum memulai

Tinjau Prasyarat laptop untuk memastikan laptop yang Anda gunakan untuk upgrade update dan patch memenuhi spesifikasi fisik dan persyaratan lainnya.

Anda harus menyelesaikan tindakan berikut terlebih dahulu terkait alat antarmuka command line (CLI) gdcloud:

  1. Unduh alat CLI gdcloud.
  2. Instal alat CLI gdcloud.
  3. Upgrade alat CLI gdcloud sesuai kebutuhan.
  4. Pastikan docker-credential-gdcloud ada.
  5. Pastikan HPE Chassis Manager menjalankan firmware versi 2.10.12 atau yang lebih baru. Jika mengupdate dari versi firmware sebelumnya, lihat Mengupgrade firmware HPE Chassis Manager.

Mentransfer artefak ke mesin upgrade

Anda harus memiliki akses ke bucket Cloud Storage.

Ikuti langkah-langkah berikut untuk mentransfer artefak ke laptop yang Anda gunakan untuk upgrade update dan patch:

  1. Unduh paket berdasarkan versi patch yang dipilih:

    VERSION=<x.x.x-gdch.yyy>
    RELEASE_SUFFIX="_te"
    DOWNLOADER=gdch-downloader-prod${RELEASE_SUFFIX}-$VERSION.sh
    gcloud storage cp "gs://$GCS_BUCKET/$VERSION/$DOWNLOADER" .
    gcloud storage cp "gs://$GCS_BUCKET/$VERSION/${DOWNLOADER}.sig" .
    
    PUBLIC_KEY=$(cat <<-PUBEND
    -----BEGIN PUBLIC KEY-----
    MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEn46iVSyFXsvuKLZ4dVOr2AqlXDnR
    5cKztkpraexHDxn/ozq03EvrdkRmZkSACFfcaEFyitpraidgAx8sPjvzXQ==
    -----END PUBLIC KEY-----
    PUBEND
    )
    echo "${PUBLIC_KEY}" > "key.pub"
    DOWNLOADER=gdch-downloader-${PRODUCT}-$VERSION.sh
    
    gcloud storage cp "gs://${GCS_BUCKET:-private-cloud-release}/$VERSION/$DOWNLOADER*" .
       openssl dgst -sha256 -verify "key.pub" -signature "${DOWNLOADER}.sig" ${DOWNLOADER} && chmod +x $DOWNLOADER && ./$DOWNLOADER --skip-unzip
    

    Perintah ini mengambil paket update dan skrip downloader ke direktori saat ini, misalnya, /home/download.

  2. Jalankan tree -L 3 /home/download.

    Contoh output:

    /home/download
    ├── gdch
    │   └── x.x.x-gdch.x
    │       ├── bootstrapper
    │       │   ├── bootstrapper.iso
    │       │   └── bootstrapper.iso.sig
    │       ├── gdch-prod_te-x.x.x-gdch.x-sbom.tar.gz
    │       ├── gdch-prod_te-x.x.x-gdch.x-sbom.tar.gz.sig
    │       ├── prod_te_gdch.tar.gz
    │       └── prod_te_gdch.tar.gz.sig
    ├── gdch-downloader-prod_te-x.x.x-gdch.x.sh
    ├── gdch-downloader-prod_te-x.x.x-gdch.x.sh.1.sig
    ├── gdch-downloader-prod_te-x.x.x-gdch.x.sh.sig
       └── key.pub
    
  3. Salin update ke lingkungan yang terisolasi, menggunakan drive USB Anda.

    Salin skrip downloader dan direktori gdch yang Anda download ke drive USB pada langkah 1 ke mesin upgrade di lingkungan yang terisolasi.

  4. Di mesin upgrade, verifikasi konten dan ekstrak file menggunakan informasi yang sama dengan yang Anda gunakan untuk mendownload paket. Misalnya, kode berikut menyalin paket ke direktori /root.

    Ekstrak paket:

    VERSION=x.x.x-gdch.x
    PRODUCT=prod_te
    DOWNLOADER=gdch-downloader-${PRODUCT}-$VERSION.sh
    openssl dgst -sha256 -verify "key.pub" -signature "${DOWNLOADER}.sig" ${DOWNLOADER} && chmod +x $DOWNLOADER && ./$DOWNLOADER --skip-download
    

    Paket diekstrak di jalur /root/gdch/full-release-x.x.x-gdch.x.

  5. Konfirmasi bahwa versi cocok dengan versi yang Anda tetapkan di VERSION:

    /root/gdch/full-release-x.x.x-gdch.x/gdcloud version
    

    Contoh output:

    gdcloud version: 1.14.4-gdch.0
    

Autentikasikan

Untuk melakukan autentikasi dengan penyedia identitas yang dikonfigurasi dan meminta file kubeconfig untuk identitas pengguna dan cluster Anda, lihat Autentikasi.

  1. Login dan buat file kubeconfig.

  2. Tetapkan file kubeconfig sebagai variabel lingkungan:

      export KUBECONFIG=ROOT_ADMIN_KUBECONFIG
      export MANAGEMENT_KUBECONFIG=MANAGEMENT_API_KUBECONFIG
    
  3. Minta peran berikut:

    • Admin Upgrade Appliance:

      kubectl --kubeconfig=$KUBECONFIG create clusterrolebinding upgrade-admin-te-initial-user --clusterrole=upgrade-admin-te --user=keycloak-oidc-initial-user@example.com
      kubectl --kubeconfig=$MANAGEMENT_KUBECONFIG create clusterrolebinding upgrade-admin-te-initial-user --clusterrole=upgrade-admin-te --user=keycloak-oidc-initial-user@example.com
      
    • Admin Pengelolaan Artefak Sistem:

       kubectl --kubeconfig=$KUBECONFIG create rolebinding system-artifact-management-admin-initial-user --role=system-artifact-management-admin --user=keycloak-oidc-initial-user@example.com -n gpc-system
       kubectl --kubeconfig=$MANAGEMENT_KUBECONFIG create rolebinding system-artifact-management-admin-initial-user --role=system-artifact-management-admin --user=keycloak-oidc-initial-user@example.com -n gpc-system
      
    • Admin Rahasia Pengelolaan Artefak Sistem:

       kubectl --kubeconfig=$KUBECONFIG create rolebinding system-artifact-management-secrets-admin-initial-user --role=system-artifact-management-secrets-admin --user=keycloak-oidc-initial-user@example.com -n anthos-creds
      
    • Pelihat Akhiran DNS:

       kubectl --kubeconfig=$MANAGEMENT_KUBECONFIG create rolebinding dnssuffix-viewer-initial-user --role=dnssuffix-viewer --user=keycloak-oidc-initial-user@example.com -n gpc-system
      
    • Monitor Artifact Registry Sistem:

       kubectl --kubeconfig=$KUBECONFIG create clusterrolebinding sar-monitor-initial-user --clusterrole=sar-monitor --user=keycloak-oidc-initial-user@example.com
       kubectl --kubeconfig=$MANAGEMENT_KUBECONFIG create clusterrolebinding sar-monitor-initial-user --clusterrole=sar-monitor --user=keycloak-oidc-initial-user@example.com
      
    • Debugger Upgrade:

      kubectl --kubeconfig=$KUBECONFIG create clusterrolebinding upgrade-debugger-initial-user --clusterrole=upgrade-debugger --user=keycloak-oidc-initial-user@example.com
      
    • Debugger Artifact Registry Sistem:

      kubectl --kubeconfig=$KUBECONFIG create clusterrolebinding sar-debugger-initial-user --clusterrole=sar-debugger --user=keycloak-oidc-initial-user@example.com
      
  4. Konfigurasi Docker:

    gdcloud auth configure-docker --config-cert=true
    

Memulai upgrade

Ikuti langkah-langkah berikut untuk memulai upgrade appliance:

gdcloud appliance upgrade 

Lihat gdcloud appliance upgrade untuk mengetahui informasi selengkapnya.

Perintah ini menjalankan langkah-langkah berikut:

  1. Menjalankan pemeriksaan pra-penerbangan di mesin upgrade.
  2. Menjalankan pemeriksaan pra-penerbangan untuk penyimpanan OTS
  3. Mengirim artefak ke registry artefak.
  4. Mengupgrade software dan firmware appliance, termasuk:
    1. Cluster root-admin GDC.
    2. Layanan GDC.
    3. Sistem operasi (OS) node fisik dan virtual.
    4. Switch.
    5. Penyimpanan

Perintah ini mendorong update secara berurutan, dan menunggu setiap langkah selesai. Setelah menyelesaikan langkah-langkah dan jika upgrade berhasil, Anda akan melihat pesan yang mirip dengan berikut ini:

The GDC appliance upgrade completed successfully