Membuat folder

Halaman ini menjelaskan cara membuat Google Cloud folder untuk mengelompokkan dan mengatur project dalam hierarki resource. Anda dapat menggunakan folder untuk mendelegasikan tugas administratif, menerapkan kebijakan organisasi khusus lingkungan, dan menyederhanakan pengelolaan biaya di seluruh departemen Anda.

Folder adalah node dalam Hierarki Resource Cloud Platform. Folder dapat berisi beberapa project, folder lain, atau kombinasi keduanya. Resource organisasi dapat menggunakan folder untuk mengelompokkan project di bawah node resource organisasi dalam hierarki. Misalnya, resource organisasi Anda mungkin berisi beberapa departemen, yang masing-masing memiliki kumpulan resource Google Cloud -nya sendiri. Folder memungkinkan Anda mengelompokkan resource ini berdasarkan per departemen. Folder digunakan untuk mengelompokkan resource yang memiliki kebijakan izinkan atau tolak yang sama. Meskipun folder dapat berisi beberapa folder atau resource, folder atau resource tertentu dapat memiliki tepat satu induk.

Dalam diagram berikut, resource organisasi, "Company", memiliki folder yang mewakili dua departemen, "Dept X" dan "Dept Y", serta folder, "Shared Infrastructure", untuk item yang mungkin umum untuk kedua departemen. Di bagian "Dept Y", mereka telah dikelompokkan menjadi dua tim, dan di dalam folder tim, mereka dikelompokkan lagi berdasarkan produk. Folder untuk "Produk 1" selanjutnya berisi tiga project, yang masing-masing memiliki resource yang diperlukan untuk project. Hal ini memberi mereka fleksibilitas tingkat tinggi dalam menetapkan kebijakan izinkan, tolak, atau organisasi pada tingkat perincian yang tepat.

Hierarki resource yang menampilkan organisasi dengan folder bertingkat untuk
departemen, tim, dan produk, yang berisi project.

Anda dapat menggunakan kebijakan izinkan dan tolak tingkat folder untuk mengontrol akses ke resource yang ada di dalam folder. Misalnya, jika pengguna diberi peran Compute Instance Admin di folder, pengguna tersebut akan memiliki peran Compute Instance Admin untuk semua project di folder tersebut.

Sebelum memulai

Fungsi folder hanya tersedia untuk pelanggan Google Workspace dan Cloud Identity yang memiliki resource organisasi. Untuk mengetahui informasi selengkapnya tentang mendapatkan resource organisasi, lihat Mendapatkan resource organisasi.

Jika Anda sedang mempelajari cara terbaik menggunakan folder, sebaiknya Anda:

  1. Tinjau Kontrol Akses untuk Folder Menggunakan IAM. Topik ini menjelaskan cara mengontrol siapa yang memiliki akses apa ke folder dan resource yang ada di dalamnya.
  2. Pahami cara menetapkan izin folder. Folder mendukung sejumlah peran Identity and Access Management (IAM) yang berbeda. Jika Anda ingin menyiapkan izin secara luas agar pengguna dapat melihat struktur project mereka, berikan peran Organization Viewer dan Folder Viewer kepada seluruh domain di tingkat resource organisasi. Untuk membatasi visibilitas ke cabang hierarki folder Anda, berikan peran Pelihat Folder pada folder atau folder yang ingin Anda lihat oleh pengguna.
  3. Buat folder. Saat Anda merencanakan cara mengatur resource Cloud, sebaiknya mulai dengan satu folder sebagai sandbox tempat Anda dapat bereksperimen dengan hierarki yang paling sesuai untuk resource organisasi Anda. Pikirkan folder dalam hal batas isolasi antara resource dan titik lampiran untuk kebijakan akses dan konfigurasi. Anda dapat memilih untuk membuat folder yang berisi resource milik berbagai departemen dan menetapkan peran Admin pada folder untuk mendelegasikan hak istimewa administrator. Folder juga dapat digunakan untuk mengelompokkan resource yang termasuk dalam aplikasi atau lingkungan yang berbeda, seperti pengembangan, produksi, pengujian. Gunakan folder bertingkat untuk memodelkan berbagai skenario ini.

