Arsitektur Cloud Workstations

Cloud Workstation mengelola resource Google Cloud, seperti VM Compute Engine dan persistent disk (PD), untuk memberi Anda visibilitas dan kontrol yang lebih besar atas resource project Anda. Misalnya, Anda dapat menyiapkan kebijakan snapshot disk terjadwal yang menerapkan kebijakan pencadangan untuk semua PD workstation. Demikian pula, memiliki VM di dalam project memungkinkan Anda mengakses dan mengelola resource di jaringan VPC dengan lancar.

Diagram berikut mengilustrasikan arsitektur Cloud Workstation.

Diagram
arsitektur

Gambar 1. Arsitektur Workstation Cloud

Cluster workstation

Cluster workstation berisi dan mengelola sekumpulan workstation di satu region cloud dan jaringan VPC di dalam project Anda. Setiap cluster workstation mencakup dua komponen yang dikelola oleh Google Cloud: pengontrol dan gateway.

  • Pengontrol: mengelola siklus proses instance VM dan resource workstation lainnya di dalam project Anda.

    Pengontrol menggunakan Compute Engine API untuk mengelola siklus proses resource, dan memanfaatkan Private Service Connect untuk mengarahkan traffic ke VM workstation.

  • Gateway: menerima traffic dari klien yang terikat untuk workstation tertentu, dan meneruskan traffic ke instance VM yang sesuai. Setiap cluster workstation memiliki nama domain yang unik, dan setiap workstation dapat dijangkau di subdomain domain cluster workstation—misalnya, $WORKSTATION_ID.$CLUSTER_ID.cloudworkstations.dev.

Fitur lain dari cluster workstation adalah sebagai berikut:

  • Administrator dan tim platform membuat cluster workstation, yang menentukan sekelompok workstation di region tertentu dan jaringan VPC yang terhubung dengannya.

  • Cluster workstation tidak terkait dengan cluster Google Kubernetes Engine (GKE).

  • Setiap cluster workstation memiliki pengontrol khusus yang terhubung ke VPC tempat workstation berada dengan Private Service Connect (dan hal ini tidak berdampak pada batas peering VPC). Pengontrol ini mengelola resource workstation di sepanjang siklus prosesnya dan menyediakan traffic keluar dan masuk jaringan ke workstation melalui gateway cluster publik.

  • Setiap region cloud memerlukan setidaknya satu cluster workstation.

  • Jika perlu, Anda juga dapat mengaktifkan gateway pribadi sepenuhnya, sehingga hanya endpoint di dalam jaringan pribadi yang memiliki akses ke Cloud Workstation.

Jaringan VPC

Saat membuat cluster workstation, Anda menentukan project dan jaringan VPC untuk menghosting resource tersebut. Kemudian, Cloud Workstations akan menyediakan resource berikut dalam project Anda:

  • Private Service Connect: membuat koneksi antara pengontrol Cloud Workstations dan VPC Anda, sehingga resource dapat dibuat di dalam project.

  • Instance VM: VM Compute Engine dibuat secara dinamis di dalam project dan VPC Anda setelah workstation dimulai. VM ini otomatis dihapus pada akhir sesi pengguna atau setelah waktu tunggu sesi yang dapat dikonfigurasi.

    • Gateway VM: menarik traffic klien dari gateway cluster workstation, mengautentikasi dan memberikan otorisasinya, lalu meneruskannya ke container.

    • Container: menentukan alat yang telah diinstal sebelumnya di workstation, seperti IDE atau editor kode, dan program atau setelan lainnya seperti yang ditetapkan oleh konfigurasi workstation.

      Cloud Workstations menyediakan sejumlah image dasar yang telah dikonfigurasi sebelumnya dengan IDE dan alat bahasa populer. Selain itu, administrator dan tim platform dapat menyesuaikan lingkungan mereka dengan membuat dan menentukan image container kustom yang berisi alat yang diperlukan untuk memenuhi kebutuhan developer mereka. Image container ini dapat memperluas image dasar Cloud Workstations atau dapat berupa image container Linux baru yang dibuat oleh tim platform.

  • Persistent Disk: persistent disk yang dipasang ke VM workstation yang dipasang ke folder /home, sehingga data dan file dapat disimpan setelah sesi berakhir.

Siklus proses resource

Cloud Workstations mengelola VM, image container, dan persistent disk untuk digunakan sebagai lingkungan runtime untuk setiap workstation. Konfigurasikan spesifikasi untuk resource ini di konfigurasi workstation Anda.

Saat workstation dimulai, Cloud Workstations akan melakukan hal berikut:

  1. Membuat VM.
  2. Menarik image container workstation ke VM.
  3. Saat pertama kali dimulai, persistent disk akan membuat persistent disk yang berfungsi sebagai direktori /home workstation.
  4. Memasang persistent disk ke VM.
  5. Memulai container pada VM dan memasang persistent disk ke direktori /home di container.

