

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Jalankan build di atas armada kapasitas cadangan
<a name="fleets"></a>

CodeBuild menawarkan armada komputasi berikut:
+ On-demand armada
+ Armada kapasitas cadangan

Dengan armada sesuai permintaan, CodeBuild menyediakan komputasi untuk build Anda. Mesin-mesin dihancurkan saat build selesai. On-demand armada dikelola sepenuhnya, dan mencakup kemampuan penskalaan otomatis untuk menangani lonjakan permintaan.

**catatan**  
On-demand fleets tidak mendukung macOS.

CodeBuild juga menawarkan armada kapasitas cadangan yang berisi instans yang didukung oleh Amazon EC2 yang dikelola oleh. CodeBuild Dengan armada kapasitas cadangan, Anda mengonfigurasi satu set instans khusus untuk lingkungan build Anda. Mesin ini tetap menganggur, siap untuk memproses build atau pengujian segera dan mengurangi durasi build. Dengan armada kapasitas cadangan, mesin Anda selalu berjalan dan akan terus mengeluarkan biaya selama disediakan.

**penting**  
Terlepas dari berapa lama Anda menjalankan instance, armada kapasitas cadangan dikenakan biaya awal per instance, dan kemudian mungkin ada biaya terkait tambahan. Untuk informasi selengkapnya, lihat [https://aws.amazon.com/codebuild/pricing/](https://aws.amazon.com/codebuild/pricing/).

**Topics**
+ [Buat armada kapasitas cadangan](#fleets.how-to)
+ [Praktik terbaik](#fleets.best-practices)
+ [Dapatkah saya berbagi armada kapasitas cadangan di beberapa CodeBuild proyek?](#fleets.share)
+ [Bagaimana cara kerja komputasi berbasis atribut?](#fleets.attribute-compute)
+ [Bisakah saya menentukan instans Amazon EC2 secara manual untuk armada saya?](#fleets.manual-input-compute)
+ [Wilayah mana yang mendukung armada kapasitas cadangan?](#fleets.regions)
+ [Bagaimana cara mengonfigurasi armada macOS berkapasitas cadangan?](#fleets.configure-macos)
+ [Bagaimana cara mengonfigurasi Amazon Machine Image (AMI) khusus untuk armada kapasitas cadangan?](#fleets.custom-ami)
+ [Keterbatasan armada kapasitas cadangan](#fleets.limitations)
+ [Properti armada kapasitas cadangan](fleets.reserved-capacity-fleets.md)
+ [Sampel kapasitas cadangan dengan AWS CodeBuild](reserved-capacity-samples.md)

## Buat armada kapasitas cadangan
<a name="fleets.how-to"></a>

Gunakan petunjuk berikut untuk membuat armada kapasitas cadangan.

**Untuk membuat armada kapasitas cadangan**

1. Masuk ke Konsol Manajemen AWS dan buka AWS CodeBuild konsol di [https://console.aws.amazon.com/codesuite/codebuild/home](https://console.aws.amazon.com/codesuite/codebuild/home).

1. **Di panel navigasi, pilih **Compute fleet, lalu pilih Create Fleet**.**

1. Di bidang teks **Compute fleet name**, masukkan nama untuk armada Anda.

1. Dari menu drop-down **sistem operasi**, pilih sistem operasi.

1. Dari menu drop-down **Architecture**, pilih arsitektur.

1. (Opsional) Pilih **Gunakan mode berjalan instance - opsional** untuk dijalankan pada instans Amazon EC2 secara langsung, bukan wadah Docker. Kemudian pilih **versi Major dan versi** **Minor**.

1. (Opsional) Dalam **konfigurasi tambahan** lakukan hal berikut:
   + Pilih **Konfigurasi VPC - opsional** untuk menghubungkan armada Anda ke VPC untuk mengakses sumber daya pribadi selama penggunaan.
     + Dari menu tarik-turun **VPC**, pilih VPC yang akan diakses armada Anda. CodeBuild 
     + Dari menu tarik-turun **Subnet**, pilih subnet yang CodeBuild harus digunakan untuk mengatur konfigurasi VPC Anda.
     + Dari menu tarik-turun **Grup keamanan**, pilih grup keamanan yang CodeBuild harus digunakan untuk bekerja dengan VPC Anda.
     + Di bidang **Peran Layanan Armada**, pilih peran layanan yang ada.
**catatan**  
Pastikan peran armada Anda memiliki izin yang diperlukan. Untuk informasi selengkapnya, lihat [Izinkan pengguna menambahkan kebijakan izin untuk peran layanan armada](auth-and-access-control-iam-identity-based-access-control.md#customer-managed-policies-example-permission-policy-fleet-service-role).
     + Jika Anda memilih sistem operasi Amazon Linux, pilih **Tentukan konfigurasi proxy - opsional** untuk menerapkan kontrol akses jaringan untuk instance kapasitas cadangan Anda.
     + Untuk **perilaku Default**, pilih untuk mengizinkan atau menolak lalu lintas keluar ke semua tujuan secara default.
     + Untuk **aturan Proxy**, pilih **Tambahkan aturan proxy** untuk menentukan domain tujuan atau IP untuk mengizinkan atau menolak kontrol akses jaringan.
   + Pilih **Konfigurasi AMI kustom - opsional** untuk menggunakan Amazon Machine Image (AMI) kustom.
     + Dari menu tarik-turun **AMI**, pilih Amazon Machine Image (AMI) untuk armada Anda.
     + Di bidang **Peran Layanan Armada**, pilih peran layanan yang ada.
**catatan**  
Pastikan peran armada Anda memiliki izin yang diperlukan. Untuk informasi selengkapnya, lihat [Izinkan pengguna menambahkan kebijakan izin untuk peran layanan armada](auth-and-access-control-iam-identity-based-access-control.md#customer-managed-policies-example-permission-policy-fleet-service-role).

1. Dalam **konfigurasi Kapasitas**, dari **mode pemilihan Komputasi**, pilih salah satu dari berikut ini:
   + Jika Anda memilih **Pilihan terpandu**, lakukan hal berikut:
     + Untuk **Compute**, pilih jenis instance yang disertakan dalam armada ini.
     + Di bidang teks **Kapasitas**, masukkan jumlah minimum instance dalam armada.
     + (Opsional) Dalam **konfigurasi tambahan** lakukan hal berikut:
       + Pilih **Konfigurasi penskalaan - opsional** untuk menskalakan armada Anda secara otomatis berdasarkan konfigurasi ini. Dari **mode Penskalaan - menu tarik-turun opsional**, pilih perilaku saat permintaan melebihi kapasitas armada.
   + Jika Anda memilih **contoh Custom**, lakukan hal berikut:
     + Dari menu drop-down **Compute instance type**, pilih jenis instance yang disertakan dalam armada ini.
     + Dalam **ukuran volume EBS tambahan - bidang teks opsional**, masukkan volume tambahan ke 64GB ruang disk yang disediakan.
     + Di bidang teks **Kapasitas**, masukkan jumlah minimum instance dalam armada.
     + (Opsional) Dalam **konfigurasi tambahan** lakukan hal berikut:
       + Pilih **Konfigurasi penskalaan - opsional** untuk menskalakan armada Anda secara otomatis berdasarkan konfigurasi ini. Dari **mode Penskalaan - menu tarik-turun opsional**, pilih perilaku saat permintaan melebihi kapasitas armada.

1. Pilih **Buat armada komputasi**.

1. Setelah armada komputasi dibuat, buat CodeBuild proyek baru atau edit yang sudah ada. Dari **Lingkungan**, pilih **Kapasitas cadangan** di bawah **Model penyediaan**, lalu pilih armada yang ditentukan dengan nama **Armada**.

## Praktik terbaik
<a name="fleets.best-practices"></a>

Saat menggunakan armada kapasitas cadangan, kami sarankan Anda mengikuti praktik terbaik ini.
+ Sebaiknya gunakan mode cache sumber untuk membantu meningkatkan kinerja build dengan menyimpan sumber.
+ Kami merekomendasikan penggunaan cache lapisan Docker untuk membantu meningkatkan kinerja build dengan menyimpan lapisan Docker yang ada.

## Dapatkah saya berbagi armada kapasitas cadangan di beberapa CodeBuild proyek?
<a name="fleets.share"></a>

Ya, Anda dapat memaksimalkan pemanfaatan kapasitas armada dengan menggunakannya di beberapa proyek.

**penting**  
Saat menggunakan fitur kapasitas cadangan, data yang di-cache pada instance armada, termasuk file sumber, lapisan Docker, dan direktori cache yang ditentukan dalam buildspec, dapat diakses oleh proyek lain dalam akun yang sama. Ini dirancang dan memungkinkan proyek dalam akun yang sama untuk berbagi instance armada.

## Bagaimana cara kerja komputasi berbasis atribut?
<a name="fleets.attribute-compute"></a>

Jika Anda memilih `ATTRIBUTE_BASED_COMPUTE` sebagai armada`computeType`, Anda dapat menentukan atribut di bidang baru yang disebut`computeConfiguration`. Atribut ini termasuk vCPU, memori, ruang disk, dan file. `machineType` Ini `machineType` salah satu `GENERAL` atau`NVME`. Setelah menentukan satu atau beberapa atribut yang tersedia, CodeBuild akan memilih jenis komputasi dari jenis instance yang didukung yang tersedia sebagai finalisasi. `computeConfiguration`

**catatan**  
CodeBuild akan memilih instance termurah yang cocok dengan semua persyaratan input. Memori, vCPU, dan ruang disk instans yang dipilih semuanya akan lebih besar dari atau sama dengan persyaratan input. Anda dapat memeriksa yang diselesaikan `computeConfiguration` dalam armada yang dibuat atau diperbarui.

Jika Anda memasukkan a `computeConfiguration` yang tidak mungkin untuk dipenuhi CodeBuild, Anda akan menerima pengecualian validasi. Perhatikan juga bahwa perilaku overflow armada sesuai permintaan akan diganti ke perilaku antrian jika tidak tersedia untuk sesuai permintaan. `computeConfiguration`

## Bisakah saya menentukan instans Amazon EC2 secara manual untuk armada saya?
<a name="fleets.manual-input-compute"></a>

Ya, Anda dapat langsung memasukkan instans Amazon EC2 yang Anda inginkan di konsol dengan memilih **Instans khusus** atau dengan mengonfigurasi parameter API,. `InstanceType` Bidang ini digunakan dalam API berikut: CreateFleet, UpdateFleet, CreateProject, UpdateProject dan StartBuild. Untuk informasi selengkapnya, lihat [Compute instance type](fleets.reserved-capacity-fleets.md#compute).

## Wilayah mana yang mendukung armada kapasitas cadangan?
<a name="fleets.regions"></a>

Kapasitas cadangan armada Amazon Linux dan Windows didukung sebagai berikut Wilayah AWS: AS Timur (Virginia N.), AS Timur (Ohio), AS Barat (Oregon), Asia Pasifik (Mumbai), Asia Pasifik (Singapura), Asia Pasifik (Sydney), Asia Pasifik (Tokyo), Eropa (Frankfurt), Eropa (Irlandia), dan Amerika Selatan (São Paulo). Untuk informasi selengkapnya tentang Wilayah AWS tempat CodeBuild tersedia, lihat [AWS Layanan menurut Wilayah](https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services/).

Armada macOS Medium berkapasitas cadangan didukung sebagai berikut Wilayah AWS: US East (Virginia N.), US East (Ohio), US West (Oregon), Asia Pasifik (Sydney), dan Eropa (Frankfurt). Kapasitas cadangan macOS Armada besar didukung sebagai berikut Wilayah AWS: US East (Virginia N.), US East (Ohio), US West (Oregon), dan Asia Pasifik (Sydney).

## Bagaimana cara mengonfigurasi armada macOS berkapasitas cadangan?
<a name="fleets.configure-macos"></a>

**Untuk mengonfigurasi armada macOS berkapasitas cadangan**

1. Masuk ke Konsol Manajemen AWS dan buka AWS CodeBuild konsol di [https://console.aws.amazon.com/codesuite/codebuild/home](https://console.aws.amazon.com/codesuite/codebuild/home).

1. **Di panel navigasi, pilih **Compute fleet, lalu pilih Create Fleet**.**

1. Di bidang teks **Compute fleet name**, masukkan nama untuk armada Anda.

1. Dari menu tarik-turun **sistem operasi**, pilih **macOS**.

1. Di bidang **Compute**, pilih salah satu jenis mesin komputasi berikut: **Apple M2, memori 24 GB, 8 vCPU atau **Apple M2, memori 32 GB,** 12 vCPU**.

1. Di bidang teks **Kapasitas**, masukkan jumlah minimum instance dalam armada.

1. (Opsional) Untuk menggunakan gambar kustom untuk armada Anda, lihat [Bagaimana cara mengonfigurasi Amazon Machine Image (AMI) khusus untuk armada kapasitas cadangan?](#fleets.custom-ami) untuk memastikan bahwa Amazon Machine Image (AMI) Anda memiliki prasyarat yang diperlukan.

1. (Opsional) Untuk mengonfigurasi VPC dengan armada Anda, dalam **Konfigurasi tambahan** lakukan hal berikut:
   + Dari **VPC - menu tarik-turun opsional**, pilih VPC yang akan diakses armada Anda. CodeBuild 
   + Dari menu tarik-turun **Subnet**, pilih subnet yang CodeBuild harus digunakan untuk mengatur konfigurasi VPC Anda.
   + Dari menu tarik-turun **Grup keamanan**, pilih grup keamanan yang CodeBuild harus digunakan untuk bekerja dengan VPC Anda.
   + Di bidang **peran layanan Armada**, pilih peran layanan yang ada.
**catatan**  
Pastikan peran armada Anda memiliki izin yang diperlukan. Untuk informasi selengkapnya, lihat [Izinkan pengguna menambahkan kebijakan izin untuk peran layanan armada](auth-and-access-control-iam-identity-based-access-control.md#customer-managed-policies-example-permission-policy-fleet-service-role).

1. Pilih **Buat armada komputasi** dan tunggu instance armada diluncurkan. Setelah diluncurkan kapasitas akan berada`{{n}}/{{n}}`, di {{n}} mana kapasitas yang disediakan.

1. Setelah armada komputasi diluncurkan, buat CodeBuild proyek baru atau edit yang sudah ada. Dari **Lingkungan**, pilih **Kapasitas cadangan** di bawah **Model penyediaan**, lalu pilih armada yang ditentukan dengan nama **Armada**.

## Bagaimana cara mengonfigurasi Amazon Machine Image (AMI) khusus untuk armada kapasitas cadangan?
<a name="fleets.custom-ami"></a>

**Untuk mengonfigurasi Amazon Machine Image (AMI) khusus untuk armada kapasitas cadangan**

1. Masuk ke Konsol Manajemen AWS dan buka AWS CodeBuild konsol di [https://console.aws.amazon.com/codesuite/codebuild/home](https://console.aws.amazon.com/codesuite/codebuild/home).

1. **Di panel navigasi, pilih **Compute fleet, lalu pilih Create Fleet**.**

1. Di bidang teks **Compute fleet name**, masukkan nama untuk armada Anda.

1. Pilih **Custom image** untuk armada Anda dan pastikan Amazon Machine Image (AMI) Anda memiliki prasyarat berikut:
   + Jika tipe lingkungan Anda`MAC_ARM`, pastikan **Arsitektur** AMI Anda 64-bit`Mac-Arm`.
   + Jika tipe lingkungan Anda`LINUX_EC2`, pastikan **Arsitektur** AMI Anda 64-bit`x86`.
   + Jika tipe lingkungan Anda`ARM_EC2`, pastikan **Arsitektur** AMI Anda 64-bit`Arm`.
   + Jika tipe lingkungan Anda`WINDOWS_EC2`, pastikan **Arsitektur** AMI Anda 64-bit`x86`.
   + AMI memungkinkan CodeBuild **ARN Organisasi** layanan. Untuk daftar ARN Organisasi, lihat[Amazon Machine Images (AMI)](fleets.reserved-capacity-fleets.md#ami).
   + Jika AMI dienkripsi dengan AWS KMS kunci, kunci juga harus mengizinkan ID **Organisasi CodeBuild ** layanan. AWS KMS Untuk daftar ID Organisasi, lihat[Amazon Machine Images (AMI)](fleets.reserved-capacity-fleets.md#ami). Untuk informasi selengkapnya tentang AWS KMS kunci, lihat [Mengizinkan organisasi dan OU menggunakan kunci KMS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/share-amis-with-organizations-and-OUs.html#allow-org-ou-to-use-key) di Panduan Pengguna *Amazon EC2*. Untuk memberikan izin CodeBuild organisasi untuk menggunakan kunci KMS, tambahkan pernyataan berikut ke kebijakan kunci:

     ```
     {
         "Sid": "Allow access for organization root",
         "Effect": "Allow",
         "Principal": "*",
         "Action": [
             "kms:Describe*",
             "kms:List*",
             "kms:Get*",
             "kms:Encrypt",
             "kms:Decrypt",
             "kms:ReEncrypt*",
             "kms:GenerateDataKey*",
             "kms:CreateGrant"
         ],
         "Resource": "*",
         "Condition": {
             "StringEquals": {
                 "aws:PrincipalOrgID": "o-123example"
             }
         }
     }
     ```
   + Di bidang **peran layanan Armada**, berikan izin Amazon EC2 berikut:

------
#### [ JSON ]

****  

     ```
     {
         "Version":"2012-10-17",		 	 	 
         "Statement": [
             {
                 "Effect": "Allow",
                 "Action": [
                    "ec2:DescribeImages",
                    "ec2:DescribeSnapshots"
                 ],
                 "Resource": "*"
             }
         ]
     }
     ```

------

## Keterbatasan armada kapasitas cadangan
<a name="fleets.limitations"></a>

Ada beberapa kasus penggunaan yang tidak didukung oleh armada kapasitas cadangan, dan jika berdampak pada Anda, gunakan armada sesuai permintaan sebagai gantinya:
+ Armada kapasitas cadangan tidak mendukung metrik pemanfaatan build.
+ Armada macOS berkapasitas cadangan tidak mendukung sesi debug.

Untuk informasi lebih lanjut tentang batas dan kuota, lihat[Hitung armada](limits.md#fleet-limits).