Mengupgrade Migrate ke Container dan plugin

Dokumen ini menjelaskan cara mengupgrade penginstalan Migrate to Containers ke versi 1.15.0 saat ini dan mengupgrade plugin Migrate to Containers ke versi terbaru.

Anda biasanya menghapus semua migrasi yang ada sebelum melakukan upgrade. Jika ada migrasi yang sedang berjalan, tunggu hingga migrasi selesai, lalu hapus. Namun, jangan hapus sumber migrasi Anda. Sumber migrasi diperbarui sebagai bagian dari proses upgrade.

Menggunakan migctl untuk melakukan upgrade

Proses upgrade yang Anda gunakan didasarkan pada lingkungan tempat Anda menjalankan migctl:

Mengupgrade Migrate ke Container

Untuk mengupgrade rilis Migrate to Containers sebelumnya ke versi 1.15.0:

  1. Hubungkan ke cluster pemrosesan Anda:

    migctl di Google Cloud

    1. Buka menu GKE di Google Cloud Console.

      Buka menu GKE

    2. Dalam daftar cluster, cari cluster yang Anda gunakan sebagai cluster pemrosesan dan klik tombol Connect.

    3. Pada dialog Connect to the cluster, di bagian Command-line access, klik Run in Cloud Shell untuk menjalankan perintah hubungkan di Cloud Shell.

      gcloud container clusters get-credentials cluster-name --zone zone-name --project project-name
      

    migctl di Google Distributed Cloud Virtual untuk Bare Metal

    1. Hubungkan ke cluster Anda. Untuk mengetahui informasi selengkapnya, lihat Mengelola cluster dari Konsol Google Cloud.
  2. Periksa migrasi yang ada dan hapus migrasi tersebut:

    1. Cantumkan migrasi saat ini:

      migctl migration list
      
      NAME                STATUS      CURRENT-OPERATION
      my-migration        Completed   GenerateArtifacts
      another-migration   Running     GenerateMigrationPlan
    2. Hapus semua migrasi yang telah selesai, satu per satu, menggunakan perintah berikut:

      migctl migration delete my-migration
    3. Untuk migrasi apa pun yang sedang berjalan, ulangi "Langkah a" di atas dan tunggu hingga selesai. Kemudian hapus.

  3. Gunakan perintah migctl version untuk menentukan versi saat ini. Contoh:

    migctl version

    Menampilkan:

    Migrate to Containers version: 1.10.1
  4. Mengupgrade cluster:

    migctl di Google Cloud

    1. Upgrade ke 1.15.0:

      1. Jalankan perintah di Cloud Shell:

        migctl setup upgrade

        Perintah:

        • Meng-uninstal versi lama Migrate to Containers, lalu menginstal versi 1.15.0.

        • Mengupgrade sumber migrasi yang ada ke versi 1.15.0.

    migctl di Google Distributed Cloud Virtual untuk Bare Metal

    1. Deploy migctl di workstation admin Anda:

      wget https://modernize-release.storage.googleapis.com/v1.15.0/linux/amd64/migctl
      sudo cp migctl /usr/local/bin/
      sudo chmod +x /usr/local/bin/migctl
      . <(migctl completion bash)
    2. Upgrade ke 1.15.0:

      1. Jalankan upgrade:

        migctl setup upgrade --gkeop

        Perintah:

        • Meng-uninstal versi lama Migrate to Containers, lalu menginstal versi 1.15.0.

        • Mengupgrade sumber migrasi yang ada ke versi 1.15.0.

  5. Validasi upgrade dengan menjalankan perintah migctl doctor.

    Sebelum upgrade selesai, Anda mungkin melihat pesan seperti berikut. Jika demikian, tunggu beberapa menit hingga upgrade selesai sebelum menjalankan migctl doctor lagi.

    migctl doctor
    [✓] Deployment
      [✓] Admission Controller
      [!] Components
        Job controllers-deploy-cert is not ready
        Job controllers-upgrade is not ready
    

    Pada contoh output berikut, tanda centang menunjukkan bahwa Migrate to Containers telah berhasil diupgrade.

    migctl doctor
    [✓] Deployment
    [✓] Docker registry
    [✓] Artifacts repo
    [✓] Source Status
    

    Jika Anda melakukan upgrade ke versi 1.6 atau yang lebih baru, migctl doctor sekarang menampilkan kolom Docker registry, Artifacts repo, dan Source Status, dengan:

  6. Setelah upgrade selesai, Anda harus membuat ulang migrasi untuk memvalidasi bahwa sumber migrasi berhasil diupgrade. Lihat Membuat migrasi.

Mengupgrade plugin Migrate ke Containers

Migrate to Containers menggunakan plugin untuk mengelola logika modernisasi untuk berbagai perjalanan dari beban kerja yang didukung. Untuk menggunakan fitur yang tersedia di plugin versi terbaru, Anda harus mengupgrade plugin, lalu membuat migrasi baru. Mengupgrade plugin tidak akan memengaruhi migrasi yang sedang berlangsung.

Untuk mengupgrade plugin ke versi terbaru, jalankan perintah berikut:

JOB_NAME=plugins-updater-NAME
kubectl apply -f - <<EOF
apiVersion: batch/v1
kind: Job
metadata:
  name: $JOB_NAME
  namespace: v2k-system
spec:
  backoffLimit: 20
  template:
    spec:
      serviceAccountName: plugins-updater-sa
      containers:
      - name: plugins-updater
        image: us-docker.pkg.dev/migrate-modernize-public/modernize-plugins-prod/plugins-updater:latest
        imagePullPolicy: Always
      restartPolicy: OnFailure
EOF

Ganti NAME dengan string untuk ditambahkan ke nama pekerjaan Anda.

Untuk melihat status upgrade, jalankan perintah berikut:

kubectl get job -n v2k-system  plugins-updater-NAME

Ganti NAME dengan string yang sama dengan yang Anda tambahkan ke nama pekerjaan.

Output menampilkan status tugas, seperti yang ditunjukkan di bawah ini:

NAME                                COMPLETIONS   DURATION   AGE
plugins-updater-upgrade             1/1           12s        37s

Jika Anda melihat 1/1 di kolom Completions, artinya tugas selesai dan plugin telah diupdate.

Setelah upgrade selesai, jalankan perintah berikut untuk menghapus tugas:

kubectl delete  job -n v2k-system  plugins-updater-NAME

Ganti NAME dengan string yang sama dengan yang Anda tambahkan ke nama pekerjaan.

Langkah selanjutnya