Membuat dan mengelola kumpulan pribadi

Halaman ini menjelaskan cara membuat, mengupdate, melihat, dan menghapus pool pribadi Cloud Build. Jika Anda belum terbiasa dengan kolam renang pribadi, baca Ringkasan kolam renang pribadi.

Sebelum memulai

  1. Buat project baru Google Cloud atau pilih project yang sudah ada. Anda akan menggunakan project ini untuk membuat pool pribadi.

  2. Enable the Cloud Build API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  3. Untuk menggunakan contoh command line dalam panduan ini, instal dan konfigurasi Google Cloud CLI.

  4. Opsional: Agar build dapat mengakses resource pribadi dari jaringan Virtual Private Cloud Anda, Anda harus menyiapkan koneksi peering antara jaringan Virtual Private Cloud Anda dan jaringan Virtual Private Cloud tempat kumpulan pribadi berada. Untuk mengetahui petunjuknya, lihat menyiapkan lingkungan untuk membuat pool pribadi.

  5. Opsional: Pahami konfigurasi jenis mesin dan ketersediaan regional. Untuk mengetahui informasi selengkapnya, lihat workerconfig dalam dokumentasi skema file konfigurasi pool pribadi.

Membuat kumpulan pribadi

Untuk mendapatkan izin yang diperlukan untuk membuat kumpulan pribadi, minta administrator untuk memberi Anda peran IAM Cloud Build WorkerPool Owner (roles/cloudbuild.workerPoolOwner) di akun layanan Anda. Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.

Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran kustom atau peran yang telah ditentukan lainnya.

Anda dapat membuat hingga 10 kumpulan pribadi per Google Cloud project per region. Untuk membuat pool pribadi, lakukan hal berikut:

Google Cloud console

  1. Buka halaman Worker Pool di konsol Google Cloud :

    Buka halaman kumpulan pekerja Cloud Build

  2. Klik Buat kumpulan pribadi.

    Halaman Buat pool pribadi akan ditampilkan.

    Masukkan informasi berikut untuk membuat pool pribadi Anda:

  3. Nama: Masukkan nama untuk pool pribadi Anda. Nilai ini hanya boleh berisi karakter alfanumerik /[a-z][0-9]/ atau tanda hubung -. Nama kumpulan pribadi Anda harus terdiri dari 1 hingga 63 karakter.

  4. Region: Pilih region tempat Anda ingin membuat pool pribadi.

  5. Machine configuration: Konfigurasi berikut:

    1. Seri: Pilih seri mesin.

    2. Jenis mesin: Setelan ini menampilkan jenis mesin, berdasarkan seri mesin yang Anda pilih, yang dapat digunakan oleh kumpulan pekerja. Jenis mesin yang tersedia bervariasi menurut wilayah.

    3. Ukuran disk: Masukkan ukuran disk untuk kumpulan data pribadi Anda. Tentukan nilai yang lebih besar dari atau sama dengan 100 dan kurang dari atau sama dengan 4000. Jika Anda tidak memberikan nilai, Cloud Build akan menggunakan ukuran disk 100.

    4. Virtualisasi bertingkat: Jika Anda memilih mesin seri C3, Anda dapat mengaktifkan virtualisasi bertingkat. Dengan fitur ini, Anda dapat menjalankan instance virtual machine (VM) di dalam VM lain sehingga Anda dapat membuat lingkungan virtualisasi Anda sendiri.

  6. Di bagian Network type, pilih salah satu opsi berikut:

    1. Jaringan default: Pilih opsi ini jika instance Anda dapat diakses melalui internet publik. Jika opsi Default network dipilih, pool pribadi Anda akan menggunakan jaringan produsen layanan. Untuk mengetahui informasi selengkapnya, lihat Menyiapkan lingkungan untuk menggunakan kumpulan pribadi di jaringan VPC.

    2. Jaringan pribadi: Pilih opsi ini jika instance Anda dihosting di jaringan pribadi, lalu lakukan hal berikut:

      1. Project: Pilih project ID Google Cloud Anda.

      2. Jaringan: Pilih jaringan Anda dari menu drop-down. Jika Anda belum membuat jaringan, lihat Membuat dan mengelola jaringan VPC untuk mempelajari cara membuat jaringan.

      3. Rentang IP: Masukkan rentang IP internal yang dapat digunakan oleh jaringan produsen Cloud Build untuk dialokasikan ke VM yang mempertahankan koneksi dengan repositori pribadi.

        Anda dapat menentukan rentang menggunakan notasi perutean Classless Inter-Domain Routing (CIDR) dalam format STARTING_IP_ADDRESS/SUBNET_PREFIX_SIZE. Misalnya, 192.0.2.0/24 memiliki panjang awalan 24. 24 bit pertama rentang IP digunakan sebagai subnet mask (192.0.2.0), sedangkan rentang alamat host yang mungkin adalah dari 192.0.2.0 hingga 192.0.2.255.

        Nilai panjang awalan tidak boleh melebihi /29. Jika tidak ada nilai yang ditentukan untuk rentang, nilai default /24 akan otomatis ditetapkan. Jika tidak ada nilai yang ditentukan untuk panjang awalan, alamat IP akan otomatis ditetapkan dalam jaringan VPC yang di-peering. Jika tidak ada nilai yang ditentukan untuk alamat IP, alamat IP akan otomatis diberi rentang dalam jaringan VPC yang di-peering.

    3. Tetapkan IP eksternal: Opsi ini dipilih secara default untuk mengizinkan kumpulan pribadi mengakses internet publik. Hapus centang pada kotak ini untuk membatasi akses ke jaringan pribadi Anda.

  7. Klik Buat untuk membuat pool pribadi Anda.

