

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

# Konfigurasi siklus hidup dalam Amazon Studio SageMaker
<a name="studio-lifecycle-configurations"></a>

Konfigurasi siklus hidup (LCCs) adalah skrip yang dapat digunakan administrator dan pengguna untuk mengotomatiskan penyesuaian aplikasi berikut dalam lingkungan Amazon Studio Anda: SageMaker 
+ Amazon SageMaker AI JupyterLab
+ Editor Kode, berdasarkan Kode-OSS, Kode Visual Studio - Sumber Terbuka
+ Studio Klasik
+ Contoh buku catatan

Menyesuaikan aplikasi Anda meliputi:
+ Menginstal paket khusus
+ Mengonfigurasi ekstensi
+ Memuat kumpulan data
+ Menyiapkan repositori kode sumber

Pengguna membuat dan melampirkan konfigurasi siklus hidup bawaan ke profil pengguna mereka sendiri. Administrator membuat dan melampirkan konfigurasi siklus hidup default atau bawaan di tingkat domain, ruang, atau profil pengguna.

**penting**  
Amazon SageMaker Studio pertama-tama menjalankan konfigurasi siklus hidup bawaan dan kemudian menjalankan LCC default. Amazon SageMaker AI tidak akan menyelesaikan konflik paket antara pengguna dan administrator LCCs. Misalnya, jika LCC bawaan diinstal `python3.11` dan LCC default diinstal, Studio menginstal`python3.12`. `python3.12` 

# Membuat dan melampirkan konfigurasi siklus hidup
<a name="studio-lifecycle-configurations-create"></a>

Anda dapat membuat dan melampirkan konfigurasi siklus hidup menggunakan salah satu atau. Konsol Manajemen AWS AWS Command Line Interface

