

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

# Instal Add-on SageMaker AI Spaces
<a name="operator-install"></a>

## Dependensi
<a name="dependencies"></a>

**Pengaya Agen Identitas Amazon EKS Pod**
+ Diperlukan bagi operator untuk mendapatkan AWS kredensyal
+ **Biasanya pra-instal** pada sebagian besar kluster EKS
+ Instalasi: Melalui add-on EKS

**Manajer sertifikat**
+ Diperlukan untuk manajemen sertifikat TLS
+ **Pra-instal** jika menggunakan HyperPod quick cluster create
+ Instalasi: Melalui add-on EKS

**Pengemudi EBS CSI**
+ Diperlukan untuk penyimpanan persisten Ruang (volume EBS)
+ **Diinstal secara otomatis** saat menggunakan SageMaker konsol untuk menginstal
+ Memerlukan peran IAM `AmazonEBSCSIDriverPolicy` dengan\$1izin HyperPod khusus
+ Instalasi: Melalui add-on EKS. Namun, pastikan ikuti panduan untuk menginstal izin tambahan yang diperlukan untuk HyperPod. 
+ Referensi: [Menggunakan driver Amazon EBS CSI aktif HyperPod](https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-hyperpod-eks-ebs.html)

## Dependensi tambahan untuk Akses WebUI
<a name="-additional-dependencies"></a>