gcloud

Anda memiliki dua opsi untuk membuat kumpulan pribadi baru menggunakan gcloud: Anda dapat meneruskan file konfigurasi kumpulan pribadi ke perintah gcloud, atau meneruskan opsi konfigurasi langsung ke perintah gcloud.

Teruskan file konfigurasi kumpulan pribadi ke perintah gcloud:

  1. Buat file konfigurasi kumpulan pribadi dalam format YAML atau JSON.

  2. Jalankan perintah gcloud berikut, dengan PRIVATEPOOL_ID adalah ID unik untuk private pool Anda, PRIVATEPOOL_CONFIG_FILE adalah nama file konfigurasi private pool Anda, dan REGION adalah region tempat Anda ingin membuat private pool:

    gcloud builds worker-pools create PRIVATEPOOL_ID --config-from-file PRIVATEPOOL_CONFIG_FILE --region REGION
    

    Anda akan melihat output yang mirip dengan berikut ini:

    Created [https://cloudbuild.googleapis.com/v1/projects/gcb-docs-project/locations/us-central1/workerPools/private-pool].
    NAME                 CREATE_TIME                STATUS
    private-pool  2018-11-19T16:08:24+00:00  RUNNING
    

Teruskan opsi konfigurasi langsung ke perintah gcloud:

Jalankan perintah gcloud berikut:

    gcloud builds worker-pools create PRIVATEPOOL_ID \
        --project=PRIVATEPOOL_PROJECT_ID \
        --region=REGION \
        --peered-network=PEERED_NETWORK \
        --worker-machine-type=PRIVATEPOOL_MACHINE_TYPE \
        --worker-disk-size=PRIVATEPOOL_DISK_SIZE_GB \
        --no-public-egress

Dengan:

  • PRIVATEPOOL_ID: ID unik untuk pool pribadi Anda. Nilai ini harus terdiri dari 1-63 karakter, dan karakter yang valid adalah [a-zA-Z0-9_-]+.
  • PRIVATEPOOL_PROJECT_ID: ID Google Cloud project tempat Anda ingin membuat kumpulan pribadi.
  • REGION: salah satu wilayah yang didukung.
  • PEERED_NETWORK: URL resource jaringan dari jaringan yang di-peering ke jaringan produsen layanan. PEERED_NETWORK harus dalam format projects/NETWORK_PROJECT_ID/global/networks/NETWORK_NAME, dengan NETWORK_PROJECT_ID adalah project ID project Google Cloud yang memiliki jaringan VPC Anda dan NETWORK_NAME adalah nama jaringan VPC Anda. Jika Anda tidak menentukan nilai, Cloud Build akan menggunakan jaringan penyedia layanan.
  • PRIVATEPOOL_DISK_SIZE_GB: ukuran disk yang terpasang ke pool pribadi. Tentukan nilai yang lebih besar dari atau sama dengan 100 dan kurang dari atau sama dengan 4000. Jika tidak diberikan, Cloud Build akan menggunakan ukuran disk 100. --worker-disk-size akan diganti jika Anda menentukan ukuran disk yang berbeda menggunakan --disk-size selama gcloud builds submit.
  • PRIVATEPOOL_MACHINE_TYPE: jenis mesin pekerja. Jika dibiarkan kosong, Cloud Build akan menggunakan nilai default e2-standard-2. Untuk mengetahui daftar jenis mesin yang didukung, lihat Skema file konfigurasi kumpulan pribadi. --worker-machine-type akan diganti jika Anda menentukan jenis mesin yang berbeda menggunakan --machine-type selama gcloud builds submit.
  • --no-public-egress: Jika tanda ini disetel, kumpulan pribadi akan dibuat tanpa alamat IP eksternal. Tetapkan tanda ini jika Anda membuat kumpulan pribadi dalam perimeter Kontrol Layanan VPC.

API

  1. Buat file konfigurasi kumpulan pribadi bernama workerpool.json.

  2. Gunakan cURL untuk memanggil Cloud Build API:

        curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)"
            -H "Content-Type: application/json" \
            https://cloudbuild.googleapis.com/v1/projects/PRIVATEPOOL_PROJECT_ID/locations/REGION/workerPools/?workerPoolId=PRIVATEPOOL_ID -d @workerpool.json
    

    Dengan:

    • PRIVATEPOOL_PROJECT_ID: ID Google Cloud project tempat Anda ingin membuat kumpulan pribadi.
    • PRIVATEPOOL_ID: ID untuk pool pribadi Anda. Nilai ini harus terdiri dari 1-63 karakter, dan karakter yang valid adalah [a-zA-Z0-9_-]+.
    • REGION: salah satu region yang didukung untuk membuat kumpulan pribadi Anda.