Saat sesi berakhir, Cloud Workstations akan menghapus VM, tetapi melepaskan dan mempertahankan persistent disk sehingga dapat digunakan di sesi workstation berikutnya. Layanan workstation menyimpan disk hingga workstation dihapus, saat persistent disk juga dihapus, kecuali jika secara opsional dikonfigurasi untuk dipertahankan.

Penampungan resource

Administrator dan tim platform dapat secara opsional menggabungkan VM dan persistent disk untuk mempercepat startup workstation menggunakan opsi konfigurasi workstation ukuran kumpulan. Jika ditentukan, layanan akan menggabungkan sejumlah persistent disk dan VM yang ditentukan, serta menarik image container terlebih dahulu ke VM sebelum penetapan workstation. VM dan disk yang belum ditetapkan di kumpulan akan otomatis dihapus dan dibuat ulang setiap 12 jam. Hal ini memungkinkan waktu startup workstation yang lebih cepat dengan menghapus waktu tunggu untuk membuat VM dan menarik image container ke VM.

Saat penggabungan diaktifkan, Cloud Workstations akan melakukan hal berikut saat memulai workstation:

  1. Memilih VM dari kumpulan yang sudah menarik image container-nya.
  2. Saat pertama kali workstation dimulai, memilih persistent disk dari kumpulan.
  3. Memasang persistent disk ke VM.
  4. Memulai image container pada VM dan memasang persistent disk ke direktori /home di image container.
  5. Mengisi ulang kumpulan dengan membuat VM dan persistent disk baru untuk menggantikan VM dan persistent disk yang telah ditetapkan.

Saat sesi berakhir, Cloud Workstations akan menghapus VM, tetapi melepaskan dan mempertahankan persistent disk sehingga dapat digunakan di sesi workstation berikutnya. Layanan workstation menyimpan disk hingga workstation dihapus, saat persistent disk juga dihapus, kecuali jika secara opsional dikonfigurasi untuk dipertahankan.

Update image container

Karena image container workstation telah ditarik sebelumnya ke VM gabungan, pembaruan pada image container yang dibuat di repositori image jarak jauh dengan tag gambar yang sama tidak akan diambil hingga semua VM gabungan telah ditetapkan atau dihapus setelah 12 jam. Pada saat itu, VM baru akan dibuat untuk mengisi kembali kumpulan dan mengambil image container yang telah diperbarui.

Untuk memaksa pemuatan ulang kumpulan agar segera mengambil pembaruan image container, administrator dapat menyetel pool_size ke 0, lalu menyetelnya kembali ke pool_size pilihan. Dari Konsol Google Cloud, Nonaktifkan fitur Quick start workstation di konfigurasi workstation, simpan konfigurasi, tetapkan kembali ke nomor yang diinginkan, lalu simpan lagi.

Atau, administrator dan tim platform dapat memperbarui tag image di kolom container.image pada konfigurasi workstation, yang memaksa pemuatan ulang kumpulan untuk mengambil tag image container baru.

Mengurangi waktu startup workstation dengan Streaming gambar

Cloud Workstations mendukung Streaming image, yang memberikan waktu startup workstation yang lebih cepat dengan mengurangi waktu pull image container workstation.

Streaming gambar di Cloud Workstations biasanya mengurangi waktu pengambilan image container dari hitungan menit ke detik, dan container workstation biasanya mulai berjalan tanpa menunggu seluruh image didownload.

Persyaratan

Anda harus memenuhi persyaratan berikut untuk menggunakan Streaming gambar di Cloud Workstation:

  • Anda harus mengaktifkan Container File System API di project host workstation.

    Mengaktifkan Container File System API

    Atau, Anda dapat menjalankan perintah CLI gcloud berikut untuk mengaktifkan Container File System API di project host workstation:

    gcloud services enable containerfilesystem.googleapis.com
    

  • Image container Anda harus disimpan di Artifact Registry.

  • Repositori Artifact Registry harus berada di region yang sama dengan region Cloud Workstations, atau di multi-region yang sesuai dengan region tempat workstation Anda berjalan.

  • Anda harus menentukan akun layanan untuk digunakan di konfigurasi workstation.

  • Jika cluster berada di dalam perimeter Kontrol Layanan VPC, Anda harus menambahkan aturan keluar yang memungkinkan akun layanan Anda mengakses Container File System API pada project yang menghosting image container Anda. Jika menggunakan IDE yang telah dikonfigurasi sebelumnya, Anda harus menambahkan project cloud-workstations-images (nomor project 662288601415) ke daftar yang diizinkan.

Batasan

  • Anda mungkin tidak melihat manfaat streaming Image saat pengambilan pertama image yang memenuhi syarat. Namun, setelah Streaming gambar menyimpan gambar, image mendatang akan mengambil manfaat dari streaming Image di workstation.

  • Batasan streaming Gambar GKE lainnya berlaku.