Situasi umum adalah membuat folder yang pada gilirannya berisi folder atau project tambahan, seperti yang ditunjukkan dalam hierarki resource sebelumnya. Struktur ini disebut sebagai hierarki folder. Saat membuat hierarki folder, perhatikan hal-hal berikut:

  • Anda dapat membuat folder bertingkat hingga 10 (sepuluh) tingkat.
  • Folder induk tidak boleh berisi lebih dari 300 folder. Hal ini hanya merujuk pada folder turunan langsung. Folder turunan tersebut dapat berisi folder atau project tambahan.
  • Nama tampilan folder harus unik dalam tingkat hierarki yang sama.

Menyiapkan izin untuk mengelola folder

Untuk mengakses dan mengelola folder, Anda menetapkan peran IAM khusus folder kepada grup pengguna tertentu. Untuk mempelajari lebih lanjut peran ini, lihat Kontrol Akses untuk Folder menggunakan IAM. Sebaiknya Anda juga meninjau praktik terbaik kami untuk membantu Anda mengidentifikasi konfigurasi optimal untuk izin folder Anda.

Untuk mengelola folder bagi seluruh resource organisasi Anda, Anda memerlukan peran Folder Admin. Peran ini memberikan izin kepada pengguna untuk membuat, mengedit, menghapus, memindahkan, dan mengubah izin IAM pada folder, serta izin untuk memindahkan project antar-folder.

Awalnya, hanya Admin Organisasi yang dapat menetapkan peran Admin Folder untuk resource organisasi. Akun berikutnya yang diberi peran ini dapat memberikannya ke akun lain.

Untuk menyiapkan izin folder, ikuti langkah-langkah berikut:

Konsol

  1. Di konsol Google Cloud , buka halaman Manage resources.

    Buka Kelola resource

  2. Jika panel info tidak terbuka, klik Tampilkan panel info.
  3. Di tabel Resources, luaskan Organisasi yang berisi folder.
  4. Dari daftar resource di bagian Organisasi, pilih folder yang ingin Anda kelola.
  5. Di panel info, klik Add principal.
  6. Di kolom Tambahkan akun utama, masukkan alamat email yang ingin Anda beri izin.
  7. Di menu Pilih peran, pilih kategori Resource Manager, lalu pilih peran yang ingin Anda berikan, seperti Folder Admin.
  8. Klik Simpan untuk memberikan peran baru.

gcloud

Untuk memberikan peran Folder Admin kepada prinsipal menggunakan Google Cloud CLI, jalankan perintah berikut:

    gcloud organizations add-iam-policy-binding ORGANIZATION_ID \
    --member=user:USER_ID \
    --role=roles/resourcemanager.folderAdmin

REST

JSON permintaan:

request_json= '{ policy: { version: "1", bindings: [ { role: "roles/folderAdmin",
members: [ "user:admin@myorganization.com", ] }, { role: "roles/folderCreator",
members: [ "user:admin@myorganization.com", ] } , { role: "roles/folderMover",
members: [ "user:admin@myorganization.com", ] } , ] } }'

Permintaan curl:

curl -X POST -H "Content-Type: application/json" \
-H "Authorization: Bearer ${bearer_token}" \
-d "$request_json" \
https://cloudresourcemanager.googleapis.com/v3/ORGANIZATION_NAME:setIamPolicy

Ganti ORGANIZATION_NAME dengan nama organisasi yang kebijakan izinkannya sedang ditetapkan, misalnya organizations/123.

Membuat folder

Untuk membuat folder, Anda harus memiliki peran Admin Folder atau Pembuat Folder di tingkat induk. Misalnya, untuk membuat folder di tingkat organisasi, Anda harus memiliki salah satu peran ini di tingkat organisasi.

Sebagai bagian dari pembuatan folder, Anda harus memberinya nama. Nama folder harus memenuhi persyaratan berikut:

  • Nama dapat berisi huruf, angka, spasi, tanda hubung, dan garis bawah.
  • Nama tampilan folder harus diawali dan diakhiri dengan huruf atau angka.
  • Panjang nama harus antara 3 hingga 30 karakter.
  • Nama harus berbeda dari semua folder lain yang berbagi induknya.

Untuk membuat folder, ikuti langkah-langkah berikut:

Konsol

Folder dapat dibuat di UI menggunakan bagian "Kelola Project dan Folder".

  1. Buka halaman Kelola resource di konsol Google Cloud :

    Buka halaman Kelola resource

  2. Pastikan nama resource organisasi Anda dipilih di menu drop-down organisasi di bagian atas halaman.

  3. Klik Buat folder, lalu pilih salah satu opsi berikut:

    • Folder standar: Resource folder standar.
    • Folder yang mematuhi kebijakan: Folder Assured Workloads, yang menyediakan kontrol peraturan, regional, atau berdaulat tambahan untuk Google Cloud resource. Jika opsi ini dipilih, Anda akan diarahkan ke Assured Workloads untuk membuat folder.
  4. Di kotak Nama folder, masukkan nama folder baru Anda.

  5. Di bagian Tujuan, klik Jelajahi, lalu pilih folder atau resource organisasi tempat Anda ingin membuat folder baru.

    1. Klik Create.