Membuat kumpulan pribadi dalam perimeter Kontrol Layanan VPC

Untuk membuat kumpulan pribadi dengan perimeter Kontrol Layanan VPC, lihat Menggunakan Kontrol Layanan VPC.

Memperbarui kumpulan pribadi

Untuk mendapatkan izin yang diperlukan untuk membuat kumpulan pribadi, minta administrator untuk memberi Anda peran IAM Cloud Build WorkerPool Editor (roles/cloudbuild.workerPoolEditor) di akun layanan Anda. Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.

Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran kustom atau peran yang telah ditentukan lainnya.

Untuk memperbarui konfigurasi pool pribadi, lakukan hal berikut:

Konsol

  1. Buka halaman Worker pool di konsol Google Cloud :

    Buka halaman kumpulan pekerja Cloud Build

  2. Pilih project tempat Anda membuat pool pribadi.

  3. Klik nama kumpulan pribadi.

  4. Di halaman Edit private pool, perbarui jenis mesin dan ukuran disk sesuai kebutuhan.

  5. Klik Simpan.

gcloud

Dengan memperbarui file konfigurasi kumpulan pribadi:

  1. Perbarui kolom yang ingin Anda ubah di file konfigurasi pool pribadi.

  2. Jalankan perintah berikut, dengan PRIVATEPOOL_ID adalah ID unik untuk pool pribadi Anda, REGION adalah region tempat pool pribadi Anda berada, dan PRIVATEPOOL_CONFIG_FILE adalah nama file konfigurasi pool pribadi Anda:

    gcloud builds worker-pools update PRIVATEPOOL_ID \
        --region=REGION \
        --config-from-file=PRIVATEPOOL_CONFIG_FILE
    

