Arsitektur Cloud Workstations

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

Diagram berikut mengilustrasikan arsitektur Cloud Workstation.

Diagram
arsitektur

Gambar 1. Arsitektur Cloud Workstations

Workstation cluster

Cluster workstation berisi dan mengelola kumpulan workstation dalam satu region cloud dan jaringan VPC di dalam project Anda. Setiap cluster workstation menyertakan 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 menggunakan Private Service Connect untuk merutekan traffic ke VM workstation.

  • Gateway: menerima traffic dari klien yang dituju untuk workstation tertentu, dan meneruskan traffic ke instance VM yang sesuai. Setiap cluster workstation memiliki nama domain 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 ke workstation tersebut.

  • 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 memengaruhi batas peering VPC). Pengontrol ini mengelola resource workstation sepanjang siklus prosesnya dan menyediakan egress dan ingress jaringan ke workstation melalui gateway cluster publik.

  • Setiap region cloud memerlukan minimal satu cluster workstation.

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

Jaringan VPC

Saat membuat cluster workstation, Anda menentukan project dan jaringan VPC untuk menghosting resource. Cloud Workstations kemudian menyediakan resource berikut di project Anda:

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

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

    • VM Gateway: mengambil traffic klien dari gateway cluster workstation, mengautentikasi dan memberikan otorisasi, lalu meneruskannya ke penampung.

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

      Cloud Workstations menyediakan sejumlah image dasar yang dikonfigurasi sebelumnya dengan IDE dan alat bahasa populer. Selain itu, administrator dan tim platform dapat menyesuaikan lingkungan mereka dengan membuat dan menentukan image penampung 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 kustom baru yang dibuat oleh tim platform.

  • Persistent Disk: persistent disk yang dilampirkan 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 workstation dimulai, buat persistent disk untuk bertindak sebagai direktori /home workstation.
  4. Melampirkan persistent disk ke VM.
  5. Memulai penampung di VM dan memasang persistent disk ke direktori /home dalam penampung.

Saat sesi berakhir, Cloud Workstation akan menghapus VM, tetapi melepaskan dan mempertahankan persistent disk sehingga dapat digunakan dalam sesi workstation mendatang. Layanan workstation mempertahankan disk hingga workstation dihapus, pada saat itu persistent disk juga akan dihapus—kecuali jika dikonfigurasi untuk dipertahankan secara opsional.

Penampungan resource

Administrator dan tim platform dapat menggabungkan VM dan disk persisten secara opsional untuk memulai workstation lebih cepat menggunakan opsi konfigurasi workstation ukuran kumpulan. Jika ditentukan, layanan akan menggabungkan sejumlah VM dan persistent disk yang ditentukan dan melakukan pra-pull image container ke VM sebelum penugasan workstation. VM dan disk yang tidak ditetapkan dalam 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 mengambil image container ke VM.

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

  1. Memilih VM dari kumpulan yang memiliki image container yang telah ditarik sebelumnya.
  2. Saat pertama kali workstation dimulai, pilih disk persisten dari kumpulan.
  3. Melampirkan persistent disk ke VM.
  4. Memulai image container di VM dan memasang disk persisten ke direktori /home dalam image container.
  5. Mengisi ulang kumpulan dengan membuat VM dan persistent disk baru untuk menggantikan VM dan persistent disk yang ditetapkan.

Saat sesi berakhir, Cloud Workstation akan menghapus VM, tetapi melepaskan dan mempertahankan persistent disk sehingga dapat digunakan dalam sesi workstation mendatang. Layanan workstation mempertahankan disk hingga workstation dihapus, pada saat itu persistent disk juga akan dihapus—kecuali jika dikonfigurasi untuk dipertahankan secara opsional.

Update image container

Karena image container workstation ditarik sebelumnya ke VM gabungan, update pada image container yang dibuat di repositori image jarak jauh dengan tag image 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 ulang kumpulan VM dan mengambil image container yang diupdate.

Untuk memaksa pembaruan kumpulan agar segera mengambil update image container, administrator dapat menetapkan pool_size ke 0, lalu menetapkannya kembali ke pool_size yang diinginkan. Dari konsol Google Cloud, Nonaktifkan fitur Quick start workstations di konfigurasi workstation, simpan konfigurasi, setel kembali ke jumlah yang diinginkan, lalu simpan lagi.

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

Mengurangi waktu startup workstation dengan streaming Image

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

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

Persyaratan

Anda harus memenuhi persyaratan berikut untuk menggunakan streaming Image 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 Workstation Anda, atau di multi-region yang sesuai dengan region tempat workstation Anda berjalan.

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

  • Jika cluster berada di dalam perimeter Kontrol Layanan VPC, Anda harus menambahkan aturan keluar yang mengizinkan akun layanan Anda mengakses Container File System API di 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 Image men-cache image, image di masa mendatang akan mendapatkan manfaat workstation dari streaming Image.

  • Batasan Streaming Image GKE lainnya berlaku.