gcloud

Folder dapat dibuat secara terprogram menggunakan Google Cloud CLI.

Untuk membuat folder di resource organisasi menggunakan alat command line gcloud, jalankan perintah berikut.

gcloud resource-manager folders create \
   --display-name=DISPLAY_NAME \
   --organization=ORGANIZATION_ID

Untuk membuat folder yang induknya adalah folder lain:

gcloud resource-manager folders create \
   --display-name=DISPLAY_NAME \
   --folder=FOLDER_ID

Ganti kode berikut:

  • DISPLAY_NAME: nama tampilan folder. Tidak ada dua folder dengan induk yang sama yang dapat berbagi nama tampilan. Nama tampilan harus diawali dan diakhiri dengan huruf atau angka, dapat berisi huruf, angka, spasi, tanda hubung, dan garis bawah, serta tidak boleh lebih dari 30 karakter.
  • ORGANIZATION_ID: ID resource organisasi induk jika induk adalah resource organisasi.
  • FOLDER_ID: ID folder induk, jika induknya adalah folder.

API

Folder dapat dibuat dengan permintaan API.

JSON permintaan:

request_json= '{
  display_name: DISPLAY_NAME,
  parent: ORGANIZATION_NAME
}'

Permintaan curl Buat Folder:

curl -X POST -H "Content-Type: application/json" \
-H "Authorization: Bearer ${bearer_token}" \
-d "$request_json" \
https://cloudresourcemanager.googleapis.com/v3/folders

Dengan:

  • DISPLAY_NAME: nama tampilan folder baru, misalnya "My Awesome Folder".
  • ORGANIZATION_NAME: nama resource organisasi tempat Anda membuat folder, misalnya organizations/123.

Respons Buat Folder:

{
  "name": "operations/fc.123456789",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.resourcemanager.v3.FolderOperation",
    "displayName": "DISPLAY_NAME",
    "operationType": "CREATE"
  }
}

Permintaan curl Get Operation:

curl -H "Authorization: Bearer ${bearer_token}" \
https://cloudresourcemanager.googleapis.com/v3/operations/fc.123456789

Respons Get Operation:

{
  "name": "operations/fc.123456789",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.resourcemanager.v3.FolderOperation",
    "displayName": "DISPLAY_NAME",
    "operationType": "CREATE"
  },
  "done": true,
  "response": {
    "@type": "type.googleapis.com/google.cloud.resourcemanager.v3.Folder",
    "name": "folders/12345",
    "parent": "organizations/123",
    "displayName": "DISPLAY_NAME",
    "lifecycleState": "ACTIVE",
    "createTime": "2017-07-19T23:29:26.018Z",
    "updateTime": "2017-07-19T23:29:26.046Z"
  }
}

Menambahkan tag selama pembuatan folder

Tag memberikan cara untuk membuat anotasi untuk resource. Anda dapat menambahkan tag saat membuat folder. Untuk melakukannya, Anda harus memberikan peran Pengguna Tag. Untuk mengetahui informasi selengkapnya tentang izin yang ada dalam peran ini, lihat Membuat dan mengelola tag. Anda hanya dapat menambahkan namespace untuk pasangan nilai kunci tag dengan salah satu cara berikut:

gcloud

Untuk menambahkan tag selama pembuatan folder, jalankan perintah berikut:

  gcloud resource-manager folders create \
      --display-name=DISPLAY_NAME \
      --organization=ORGANIZATION_ID\
      --tags=KEY_VALUE_PAIRS

Ganti kode berikut:

  • DISPLAY_NAME: nama tampilan folder.
  • ORGANIZATION_ID: ID unik resource organisasi induk.
  • KEY_VALUE_PAIRS: daftar pasangan nilai kunci yang dipisahkan koma yang dapat Anda tetapkan ke resource. Contoh pasangan nilai kunci yang dipisahkan koma adalah 123/environment=production, 456/create=testresource.

REST