Dengan meneruskan nilai yang akan diupdate langsung ke perintah gcloud builds worker-pools update:

   gcloud builds worker-pools update PRIVATEPOOL_ID \
       --region=REGION \
       --worker-disk-size=PRIVATEPOOL_DISK_SIZE \
       --worker-machine-type=PRIVATEPOOL_MACHINE_TYPE

Dengan:

  • PRIVATEPOOL_ID: ID pool pribadi yang ada. Anda tidak dapat memperbarui nilai ini; Anda harus menentukan ID pool pribadi yang ada.
  • REGION: region tempat Anda membuat kumpulan pribadi.
  • PRIVATEPOOL_DISK_SIZE: ukuran disk yang diperbarui.
  • PRIVATEPOOL_MACHINE_TYPE adalah jenis mesin yang diperbarui.

API

  1. Di file konfigurasi kumpulan pribadi, perbarui ukuran disk dan jenis mesin sesuai kebutuhan.

  2. Gunakan cURL untuk memanggil Cloud Build API, dengan mengganti variabel dengan nilai yang sesuai:

    curl -X PATCH -H "Authorization: Bearer $(gcloud auth print-access-token)" \
        -H "Content-Type: application/json" \
        https://cloudbuild.googleapis.com/v1/projects/PRIVATEPOOL_PROJECT_ID/locations/REGION/workerPools/PRIVATEPOOL_ID \
        -d @workerpool.json
    

    Dengan:

    • PRIVATEPOOL_ID: ID pool pribadi Anda.
    • PRIVATEPOOL_PROJECT_ID: ID Google Cloud project yang berisi kumpulan pribadi Anda.
    • REGION: region tempat Anda membuat kumpulan pribadi.

Melihat detail pool pribadi Anda

Untuk mendapatkan izin yang diperlukan untuk membuat kumpulan pribadi, minta administrator untuk memberi Anda peran IAM Cloud Build WorkerPool Viewer (roles/cloudbuild.workerPoolViewer) di akun layanan Anda. Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.

Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran kustom atau peran yang telah ditentukan lainnya.

Untuk melihat detail pool pribadi:

Konsol

  1. Buka halaman Worker pool di konsol Google Cloud :

    Buka halaman kumpulan pekerja Cloud Build

  2. Pilih project tempat Anda membuat kumpulan pribadi

  3. Klik nama kumpulan pribadi.

    Halaman Edit pool pribadi akan ditampilkan.

gcloud

Jika Anda tidak mengetahui ID pool pribadi, jalankan perintah berikut untuk mencantumkan detail pool pribadi:

gcloud builds worker-pools list --region=REGION --project=PRIVATEPOOL_PROJECT_ID

Dengan:

  • PRIVATEPOOL_PROJECT_ID adalah ID Google Cloud project yang berisi private pool.
  • REGION adalah region pool pribadi.

Anda akan melihat output yang mirip dengan berikut ini:

NAME                                                                  CREATE_TIME                STATUS
projects/[PRIVATEPOOL_PROJECT_ID]/locations/us-central1/workerPools/[PRIVATEPOOL_ID]      2018-11-19T16:08:24+00:00  RUNNING

Jika Anda mengetahui ID pool pribadi, jalankan perintah berikut untuk mendapatkan informasi selengkapnya tentang pool pribadi:

gcloud builds worker-pools describe PRIVATEPOOL_ID \
    --region=REGION \
    --project=PRIVATEPOOL_PROJECT_ID

Di mana

  • PRIVATEPOOL_ID: ID pool pribadi Anda.
  • REGION: region tempat Anda membuat kumpulan pribadi.
  • PRIVATEPOOL_PROJECT_ID: ID Google Cloud project yang berisi kumpulan pribadi Anda.