**AWS Pengontrol Load Balancer**
+ **Pra-instal** jika menggunakan HyperPod quick cluster create
+ Instalasi: Melalui Helm
+ Panduan instalasi manual: [Memasang AWS Load Balancer Controller](https://docs.aws.amazon.com/eks/latest/userguide/lbc-helm.html)

**DNS Eksternal**
+ Diperlukan saat menggunakan domain khusus untuk akses WebUI
+ Mengelola catatan DNS Route53 secara otomatis
+ Memerlukan peran IAM dengan izin Route53
+ Instalasi: Melalui add-on EKS

## Penginstalan
<a name="installation"></a>

Sebelum Anda mulai, pastikan Anda memiliki:
+  SageMaker HyperPod Cluster aktif dengan setidaknya satu node pekerja yang menjalankan Kubernetes versi 1.30 atau yang lebih baru
+ Setidaknya satu node pekerja dengan tipe instans minimum (XX vCPU, memori YY GiB)

### Menginstal add-on Amazon SageMaker Spaces
<a name="space-add-on"></a>

Anda dapat menginstal add-on SageMaker Spaces menggunakan instalasi cepat untuk pengaturan default atau instalasi khusus untuk konfigurasi lanjutan.

#### Instal cepat
<a name="quick-install"></a>

1. Buka SageMaker konsol Amazon di [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/).

1. Pilih klaster Anda dari daftar cluster.

1. Pada tab IDE dan Notebook, cari Amazon SageMaker Spaces, lalu pilih Instal cepat.

Instal cepat secara otomatis:
+ Membuat peran IAM yang diperlukan untuk add-on
+ Mengaktifkan mode akses jarak jauh dengan peran IAM yang diperlukan untuk Systems Manager
+ Menginstal add-on dan mengonfigurasi asosiasi identitas pod

#### Instal kustom
<a name="custom-install"></a>

1. Buka SageMaker konsol Amazon di [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/).

1. Pilih klaster Anda dari daftar cluster.

1. Pada tab IDE dan Notebook, cari Amazon SageMaker Spaces, lalu pilih Instal kustom.

1. Konfigurasikan opsi berikut:

   **Peran IAM dibutuhkan oleh add-on**
   + Pilih apakah akan membuat peran IAM baru dengan izin yang disarankan atau menggunakan yang sudah ada dengan izin yang diperlukan (Lihat bagian Pengaturan Izin Admin di atas)

   **Konfigurasi akses jarak jauh**
   + Aktifkan untuk memungkinkan pengguna terhubung ke spasi dari Visual Studio Code lokal menggunakan AWS Systems Manager
   + Untuk peran instans terkelola SSM:
     + **Buat peran baru** — Add-on membuat dan mengelola peran dengan izin Systems Manager yang diperlukan
     + **Menggunakan peran yang ada** — Pilih peran yang telah dikonfigurasi sebelumnya dengan izin Systems Manager yang diperlukan
   + Pastikan Peran Eksekusi Add-on Space memiliki PassRole izin untuk peran instans terkelola SSM
**catatan**  
Mengaktifkan akses jarak jauh akan mengaktifkan tingkat instans lanjutan AWS Systems Manager untuk biaya tambahan per instans. Untuk informasi harga, lihat harga Systems Manager.

   **Konfigurasi akses browser web**
   + Aktifkan untuk memungkinkan pengguna mengakses spasi melalui browser web menggunakan Route 53 DNS dan sertifikat SSL
   + **Prasyarat: Instal Load** Balancer Controller sebelum AWS mengaktifkan akses browser
   + **Route 53 zona host:** Pilih zona host yang ada untuk domain atau subdomain yang Anda miliki. Domain atau subdomain harus terdaftar dan di bawah kendali Anda untuk mengaktifkan manajemen DNS dan validasi sertifikat SSL.

     Untuk detail selengkapnya tentang pendaftaran domain, lihat [Mendaftarkan domain baru](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/domain-register.html#domain-register-procedure-section) di Panduan Pengembang Route 53.
   + **Subdomain:** Masukkan awalan subdomain (hanya alfanumerik dan tanda hubung, maksimum 63 karakter)
   + **Sertifikat SSL:** Pilih sertifikat SSL yang ada dari Certificate Manager AWS . Sertifikat harus valid dan mencakup subdomain Anda (misalnya, subdomain.domain.com) dan subdomain wildcard (mis., \$1.subdomain.domain.com) untuk mendukung akses ruang individual. URLs
   +  **Kunci penandatanganan token: Pilih kunci** asimetris AWS KMS untuk penandatanganan token JWT. Kuncinya digunakan untuk mengenkripsi token otentikasi untuk akses WebUI yang aman. Anda dapat membuat kunci asimetris baru di KMS atau memilih yang sudah ada yang dapat diakses akun Anda.
**catatan**  
Biaya Standard Route 53 berlaku untuk zona yang dihosting dan kueri DNS. Untuk informasi harga, lihat harga Route 53.

#### Instalasi EKS Addon - Jupyter K8s dengan WebUI
<a name="webui-install"></a>

##### File Konfigurasi
<a name="configure-file"></a>

Buat`addon-config.yaml`:

```
jupyter-k8s:
  workspacePodWatching:
    enable: true

jupyter-k8s-aws-hyperpod:
  clusterWebUI:
    enabled: true
    domain: "<DOMAIN_NAME>"
    awsCertificateArn: "<ACM_CERTIFICATE_ARN>"
    kmsEncryptionContext:
      enabled: true
    traefik:
      shouldInstall: true
    auth:
      kmsKeyId: "<KMS_KEY_ARN>"
```

**Ganti placeholder berikut:**
+ <DOMAIN\$1NAME>: Nama domain Anda (mis.,`jupyter.example.com`)
+ <ACM\$1CERTIFICATE\$1ARN>: Sertifikat ACM ARN Anda (mis., `arn:aws:acm:us-west-2:111122223333:certificate/12345678-1234-1234-1234-123456789012` 
+ <KMS\$1KEY\$1ARN>: ARN kunci KMS Anda (mis., `arn:aws:kms:us-west-2:111122223333:key/12345678-1234-1234-1234-123456789012`

##### Instalasi melalui AWS CLI
<a name="install-via-cli"></a>

```
aws eks create-addon \
  --cluster-name <CLUSTER_NAME> \
  --addon-name amazon-sagemaker-spaces \
  --configuration-values file://addon-config.yaml \
  --resolve-conflicts OVERWRITE \
  --region <AWS_REGION>
```

**Untuk memperbarui addon yang ada:**

```
aws eks update-addon \
  --cluster-name <CLUSTER_NAME> \
  --addon-name amazon-sagemaker-spaces \
  --configuration-values file://addon-config.yaml \
  --resolve-conflicts OVERWRITE \
  --region <AWS_REGION>
```

##### Instalasi melalui Konsol Manajemen AWS
<a name="install-via-console"></a>

1. Buka **Konsol EKS** → Pilih klaster Anda

1. Klik tab **Pengaya** → **Tambahkan baru**

1. Pilih addon **SageMaker Spaces**

1. Rekatkan konfigurasi YAMAL di atas dalam pengaturan konfigurasi **Opsional**

1. Klik **Berikutnya**, lalu tinjau pengaturan addon

1. Klik **Buat**

##### Verifikasi Instalasi
<a name="install-verify"></a>

```
# Check addon status
aws eks describe-addon \
  --cluster-name <CLUSTER_NAME> \
  --addon-name amazon-sagemaker-spaces \
  --region <AWS_REGION>
```

##### Menyesuaikan Atribut ALB
<a name="customize-alb"></a>

Secara default, addon membuat penyeimbang beban publik untuk digunakan dengan UI web. Anda dapat menyesuaikan atribut penyeimbang beban menggunakan properti addon EKS.

Untuk membuat ALB internal, atur skema ke`internal`:

```
jupyter-k8s-aws-hyperpod:
  clusterWebUI:
    enabled: true
    domain: "<DOMAIN_NAME>"
    awsCertificateArn: "<ACM_CERTIFICATE_ARN>"
    alb:
      scheme: "internal"  # Default is "internet-facing"
```

Anda juga dapat menggunakan `alb.annotations` bidang untuk menyesuaikan pengaturan ALB:

```
jupyter-k8s-aws-hyperpod:
  clusterWebUI:
    enabled: true
    domain: "<DOMAIN_NAME>"
    awsCertificateArn: "<ACM_CERTIFICATE_ARN>"
    alb:
      scheme: "internal"
      annotations:
        alb.ingress.kubernetes.io/security-groups: "<SECURITY_GROUP_ID>"
        alb.ingress.kubernetes.io/subnets: "<SUBNET_ID_1>,<SUBNET_ID_2>"
        alb.ingress.kubernetes.io/load-balancer-attributes: "idle_timeout.timeout_seconds=60"
```

**Anotasi ALB umum:**
+ `alb.ingress.kubernetes.io/security-groups`: Tentukan grup keamanan untuk ALB
+ `alb.ingress.kubernetes.io/subnets`: Tentukan subnet untuk ALB
+ `alb.ingress.kubernetes.io/load-balancer-attributes`: Setel atribut ALB (batas waktu idle, log akses, dll.)

Lihat [dokumentasi AWS Load Balancer Controller](https://kubernetes-sigs.github.io/aws-load-balancer-controller/latest/guide/ingress/annotations/) untuk semua anotasi yang tersedia.

### Tingkatkan/versi add-on
<a name="upgrade-add-on"></a>

```
aws eks update-addon \
  --cluster-name <CLUSTER_NAME> \
  --addon-name amazon-sagemaker-spaces \
  --configuration-values file://addon-config.yaml \
  --resolve-conflicts OVERWRITE \
  --region <AWS_REGION>
```