**Topics**
+ [Membuat dan melampirkan konfigurasi siklus hidup ()AWS CLI](#studio-lifecycle-configurations-create-cli)
+ [Membuat dan melampirkan konfigurasi siklus hidup (konsol)](#studio-lifecycle-configurations-create-console)

## Membuat dan melampirkan konfigurasi siklus hidup ()AWS CLI
<a name="studio-lifecycle-configurations-create-cli"></a>

**penting**  
Sebelum menggunakan fungsi , pastikan untuk melengkapi prasyarat berikut:   
Perbarui AWS CLI dengan mengikuti langkah-langkah dalam [Menginstal AWS CLI Versi saat ini](https://docs.aws.amazon.com/cli/latest/userguide/install-cliv1.html#install-tool-bundled).
Dari mesin lokal Anda, jalankan `aws configure` dan berikan AWS kredensyal Anda. Untuk informasi tentang AWS kredensyal, lihat [Memahami dan mendapatkan kredensyal Anda AWS](https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html). 
Onboard ke domain Amazon SageMaker AI. Untuk informasi konseptual, lihat [Ikhtisar domain Amazon SageMaker AI](gs-studio-onboard.md). Untuk panduan memulai cepat, lihat[Gunakan pengaturan cepat untuk Amazon SageMaker AI](onboard-quick-start.md).

Prosedur berikut menunjukkan cara membuat skrip konfigurasi siklus hidup yang mencetak `Hello World` dalam Editor Kode atau. JupyterLab

**catatan**  
Setiap skrip dapat memiliki hingga **16.384** karakter.

1. Dari mesin lokal Anda, buat file bernama `my-script.sh` dengan konten berikut:

   ```
   #!/bin/bash
   set -eux
   echo 'Hello World!'
   ```

1. Gunakan yang berikut ini untuk mengonversi `my-script.sh` file Anda menjadi format base64. Persyaratan ini mencegah kesalahan yang terjadi dari spasi dan pengkodean jeda baris.

   ```
   LCC_CONTENT=`openssl base64 -A -in my-script.sh`
   ```

1. Buat konfigurasi siklus hidup untuk digunakan dengan Studio. Perintah berikut membuat konfigurasi siklus hidup yang berjalan saat Anda meluncurkan aplikasi terkait`JupyterLab`:

   ```
   aws sagemaker create-studio-lifecycle-config \
   --region region \
   --studio-lifecycle-config-name my-lcc \
   --studio-lifecycle-config-content $LCC_CONTENT \
   --studio-lifecycle-config-app-type application-type
   ```

   Untuk `studio-lifecycle-config-app-type`, tentukan salah satu, *CodeEditor* atau *JupyterLab*.
**catatan**  
ARN dari konfigurasi siklus hidup yang baru dibuat yang dikembalikan. ARN ini diperlukan untuk melampirkan konfigurasi siklus hidup ke aplikasi Anda.

Untuk memastikan bahwa lingkungan disesuaikan dengan benar, pengguna dan administrator menggunakan perintah yang berbeda untuk melampirkan konfigurasi siklus hidup.

### Lampirkan konfigurasi siklus hidup default (administrator)
<a name="studio-lifecycle-configurations-attach-cli-administrator"></a>

Untuk melampirkan konfigurasi siklus hidup, Anda harus memperbarui `UserSettings` untuk domain atau profil pengguna Anda. Skrip konfigurasi siklus hidup yang terkait pada tingkat domain diwarisi oleh semua pengguna. Namun, skrip yang terkait pada tingkat profil pengguna dicakup oleh pengguna tertentu. 

Anda dapat membuat profil pengguna, domain, atau ruang baru dengan konfigurasi siklus hidup yang dilampirkan menggunakan perintah berikut:
+ [create-user-profile](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/sagemaker/create-user-profile.html)
+ [buat-domain](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/sagemaker/create-domain.html)
+ [buat-ruang](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/sagemaker/create-space.html)

Perintah berikut membuat profil pengguna dengan konfigurasi siklus hidup untuk aplikasi. JupyterLab Tambahkan ARN konfigurasi siklus hidup dari langkah sebelumnya ke pengguna. `JupyterLabAppSettings` Anda dapat menambahkan beberapa konfigurasi siklus hidup secara bersamaan dengan meneruskan daftarnya. Ketika pengguna meluncurkan JupyterLab aplikasi dengan AWS CLI, mereka dapat menentukan konfigurasi siklus hidup alih-alih menggunakan konfigurasi default. Konfigurasi siklus hidup yang dilewati pengguna harus termasuk dalam daftar konfigurasi siklus hidup. `JupyterLabAppSettings`

```
# Create a new UserProfile
aws sagemaker create-user-profile --domain-id domain-id \
--user-profile-name user-profile-name \
--region region \
--user-settings '{
"JupyterLabAppSettings": {
  "LifecycleConfigArns":
    [lifecycle-configuration-arn-list]
  }
}'
```

Perintah berikut membuat profil pengguna dengan konfigurasi siklus hidup untuk aplikasi Editor Kode. Tambahkan ARN konfigurasi siklus hidup dari langkah sebelumnya ke pengguna. `CodeEditorAppSettings` Anda dapat menambahkan beberapa konfigurasi siklus hidup secara bersamaan dengan meneruskan daftarnya. Ketika pengguna meluncurkan aplikasi Editor Kode dengan AWS CLI, mereka dapat menentukan konfigurasi siklus hidup alih-alih menggunakan konfigurasi default. Konfigurasi siklus hidup yang dilewati pengguna harus termasuk dalam daftar konfigurasi siklus hidup. `CodeEditorAppSettings`

```
# Create a new UserProfile
aws sagemaker create-user-profile --domain-id domain-id \
--user-profile-name user-profile-name \
--region region \
--user-settings '{
"CodeEditorAppSettings": {
  "LifecycleConfigArns":
    [lifecycle-configuration-arn-list]
  }
}'
```

### Lampirkan konfigurasi siklus hidup bawaan (pengguna)
<a name="studio-lifecycle-configurations-attach-cli-user"></a>

Untuk melampirkan konfigurasi siklus hidup, Anda harus memperbarui `UserSettings` untuk profil pengguna Anda.

Perintah berikut membuat profil pengguna dengan konfigurasi siklus hidup untuk aplikasi. JupyterLab Tambahkan ARN konfigurasi siklus hidup dari langkah sebelumnya ke profil pengguna Anda. `JupyterLabAppSettings`

```
# Update a UserProfile
aws sagemaker update-user-profile --domain-id domain-id \
--user-profile-name user-profile-name \
--region region \
--user-settings '{
"JupyterLabAppSettings": {
  "BuiltInLifecycleConfigArn":"lifecycle-configuration-arn"
  }
}'
```

Perintah berikut membuat profil pengguna dengan konfigurasi siklus hidup untuk aplikasi Editor Kode. Tambahkan ARN konfigurasi siklus hidup dari langkah sebelumnya ke profil pengguna Anda. `CodeEditorAppSettings` Konfigurasi siklus hidup yang dilewati pengguna harus termasuk dalam daftar konfigurasi siklus hidup. `CodeEditorAppSettings`

```
# Update a UserProfile
aws sagemaker update-user-profile --domain-id domain-id \
--user-profile-name user-profile-name \
--region region \
--user-settings '{
"CodeEditorAppSettings": {
  "BuiltInLifecycleConfigArn":"lifecycle-configuration-arn"
  }
}'
```

## Membuat dan melampirkan konfigurasi siklus hidup (konsol)
<a name="studio-lifecycle-configurations-create-console"></a>

Untuk membuat dan melampirkan konfigurasi siklus hidup di Konsol Manajemen AWS, navigasikan ke [konsol Amazon SageMaker AI](https://console.aws.amazon.com/sagemaker) dan pilih **Konfigurasi Siklus Hidup** di navigasi sebelah kiri. Konsol akan memandu Anda melalui proses pembuatan konfigurasi siklus hidup.

# Debug konfigurasi siklus hidup
<a name="studio-lifecycle-configurations-debug"></a>

Topik berikut menunjukkan cara mendapatkan informasi tentang dan men-debug konfigurasi siklus hidup Anda.

**Topics**
+ [Verifikasi proses konfigurasi siklus hidup dari Log CloudWatch](#studio-lifecycle-configurations-debug-logs)
+ [Batas waktu konfigurasi siklus hidup](studio-lifecycle-configurations-debug-timeout.md)

## Verifikasi proses konfigurasi siklus hidup dari Log CloudWatch
<a name="studio-lifecycle-configurations-debug-logs"></a>

Konfigurasi siklus hidup hanya log dan. `STDOUT` `STDERR`

`STDOUT`adalah output default untuk skrip bash. Anda dapat menulis ke `STDERR` dengan menambahkan `>&2` ke akhir perintah bash. Misalnya, `echo 'hello'>&2`. 

Log untuk konfigurasi siklus hidup Anda dipublikasikan ke Anda menggunakan Akun AWS Amazon. CloudWatch Log ini dapat ditemukan di aliran `/aws/sagemaker/studio` log di CloudWatch konsol.

1. Buka CloudWatch konsol di [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/).

1. Pilih **Log** dari panel navigasi kiri. Dari menu tarik-turun, pilih Grup **log**.

1. Pada halaman **Grup log**, cari`aws/sagemaker/studio`. 

1. Pilih grup log .

1. Pada halaman **Detail grup log**, pilih tab **Aliran log**.

1. Untuk menemukan log untuk ruang dan aplikasi tertentu, cari aliran log menggunakan format berikut:

   ```
   domain-id/space-name/app-type/default/LifecycleConfigOnStart
   ```

   Misalnya, untuk menemukan log konfigurasi siklus hidup untuk ID domain, nama spasi `d-m85lcu8vbqmz``i-sonic-js`, dan jenis aplikasi`JupyterLab`, gunakan string pencarian berikut:

   ```
   d-m85lcu8vbqmz/i-sonic-js/JupyterLab/default/LifecycleConfigOnStart
   ```

1. Untuk melihat log eksekusi skrip, pilih aliran log yang ditambahkan. `LifecycleConfigOnStart`

# Batas waktu konfigurasi siklus hidup
<a name="studio-lifecycle-configurations-debug-timeout"></a>

Ada batasan batas waktu konfigurasi siklus hidup 5 menit. Jika skrip konfigurasi siklus hidup membutuhkan waktu lebih dari 5 menit untuk dijalankan, Anda mendapatkan kesalahan.

Untuk mengatasi kesalahan ini, pastikan skrip konfigurasi siklus hidup Anda selesai dalam waktu kurang dari 5 menit. 

Untuk membantu mengurangi runtime skrip, coba yang berikut ini:
+ Kurangi langkah yang tidak perlu. Misalnya, batasi lingkungan conda mana untuk menginstal paket besar.
+ Jalankan tugas dalam proses paralel.
+ Gunakan perintah nohup dalam skrip Anda untuk memastikan bahwa sinyal hangup diabaikan sehingga skrip berjalan tanpa henti.