API

Jika Anda tidak mengetahui ID pool pribadi, jalankan perintah cURL berikut untuk mencantumkan detail pool pribadi Anda, dengan PRIVATEPOOL_PROJECT_ID adalah ID project Google Cloud yang berisi pool pribadi:

    curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \
        https://cloudbuild.googleapis.com/v1/projects/PRIVATEPOOL_PROJECT_ID/locations/REGION/workerPools

Jika Anda mengetahui ID pool pribadi, jalankan perintah curl berikut untuk mendapatkan detail pool pribadi Anda:

    curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \
        https://cloudbuild.googleapis.com/v1/projects/PRIVATEPOOL_PROJECT_ID/locations/REGION/workerPools/PRIVATEPOOL_ID

Di mana

  • PRIVATEPOOL_ID: ID pool pribadi Anda.
  • PRIVATEPOOL_PROJECT_ID: ID Google Cloud project yang berisi kumpulan pribadi Anda.
  • REGION: region tempat Anda membuat pool pribadi.

Melihat estimasi harga kumpulan pribadi

Saat Anda membuat atau memperbarui kumpulan pribadi, sidebar Perkiraan bulanan di halaman Buat kumpulan pribadi dan Edit kumpulan pribadi menampilkan perkiraan biaya yang diperlukan untuk menjalankan kumpulan Anda per bulan. Perhitungan didasarkan pada faktor-faktor berikut:

  • Jumlah CPU virtual
  • Jenis mesin
  • Memori
  • Menit build
  • Region, hanya untuk mesin N2D dan C3

Estimasi harga tidak mencakup biaya untuk ukuran disk tambahan di luar 100 GB yang disertakan secara default. Estimasi harga mungkin berbeda dari harga akhir, bergantung pada konfigurasi build akhir, menit build aktual yang digunakan, dan faktor lainnya. Untuk mengetahui informasi selengkapnya, lihat harga Cloud Build.

Menghapus pool pribadi

Untuk mendapatkan izin yang diperlukan untuk membuat kumpulan pribadi, minta administrator untuk memberi Anda peran IAM Cloud Build WorkerPool Owner (roles/cloudbuild.workerPoolOwner) di akun layanan Anda. Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.

Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran kustom atau peran yang telah ditentukan lainnya.

Untuk menghapus pool pribadi, lakukan langkah-langkah berikut:

Konsol

  1. Buka halaman Worker pool di konsol Google Cloud :

    Buka halaman kumpulan pekerja Cloud Build

  2. Di baris dengan kumpulan pribadi Anda, klik ikon tempat sampah.

gcloud

Untuk menghapus pool pribadi, jalankan perintah gcloud builds worker-pools delete:

 gcloud builds worker-pools delete PRIVATEPOOL_ID \
     --region=REGION \
     --project=PRIVATEPOOL_PROJECT_ID

Dengan:

  • PRIVATEPOOL_ID: ID pool pribadi Anda.
  • PRIVATEPOOL_PROJECT_ID: ID Google Cloud project yang berisi kumpulan pribadi Anda.
  • REGION: region tempat Anda membuat pool pribadi.

Setelah kumpulan pribadi dihapus, Anda akan melihat output yang mirip dengan berikut ini:

 Deleted [https://cloudbuild.googleapis.com/v1/projects/gcb-docs-project/locations/us-central1/workerPools/[PRIVATEPOOL_ID].

API

Gunakan cURL untuk memanggil Cloud Build API:

  curl -X DELETE -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      https://cloudbuild.googleapis.com/v1/projects/PRIVATEPOOL_PROJECT_ID/locations/REGION/workerPools/PRIVATEPOOL_ID

Dengan:

  • PRIVATEPOOL_ID: ID pool pribadi Anda.
  • PRIVATEPOOL_PROJECT_ID: ID Google Cloud project yang berisi kumpulan pribadi Anda.
  • REGION: region tempat Anda membuat pool pribadi.

Langkah berikutnya