Cuplikan berikut adalah permintaan JSON yang membuat folder dan menambahkan tag ke folder tersebut.

  POST https://cloudresourcemanager.googleapis.com/v3/projects/
  Authorization: *************
  Content-Type: application/json

  {
    "display_name": "our-folder-456",
    "parent": "organizations/123",
    "tags": {
      "key": "123/environment"
      "value": "production"
    },
"tags": {
      "key": "123/costCenter"
      "value": "marketing"
    }
  }

Mengonfigurasi akses ke folder

Untuk mengonfigurasi akses ke folder, Anda harus memiliki peran Administrator IAM Folder atau Admin Folder di tingkat induk.

Konsol

  1. Di Konsol Google Cloud , buka halaman Manage Resources.

    Buka halaman Kelola Resource

  2. Klik menu drop-down Organisasi di kiri atas, lalu pilih resource organisasi Anda.

  3. Centang kotak di samping project yang izinnya ingin Anda ubah.

    1. Di Panel info di sisi kanan, pada bagian Izin, masukkan alamat email anggota yang ingin Anda tambahkan.

    2. Di menu drop-down Select a role, pilih peran yang ingin Anda berikan kepada anggota tersebut.

    3. Klik Tambahkan. Notifikasi akan muncul untuk mengonfirmasi penambahan atau pembaruan peran baru anggota.

gcloud

Anda dapat mengonfigurasi akses ke folder secara terprogram menggunakan Google Cloud CLI atau REST API.

gcloud resource-manager folders \
    add-iam-policy-binding FOLDER_ID \
    --member=user:email1@example.com \
    --role=roles/resourcemanager.folderEditor
gcloud resource-manager folders \
    add-iam-policy-binding FOLDER_ID \
    --member=user:email1@example.com \
    --role=roles/resourcemanager.folderViewer

Sebagai alternatif:

gcloud resource-manager folders \
    set-iam-policy FOLDER_ID POLICY_FILE

Ganti kode berikut:

  • FOLDER_ID: ID folder baru
  • POLICY_FILE: jalur ke file kebijakan untuk folder

API

Metode setIamPolicy menetapkan kebijakan kontrol akses pada folder, menggantikan kebijakan yang ada. Kolom resource harus berupa nama resource folder, misalnya, folders/1234.

 request_json= '{
   policy: {
     version: "1",
     bindings: [
       {
         role: "roles/resourcemanager.folderEditor",
         members: [
           "user:email1@example.com",
           "user:email2@example.com",
         ]
       }
     ]
   }
 }'

Permintaan curl:

   curl -X POST -H "Content-Type: application/json" \
   -H "Authorization: Bearer ${bearer_token}" \
   -d "$request_json" \
   https://cloudresourcemanager.googleapis.com/v3/FOLDER_ID:setIamPolicy

Ganti FOLDER_ID dengan nama folder yang kebijakan IAM-nya sedang ditetapkan, misalnya folders/123.

Menangani operasi yang berjalan lama

Operasi folder tertentu, seperti pembuatan atau migrasi, diproses secara asinkron oleh Google Cloud karena memerlukan propagasi global. Untuk menghindari pemblokiran terminal atau skrip otomatisasi, Anda dapat menggunakan flag --async.

Jika flag ini digunakan, perintah akan langsung menampilkan objek Operasi yang Berjalan Lama (LRO). Anda kemudian dapat menggunakan operation_id untuk melakukan polling penyelesaian sesuai keinginan Anda. Flag --async hanya didukung untuk perintah folders create dan folders move.

Untuk menggunakan tanda, ikuti langkah-langkah berikut:

  1. Mulai tugas asinkron. Lihat contoh perintah berikut:

    gcloud resource-manager folders create \
        --display-name="Test Async Folder" \
        --organization=2518 \
        --async
    

    Output memberikan nama operasi (misalnya, fc.8572) dan menampilkan done: false.

    Contoh respons:

    name: operations/fc.8572
    metadata:
    operation_type: CREATE
    display_name: Awe-Inspiring Async Folder
    destination_parent: organizations/2518
    done: false
    
  2. Periksa status operasi. Untuk memverifikasi apakah tugas telah selesai, gunakan perintah operations describe dengan ID yang diberikan pada langkah sebelumnya.

    gcloud beta resource-manager operations describe fc.8572
    

    Setelah done bernilai benar, blok respons akan berisi detail lengkap resource yang baru dibuat.

    name: operations/fc.8572
    done: true
    response:
      name: folders/6428
      display_name: Awe-Inspiring Async Folder
      lifecycle_state: ACTIVE
      create_time: '2024-03-20T10:00:00Z'
    

Langkah berikutnya