

• AWS Systems Manager CloudWatch Dasbor tidak akan lagi tersedia setelah 30 April 2026. Pelanggan dapat terus menggunakan CloudWatch konsol Amazon untuk melihat, membuat, dan mengelola CloudWatch dasbor Amazon mereka, seperti yang mereka lakukan hari ini. Untuk informasi selengkapnya, lihat [dokumentasi CloudWatch Dasbor Amazon](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html). 

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

# Buat paket di Distributor
<a name="distributor-working-with-packages-create"></a>

Untuk membuat paket, siapkan perangkat lunak atau aset yang dapat diinstal Anda, satu file per platform sistem operasi. Setidaknya satu file diperlukan untuk membuat paket.

Platform yang berbeda terkadang menggunakan file yang sama, namun semua file yang Anda lampirkan ke paket harus tercantum dalam bagian `Files` manifes. Jika Anda membuat paket dengan menggunakan alur kerja sederhana di konsol, manifes akan dibuat untuk Anda. Jumlah maksimum file yang dapat Anda lampirkan ke dokumen tunggal adalah 20. Ukuran maksimum setiap file adalah 1 GB. Untuk informasi selengkapnya tentang platform yang didukung, lihat [Platform dan arsitektur paket yang didukung](distributor.md#what-is-a-package-platforms).

Saat Anda membuat paket, sistem membuat [dokumen SSM](documents.md) baru. Dokumen ini memungkinkan Anda untuk menyebarkan paket ke node terkelola.

Untuk tujuan demonstrasi saja, paket contoh, [ExamplePackage.zip](https://docs.aws.amazon.com/systems-manager/latest/userguide/samples/ExamplePackage.zip), tersedia untuk Anda unduh dari situs web kami. Paket contoh mencakup manifes JSON lengkap dan tiga file.zip yang berisi installer untuk v7.0.0. PowerShell Skrip instalasi dan penghapusan instalasi tidak berisi perintah yang valid. Meskipun Anda harus men-zip setiap perangkat lunak yang dapat diinstal dan skrip ke file .zip untuk membuat paket di alur kerja **Lanjutan**, Anda tidak men-zip aset yang dapat diinstal di alur kerja **Sederhana**.

**Topics**
+ [Buat paket menggunakan alur kerja Sederhana](#distributor-working-with-packages-create-simple)
+ [Membuat paket menggunakan alur kerja Advanced](#distributor-working-with-packages-create-adv)

## Buat paket menggunakan alur kerja Sederhana
<a name="distributor-working-with-packages-create-simple"></a>

Bagian ini menjelaskan cara membuat paket Distributor dengan memilih alur kerja pembuatan paket **sederhana** di Distributor konsol. Distributoradalah alat di AWS Systems Manager. Untuk membuat paket, siapkan aset yang dapat diinstal Anda, satu file per platform sistem operasi. Setidaknya satu file diperlukan untuk membuat paket. Proses pembuatan paket **Sederhana** menghasilkan skrip instalasi dan penghapusan instalasi, hash file, dan manifes yang diformat JSON untuk Anda. Alur kerja **Sederhana** menangani proses unggah dan pen-zip-an file yang dapat diinstal, serta membuat paket baru dan [Dokumen SSM](documents.md) terkait. Untuk informasi selengkapnya tentang platform yang didukung, lihat [Platform dan arsitektur paket yang didukung](distributor.md#what-is-a-package-platforms).

Bila Anda menggunakan metode Simple untuk membuat paket, Distributor membuat `install` dan `uninstall` skrip untuk Anda. Namun, ketika Anda membuat paket untuk pembaruan di tempat, Anda harus menyediakan konten skrip `update` Anda sendiri pada tab **Memperbarui skrip**. Saat Anda menambahkan perintah input untuk `update` skrip, Distributor sertakan skrip ini dalam paket.zip yang dibuatnya untuk Anda, bersama dengan `uninstall` skrip `install` dan.

**catatan**  
Gunakan opsi pembaruan `In-place` untuk menambahkan file baru atau yang diperbarui ke instalasi paket yang ada tanpa mengambil aplikasi terkait secara offline.

**Untuk membuat paket menggunakan alur kerja Sederhana**

1. Buka AWS Systems Manager konsol di [https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/).

1. Di panel navigasi, pilih **Distributor**.

1. Di Distributor halaman beranda, pilih **Buat paket**, lalu pilih **Sederhana**.

1. Pada halaman **Buat paket**, masukkan nama untuk paket Anda. Nama hanya dapat berisi huruf, angka, titik, tanda hubung, dan garis bawah. Nama harus cukup generik untuk diterapkan ke semua versi lampiran paket, tetapi cukup spesifik untuk mengidentifikasi tujuan paket.

1. (Opsional) Untuk **Nama versi**, masukkan nama versi. Nama versi dapat maksimal 512 karakter, dan tidak dapat berisi karakter khusus.

1. Untuk **Lokasi**, pilih bucket dengan menggunakan nama bucket dan awalan atau dengan menggunakan URL bucket.

1. Untuk **Unggah perangkat lunak**, pilih **Tambahkan perangkat lunak**, lalu pergi ke file perangkat lunak yang dapat diinstal dengan ekstensi `.rpm`, `.msi`, atau `.deb`. Jika nama file berisi spasi, pengunggahan gagal. Anda dapat mengunggah lebih dari satu file perangkat lunak dalam satu tindakan.

1. Untuk **Platform target**, verifikasikan bahwa platform sistem operasi target yang ditampilkan untuk setiap file yang dapat diinstal benar. Jika sistem operasi yang ditampilkan tidak benar, pilih sistem operasi yang benar dari daftar dropdown.

   Untuk alur kerja pembuatan paket **Sederhana**, karena Anda mengunggah setiap file yang dapat diinstal hanya sekali, langkah-langkah tambahan diperlukan untuk menginstruksikan Distributor menargetkan satu file di beberapa sistem operasi. Misalnya, jika Anda mengunggah file perangkat lunak yang dapat diinstal bernama`Logtool_v1.1.1.rpm`, Anda harus mengubah beberapa default dalam alur kerja **Simple** untuk menargetkan perangkat lunak yang sama pada versi yang didukung dari Amazon Linux dan sistem operasi. Ubuntu Server Saat menargetkan beberapa platform, lakukan salah satu hal berikut ini.
   + Gunakan alur kerja **Lanjutan** sebagai gantinya, zip setiap file yang dapat diinstal ke dalam file .zip sebelum Anda memulai, dan secara manual tulis manifest sehingga satu file yang dapat diinstal dapat ditargetkan pada beberapa versi atau platform sistem operasi. Untuk informasi selengkapnya, lihat [Membuat paket menggunakan alur kerja Advanced](#distributor-working-with-packages-create-adv).
   + Edit file manifes secara manual di alur kerja **Sederhana** sehingga file .zip Anda ditargetkan pada beberapa versi atau platform sistem operasi. Untuk informasi selengkapnya tentang cara melakukan ini, lihat akhir langkah 4 di [Langkah 2: Buat manifes paket JSON](#packages-manifest).

1. Untuk **Versi platform**, verifikasi bahwa versi platform sistem operasi yang ditampilkan adalah **\$1any**, versi rilis utama diikuti dengan wildcard (7.\$1), atau versi rilis sistem operasi yang tepat yang Anda ingin perangkat lunak Anda diterapkan padanya. Untuk informasi selengkapnya tentang menentukan versi platform sistem operasi, lihat langkah 4 di [Langkah 2: Buat manifes paket JSON](#packages-manifest).

1. Untuk **Arsitektur**, pilih arsitektur prosesor yang benar untuk setiap file yang dapat diinstal dari daftar dropdown. Untuk informasi selengkapnya tentang arsitektur prosesor yang didukung, lihat [Platform dan arsitektur paket yang didukung](distributor.md#what-is-a-package-platforms).

1. (Opsional) Perluas **Skrip**, dan tinjau skrip yang Distributor dihasilkan untuk perangkat lunak yang dapat diinstal.

1. (Opsional) Guna menyediakan skrip pembaruan untuk digunakan dengan pembaruan di tempat, perluas **Skrip**, pilih tab **Memperbarui skrip**, dan masukkan perintah skrip pembaruan Anda.

   Systems Manager tidak membuat skrip pembaruan atas nama Anda.

1. Untuk menambahkan lebih banyak file perangkat lunak yang dapat diinstal, pilih **Tambahkan perangkat lunak**. Jika tidak, lanjutkan ke langkah berikutnya.

1. (Opsional) Perluas **Manifest**, dan tinjau manifes paket JSON yang Distributor menghasilkan perangkat lunak yang dapat diinstal. Jika Anda mengubah informasi tentang perangkat lunak Anda sejak Anda memulai prosedur ini, seperti versi platform atau platform target, pilih **Buat manifes** untuk menampilkan manifes paket yang diperbarui.

   Anda dapat mengedit manifes secara manual jika Anda ingin menargetkan perangkat lunak yang dapat diinstal di lebih dari satu sistem operasi, seperti yang dijelaskan pada langkah 8. Untuk informasi selengkapnya tentang manifest, lihat [Langkah 2: Buat manifes paket JSON](#packages-manifest).

1. Pilih **Buat paket**.

Tunggu Distributor hingga selesai mengunggah perangkat lunak Anda dan membuat paket Anda. Distributormenampilkan status unggahan untuk setiap file yang dapat diinstal. Tergantung pada jumlah dan ukuran paket yang Anda tambahkan, ini bisa memakan waktu beberapa menit. DistributorSecara otomatis mengarahkan Anda ke halaman **Package details** untuk paket baru, tetapi Anda dapat memilih untuk membuka halaman ini sendiri setelah perangkat lunak diunggah. Halaman **Package details** tidak menampilkan semua informasi tentang paket Anda sampai Distributor selesai proses pembuatan paket. Untuk menghentikan proses pengunggahan dan pembuatan paket, pilih **Batalkan**.

Jika tidak Distributor dapat mengunggah file yang dapat diinstal perangkat lunak apa pun, ini akan menampilkan pesan **gagal Unggah**. Untuk mencoba lagi pengunggahan, pilih **Coba lagi pengunggahan**. Untuk informasi selengkapnya tentang cara memecahkan masalah kegagalan pembuatan paket, lihat [Pemecahan masalah AWS Systems ManagerDistributor](distributor-troubleshooting.md).

## Membuat paket menggunakan alur kerja Advanced
<a name="distributor-working-with-packages-create-adv"></a>

Di bagian ini, pelajari cara pengguna tingkat lanjut dapat membuat paket Distributor setelah mengunggah aset yang dapat diinstal yang di-zip dengan skrip penginstalan dan penghapusan instalasi, serta file manifes JSON, ke bucket Amazon S3.

Untuk membuat paket, siapkan file .zip aset yang dapat diinstal Anda, satu file .zip per platform sistem operasi. Setidaknya satu file .zip diperlukan untuk membuat sebuah paket. Selanjutnya, buatlah manifes JSON. Manifes menyertakan penunjuk ke file kode paket Anda. Ketika Anda sudah menambahkan file kode yang diperlukan ke folder atau direktori, dan manifes diisi dengan nilai-nilai yang benar, unggah paket Anda ke bucket S3.

Contoh paket, [ExamplePackage.zip](https://docs.aws.amazon.com/systems-manager/latest/userguide/samples/ExamplePackage.zip), tersedia untuk Anda unduh dari situs web kami. Contoh paket termasuk manifes JSON yang sudah selesai dan tiga file .zip.

**Topics**
+ [Langkah 1: Membuat file ZIP](#packages-zip)
+ [Langkah 2: Buat manifes paket JSON](#packages-manifest)
+ [Langkah 3: Unggah paket dan manifes ke bucket Amazon S3](#packages-upload-s3)
+ [Langkah 4: Tambahkan paket ke Distributor](#distributor-working-with-packages-add)

### Langkah 1: Membuat file ZIP
<a name="packages-zip"></a>

Dasar paket Anda setidaknya satu file .zip perangkat lunak atau aset yang dapat diinstal. Sebuah paket mencakup satu file .zip per sistem operasi yang ingin Anda dukung, kecuali satu file .zip dapat diinstal pada beberapa sistem operasi. Misalnya, versi yang didukung Red Hat Enterprise Linux dan instans Amazon Linux biasanya dapat menjalankan file executable .RPM yang sama, jadi Anda hanya perlu melampirkan satu file.zip ke paket Anda untuk mendukung kedua sistem operasi.

**File yang diperlukan**  
Item berikut diperlukan dalam setiap file .zip:
+ Sebuah **install** dan **uninstall** naskah. Windows Servernode terkelola berbasis memerlukan PowerShell skrip (skrip bernama `install.ps1` dan`uninstall.ps1`). Node terkelola berbasis Linux memerlukan skrip shell (skrip bernama dan). `install.sh` `uninstall.sh` SSM Agentmenjalankan instruksi dalam **install** dan **uninstall** skrip.

  Misalnya, skrip instalasi Anda mungkin menjalankan penginstal (seperti .rpm atau .msi), mereka dapat menyalin file, atau mungkin mengatur konfigurasi.
+ File yang dapat dieksekusi, paket penginstal (.rpm, .deb, .msi, dll.), skrip lain, atau file konfigurasi.

**File opsional**  
Item berikut adalah opsional dalam masing-masing file .zip:
+ Skrip **update**. Menyediakan skrip pembaruan memungkinkan Anda untuk menggunakan opsi `In-place update` untuk menginstal sebuah paket. Saat Anda ingin menambahkan file baru atau yang diperbarui ke instalasi paket yang ada, `In-place update` opsi tidak membuat aplikasi paket offline saat pembaruan dilakukan. Windows Servernode terkelola berbasis memerlukan PowerShell skrip (skrip bernama`update.ps1`). Node terkelola berbasis Linux memerlukan skrip shell (skrip bernama). `update.sh` SSM Agentmenjalankan instruksi dalam **update** skrip.

Untuk informasi selengkapnya tentang menginstal atau memperbarui paket, lihat [Instal atau perbarui Distributor paket](distributor-working-with-packages-deploy.md).

[Untuk contoh file.zip, termasuk sampel **install** dan **uninstall** skrip, unduh paket contoh, ExamplePackage .zip.](https://docs.aws.amazon.com/systems-manager/latest/userguide/samples/ExamplePackage.zip)

### Langkah 2: Buat manifes paket JSON
<a name="packages-manifest"></a>

Setelah Anda mempersiapkan dan men-zip file yang dapat diinstal Anda, buatlah manifes JSON. Berikut ini adalah sebuah templat. Bagian-bagian templat manifes ini dijelaskan dalam prosedur di bagian ini. Anda dapat menggunakan editor JSON untuk membuat manifes ini dalam file terpisah. Atau, Anda dapat membuat manifes di AWS Systems Manager konsol saat membuat paket.

```
{
  "schemaVersion": "2.0",
  "version": "your-version",
  "publisher": "optional-publisher-name",
  "packages": {
    "platform": {
      "platform-version": {
        "architecture": {
          "file": ".zip-file-name-1.zip"
        }
      }
    },
    "another-platform": {
      "platform-version": {
        "architecture": {
          "file": ".zip-file-name-2.zip"
        }
      }
    },
    "another-platform": {
      "platform-version": {
        "architecture": {
          "file": ".zip-file-name-3.zip"
        }
      }
    }
  },
  "files": {
    ".zip-file-name-1.zip": {
      "checksums": {
        "sha256": "checksum"
      }
    },
    ".zip-file-name-2.zip": {
      "checksums": {
        "sha256": "checksum"
      }
    }
  }
}
```

**Untuk membuat manifes paket JSON**

1. Tambahkan versi skema ke manifes Anda. Dalam rilis ini, versi skema selalu `2.0`.

   ```
   { "schemaVersion": "2.0",
   ```

1. Tambahkan versi paket yang ditetapkan pengguna ke manifes Anda. Ini juga merupakan nilai **nama Versi** yang Anda tentukan saat Anda menambahkan paket AndaDistributor. Ini menjadi bagian dari AWS Systems Manager dokumen yang Distributor dibuat ketika Anda menambahkan paket Anda. Anda juga memberikan nilai ini sebagai input dalam dokumen `AWS-ConfigureAWSPackage` untuk menginstal versi paket selain yang terbaru. Nilai `version` dapat berisi huruf, angka, garis bawah, tanda hubung, dan titik, dengan panjang maksimum 128 karakter. Kami sarankan Anda menggunakan versi paket yang dapat dibaca manusia agar lebih mudah bagi Anda dan administrator lain dalam menentukan versi paket yang tepat ketika Anda men-deploy. Berikut adalah contoh.

   ```
   "version": "1.0.1",
   ```

1. (Opsional) Tambahkan nama penerbit. Berikut adalah contoh.

   ```
   "publisher": "MyOrganization",
   ```

1. Tambahkan paket. Bagian `"packages"` menjelaskan platform, versi rilis, dan arsitektur yang didukung oleh file .zip dalam paket Anda. Untuk informasi selengkapnya, lihat [Platform dan arsitektur paket yang didukung](distributor.md#what-is-a-package-platforms).

   Itu *platform-version* bisa menjadi nilai wildcard,`_any`. Gunakan ini untuk menunjukkan bahwa file .zip mendukung setiap rilis platform. Anda juga dapat menentukan versi rilis utama diikuti dengan wildcard sehingga semua versi minor didukung, misalnya 7.\$1. Jika Anda memilih untuk menentukan *platform-version* nilai untuk versi sistem operasi tertentu, pastikan bahwa itu cocok dengan versi rilis persis dari sistem operasi AMI yang Anda targetkan. Berikut ini adalah sumber daya yang disarankan untuk mendapatkan nilai sistem operasi yang benar.
   + Pada node terkelola Windows Server berbasis, versi rilis tersedia sebagai data Windows Management Instrumentation (WMI). Anda dapat menjalankan perintah berikut dari prompt perintah untuk mendapatkan informasi versi, lalu mengurai hasilnya. `version`

     ```
     wmic OS get /format:list
     ```
   + Pada node terkelola berbasis Linux, dapatkan versi dengan memindai terlebih dahulu untuk rilis sistem operasi (perintah berikut). Cari nilai `VERSION_ID`.

     ```
     cat /etc/os-release
     ```

     Jika itu tidak mengembalikan hasil yang Anda butuhkan, jalankan perintah berikut untuk mendapatkan informasi rilis LSB dari file `/etc/lsb-release`, dan cari nilai `DISTRIB_RELEASE`.

     ```
     lsb_release -a
     ```

     Jika metode ini gagal, Anda biasanya dapat menemukan rilis berdasarkan distribusi. Misalnya, padaDebian Server, Anda dapat memindai `/etc/debian_version` file, atau padaRed Hat Enterprise Linux, `/etc/redhat-release` file.

     ```
     hostnamectl
     ```

   ```
   "packages": {
       "platform": {
         "platform-version": {
           "architecture": {
             "file": ".zip-file-name-1.zip"
           }
         }
       },
       "another-platform": {
         "platform-version": {
           "architecture": {
             "file": ".zip-file-name-2.zip"
           }
         }
       },
       "another-platform": {
         "platform-version": {
           "architecture": {
             "file": ".zip-file-name-3.zip"
           }
         }
       }
     }
   ```

   Berikut adalah contohnya. Pada contoh ini, platform sistem operasi adalah `amazon`, versi rilis yang didukung adalah `2016.09`, arsitekturnya adalah `x86_64`, dan file .zip yang mendukung platform ini adalah `test.zip`.

   ```
   {
       "amazon": {
           "2016.09": {
               "x86_64": {
                   "file": "test.zip"
               }
           }
       }
   },
   ```

   Anda dapat menambahkan nilai wildcard `_any` untuk menunjukkan bahwa paket mendukung semua versi elemen induk. Misalnya, untuk menunjukkan bahwa paket didukung pada setiap versi rilis Amazon Linux, pernyataan paket Anda harus mirip dengan berikut ini. Anda dapat menggunakan wildcard `_any` di tingkat arsitektur atau versi untuk mendukung semua versi platform, atau semua arsitektur dalam versi, atau semua versi dan semua arsitektur platform.

   ```
   {
       "amazon": {
           "_any": {
               "x86_64": {
                   "file": "test.zip"
               }
           }
       }
   },
   ```

   Contoh berikut menambahkan `_any` untuk menunjukkan bahwa paket pertama, `data1.zip`, didukung untuk semua arsitektur Amazon Linux 2016.09. Paket kedua,`data2.zip`, didukung untuk semua rilis Amazon Linux, tetapi hanya untuk node terkelola dengan `x86_64` arsitektur. Baik versi `2023.8` dan `_any` adalah entri di bawah `amazon`. Ada satu platform (Amazon Linux), tetapi versi yang didukung, arsitektur, dan file .zip terkait berbeda.

   ```
   {
       "amazon": {
           "2023.8": {
               "_any": {
                   "file": "data1.zip"
               }
           },
           "_any": {
               "x86_64": {
                   "file": "data2.zip"
               }
           }
       }
   }
   ```

   Anda dapat merujuk ke file .zip lebih dari sekali dalam bagian `"packages"` manifes, jika file.zip mendukung lebih dari satu platform. Misalnya, jika Anda memiliki file.zip yang mendukung versi Red Hat Enterprise Linux 8.x dan Amazon Linux, Anda memiliki dua entri di `"packages"` bagian yang mengarah ke file.zip yang sama, seperti yang ditunjukkan pada contoh berikut.

   ```
   {
       "amazon": {
           "2023.8.20250715 ": {
               "x86_64": {
                   "file": "test.zip"
               }
           }
       },
       "redhat": {
           "8.*": {
               "x86_64": {
                   "file": "test.zip"
               }
           }
       }
   },
   ```

1. Tambahkan daftar file .zip yang merupakan bagian dari paket ini dari langkah 4. Setiap entri file memerlukan nama file dan checksum nilai hash `sha256`. Nilai checksum dalam manifes harus sesuai dengan nilai hash `sha256` dalam aset yang di-zip untuk mencegah instalasi paket gagal.

   Untuk mendapatkan checksum yang tepat dari file yang dapat diinstal Anda, Anda dapat menjalankan perintah berikut. Di Linux, jalankan `shasum -a 256 file-name.zip` atau `openssl dgst -sha256 file-name.zip`. Di Windows, jalankan `Get-FileHash -Path path-to-.zip-file` cmdlet di. [PowerShell](https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.utility/get-filehash?view=powershell-6)

   Bagian `"files"` manifes termasuk satu referensi ke masing-masing file .zip dalam paket Anda.

   ```
   "files": {
           "test-agent-x86.deb.zip": {
               "checksums": {
                   "sha256": "EXAMPLE2706223c7616ca9fb28863a233b38e5a23a8c326bb4ae241dcEXAMPLE"
               }
           },
           "test-agent-x86_64.deb.zip": {
               "checksums": {
                   "sha256": "EXAMPLE572a745844618c491045f25ee6aae8a66307ea9bff0e9d1052EXAMPLE"
               }
           },
           "test-agent-x86_64.nano.zip": {
               "checksums": {
                   "sha256": "EXAMPLE63ccb86e830b63dfef46995af6b32b3c52ce72241b5e80c995EXAMPLE"
               }
           },
           "test-agent-rhel8-x86.nano.zip": {
               "checksums": {
                   "sha256": "EXAMPLE13df60aa3219bf117638167e5bae0a55467e947a363fff0a51EXAMPLE"
               }
           },
           "test-agent-x86.msi.zip": {
               "checksums": {
                   "sha256": "EXAMPLE12a4abb10315aa6b8a7384cc9b5ca8ad8e9ced8ef1bf0e5478EXAMPLE"
               }
           },
           "test-agent-x86_64.msi.zip": {
               "checksums": {
                   "sha256": "EXAMPLE63ccb86e830b63dfef46995af6b32b3c52ce72241b5e80c995EXAMPLE"
               }
           },
           "test-agent-rhel8-x86.rpm.zip": {
               "checksums": {
                   "sha256": "EXAMPLE13df60aa3219bf117638167e5bae0a55467e947a363fff0a51EXAMPLE"
               }
           }
       }
   ```

1. Setelah Anda menambahkan informasi paket Anda, simpan dan tutup file manifes.

Berikut ini adalah contoh manifes yang telah selesai. Pada contoh ini, Anda memiliki file .zip, `NewPackage_LINUX.zip`, yang mendukung lebih dari satu platform, tetapi dirujuk dalam bagian `"files"` hanya sekali.

```
{
    "schemaVersion": "2.0",
    "version": "1.7.1",
    "publisher": "Amazon Web Services",
    "packages": {
        "windows": {
            "_any": {
                "x86_64": {
                    "file": "NewPackage_WINDOWS.zip"
                }
            }
        },
        "amazon": {
            "_any": {
                "x86_64": {
                    "file": "NewPackage_LINUX.zip"
                }
            }
        },
        "ubuntu": {
            "_any": {
                "x86_64": {
                    "file": "NewPackage_LINUX.zip"
                }
            }
        }
    },
    "files": {
        "NewPackage_WINDOWS.zip": {
            "checksums": {
                "sha256": "EXAMPLEc2c706013cf8c68163459678f7f6daa9489cd3f91d52799331EXAMPLE"
            }
        },
        "NewPackage_LINUX.zip": {
            "checksums": {
                "sha256": "EXAMPLE2b8b9ed71e86f39f5946e837df0d38aacdd38955b4b18ffa6fEXAMPLE"
            }
        }
    }
}
```

#### Contoh paket
<a name="package-manifest-examples"></a>

Contoh paket, [ExamplePackage.zip](https://docs.aws.amazon.com/systems-manager/latest/userguide/samples/ExamplePackage.zip), tersedia untuk Anda unduh dari situs web kami. Contoh paket termasuk manifes JSON yang telah selesai dan tiga file .zip.

### Langkah 3: Unggah paket dan manifes ke bucket Amazon S3
<a name="packages-upload-s3"></a>

Siapkan paket Anda dengan menyalin atau memindahkan semua file .zip ke dalam folder atau direktori. Sebuah paket yang valid memerlukan manifes yang Anda buat di [Langkah 2: Buat manifes paket JSON](#packages-manifest) dan semua file .zip yang diidentifikasi dalam daftar file manifes.

**Untuk mengunggah paket dan manifes ke Amazon S3**

1. Salin atau pindahkan semua file arsip .zip yang Anda tentukan dalam manifes ke folder atau direktori. Jangan men-zip folder atau direktori tempat Anda memindahkan file arsip .zip dan file manifes Anda.

1. Buat bucket atau pilih bucket yang ada. Untuk informasi selengkapnya, lihat [Membuat Bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/CreatingABucket.html) di *Panduan Memulai Amazon Simple Storage Service*. Untuk informasi selengkapnya tentang cara menjalankan AWS CLI perintah untuk membuat bucket, lihat [https://docs.aws.amazon.com/cli/latest/reference/s3/mb.html](https://docs.aws.amazon.com/cli/latest/reference/s3/mb.html)di *AWS CLI Command Reference*.

1. Unggah folder atau direktori ke bucket. Untuk instruksi, kunjungi [Menambah Objek ke Bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/PuttingAnObjectInABucket.html) dalam *Panduan Memulai Amazon Simple Storage Service*. Jika Anda berencana untuk menempelkan manifes JSON Anda ke AWS Systems Manager konsol, jangan unggah manifes. Untuk informasi selengkapnya tentang cara menjalankan AWS CLI perintah untuk mengunggah file ke bucket, lihat [https://docs.aws.amazon.com/cli/latest/reference/s3/mv.html](https://docs.aws.amazon.com/cli/latest/reference/s3/mv.html)di *AWS CLI Command Reference*.

1. Di halaman utama bucket, pilih folder atau direktori yang Anda unggah. Jika Anda mengunggah file Anda ke subfolder dalam bucket, pastikan untuk mencatat subfolder (juga dikenal sebagai *prefiks*). Anda memerlukan awalan untuk menambahkan paket Anda. Distributor

### Langkah 4: Tambahkan paket ke Distributor
<a name="distributor-working-with-packages-add"></a>

Anda dapat menggunakan AWS Systems Manager konsol, alat baris AWS perintah (AWS CLI dan Alat AWS untuk PowerShell), atau AWS SDKs untuk menambahkan paket baru keDistributor. Saat menambahkan sebuah paket, Anda menambahkan [Dokumen SSM](documents.md) baru. Dokumen ini memungkinkan Anda untuk menyebarkan paket ke node terkelola.

**Topics**
+ [Tambahkan paket menggunakan konsol](#create-pkg-console)
+ [Tambahkan paket menggunakan AWS CLI](#create-pkg-cli)

#### Tambahkan paket menggunakan konsol
<a name="create-pkg-console"></a>

Anda dapat menggunakan AWS Systems Manager konsol untuk membuat paket. Siapkan nama bucket tempat Anda mengunggah paket Anda di [Langkah 3: Unggah paket dan manifes ke bucket Amazon S3](#packages-upload-s3).

**Untuk menambahkan paket ke Distributor (konsol)**

1. Buka AWS Systems Manager konsol di [https://console.aws.amazon.com/systems-manager/](https://console.aws.amazon.com/systems-manager/).

1. Di panel navigasi, pilih **Distributor**.

1. Di Distributor halaman beranda, pilih **Buat paket**, lalu pilih **Advanced**.

1. Pada halaman **Buat paket**, masukkan nama untuk paket Anda. Nama hanya dapat berisi huruf, angka, titik, tanda hubung, dan garis bawah. Nama harus cukup generik untuk diterapkan ke semua versi lampiran paket, tetapi cukup spesifik untuk mengidentifikasi tujuan paket.

1. Untuk **Nama versi**, masukkan nilai yang tepat dari entri `version` dalam file manifes Anda.

1. Untuk **Nama bucket S3**, pilih nama bucket tempat Anda mengunggah file .zip dan manifes dalam [Langkah 3: Unggah paket dan manifes ke bucket Amazon S3](#packages-upload-s3).

1. Untuk **prefiks kunci S3**, masukkan subfolder bucket tempat file .zip dan manifes disimpan.

1. Untuk **Manifes**, pilih **Ekstrak dari paket** untuk menggunakan manifes yang telah Anda unggah ke bucket Amazon S3 dengan file .zip Anda.

   (Opsional) Jika Anda tidak mengunggah manifest JSON Anda ke bucket S3 tempat Anda menyimpan file .zip Anda, pilih **Manifes baru**. Anda dapat menulis atau menempelkan seluruh manifes di kolom editor JSON. Untuk informasi selengkapnya tentang cara membuat manifes JSON, lihat[Langkah 2: Buat manifes paket JSON](#packages-manifest).

1. Setelah Anda selesai dengan manifes, pilih **Buat paket**.

1. Tunggu Distributor untuk membuat paket Anda dari file.zip dan manifes Anda. Tergantung pada jumlah dan ukuran paket yang Anda tambahkan, ini bisa memakan waktu beberapa menit. DistributorSecara otomatis mengarahkan Anda ke halaman **Package details** untuk paket baru, tetapi Anda dapat memilih untuk membuka halaman ini sendiri setelah perangkat lunak diunggah. Halaman **Package details** tidak menampilkan semua informasi tentang paket Anda sampai Distributor selesai proses pembuatan paket. Untuk menghentikan proses pengunggahan dan pembuatan paket, pilih **Batalkan**.

#### Tambahkan paket menggunakan AWS CLI
<a name="create-pkg-cli"></a>

Anda dapat menggunakan AWS CLI untuk membuat paket. Siapkan URL dari bucket tempat Anda mengunggah paket Anda di [Langkah 3: Unggah paket dan manifes ke bucket Amazon S3](#packages-upload-s3).

**Untuk menambahkan paket ke Amazon S3 menggunakan AWS CLI**

1. Untuk menggunakan file AWS CLI untuk membuat paket, jalankan perintah berikut, ganti *package-name* dengan nama paket Anda dan *path-to-manifest-file* dengan jalur file untuk file manifes JSON Anda. amzn-s3-demo-bucket adalah URL bucket Amazon S3 tempat seluruh paket disimpan. Ketika Anda menjalankan **create-document** perintah diDistributor, Anda menentukan `Package` nilai untuk`--document-type`.

   Jika Anda tidak menambahkan file manifes Anda ke bucket Amazon S3, nilai parameter `--content` adalah jalur file ke file manifes JSON.

   ```
   aws ssm create-document \
       --name "package-name" \
       --content file://path-to-manifest-file \
       --attachments Key="SourceUrl",Values="amzn-s3-demo-bucket" \
       --version-name version-value-from-manifest \
       --document-type Package
   ```

   Berikut adalah contohnya.

   ```
   aws ssm create-document \
       --name "ExamplePackage" \
       --content file://path-to-manifest-file \
       --attachments Key="SourceUrl",Values="https://s3.amazonaws.com/amzn-s3-demo-bucket/ExamplePackage" \
       --version-name 1.0.1 \
       --document-type Package
   ```

1. Verifikasi bahwa paket Anda telah ditambahkan dan tampilkan manifes paket dengan menjalankan perintah berikut, ganti *package-name* dengan nama paket Anda. Untuk mendapatkan versi tertentu dari dokumen (tidak sama dengan versi paket), Anda dapat menambahkan parameter `--document-version`.

   ```
   aws ssm get-document \
       --name "package-name"
   ```

Untuk informasi tentang pilihan lain yang dapat Anda gunakan dengan perintah **create-document**, lihat [https://docs.aws.amazon.com/cli/latest/reference/ssm/create-document.html](https://docs.aws.amazon.com/cli/latest/reference/ssm/create-document.html) di bagian AWS Systems Manager *Referensi Perintah AWS CLI *. Untuk informasi tentang pilihan lain yang dapat Anda gunakan dengan perintah **get-document**, lihat [https://docs.aws.amazon.com/cli/latest/reference/ssm/get-document.html](https://docs.aws.amazon.com/cli/latest/reference/ssm/get-document.html).