

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

# Operator SageMaker AI Lama untuk Kubernetes
<a name="kubernetes-sagemaker-operators-end-of-support"></a>

Bagian ini didasarkan pada versi asli [Operator SageMaker AI untuk Kubernetes](https://github.com/aws/amazon-sagemaker-operator-for-k8s).

**penting**  
Kami menghentikan pengembangan dan dukungan teknis dari versi asli [ SageMaker Operator untuk Kubernetes](https://github.com/aws/amazon-sagemaker-operator-for-k8s/tree/master).  
Jika saat ini Anda menggunakan [ SageMaker Operator untuk Kubernetes versi `v1.2.2` atau di bawah ini, kami sarankan untuk](https://github.com/aws/amazon-sagemaker-operator-for-k8s/tree/master) memigrasikan sumber daya Anda ke [pengontrol layanan ACK](https://github.com/aws-controllers-k8s/sagemaker-controller) untuk Amazon. SageMaker Pengontrol layanan ACK adalah generasi baru SageMaker Operator untuk Kubernetes berdasarkan [AWS Controller for Kubernetes](https://aws-controllers-k8s.github.io/community/) (ACK).  
Untuk informasi tentang langkah-langkah migrasi, lihat[Migrasikan sumber daya ke Operator terbaru](kubernetes-sagemaker-operators-migrate.md).  
Untuk jawaban atas pertanyaan umum di akhir dukungan versi asli SageMaker Operator untuk Kubernetes, lihat [Mengumumkan Akhir Dukungan Versi Asli Operator SageMaker AI untuk Kubernetes](kubernetes-sagemaker-operators-eos-announcement.md)

**Topics**
+ [Instal Operator SageMaker AI untuk Kubernetes](#kubernetes-sagemaker-operators-eos-install)
+ [Gunakan Pekerjaan Amazon SageMaker AI](kubernetes-sagemaker-jobs.md)
+ [Migrasikan sumber daya ke Operator terbaru](kubernetes-sagemaker-operators-migrate.md)
+ [Mengumumkan Akhir Dukungan Versi Asli Operator SageMaker AI untuk Kubernetes](kubernetes-sagemaker-operators-eos-announcement.md)

## Instal Operator SageMaker AI untuk Kubernetes
<a name="kubernetes-sagemaker-operators-eos-install"></a>

Gunakan langkah-langkah berikut untuk menginstal dan menggunakan Operator SageMaker AI untuk Kubernetes untuk melatih, menyetel, dan menerapkan model pembelajaran mesin dengan Amazon AI. SageMaker 

**Topics**
+ [Penyiapan berbasis peran IAM dan penyebaran operator](#iam-role-based-setup-and-operator-deployment)
+ [Pembersihan sumber daya](#cleanup-operator-resources)
+ [Hapus operator](#delete-operators)
+ [Pemecahan masalah](#troubleshooting)
+ [Gambar dan SMlogs di setiap Wilayah](#images-and-smlogs-in-each-region)

### Penyiapan berbasis peran IAM dan penyebaran operator
<a name="iam-role-based-setup-and-operator-deployment"></a>

Bagian berikut menjelaskan langkah-langkah untuk mengatur dan menyebarkan versi asli operator.

**Awas**  
**Pengingat:** Langkah-langkah berikut tidak menginstal versi terbaru Operator SageMaker AI untuk Kubernetes. Untuk menginstal Operator SageMaker AI berbasis ACK baru untuk Kubernetes, lihat. [Operator SageMaker AI Terbaru untuk Kubernetes](kubernetes-sagemaker-operators-ack.md)

#### Prasyarat
<a name="prerequisites"></a>

Panduan ini mengasumsikan bahwa Anda telah menyelesaikan prasyarat berikut: 
+ Instal alat-alat berikut pada mesin klien yang digunakan untuk mengakses klaster Kubernetes Anda: 
  + [https://docs.aws.amazon.com/eks/latest/userguide/install-kubectl.html](https://docs.aws.amazon.com/eks/latest/userguide/install-kubectl.html)Versi 1.13 atau yang lebih baru. Gunakan `kubectl` versi yang ada dalam satu versi minor dari bidang kontrol cluster Amazon EKS Anda. Misalnya, `kubectl` klien 1,13 bekerja dengan klaster Kubernetes 1,13 dan 1,14. OpenID Connect (OIDC) tidak didukung dalam versi lebih awal dari 1.13. 
  + [https://github.com/weaveworks/eksctl](https://github.com/weaveworks/eksctl)Versi 0.7.0 atau yang lebih baru 
  + [AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/install-cliv1.html) Versi 1.16.232 atau yang lebih baru 
  + (opsional) [Helm](https://helm.sh/docs/intro/install/) Versi 3.0 atau yang lebih baru 
  + [aws-iam-authenticator](https://docs.aws.amazon.com/eks/latest/userguide/install-aws-iam-authenticator.html) 
+ Memiliki izin IAM untuk membuat peran dan melampirkan kebijakan ke peran.
+ Membuat cluster Kubernetes untuk menjalankan operator. Itu harus Kubernetes versi 1.13 atau 1.14. Untuk pembuatan klaster otomatis menggunakan`eksctl`, lihat [Memulai dengan eksctl](https://docs.aws.amazon.com/eks/latest/userguide/getting-started-eksctl.html). Dibutuhkan 20-30 menit untuk menyediakan cluster. 

#### Penerapan dengan cakupan cluster
<a name="cluster-scoped-deployment"></a>

Sebelum Anda dapat menerapkan operator menggunakan peran IAM, kaitkan Penyedia Identitas OpenID Connect (OIDC) (iDP) dengan peran Anda untuk mengautentikasi dengan layanan IAM.

##### Buat penyedia OIDC untuk klaster Anda
<a name="create-an-openid-connect-provider-for-your-cluster"></a>

Petunjuk berikut menunjukkan cara membuat dan mengaitkan penyedia OIDC dengan kluster Amazon EKS Anda.

1. Tetapkan variabel lokal `CLUSTER_NAME` dan `AWS_REGION` lingkungan sebagai berikut:

   ```
   # Set the Region and cluster
   export CLUSTER_NAME="<your cluster name>"
   export AWS_REGION="<your region>"
   ```

1. Gunakan perintah berikut untuk mengaitkan penyedia OIDC dengan cluster Anda. Untuk informasi selengkapnya, lihat [Mengaktifkan Peran IAM untuk Akun Layanan di Cluster Anda](https://docs.aws.amazon.com/eks/latest/userguide/enable-iam-roles-for-service-accounts.html). 

   ```
   eksctl utils associate-iam-oidc-provider --cluster ${CLUSTER_NAME} \
         --region ${AWS_REGION} --approve
   ```

   Output Anda akan terlihat seperti berikut: 

   ```
   [_]  eksctl version 0.10.1
     [_]  using region us-east-1
     [_]  IAM OpenID Connect provider is associated with cluster "my-cluster" in "us-east-1"
   ```

Sekarang klaster memiliki penyedia identitas OIDC, Anda dapat membuat peran dan memberikan ServiceAccount izin Kubernetes untuk mengambil peran tersebut.

##### Dapatkan ID OIDC
<a name="get-the-oidc-id"></a>

Untuk mengatur ServiceAccount, dapatkan URL penerbit OIDC menggunakan perintah berikut:

```
aws eks describe-cluster --name ${CLUSTER_NAME} --region ${AWS_REGION} \
      --query cluster.identity.oidc.issuer --output text
```

Perintah mengembalikan URL seperti berikut: 

```
https://oidc.eks.${AWS_REGION}.amazonaws.com/id/D48675832CA65BD10A532F597OIDCID
```

Di URL ini, nilainya `D48675832CA65BD10A532F597OIDCID` adalah ID OIDC. ID OIDC untuk cluster Anda berbeda. Anda memerlukan nilai ID OIDC ini untuk membuat peran. 

 Jika output Anda`None`, itu berarti versi klien Anda sudah tua. Untuk mengatasinya, jalankan perintah berikut: 

```
aws eks describe-cluster --region ${AWS_REGION} --query cluster --name ${CLUSTER_NAME} --output text | grep OIDC
```

URL OIDC dikembalikan sebagai berikut: 

```
OIDC https://oidc.eks.us-east-1.amazonaws.com/id/D48675832CA65BD10A532F597OIDCID
```

##### Membuat peran IAM
<a name="create-an-iam-role"></a>

1. Buat file bernama `trust.json` dan masukkan blok kode hubungan kepercayaan berikut ke dalamnya. Pastikan untuk mengganti all`<OIDC ID>`,`<AWS account number>`, dan `<EKS Cluster region>` placeholder dengan nilai yang sesuai dengan cluster Anda. 

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
         {
           "Effect": "Allow",
           "Principal": {
             "Federated": "arn:aws:iam::111122223333:oidc-provider/oidc.eks.<EKS Cluster region>.amazonaws.com/id/<OIDC ID>"
           },
           "Action": "sts:AssumeRoleWithWebIdentity",
           "Condition": {
             "StringEquals": {
               "oidc.eks.<EKS Cluster region>.amazonaws.com/id/<OIDC ID>:aud": "sts.amazonaws.com",
               "oidc.eks.<EKS Cluster region>.amazonaws.com/id/<OIDC ID>:sub": "system:serviceaccount:sagemaker-k8s-operator-system:sagemaker-k8s-operator-default"
             }
           }
         }
       ]
     }
   ```

------

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
         {
           "Effect": "Allow",
           "Principal": {
             "Federated": "arn:aws-cn:iam::111122223333:oidc-provider/oidc.eks.<EKS Cluster region>.amazonaws.com/id/<OIDC ID>"
           },
           "Action": "sts:AssumeRoleWithWebIdentity",
           "Condition": {
             "StringEquals": {
               "oidc.eks.<EKS Cluster region>.amazonaws.com/id/<OIDC ID>:aud": "sts.amazonaws.com",
               "oidc.eks.<EKS Cluster region>.amazonaws.com/id/<OIDC ID>:sub": "system:serviceaccount:sagemaker-k8s-operator-system:sagemaker-k8s-operator-default"
             }
           }
         }
       ]
     }
   ```

------

1. Jalankan perintah berikut untuk membuat peran dengan hubungan kepercayaan yang didefinisikan dalam`trust.json`. Peran ini memungkinkan kluster Amazon EKS untuk mendapatkan dan menyegarkan kredensil dari IAM. 

   ```
   aws iam create-role --region ${AWS_REGION} --role-name <role name> --assume-role-policy-document file://trust.json --output=text
   ```

   Output Anda akan terlihat seperti berikut: 

   ```
   ROLE    arn:aws:iam::123456789012:role/my-role 2019-11-22T21:46:10Z    /       ABCDEFSFODNN7EXAMPLE   my-role
   ASSUMEROLEPOLICYDOCUMENT        2012-10-17		 	 	 
   STATEMENT       sts:AssumeRoleWithWebIdentity   Allow
   STRINGEQUALS    sts.amazonaws.com       system:serviceaccount:sagemaker-k8s-operator-system:sagemaker-k8s-operator-default
   PRINCIPAL       arn:aws:iam::123456789012:oidc-provider/oidc.eks.us-east-1.amazonaws.com/id/
   ```

    Perhatikan`ROLE ARN`; Anda meneruskan nilai ini ke operator Anda. 

##### Lampirkan AmazonSageMakerFullAccess kebijakan ke peran
<a name="attach-the-amazonsagemakerfullaccess-policy-to-the-role"></a>

Untuk memberikan akses peran ke SageMaker AI, lampirkan [AmazonSageMakerFullAccess](https://console.aws.amazon.com/iam/home?#/policies/arn:aws:iam::aws:policy/AmazonSageMakerFullAccess)kebijakan. Jika Anda ingin membatasi izin ke operator, Anda dapat membuat kebijakan khusus Anda sendiri dan melampirkannya. 

 Untuk melampirkan`AmazonSageMakerFullAccess`, jalankan perintah berikut: 

```
aws iam attach-role-policy --role-name <role name>  --policy-arn arn:aws:iam::aws:policy/AmazonSageMakerFullAccess
```

Kubernetes ServiceAccount `sagemaker-k8s-operator-default` harus memiliki izin. `AmazonSageMakerFullAccess` Konfirmasikan ini saat Anda menginstal operator. 

##### Menyebarkan operator
<a name="deploy-the-operator"></a>

Saat menerapkan operator, Anda dapat menggunakan file YAMM atau bagan Helm. 

##### Menyebarkan operator menggunakan YAMAL
<a name="deploy-the-operator-using-yaml"></a>

Ini adalah cara paling sederhana untuk menyebarkan operator Anda. Prosesnya adalah sebagai berikut: 

1. Unduh skrip penginstal menggunakan perintah berikut: 

   ```
   wget https://raw.githubusercontent.com/aws/amazon-sagemaker-operator-for-k8s/master/release/rolebased/installer.yaml
   ```

1. Edit `installer.yaml` file untuk diganti`eks.amazonaws.com/role-arn`. Ganti ARN di sini dengan Amazon Resource Name (ARN) untuk peran berbasis OIDC yang Anda buat. 

1. Gunakan perintah berikut untuk menyebarkan cluster: 

   ```
   kubectl apply -f installer.yaml
   ```

##### Menerapkan operator menggunakan Helm Charts
<a name="deploy-the-operator-using-helm-charts"></a>

Gunakan Bagan Helm yang disediakan untuk menginstal operator. 

1. Kloning direktori installer Helm menggunakan perintah berikut: 

   ```
   git clone https://github.com/aws/amazon-sagemaker-operator-for-k8s.git
   ```

1. Arahkan ke `amazon-sagemaker-operator-for-k8s/hack/charts/installer` folder. Edit `rolebased/values.yaml` file, yang mencakup parameter tingkat tinggi untuk bagan. Ganti peran ARN di sini dengan Amazon Resource Name (ARN) untuk peran berbasis OIDC yang telah Anda buat. 

1. Instal Bagan Helm menggunakan perintah berikut: 

   ```
   kubectl create namespace sagemaker-k8s-operator-system
     helm install --namespace sagemaker-k8s-operator-system sagemaker-operator rolebased/
   ```

   Jika Anda memutuskan untuk menginstal operator ke namespace selain yang ditentukan, Anda perlu menyesuaikan namespace yang ditentukan dalam file peran IAM agar sesuai. `trust.json` 

1. Setelah beberapa saat, bagan diinstal dengan nama yang dihasilkan secara acak. Verifikasi bahwa instalasi berhasil dengan menjalankan perintah berikut: 

   ```
   helm ls
   ```

   Output Anda akan terlihat seperti berikut: 

   ```
   NAME                    NAMESPACE                       REVISION        UPDATED                                 STATUS          CHART                           APP VERSION
     sagemaker-operator      sagemaker-k8s-operator-system   1               2019-11-20 23:14:59.6777082 +0000 UTC   deployed        sagemaker-k8s-operator-0.1.0
   ```

##### Verifikasi penyebaran operator
<a name="verify-the-operator-deployment"></a>

1. Anda harus dapat melihat Definisi Sumber Daya Kustom SageMaker AI (CRDs) untuk setiap operator yang diterapkan ke cluster Anda dengan menjalankan perintah berikut: 

   ```
   kubectl get crd | grep sagemaker
   ```

   Output Anda akan terlihat seperti berikut: 

   ```
   batchtransformjobs.sagemaker.aws.amazon.com         2019-11-20T17:12:34Z
   endpointconfigs.sagemaker.aws.amazon.com            2019-11-20T17:12:34Z
   hostingdeployments.sagemaker.aws.amazon.com         2019-11-20T17:12:34Z
   hyperparametertuningjobs.sagemaker.aws.amazon.com   2019-11-20T17:12:34Z
   models.sagemaker.aws.amazon.com                     2019-11-20T17:12:34Z
   trainingjobs.sagemaker.aws.amazon.com               2019-11-20T17:12:34Z
   ```

1. Pastikan pod operator berjalan dengan sukses. Gunakan perintah berikut untuk membuat daftar semua pod: 

   ```
   kubectl -n sagemaker-k8s-operator-system get pods
   ```

   Anda akan melihat sebuah pod bernama `sagemaker-k8s-operator-controller-manager-*****` di namespace `sagemaker-k8s-operator-system` sebagai berikut: 

   ```
   NAME                                                         READY   STATUS    RESTARTS   AGE
   sagemaker-k8s-operator-controller-manager-12345678-r8abc     2/2     Running   0          23s
   ```

#### Penerapan dengan cakupan ruang nama
<a name="namespace-scoped-deployment"></a>

Anda memiliki opsi untuk menginstal operator Anda dalam lingkup namespace Kubernetes individual. Dalam mode ini, pengontrol hanya memantau dan merekonsiliasi sumber daya dengan SageMaker AI jika sumber daya dibuat di dalam namespace itu. Ini memungkinkan kontrol yang lebih halus atas pengontrol mana yang mengelola sumber daya mana. Ini berguna untuk menyebarkan ke beberapa AWS akun atau mengontrol pengguna mana yang memiliki akses ke pekerjaan tertentu. 

Panduan ini menguraikan cara menginstal operator ke namespace tertentu yang telah ditentukan sebelumnya. Untuk menerapkan controller ke namespace kedua, ikuti panduan dari awal hingga akhir dan ubah namespace di setiap langkah. 

##### Buat penyedia OIDC untuk kluster Amazon EKS Anda
<a name="create-an-openid-connect-provider-for-your-eks-cluster"></a>

Petunjuk berikut menunjukkan cara membuat dan mengaitkan penyedia OIDC dengan kluster Amazon EKS Anda. 

1. Tetapkan variabel lokal `CLUSTER_NAME` dan `AWS_REGION` lingkungan sebagai berikut: 

   ```
   # Set the Region and cluster
   export CLUSTER_NAME="<your cluster name>"
   export AWS_REGION="<your region>"
   ```

1. Gunakan perintah berikut untuk mengaitkan penyedia OIDC dengan cluster Anda. Untuk informasi selengkapnya, lihat [Mengaktifkan Peran IAM untuk Akun Layanan di Cluster Anda](https://docs.aws.amazon.com/eks/latest/userguide/enable-iam-roles-for-service-accounts.html). 

   ```
   eksctl utils associate-iam-oidc-provider --cluster ${CLUSTER_NAME} \
         --region ${AWS_REGION} --approve
   ```

   Output Anda akan terlihat seperti berikut: 

   ```
   [_]  eksctl version 0.10.1
     [_]  using region us-east-1
     [_]  IAM OpenID Connect provider is associated with cluster "my-cluster" in "us-east-1"
   ```

Sekarang klaster memiliki penyedia identitas OIDC, buat peran dan berikan ServiceAccount izin Kubernetes untuk mengambil peran tersebut. 

##### Dapatkan ID OIDC Anda
<a name="get-your-oidc-id"></a>

Untuk mengatur ServiceAccount, pertama-tama dapatkan URL penerbit OpenID Connect menggunakan perintah berikut: 

```
aws eks describe-cluster --name ${CLUSTER_NAME} --region ${AWS_REGION} \
      --query cluster.identity.oidc.issuer --output text
```

Perintah mengembalikan URL seperti berikut: 

```
https://oidc.eks.${AWS_REGION}.amazonaws.com/id/D48675832CA65BD10A532F597OIDCID
```

Dalam URL ini, nilai D48675832 CA65 BD10 A532F597OIDCID adalah ID OIDC. ID OIDC untuk cluster Anda berbeda. Anda memerlukan nilai ID OIDC ini untuk membuat peran. 

 Jika output Anda`None`, itu berarti versi klien Anda sudah tua. Untuk mengatasinya, jalankan perintah berikut: 

```
aws eks describe-cluster --region ${AWS_REGION} --query cluster --name ${CLUSTER_NAME} --output text | grep OIDC
```

URL OIDC dikembalikan sebagai berikut: 

```
OIDC https://oidc.eks.us-east-1.amazonaws.com/id/D48675832CA65BD10A532F597OIDCID
```

##### Buat peran IAM Anda
<a name="create-your-iam-role"></a>

1. Buat file bernama `trust.json` dan masukkan blok kode hubungan kepercayaan berikut ke dalamnya. Pastikan untuk mengganti semua`<OIDC ID>`,, `<AWS account number>``<EKS Cluster region>`, dan `<Namespace>` placeholder dengan nilai yang sesuai dengan cluster Anda. Untuk keperluan panduan ini, `my-namespace` digunakan untuk `<Namespace>` nilai. 

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
         {
           "Effect": "Allow",
           "Principal": {
           "Federated": "arn:aws:iam::111122223333:oidc-provider/oidc.eks.<EKS Cluster region>.amazonaws.com/id/<OIDC ID>"
           },
           "Action": "sts:AssumeRoleWithWebIdentity",
           "Condition": {
             "StringEquals": {
                 "oidc.eks.<EKS Cluster region>.amazonaws.com/id/<OIDC ID>:aud": "sts.amazonaws.com",
                 "oidc.eks.<EKS Cluster region>.amazonaws.com/id/<OIDC ID>:sub": "system:serviceaccount:<Namespace>:sagemaker-k8s-operator-default"
             }
           }
         }
       ]
     }
   ```

------

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
         {
           "Effect": "Allow",
           "Principal": {
             "Federated": "arn:aws-cn:iam::111122223333:oidc-provider/oidc.eks.<EKS Cluster region>.amazonaws.com/id/<OIDC ID>"
           },
           "Action": "sts:AssumeRoleWithWebIdentity",
           "Condition": {
             "StringEquals": {
                 "oidc.eks.<EKS Cluster region>.amazonaws.com/id/<OIDC ID>:aud": "sts.amazonaws.com",
                 "oidc.eks.<EKS Cluster region>.amazonaws.com/id/<OIDC ID>:sub": "system:serviceaccount:<Namespace>:sagemaker-k8s-operator-default"
             }
           }
         }
       ]
     }
   ```

------

1. Jalankan perintah berikut untuk membuat peran dengan hubungan kepercayaan yang didefinisikan dalam`trust.json`. Peran ini memungkinkan kluster Amazon EKS untuk mendapatkan dan menyegarkan kredensil dari IAM. 

   ```
   aws iam create-role --region ${AWS_REGION} --role-name <role name> --assume-role-policy-document file://trust.json --output=text
   ```

   Output Anda akan terlihat seperti berikut: 

   ```
   ROLE    arn:aws:iam::123456789012:role/my-role 2019-11-22T21:46:10Z    /       ABCDEFSFODNN7EXAMPLE   my-role
     ASSUMEROLEPOLICYDOCUMENT        2012-10-17		 	 	 
     STATEMENT       sts:AssumeRoleWithWebIdentity   Allow
     STRINGEQUALS    sts.amazonaws.com       system:serviceaccount:my-namespace:sagemaker-k8s-operator-default
     PRINCIPAL       arn:aws:iam::123456789012:oidc-provider/oidc.eks.us-east-1.amazonaws.com/id/
   ```

Perhatikan`ROLE ARN`. Anda meneruskan nilai ini ke operator Anda. 

##### Lampirkan AmazonSageMakerFullAccess kebijakan ke peran Anda
<a name="attach-the-amazonsagemakerfullaccess-policy-to-your-role"></a>

Untuk memberikan akses peran ke SageMaker AI, lampirkan [https://console.aws.amazon.com/iam/home?#/policies/arn:aws:iam::aws:policy/AmazonSageMakerFullAccess](https://console.aws.amazon.com/iam/home?#/policies/arn:aws:iam::aws:policy/AmazonSageMakerFullAccess)kebijakan. Jika Anda ingin membatasi izin ke operator, Anda dapat membuat kebijakan khusus Anda sendiri dan melampirkannya. 

 Untuk melampirkan`AmazonSageMakerFullAccess`, jalankan perintah berikut: 

```
aws iam attach-role-policy --role-name <role name>  --policy-arn arn:aws:iam::aws:policy/AmazonSageMakerFullAccess
```

Kubernetes ServiceAccount `sagemaker-k8s-operator-default` harus memiliki izin. `AmazonSageMakerFullAccess` Konfirmasikan ini saat Anda menginstal operator. 

##### Terapkan operator ke namespace Anda
<a name="deploy-the-operator-to-your-namespace"></a>

Saat menerapkan operator, Anda dapat menggunakan file YAMM atau bagan Helm. 

##### Menerapkan operator ke namespace Anda menggunakan YAMAL
<a name="deploy-the-operator-to-your-namespace-using-yaml"></a>

Ada dua bagian untuk menerapkan operator dalam lingkup namespace. Yang pertama adalah himpunan CRDs yang dipasang pada tingkat cluster. Definisi sumber daya ini hanya perlu diinstal satu kali per klaster Kubernetes. Bagian kedua adalah izin operator dan penyebaran itu sendiri. 

 Jika Anda belum menginstal CRDs ke dalam cluster, terapkan CRD installer YAMB menggunakan perintah berikut: 

```
kubectl apply -f https://raw.githubusercontent.com/aws/amazon-sagemaker-operator-for-k8s/master/release/rolebased/namespaced/crd.yaml
```

Untuk menginstal operator ke cluster: 

1. Unduh penginstal operator YAMM menggunakan perintah berikut: 

   ```
   wget https://raw.githubusercontent.com/aws/amazon-sagemaker-operator-for-k8s/master/release/rolebased/namespaced/operator.yaml
   ```

1. Perbarui penginstal YAMM untuk menempatkan sumber daya ke dalam namespace yang Anda tentukan menggunakan perintah berikut: 

   ```
   sed -i -e 's/PLACEHOLDER-NAMESPACE/<YOUR NAMESPACE>/g' operator.yaml
   ```

1. Edit `operator.yaml` file untuk menempatkan sumber daya ke dalam file Anda`eks.amazonaws.com/role-arn`. Ganti ARN di sini dengan Amazon Resource Name (ARN) untuk peran berbasis OIDC yang Anda buat. 

1. Gunakan perintah berikut untuk menyebarkan cluster: 

   ```
   kubectl apply -f operator.yaml
   ```

##### Terapkan operator ke namespace Anda menggunakan Helm Charts
<a name="deploy-the-operator-to-your-namespace-using-helm-charts"></a>

Ada dua bagian yang diperlukan untuk menyebarkan operator dalam lingkup namespace. Yang pertama adalah himpunan CRDs yang dipasang pada tingkat cluster. Definisi sumber daya ini hanya perlu diinstal satu kali per klaster Kubernetes. Bagian kedua adalah izin operator dan penyebaran itu sendiri. Saat menggunakan Helm Charts, Anda harus terlebih dahulu membuat namespace menggunakan. `kubectl` 

1. Kloning direktori installer Helm menggunakan perintah berikut: 

   ```
   git clone https://github.com/aws/amazon-sagemaker-operator-for-k8s.git
   ```

1. Arahkan ke `amazon-sagemaker-operator-for-k8s/hack/charts/installer/namespaced` folder. Edit `rolebased/values.yaml` file, yang mencakup parameter tingkat tinggi untuk bagan. Ganti peran ARN di sini dengan Amazon Resource Name (ARN) untuk peran berbasis OIDC yang telah Anda buat. 

1. Instal Bagan Helm menggunakan perintah berikut: 

   ```
   helm install crds crd_chart/
   ```

1. Buat namespace yang diperlukan dan instal operator menggunakan perintah berikut: 

   ```
   kubectl create namespace <namespace>
   helm install --n <namespace> op operator_chart/
   ```

1. Setelah beberapa saat, bagan dipasang dengan nama`sagemaker-operator`. Verifikasi bahwa instalasi berhasil dengan menjalankan perintah berikut: 

   ```
   helm ls
   ```

   Output Anda akan terlihat seperti berikut: 

   ```
   NAME                    NAMESPACE                       REVISION        UPDATED                                 STATUS          CHART                           APP VERSION
   sagemaker-operator      my-namespace                    1               2019-11-20 23:14:59.6777082 +0000 UTC   deployed        sagemaker-k8s-operator-0.1.0
   ```

##### Verifikasi penyebaran operator ke namespace Anda
<a name="verify-the-operator-deployment-to-your-namespace"></a>

1. Anda harus dapat melihat Definisi Sumber Daya Kustom SageMaker AI (CRDs) untuk setiap operator yang diterapkan ke cluster Anda dengan menjalankan perintah berikut: 

   ```
   kubectl get crd | grep sagemaker
   ```

   Output Anda akan terlihat seperti berikut: 

   ```
   batchtransformjobs.sagemaker.aws.amazon.com         2019-11-20T17:12:34Z
   endpointconfigs.sagemaker.aws.amazon.com            2019-11-20T17:12:34Z
   hostingdeployments.sagemaker.aws.amazon.com         2019-11-20T17:12:34Z
   hyperparametertuningjobs.sagemaker.aws.amazon.com   2019-11-20T17:12:34Z
   models.sagemaker.aws.amazon.com                     2019-11-20T17:12:34Z
   trainingjobs.sagemaker.aws.amazon.com               2019-11-20T17:12:34Z
   ```

1. Pastikan pod operator berjalan dengan sukses. Gunakan perintah berikut untuk membuat daftar semua pod: 

   ```
   kubectl -n my-namespace get pods
   ```

   Anda akan melihat sebuah pod bernama `sagemaker-k8s-operator-controller-manager-*****` di namespace `my-namespace` sebagai berikut: 

   ```
   NAME                                                         READY   STATUS    RESTARTS   AGE
   sagemaker-k8s-operator-controller-manager-12345678-r8abc     2/2     Running   0          23s
   ```

#### Instal `kubectl` plugin log SageMaker AI
<a name="install-the-amazon-sagemaker-logs-kubectl-plugin"></a>

 [Sebagai bagian dari Operator SageMaker AI untuk Kubernetes, Anda dapat menggunakan plugin untuk. `smlogs`](https://kubernetes.io/docs/tasks/extend-kubectl/kubectl-plugins/) `kubectl` Ini memungkinkan CloudWatch log SageMaker AI untuk dialirkan. `kubectl` `kubectl`harus diinstal ke [PATH](http://www.linfo.org/path_env_var.html) Anda. Perintah berikut menempatkan biner di `sagemaker-k8s-bin` direktori di direktori home Anda, dan menambahkan direktori itu ke direktori Anda`PATH`. 

```
export os="linux"
  
wget https://amazon-sagemaker-operator-for-k8s-us-east-1.s3.amazonaws.com/kubectl-smlogs-plugin/v1/${os}.amd64.tar.gz
tar xvzf ${os}.amd64.tar.gz
  
# Move binaries to a directory in your homedir.
mkdir ~/sagemaker-k8s-bin
cp ./kubectl-smlogs.${os}.amd64/kubectl-smlogs ~/sagemaker-k8s-bin/.
  
# This line adds the binaries to your PATH in your .bashrc.
  
echo 'export PATH=$PATH:~/sagemaker-k8s-bin' >> ~/.bashrc
  
# Source your .bashrc to update environment variables:
source ~/.bashrc
```

Gunakan perintah berikut untuk memverifikasi bahwa `kubectl` plugin diinstal dengan benar: 

```
kubectl smlogs
```

Jika `kubectl` plugin diinstal dengan benar, output Anda akan terlihat seperti berikut: 

```
View SageMaker AI logs via Kubernetes
  
Usage:
  smlogs [command]
  
Aliases:
  smlogs, SMLogs, Smlogs
  
Available Commands:
  BatchTransformJob       View BatchTransformJob logs via Kubernetes
  TrainingJob             View TrainingJob logs via Kubernetes
  help                    Help about any command
  
Flags:
   -h, --help   help for smlogs
  
Use "smlogs [command] --help" for more information about a command.
```

### Pembersihan sumber daya
<a name="cleanup-operator-resources"></a>

Untuk menghapus instalan operator dari cluster Anda, Anda harus terlebih dahulu memastikan untuk menghapus semua sumber daya SageMaker AI dari cluster. Kegagalan untuk melakukannya menyebabkan operasi penghapusan operator hang. Jalankan perintah berikut untuk menghentikan semua pekerjaan: 

```
# Delete all SageMaker AI jobs from Kubernetes
kubectl delete --all --all-namespaces hyperparametertuningjob.sagemaker.aws.amazon.com
kubectl delete --all --all-namespaces trainingjobs.sagemaker.aws.amazon.com
kubectl delete --all --all-namespaces batchtransformjob.sagemaker.aws.amazon.com
kubectl delete --all --all-namespaces hostingdeployment.sagemaker.aws.amazon.com
```

Anda akan melihat output yang serupa dengan yang berikut: 

```
$ kubectl delete --all --all-namespaces trainingjobs.sagemaker.aws.amazon.com
trainingjobs.sagemaker.aws.amazon.com "xgboost-mnist-from-for-s3" deleted
  
$ kubectl delete --all --all-namespaces hyperparametertuningjob.sagemaker.aws.amazon.com
hyperparametertuningjob.sagemaker.aws.amazon.com "xgboost-mnist-hpo" deleted
  
$ kubectl delete --all --all-namespaces batchtransformjob.sagemaker.aws.amazon.com
batchtransformjob.sagemaker.aws.amazon.com "xgboost-mnist" deleted
  
$ kubectl delete --all --all-namespaces hostingdeployment.sagemaker.aws.amazon.com
hostingdeployment.sagemaker.aws.amazon.com "host-xgboost" deleted
```

Setelah Anda menghapus semua pekerjaan SageMaker AI, lihat [Hapus operator](#delete-operators) untuk menghapus operator dari cluster Anda.

### Hapus operator
<a name="delete-operators"></a>

#### Hapus operator berbasis cluster
<a name="delete-cluster-based-operators"></a>

##### Operator diinstal menggunakan YAMAL
<a name="operators-installed-using-yaml"></a>

Untuk menghapus instalan operator dari cluster Anda, pastikan semua sumber daya SageMaker AI telah dihapus dari cluster. Kegagalan untuk melakukannya menyebabkan operasi penghapusan operator hang.

**catatan**  
Sebelum menghapus cluster Anda, pastikan untuk menghapus semua sumber daya SageMaker AI dari cluster. Untuk informasi selengkapnya, lihat [Pembersihan sumber daya](#cleanup-operator-resources).

Setelah Anda menghapus semua pekerjaan SageMaker AI, gunakan `kubectl` untuk menghapus operator dari cluster:

```
# Delete the operator and its resources
kubectl delete -f /installer.yaml
```

Anda akan melihat output yang serupa dengan yang berikut: 

```
$ kubectl delete -f raw-yaml/installer.yaml
namespace "sagemaker-k8s-operator-system" deleted
customresourcedefinition.apiextensions.k8s.io "batchtransformjobs.sagemaker.aws.amazon.com" deleted
customresourcedefinition.apiextensions.k8s.io "endpointconfigs.sagemaker.aws.amazon.com" deleted
customresourcedefinition.apiextensions.k8s.io "hostingdeployments.sagemaker.aws.amazon.com" deleted
customresourcedefinition.apiextensions.k8s.io "hyperparametertuningjobs.sagemaker.aws.amazon.com" deleted
customresourcedefinition.apiextensions.k8s.io "models.sagemaker.aws.amazon.com" deleted
customresourcedefinition.apiextensions.k8s.io "trainingjobs.sagemaker.aws.amazon.com" deleted
role.rbac.authorization.k8s.io "sagemaker-k8s-operator-leader-election-role" deleted
clusterrole.rbac.authorization.k8s.io "sagemaker-k8s-operator-manager-role" deleted
clusterrole.rbac.authorization.k8s.io "sagemaker-k8s-operator-proxy-role" deleted
rolebinding.rbac.authorization.k8s.io "sagemaker-k8s-operator-leader-election-rolebinding" deleted
clusterrolebinding.rbac.authorization.k8s.io "sagemaker-k8s-operator-manager-rolebinding" deleted
clusterrolebinding.rbac.authorization.k8s.io "sagemaker-k8s-operator-proxy-rolebinding" deleted
service "sagemaker-k8s-operator-controller-manager-metrics-service" deleted
deployment.apps "sagemaker-k8s-operator-controller-manager" deleted
secrets "sagemaker-k8s-operator-abcde" deleted
```

##### Operator diinstal menggunakan Helm Charts
<a name="operators-installed-using-helm-charts"></a>

Untuk menghapus operator CRDs, pertama-tama hapus semua pekerjaan yang sedang berjalan. Kemudian hapus Bagan Helm yang digunakan untuk menyebarkan operator menggunakan perintah berikut: 

```
# get the helm charts
helm ls
  
# delete the charts
helm delete <chart_name>
```

#### Hapus operator berbasis namespace
<a name="delete-namespace-based-operators"></a>

##### Operator yang diinstal dengan YAMB
<a name="operators-installed-with-yaml"></a>

Untuk menghapus instalan operator dari cluster Anda, pertama-tama pastikan bahwa semua sumber daya SageMaker AI telah dihapus dari cluster. Kegagalan untuk melakukannya menyebabkan operasi penghapusan operator hang.

**catatan**  
Sebelum menghapus cluster Anda, pastikan untuk menghapus semua sumber daya SageMaker AI dari cluster. Untuk informasi selengkapnya, lihat [Pembersihan sumber daya](#cleanup-operator-resources).

Setelah Anda menghapus semua pekerjaan SageMaker AI, gunakan `kubectl` untuk terlebih dahulu menghapus operator dari namespace dan kemudian CRDs dari cluster. Jalankan perintah berikut untuk menghapus operator dari cluster: 

```
# Delete the operator using the same yaml file that was used to install the operator
kubectl delete -f operator.yaml
  
# Now delete the CRDs using the CRD installer yaml
kubectl delete -f https://raw.githubusercontent.com/aws/amazon-sagemaker-operator-for-k8s/master/release/rolebased/namespaced/crd.yaml
  
# Now you can delete the namespace if you want
kubectl delete namespace <namespace>
```

##### Operator diinstal dengan Helm Charts
<a name="operators-installed-with-helm-charts"></a>

Untuk menghapus operator CRDs, pertama-tama hapus semua pekerjaan yang sedang berjalan. Kemudian hapus Bagan Helm yang digunakan untuk menyebarkan operator menggunakan perintah berikut: 

```
# Delete the operator
helm delete <chart_name>
  
# delete the crds
helm delete crds
  
# optionally delete the namespace
kubectl delete namespace <namespace>
```

### Pemecahan masalah
<a name="troubleshooting"></a>

#### Mendebug pekerjaan yang gagal
<a name="debugging-a-failed-job"></a>

Gunakan langkah-langkah ini untuk men-debug pekerjaan yang gagal.
+ Periksa status pekerjaan dengan menjalankan yang berikut: 

  ```
  kubectl get <CRD Type> <job name>
  ```
+ Jika pekerjaan dibuat di SageMaker AI, Anda dapat menggunakan perintah berikut untuk melihat `STATUS` dan`SageMaker Job Name`: 

  ```
  kubectl get <crd type> <job name>
  ```
+ Anda dapat menggunakan `smlogs` untuk menemukan penyebab masalah menggunakan perintah berikut: 

  ```
  kubectl smlogs <crd type> <job name>
  ```
+  Anda juga dapat menggunakan `describe` perintah untuk mendapatkan detail lebih lanjut tentang pekerjaan menggunakan perintah berikut. Output memiliki `additional` bidang yang memiliki informasi lebih lanjut tentang status pekerjaan. 

  ```
  kubectl describe <crd type> <job name>
  ```
+ Jika pekerjaan tidak dibuat di SageMaker AI, gunakan log pod operator untuk menemukan penyebab masalah sebagai berikut: 

  ```
  $ kubectl get pods -A | grep sagemaker
  # Output:
  sagemaker-k8s-operator-system   sagemaker-k8s-operator-controller-manager-5cd7df4d74-wh22z   2/2     Running   0          3h33m
    
  $ kubectl logs -p <pod name> -c manager -n sagemaker-k8s-operator-system
  ```

#### Menghapus CRD operator
<a name="deleting-an-operator-crd"></a>

Jika menghapus pekerjaan tidak berfungsi, periksa apakah operator sedang berjalan. Jika operator tidak berjalan, maka Anda harus menghapus finalizer menggunakan langkah-langkah berikut: 

1. Di terminal baru, buka pekerjaan di editor menggunakan `kubectl edit` sebagai berikut: 

   ```
   kubectl edit <crd type> <job name>
   ```

1. Edit pekerjaan untuk menghapus finalizer dengan menghapus dua baris berikut dari file. Simpan file dan pekerjaan akan dihapus. 

   ```
   finalizers:
     - sagemaker-operator-finalizer
   ```

### Gambar dan SMlogs di setiap Wilayah
<a name="images-and-smlogs-in-each-region"></a>

Tabel berikut mencantumkan gambar operator yang tersedia dan SMLogs di setiap Wilayah. 


|  Region  |  Gambar Pengontrol  |  Linux SMLogs  | 
| --- | --- | --- | 
|  us-east-1  |  957583890962.dkr.ecr.us-east-1.amazonaws.com/amazon-sagemaker-operator-for-k8s:v1  |  [https://s3.us-east-1.amazonaws.com/amazon-sagemaker-operator-for-k8s-us-east-1/kubectl-smlogs-plugin/v1/linux.amd64.tar.gz](https://s3.us-east-1.amazonaws.com/amazon-sagemaker-operator-for-k8s-us-east-1/kubectl-smlogs-plugin/v1/linux.amd64.tar.gz)  | 
|  us-east-2  |  922499468684.dkr.ecr.us-east-2.amazonaws.com/amazon-sagemaker-operator-for-k8s:v1  |  [https://s3.us-east-2.amazonaws.com/amazon-sagemaker-operator-for-k8s-us-east-2/kubectl-smlogs-plugin/v1/linux.amd64.tar.gz](https://s3.us-east-2.amazonaws.com/amazon-sagemaker-operator-for-k8s-us-east-2/kubectl-smlogs-plugin/v1/linux.amd64.tar.gz)  | 
|  us-west-2  |  640106867763.dkr.ecr.us-west-2.amazonaws.com/amazon-sagemaker-operator-for-k8s:v1  |  [https://s3.us-west-2.amazonaws.com/amazon-sagemaker-operator-for-k8s-us-west-2/kubectl-smlogs-plugin/v1/linux.amd64.tar.gz](https://s3.us-west-2.amazonaws.com/amazon-sagemaker-operator-for-k8s-us-west-2/kubectl-smlogs-plugin/v1/linux.amd64.tar.gz)  | 
|  eu-west-1  |  613661167059.dkr.ecr.eu-west-1.amazonaws.com/amazon-sagemaker-operator-for-k8s:v1  |  [https://s3.eu-west-1.amazonaws.com/amazon-sagemaker-operator-for-k8s-eu-west-1/kubectl-smlogs-plugin/v1/linux.amd64.tar.gz](https://s3.eu-west-1.amazonaws.com/amazon-sagemaker-operator-for-k8s-eu-west-1/kubectl-smlogs-plugin/v1/linux.amd64.tar.gz)  | 

# Gunakan Pekerjaan Amazon SageMaker AI
<a name="kubernetes-sagemaker-jobs"></a>

Bagian ini didasarkan pada versi asli [Operator SageMaker AI untuk Kubernetes](https://github.com/aws/amazon-sagemaker-operator-for-k8s).

**penting**  
Kami menghentikan pengembangan dan dukungan teknis dari versi asli [ SageMaker Operator untuk Kubernetes](https://github.com/aws/amazon-sagemaker-operator-for-k8s/tree/master).  
Jika saat ini Anda menggunakan [ SageMaker Operator untuk Kubernetes versi `v1.2.2` atau di bawah ini, kami sarankan untuk](https://github.com/aws/amazon-sagemaker-operator-for-k8s/tree/master) memigrasikan sumber daya Anda ke [pengontrol layanan ACK](https://github.com/aws-controllers-k8s/sagemaker-controller) untuk Amazon. SageMaker Pengontrol layanan ACK adalah generasi baru SageMaker Operator untuk Kubernetes berdasarkan [AWS Controller for Kubernetes](https://aws-controllers-k8s.github.io/community/) (ACK).  
Untuk informasi tentang langkah-langkah migrasi, lihat[Migrasikan sumber daya ke Operator terbaru](kubernetes-sagemaker-operators-migrate.md).  
Untuk jawaban atas pertanyaan umum di akhir dukungan versi asli SageMaker Operator untuk Kubernetes, lihat [Mengumumkan Akhir Dukungan Versi Asli Operator SageMaker AI untuk Kubernetes](kubernetes-sagemaker-operators-eos-announcement.md)

Untuk menjalankan pekerjaan Amazon SageMaker AI menggunakan Operator for Kubernetes, Anda dapat menerapkan file YAMM atau menggunakan Bagan Helm yang disediakan. 

Semua pekerjaan operator sampel dalam tutorial berikut menggunakan data sampel yang diambil dari kumpulan data MNIST publik. Untuk menjalankan sampel ini, unduh kumpulan data ke bucket Amazon S3 Anda. Anda dapat menemukan kumpulan data di [Unduh Dataset MNIST](https://docs.aws.amazon.com/sagemaker/latest/dg/ex1-preprocess-data-pull-data.html). 

**Topics**
+ [TrainingJob Operator](#trainingjob-operator)
+ [HyperParameterTuningJob Operator](#hyperparametertuningjobs-operator)
+ [BatchTransformJob Operator](#batchtransformjobs-operator)
+ [HostingDeployment Operator](#hosting-deployment-operator)
+ [ProcessingJob Operator](#kubernetes-processing-job-operator)
+ [HostingAutoscalingPolicy (HAP) Operator](#kubernetes-hap-operator)

## TrainingJob Operator
<a name="trainingjob-operator"></a>

Operator pekerjaan pelatihan merekonsiliasi spesifikasi pekerjaan pelatihan yang Anda tentukan dengan SageMaker AI dengan meluncurkannya untuk Anda di AI. SageMaker Anda dapat mempelajari lebih lanjut tentang pekerjaan SageMaker pelatihan dalam [dokumentasi SageMaker AI CreateTrainingJob API](https://docs.aws.amazon.com/sagemaker/latest/dg/API_CreateTrainingJob.html). 

**Topics**
+ [Membuat file TrainingJob menggunakan YAMG](#create-a-trainingjob-using-a-simple-yaml-file)
+ [Membuat TrainingJob Menggunakan Bagan Helm](#create-a-trainingjob-using-a-helm-chart)
+ [Daftar TrainingJobs](#list-training-jobs)
+ [Jelaskan TrainingJob](#describe-a-training-job)
+ [Lihat log dari TrainingJobs](#view-logs-from-training-jobs)
+ [Hapus TrainingJobs](#delete-training-jobs)

### Membuat file TrainingJob menggunakan YAMG
<a name="create-a-trainingjob-using-a-simple-yaml-file"></a>

1. Unduh file YAMAL sampel untuk pelatihan menggunakan perintah berikut: 

   ```
   wget https://raw.githubusercontent.com/aws/amazon-sagemaker-operator-for-k8s/master/samples/xgboost-mnist-trainingjob.yaml
   ```

1. Edit `xgboost-mnist-trainingjob.yaml` file untuk mengganti `roleArn` parameter dengan Anda`<sagemaker-execution-role>`, dan `outputPath` dengan bucket Amazon S3 Anda yang peran eksekusi SageMaker AI memiliki akses tulis. `roleArn`Harus memiliki izin sehingga SageMaker AI dapat mengakses Amazon S3, CloudWatch Amazon, dan layanan lainnya atas nama Anda. Untuk informasi selengkapnya tentang membuat SageMaker AI ExecutionRole, lihat [Peran SageMaker AI](https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-roles.html#sagemaker-roles-createtrainingjob-perms). Terapkan file YAMAL menggunakan perintah berikut: 

   ```
   kubectl apply -f xgboost-mnist-trainingjob.yaml
   ```

### Membuat TrainingJob Menggunakan Bagan Helm
<a name="create-a-trainingjob-using-a-helm-chart"></a>

Anda dapat menggunakan Helm Charts untuk menjalankan TrainingJobs. 

1. Kloning GitHub repositori untuk mendapatkan sumber menggunakan perintah berikut: 

   ```
   git clone https://github.com/aws/amazon-sagemaker-operator-for-k8s.git
   ```

1. Arahkan ke `amazon-sagemaker-operator-for-k8s/hack/charts/training-jobs/` folder dan edit `values.yaml` file untuk mengganti nilai seperti `rolearn` dan `outputpath` dengan nilai yang sesuai dengan akun Anda. RoLearn harus memiliki izin sehingga SageMaker AI dapat mengakses Amazon S3, Amazon CloudWatch, dan layanan lainnya atas nama Anda. Untuk informasi selengkapnya tentang membuat SageMaker AI ExecutionRole, lihat [Peran SageMaker AI](https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-roles.html#sagemaker-roles-createtrainingjob-perms). 

#### Buat TrainingJob
<a name="create-the-training-job"></a>

Dengan peran dan bucket Amazon S3 diganti dengan nilai yang sesuai di`values.yaml`, Anda dapat membuat pekerjaan pelatihan menggunakan perintah berikut: 

```
helm install . --generate-name
```

Output Anda akan terlihat seperti berikut: 

```
NAME: chart-12345678
LAST DEPLOYED: Wed Nov 20 23:35:49 2019
NAMESPACE: default
STATUS: deployed
REVISION: 1
TEST SUITE: None
NOTES:
Thanks for installing the sagemaker-k8s-trainingjob.
```

#### Verifikasi Bagan Helm pelatihan Anda
<a name="verify-your-training-helm-chart"></a>

Untuk memverifikasi bahwa Bagan Helm berhasil dibuat, jalankan: 

```
helm ls
```

Output Anda akan terlihat seperti berikut: 

```
NAME                    NAMESPACE       REVISION        UPDATED                                 STATUS          CHART                           APP VERSION
chart-12345678        default         1               2019-11-20 23:35:49.9136092 +0000 UTC   deployed        sagemaker-k8s-trainingjob-0.1.0
rolebased-12345678    default         1               2019-11-20 23:14:59.6777082 +0000 UTC   deployed        sagemaker-k8s-operator-0.1.0
```

`helm install`membuat sumber daya `TrainingJob` Kubernetes. Operator meluncurkan pekerjaan pelatihan aktual di SageMaker AI dan memperbarui sumber daya `TrainingJob` Kubernetes untuk mencerminkan status pekerjaan di AI. SageMaker Anda dikenakan biaya untuk sumber daya SageMaker AI yang digunakan selama durasi pekerjaan Anda. Anda tidak dikenakan biaya apa pun setelah pekerjaan Anda selesai atau berhenti. 

**Catatan**: SageMaker AI tidak memungkinkan Anda memperbarui pekerjaan pelatihan yang sedang berjalan. Anda tidak dapat mengedit parameter apa pun dan menerapkan kembali file konfigurasi. Ubah nama metadata atau hapus pekerjaan yang ada dan buat yang baru. Mirip dengan operator pekerjaan pelatihan yang ada seperti TFJob di Kubeflow, tidak `update` didukung. 

### Daftar TrainingJobs
<a name="list-training-jobs"></a>

Gunakan perintah berikut untuk membuat daftar semua pekerjaan yang dibuat menggunakan operator Kubernetes: 

```
kubectl get TrainingJob
```

Daftar keluaran semua pekerjaan akan terlihat seperti berikut: 

```
kubectl get trainingjobs
NAME                        STATUS       SECONDARY-STATUS   CREATION-TIME          SAGEMAKER-JOB-NAME
xgboost-mnist-from-for-s3   InProgress   Starting           2019-11-20T23:42:35Z   xgboost-mnist-from-for-s3-examplef11eab94e0ed4671d5a8f
```

Pekerjaan pelatihan terus terdaftar setelah pekerjaan selesai atau gagal. Anda dapat menghapus `TrainingJob` pekerjaan dari daftar dengan mengikuti [Hapus TrainingJobs](#delete-training-jobs) langkah-langkahnya. Pekerjaan yang telah selesai atau dihentikan tidak dikenakan biaya apa pun untuk sumber daya SageMaker AI. 

#### TrainingJob nilai status
<a name="training-job-status-values"></a>

`STATUS`Bidang dapat berupa salah satu nilai berikut: 
+ `Completed` 
+ `InProgress` 
+ `Failed` 
+ `Stopped` 
+ `Stopping` 

Status ini datang langsung dari [dokumentasi API](https://docs.aws.amazon.com/sagemaker/latest/dg/API_DescribeTrainingJob.html#SageMaker-DescribeTrainingJob-response-TrainingJobStatus) resmi SageMaker AI. 

Selain status SageMaker AI resmi, dimungkinkan `STATUS` untuk menjadi`SynchronizingK8sJobWithSageMaker`. Ini berarti bahwa operator belum memproses pekerjaan. 

#### Nilai status sekunder
<a name="secondary-status-values"></a>

Status sekunder datang langsung dari [dokumentasi API](https://docs.aws.amazon.com/sagemaker/latest/dg/API_DescribeTrainingJob.html#SageMaker-DescribeTrainingJob-response-SecondaryStatus) resmi SageMaker AI. Mereka berisi informasi yang lebih terperinci tentang status pekerjaan. 

### Jelaskan TrainingJob
<a name="describe-a-training-job"></a>

Anda bisa mendapatkan detail lebih lanjut tentang pekerjaan pelatihan dengan menggunakan `describe` `kubectl` perintah. Ini biasanya digunakan untuk men-debug masalah atau memeriksa parameter pekerjaan pelatihan. Untuk mendapatkan informasi tentang pekerjaan pelatihan Anda, gunakan perintah berikut: 

```
kubectl describe trainingjob xgboost-mnist-from-for-s3
```

Output untuk pekerjaan pelatihan Anda akan terlihat seperti berikut: 

```
Name:         xgboost-mnist-from-for-s3
Namespace:    default
Labels:       <none>
Annotations:  <none>
API Version:  sagemaker.aws.amazon.com/v1
Kind:         TrainingJob
Metadata:
  Creation Timestamp:  2019-11-20T23:42:35Z
  Finalizers:
    sagemaker-operator-finalizer
  Generation:        2
  Resource Version:  23119
  Self Link:         /apis/sagemaker.aws.amazon.com/v1/namespaces/default/trainingjobs/xgboost-mnist-from-for-s3
  UID:               6d7uiui-0bef-11ea-b94e-0ed467example
Spec:
  Algorithm Specification:
    Training Image:       8256416981234.dkr.ecr.us-east-2.amazonaws.com/xgboost:1
    Training Input Mode:  File
  Hyper Parameters:
    Name:   eta
    Value:  0.2
    Name:   gamma
    Value:  4
    Name:   max_depth
    Value:  5
    Name:   min_child_weight
    Value:  6
    Name:   num_class
    Value:  10
    Name:   num_round
    Value:  10
    Name:   objective
    Value:  multi:softmax
    Name:   silent
    Value:  0
  Input Data Config:
    Channel Name:      train
    Compression Type:  None
    Content Type:      text/csv
    Data Source:
      S 3 Data Source:
        S 3 Data Distribution Type:  FullyReplicated
        S 3 Data Type:               S3Prefix
        S 3 Uri:                     https://s3-us-east-2.amazonaws.com/amzn-s3-demo-bucket/sagemaker/xgboost-mnist/train/
    Channel Name:                    validation
    Compression Type:                None
    Content Type:                    text/csv
    Data Source:
      S 3 Data Source:
        S 3 Data Distribution Type:  FullyReplicated
        S 3 Data Type:               S3Prefix
        S 3 Uri:                     https://s3-us-east-2.amazonaws.com/amzn-s3-demo-bucket/sagemaker/xgboost-mnist/validation/
  Output Data Config:
    S 3 Output Path:  s3://amzn-s3-demo-bucket/sagemaker/xgboost-mnist/xgboost/
  Region:             us-east-2
  Resource Config:
    Instance Count:     1
    Instance Type:      ml.m4.xlarge
    Volume Size In GB:  5
  Role Arn:             arn:aws:iam::12345678910:role/service-role/AmazonSageMaker-ExecutionRole
  Stopping Condition:
    Max Runtime In Seconds:  86400
  Training Job Name:         xgboost-mnist-from-for-s3-6d7fa0af0bef11eab94e0example
Status:
  Cloud Watch Log URL:           https://us-east-2.console.aws.amazon.com/cloudwatch/home?region=us-east-2#logStream:group=/aws/sagemaker/TrainingJobs;prefix=<example>;streamFilter=typeLogStreamPrefix
  Last Check Time:               2019-11-20T23:44:29Z
  Sage Maker Training Job Name:  xgboost-mnist-from-for-s3-6d7fa0af0bef11eab94eexample
  Secondary Status:              Downloading
  Training Job Status:           InProgress
Events:                          <none>
```

### Lihat log dari TrainingJobs
<a name="view-logs-from-training-jobs"></a>

Gunakan perintah berikut untuk melihat log dari pekerjaan `kmeans-mnist` pelatihan: 

```
kubectl smlogs trainingjob xgboost-mnist-from-for-s3
```

Output-nya semestinya mirip dengan yang berikut. Log dari instance diurutkan secara kronologis. 

```
"xgboost-mnist-from-for-s3" has SageMaker TrainingJobName "xgboost-mnist-from-for-s3-123456789" in region "us-east-2", status "InProgress" and secondary status "Starting"
xgboost-mnist-from-for-s3-6d7fa0af0bef11eab94e0ed46example/algo-1-1574293123 2019-11-20 23:45:24.7 +0000 UTC Arguments: train
xgboost-mnist-from-for-s3-6d7fa0af0bef11eab94e0ed46example/algo-1-1574293123 2019-11-20 23:45:24.7 +0000 UTC [2019-11-20:23:45:22:INFO] Running standalone xgboost training.
xgboost-mnist-from-for-s3-6d7fa0af0bef11eab94e0ed46example/algo-1-1574293123 2019-11-20 23:45:24.7 +0000 UTC [2019-11-20:23:45:22:INFO] File size need to be processed in the node: 1122.95mb. Available memory size in the node: 8586.0mb
xgboost-mnist-from-for-s3-6d7fa0af0bef11eab94e0ed46example/algo-1-1574293123 2019-11-20 23:45:24.7 +0000 UTC [2019-11-20:23:45:22:INFO] Determined delimiter of CSV input is ','
xgboost-mnist-from-for-s3-6d7fa0af0bef11eab94e0ed46example/algo-1-1574293123 2019-11-20 23:45:24.7 +0000 UTC [23:45:22] S3DistributionType set as FullyReplicated
```

### Hapus TrainingJobs
<a name="delete-training-jobs"></a>

Gunakan perintah berikut untuk menghentikan pekerjaan pelatihan di Amazon SageMaker AI: 

```
kubectl delete trainingjob xgboost-mnist-from-for-s3
```

Perintah ini menghapus tugas SageMaker pelatihan dari Kubernetes. Perintah ini mengembalikan output sebagai berikut: 

```
trainingjob.sagemaker.aws.amazon.com "xgboost-mnist-from-for-s3" deleted
```

Jika pekerjaan masih berlangsung di SageMaker AI, pekerjaan berhenti. Anda tidak dikenakan biaya apa pun untuk sumber daya SageMaker AI setelah pekerjaan Anda berhenti atau selesai. 

**Catatan**: SageMaker AI tidak menghapus pekerjaan pelatihan. Pekerjaan yang dihentikan terus ditampilkan di konsol SageMaker AI. `delete`Perintah membutuhkan waktu sekitar 2 menit untuk membersihkan sumber daya dari SageMaker AI. 

## HyperParameterTuningJob Operator
<a name="hyperparametertuningjobs-operator"></a>

Operator pekerjaan tuning hyperparameter merekonsiliasi spesifikasi pekerjaan tuning hyperparameter yang Anda tentukan ke SageMaker AI dengan meluncurkannya di AI. SageMaker Anda dapat mempelajari lebih lanjut tentang pekerjaan tuning hyperparameter SageMaker AI di dokumentasi SageMaker AI [CreateHyperParameterTuningJob API](https://docs.aws.amazon.com/sagemaker/latest/dg/API_CreateHyperParameterTuningJob.html). 

**Topics**
+ [Membuat file HyperparameterTuningJob menggunakan YAMG](#create-a-hyperparametertuningjob-using-a-simple-yaml-file)
+ [Buat HyperparameterTuningJob menggunakan Bagan Helm](#create-a-hyperparametertuningjob-using-a-helm-chart)
+ [Daftar HyperparameterTuningJobs](#list-hyperparameter-tuning-jobs)
+ [Jelaskan HyperparameterTuningJob](#describe-a-hyperparameter-tuning-job)
+ [Lihat log dari HyperparameterTuningJobs](#view-logs-from-hyperparametertuning-jobs)
+ [Menghapus HyperparameterTuningJob](#delete-hyperparametertuning-jobs)

### Membuat file HyperparameterTuningJob menggunakan YAMG
<a name="create-a-hyperparametertuningjob-using-a-simple-yaml-file"></a>

1. Unduh file YAMAL sampel untuk pekerjaan penyetelan hyperparameter menggunakan perintah berikut: 

   ```
   wget https://raw.githubusercontent.com/aws/amazon-sagemaker-operator-for-k8s/master/samples/xgboost-mnist-hpo.yaml
   ```

1. Edit `xgboost-mnist-hpo.yaml` file untuk mengganti `roleArn` parameter dengan file Anda`sagemaker-execution-role`. Agar pekerjaan tuning hyperparameter berhasil, Anda juga harus mengubah `s3InputPath` dan `s3OutputPath` ke nilai yang sesuai dengan akun Anda. Terapkan pembaruan file YAMAL menggunakan perintah berikut: 

   ```
   kubectl apply -f xgboost-mnist-hpo.yaml
   ```

### Buat HyperparameterTuningJob menggunakan Bagan Helm
<a name="create-a-hyperparametertuningjob-using-a-helm-chart"></a>

Anda dapat menggunakan Helm Charts untuk menjalankan pekerjaan tuning hyperparameter. 

1. Kloning GitHub repositori untuk mendapatkan sumber menggunakan perintah berikut: 

   ```
   git clone https://github.com/aws/amazon-sagemaker-operator-for-k8s.git
   ```

1. Arahkan ke `amazon-sagemaker-operator-for-k8s/hack/charts/hyperparameter-tuning-jobs/` folder. 

1. Edit `values.yaml` file untuk mengganti `roleArn` parameter dengan file Anda`sagemaker-execution-role`. Agar pekerjaan tuning hyperparameter berhasil, Anda juga harus mengubah `s3InputPath` dan `s3OutputPath` ke nilai yang sesuai dengan akun Anda. 

#### Buat HyperparameterTuningJob
<a name="create-the-hpo-job"></a>

Dengan peran dan jalur Amazon S3 diganti dengan nilai yang sesuai di`values.yaml`, Anda dapat membuat tugas penyetelan hyperparameter menggunakan perintah berikut: 

```
helm install . --generate-name
```

Output-nya semestinya mirip dengan yang berikut: 

```
NAME: chart-1574292948
LAST DEPLOYED: Wed Nov 20 23:35:49 2019
NAMESPACE: default
STATUS: deployed
REVISION: 1
TEST SUITE: None
NOTES:
Thanks for installing the sagemaker-k8s-hyperparametertuningjob.
```

#### Verifikasi instalasi bagan
<a name="verify-chart-installation"></a>

Untuk memverifikasi bahwa Bagan Helm berhasil dibuat, jalankan perintah berikut: 

```
helm ls
```

Output Anda akan terlihat seperti berikut: 

```
NAME                    NAMESPACE       REVISION        UPDATED
chart-1474292948        default         1               2019-11-20 23:35:49.9136092 +0000 UTC   deployed        sagemaker-k8s-hyperparametertuningjob-0.1.0                               STATUS          CHART                           APP VERSION
chart-1574292948        default         1               2019-11-20 23:35:49.9136092 +0000 UTC   deployed        sagemaker-k8s-trainingjob-0.1.0
rolebased-1574291698    default         1               2019-11-20 23:14:59.6777082 +0000 UTC   deployed        sagemaker-k8s-operator-0.1.0
```

`helm install`membuat sumber daya `HyperParameterTuningJob` Kubernetes. Operator meluncurkan pekerjaan optimasi hyperparameter aktual di SageMaker AI dan memperbarui sumber daya `HyperParameterTuningJob` Kubernetes untuk mencerminkan status pekerjaan di AI. SageMaker Anda dikenakan biaya untuk sumber daya SageMaker AI yang digunakan selama durasi pekerjaan Anda. Anda tidak dikenakan biaya apa pun setelah pekerjaan Anda selesai atau berhenti. 

**Catatan**: SageMaker AI tidak mengizinkan Anda memperbarui pekerjaan penyetelan hyperparameter yang sedang berjalan. Anda tidak dapat mengedit parameter apa pun dan menerapkan kembali file konfigurasi. Anda harus mengubah nama metadata atau menghapus pekerjaan yang ada dan membuat yang baru. Mirip dengan operator pekerjaan pelatihan yang ada seperti `TFJob` di Kubeflow, tidak `update` didukung. 

### Daftar HyperparameterTuningJobs
<a name="list-hyperparameter-tuning-jobs"></a>

Gunakan perintah berikut untuk membuat daftar semua pekerjaan yang dibuat menggunakan operator Kubernetes: 

```
kubectl get hyperparametertuningjob
```

Output Anda akan terlihat seperti berikut: 

```
NAME         STATUS      CREATION-TIME          COMPLETED   INPROGRESS   ERRORS   STOPPED   BEST-TRAINING-JOB                               SAGEMAKER-JOB-NAME
xgboost-mnist-hpo   Completed   2019-10-17T01:15:52Z   10          0            0        0         xgboostha92f5e3cf07b11e9bf6c06d6-009-4c7a123   xgboostha92f5e3cf07b11e9bf6c123
```

Pekerjaan tuning hyperparameter terus terdaftar setelah pekerjaan selesai atau gagal. Anda dapat menghapus a `hyperparametertuningjob` dari daftar dengan mengikuti langkah-langkah di[Menghapus HyperparameterTuningJob](#delete-hyperparametertuning-jobs). Pekerjaan yang telah selesai atau dihentikan tidak dikenakan biaya apa pun untuk sumber daya SageMaker AI.

#### Nilai status pekerjaan tuning hyperparameter
<a name="hyperparameter-tuning-job-status-values"></a>

`STATUS`Bidang dapat berupa salah satu nilai berikut: 
+ `Completed` 
+ `InProgress` 
+ `Failed` 
+ `Stopped` 
+ `Stopping` 

Status ini datang langsung dari [dokumentasi API](https://docs.aws.amazon.com/sagemaker/latest/dg/API_DescribeHyperParameterTuningJob.html#SageMaker-DescribeHyperParameterTuningJob-response-HyperParameterTuningJobStatus) resmi SageMaker AI. 

Selain status SageMaker AI resmi, dimungkinkan `STATUS` untuk menjadi`SynchronizingK8sJobWithSageMaker`. Ini berarti bahwa operator belum memproses pekerjaan. 

#### Penghitung status
<a name="status-counters"></a>

Outputnya memiliki beberapa penghitung, seperti `COMPLETED` dan`INPROGRESS`. Ini mewakili berapa banyak pekerjaan pelatihan yang telah diselesaikan dan sedang berlangsung, masing-masing. Untuk informasi selengkapnya tentang cara penentuannya, lihat [TrainingJobStatusCounters](https://docs.aws.amazon.com/sagemaker/latest/dg/API_TrainingJobStatusCounters.html)di dokumentasi SageMaker API. 

#### Terbaik TrainingJob
<a name="best-training-job"></a>

Kolom ini berisi nama `TrainingJob` yang paling dioptimalkan metrik yang dipilih. 

Untuk melihat ringkasan hyperparameters yang disetel, jalankan: 

```
kubectl describe hyperparametertuningjob xgboost-mnist-hpo
```

Untuk melihat informasi rinci tentang`TrainingJob`, jalankan: 

```
kubectl describe trainingjobs <job name>
```

#### Melahirkan TrainingJobs
<a name="spawned-training-jobs"></a>

Anda juga dapat melacak semua 10 pekerjaan pelatihan di Kubernetes yang diluncurkan `HyperparameterTuningJob` dengan menjalankan perintah berikut: 

```
kubectl get trainingjobs
```

### Jelaskan HyperparameterTuningJob
<a name="describe-a-hyperparameter-tuning-job"></a>

Anda dapat memperoleh detail debugging menggunakan `describe` `kubectl` perintah.

```
kubectl describe hyperparametertuningjob xgboost-mnist-hpo
```

Selain informasi tentang pekerjaan tuning, Operator SageMaker AI untuk Kubernetes juga memaparkan [pekerjaan pelatihan terbaik yang ditemukan oleh pekerjaan](https://docs.aws.amazon.com/sagemaker/latest/dg/automatic-model-tuning-monitor.html#automatic-model-tuning-best-training-job) tuning hyperparameter dalam output sebagai berikut: `describe` 

```
Name:         xgboost-mnist-hpo
Namespace:    default
Labels:       <none>
Annotations:  kubectl.kubernetes.io/last-applied-configuration:
                {"apiVersion":"sagemaker.aws.amazon.com/v1","kind":"HyperparameterTuningJob","metadata":{"annotations":{},"name":"xgboost-mnist-hpo","namespace":...
API Version:  sagemaker.aws.amazon.com/v1
Kind:         HyperparameterTuningJob
Metadata:
  Creation Timestamp:  2019-10-17T01:15:52Z
  Finalizers:
    sagemaker-operator-finalizer
  Generation:        2
  Resource Version:  8167
  Self Link:         /apis/sagemaker.aws.amazon.com/v1/namespaces/default/hyperparametertuningjobs/xgboost-mnist-hpo
  UID:               a92f5e3c-f07b-11e9-bf6c-06d6f303uidu
Spec:
  Hyper Parameter Tuning Job Config:
    Hyper Parameter Tuning Job Objective:
      Metric Name:  validation:error
      Type:         Minimize
    Parameter Ranges:
      Integer Parameter Ranges:
        Max Value:     20
        Min Value:     10
        Name:          num_round
        Scaling Type:  Linear
    Resource Limits:
      Max Number Of Training Jobs:     10
      Max Parallel Training Jobs:      10
    Strategy:                          Bayesian
    Training Job Early Stopping Type:  Off
  Hyper Parameter Tuning Job Name:     xgboostha92f5e3cf07b11e9bf6c06d6
  Region:                              us-east-2
  Training Job Definition:
    Algorithm Specification:
      Training Image:       12345678910.dkr.ecr.us-east-2.amazonaws.com/xgboost:1
      Training Input Mode:  File
    Input Data Config:
      Channel Name:  train
      Content Type:  text/csv
      Data Source:
        s3DataSource:
          s3DataDistributionType:  FullyReplicated
          s3DataType:              S3Prefix
          s3Uri:                   https://s3-us-east-2.amazonaws.com/amzn-s3-demo-bucket/sagemaker/xgboost-mnist/train/
      Channel Name:                validation
      Content Type:                text/csv
      Data Source:
        s3DataSource:
          s3DataDistributionType:  FullyReplicated
          s3DataType:              S3Prefix
          s3Uri:                   https://s3-us-east-2.amazonaws.com/amzn-s3-demo-bucket/sagemaker/xgboost-mnist/validation/
    Output Data Config:
      s3OutputPath:  https://s3-us-east-2.amazonaws.com/amzn-s3-demo-bucket/sagemaker/xgboost-mnist/xgboost
    Resource Config:
      Instance Count:     1
      Instance Type:      ml.m4.xlarge
      Volume Size In GB:  5
    Role Arn:             arn:aws:iam::123456789012:role/service-role/AmazonSageMaker-ExecutionRole
    Static Hyper Parameters:
      Name:   base_score
      Value:  0.5
      Name:   booster
      Value:  gbtree
      Name:   csv_weights
      Value:  0
      Name:   dsplit
      Value:  row
      Name:   grow_policy
      Value:  depthwise
      Name:   lambda_bias
      Value:  0.0
      Name:   max_bin
      Value:  256
      Name:   max_leaves
      Value:  0
      Name:   normalize_type
      Value:  tree
      Name:   objective
      Value:  reg:linear
      Name:   one_drop
      Value:  0
      Name:   prob_buffer_row
      Value:  1.0
      Name:   process_type
      Value:  default
      Name:   rate_drop
      Value:  0.0
      Name:   refresh_leaf
      Value:  1
      Name:   sample_type
      Value:  uniform
      Name:   scale_pos_weight
      Value:  1.0
      Name:   silent
      Value:  0
      Name:   sketch_eps
      Value:  0.03
      Name:   skip_drop
      Value:  0.0
      Name:   tree_method
      Value:  auto
      Name:   tweedie_variance_power
      Value:  1.5
    Stopping Condition:
      Max Runtime In Seconds:  86400
Status:
  Best Training Job:
    Creation Time:  2019-10-17T01:16:14Z
    Final Hyper Parameter Tuning Job Objective Metric:
      Metric Name:        validation:error
      Value:
    Objective Status:     Succeeded
    Training End Time:    2019-10-17T01:20:24Z
    Training Job Arn:     arn:aws:sagemaker:us-east-2:123456789012:training-job/xgboostha92f5e3cf07b11e9bf6c06d6-009-4sample
    Training Job Name:    xgboostha92f5e3cf07b11e9bf6c06d6-009-4c7a3059
    Training Job Status:  Completed
    Training Start Time:  2019-10-17T01:18:35Z
    Tuned Hyper Parameters:
      Name:                                    num_round
      Value:                                   18
  Hyper Parameter Tuning Job Status:           Completed
  Last Check Time:                             2019-10-17T01:21:01Z
  Sage Maker Hyper Parameter Tuning Job Name:  xgboostha92f5e3cf07b11e9bf6c06d6
  Training Job Status Counters:
    Completed:            10
    In Progress:          0
    Non Retryable Error:  0
    Retryable Error:      0
    Stopped:              0
    Total Error:          0
Events:                   <none>
```

### Lihat log dari HyperparameterTuningJobs
<a name="view-logs-from-hyperparametertuning-jobs"></a>

Pekerjaan tuning hyperparameter tidak memiliki log, tetapi semua pekerjaan pelatihan yang diluncurkan oleh mereka memang memiliki log. Log ini dapat diakses seolah-olah itu adalah pekerjaan pelatihan normal. Untuk informasi selengkapnya, lihat [Lihat log dari TrainingJobs](#view-logs-from-training-jobs).

### Menghapus HyperparameterTuningJob
<a name="delete-hyperparametertuning-jobs"></a>

Gunakan perintah berikut untuk menghentikan pekerjaan hyperparameter di SageMaker AI. 

```
kubectl delete hyperparametertuningjob xgboost-mnist-hpo
```

Perintah ini menghapus tugas tuning hyperparameter dan pekerjaan pelatihan terkait dari cluster Kubernetes Anda dan menghentikannya di AI. SageMaker Pekerjaan yang telah berhenti atau selesai tidak dikenakan biaya apa pun untuk sumber daya SageMaker AI. SageMaker AI tidak menghapus pekerjaan penyetelan hyperparameter. Pekerjaan yang dihentikan terus ditampilkan di konsol SageMaker AI. 

Output Anda akan terlihat seperti berikut: 

```
hyperparametertuningjob.sagemaker.aws.amazon.com "xgboost-mnist-hpo" deleted
```

**Catatan**: Perintah delete membutuhkan waktu sekitar 2 menit untuk membersihkan sumber daya dari SageMaker AI. 

## BatchTransformJob Operator
<a name="batchtransformjobs-operator"></a>

Operator pekerjaan transformasi Batch merekonsiliasi spesifikasi pekerjaan transformasi batch yang Anda tentukan ke SageMaker AI dengan meluncurkannya di AI. SageMaker Anda dapat mempelajari lebih lanjut tentang pekerjaan transformasi batch SageMaker AI di [dokumentasi SageMaker AI CreateTransformJob API](https://docs.aws.amazon.com/sagemaker/latest/dg/API_CreateTransformJob.html). 

**Topics**
+ [Membuat BatchTransformJob menggunakan File YAMM](#create-a-batchtransformjob-using-a-simple-yaml-file)
+ [Buat BatchTransformJob menggunakan Bagan Helm](#create-a-batchtransformjob-using-a-helm-chart)
+ [Daftar BatchTransformJobs](#list-batch-transform-jobs)
+ [Jelaskan BatchTransformJob](#describe-a-batch-transform-job)
+ [Lihat log dari BatchTransformJobs](#view-logs-from-batch-transform-jobs)
+ [Menghapus BatchTransformJob](#delete-a-batch-transform-job)

### Membuat BatchTransformJob menggunakan File YAMM
<a name="create-a-batchtransformjob-using-a-simple-yaml-file"></a>

1. Unduh contoh file YAMM untuk pekerjaan transformasi batch menggunakan perintah berikut: 

   ```
   wget https://raw.githubusercontent.com/aws/amazon-sagemaker-operator-for-k8s/master/samples/xgboost-mnist-batchtransform.yaml
   ```

1. Edit file `xgboost-mnist-batchtransform.yaml` untuk mengubah parameter yang diperlukan untuk mengganti `inputdataconfig` dengan data input Anda dan `s3OutputPath` dengan bucket Amazon S3 Anda yang memiliki akses tulis peran eksekusi SageMaker AI. 

1. Terapkan file YAMAL menggunakan perintah berikut: 

   ```
   kubectl apply -f xgboost-mnist-batchtransform.yaml
   ```

### Buat BatchTransformJob menggunakan Bagan Helm
<a name="create-a-batchtransformjob-using-a-helm-chart"></a>

Anda dapat menggunakan Helm Charts untuk menjalankan pekerjaan transformasi batch. 

#### Dapatkan direktori installer Helm
<a name="get-the-helm-installer-directory"></a>

Kloning GitHub repositori untuk mendapatkan sumber menggunakan perintah berikut: 

```
git clone https://github.com/aws/amazon-sagemaker-operator-for-k8s.git
```

#### Konfigurasikan Bagan Helm
<a name="configure-the-helm-chart"></a>

Arahkan ke `amazon-sagemaker-operator-for-k8s/hack/charts/batch-transform-jobs/` folder. 

Edit `values.yaml` file untuk mengganti `inputdataconfig` dengan data input dan outputPath Anda dengan bucket S3 Anda yang peran eksekusi SageMaker AI memiliki akses tulis. 

#### Buat BatchTransformJob
<a name="create-a-batch-transform-job"></a>

1. Gunakan perintah berikut untuk membuat pekerjaan transformasi batch: 

   ```
   helm install . --generate-name
   ```

   Output Anda akan terlihat seperti berikut: 

   ```
   NAME: chart-1574292948
   LAST DEPLOYED: Wed Nov 20 23:35:49 2019
   NAMESPACE: default
   STATUS: deployed
   REVISION: 1
   TEST SUITE: None
   NOTES:
   Thanks for installing the sagemaker-k8s-batch-transform-job.
   ```

1. Untuk memverifikasi bahwa Bagan Helm berhasil dibuat, jalankan perintah berikut: 

   ```
   helm ls
   NAME                    NAMESPACE       REVISION        UPDATED                                 STATUS          CHART                           APP VERSION
   chart-1474292948        default         1               2019-11-20 23:35:49.9136092 +0000 UTC   deployed        sagemaker-k8s-batchtransformjob-0.1.0
   chart-1474292948        default         1               2019-11-20 23:35:49.9136092 +0000 UTC   deployed        sagemaker-k8s-hyperparametertuningjob-0.1.0
   chart-1574292948        default         1               2019-11-20 23:35:49.9136092 +0000 UTC   deployed        sagemaker-k8s-trainingjob-0.1.0
   rolebased-1574291698    default         1               2019-11-20 23:14:59.6777082 +0000 UTC   deployed        sagemaker-k8s-operator-0.1.0
   ```

   Perintah ini membuat sumber daya `BatchTransformJob` Kubernetes. Operator meluncurkan pekerjaan transformasi aktual di SageMaker AI dan memperbarui sumber daya `BatchTransformJob` Kubernetes untuk mencerminkan status pekerjaan di AI. SageMaker Anda dikenakan biaya untuk sumber daya SageMaker AI yang digunakan selama durasi pekerjaan Anda. Anda tidak dikenakan biaya apa pun setelah pekerjaan Anda selesai atau berhenti. 

**Catatan**: SageMaker AI tidak mengizinkan Anda memperbarui pekerjaan transformasi batch yang sedang berjalan. Anda tidak dapat mengedit parameter apa pun dan menerapkan kembali file konfigurasi. Anda harus mengubah nama metadata atau menghapus pekerjaan yang ada dan membuat yang baru. Mirip dengan operator pekerjaan pelatihan yang ada seperti `TFJob` di Kubeflow, tidak `update` didukung. 

### Daftar BatchTransformJobs
<a name="list-batch-transform-jobs"></a>

Gunakan perintah berikut untuk membuat daftar semua pekerjaan yang dibuat menggunakan operator Kubernetes: 

```
kubectl get batchtransformjob
```

Output Anda akan terlihat seperti berikut: 

```
NAME                                STATUS      CREATION-TIME          SAGEMAKER-JOB-NAME
xgboost-mnist-batch-transform       Completed   2019-11-18T03:44:00Z   xgboost-mnist-a88fb19809b511eaac440aa8axgboost
```

Pekerjaan transformasi batch terus terdaftar setelah pekerjaan selesai atau gagal. Anda dapat menghapus a `hyperparametertuningjob` dari daftar dengan mengikuti [Menghapus BatchTransformJob](#delete-a-batch-transform-job) langkah-langkahnya. Pekerjaan yang telah selesai atau dihentikan tidak dikenakan biaya apa pun untuk sumber daya SageMaker AI. 

#### Nilai status transformasi Batch
<a name="batch-transform-status-values"></a>

`STATUS`Bidang dapat berupa salah satu nilai berikut: 
+ `Completed` 
+ `InProgress` 
+ `Failed` 
+ `Stopped` 
+ `Stopping` 

Status ini datang langsung dari [dokumentasi API](https://docs.aws.amazon.com/sagemaker/latest/dg/API_DescribeHyperParameterTuningJob.html#SageMaker-DescribeHyperParameterTuningJob-response-HyperParameterTuningJobStatus) resmi SageMaker AI. 

Selain status SageMaker AI resmi, dimungkinkan `STATUS` untuk menjadi`SynchronizingK8sJobWithSageMaker`. Ini berarti bahwa operator belum memproses pekerjaan.

### Jelaskan BatchTransformJob
<a name="describe-a-batch-transform-job"></a>

Anda dapat memperoleh detail debugging menggunakan `describe` `kubectl` perintah.

```
kubectl describe batchtransformjob xgboost-mnist-batch-transform
```

Output Anda akan terlihat seperti berikut: 

```
Name:         xgboost-mnist-batch-transform
Namespace:    default
Labels:       <none>
Annotations:  kubectl.kubernetes.io/last-applied-configuration:
                {"apiVersion":"sagemaker.aws.amazon.com/v1","kind":"BatchTransformJob","metadata":{"annotations":{},"name":"xgboost-mnist","namespace"...
API Version:  sagemaker.aws.amazon.com/v1
Kind:         BatchTransformJob
Metadata:
  Creation Timestamp:  2019-11-18T03:44:00Z
  Finalizers:
    sagemaker-operator-finalizer
  Generation:        2
  Resource Version:  21990924
  Self Link:         /apis/sagemaker.aws.amazon.com/v1/namespaces/default/batchtransformjobs/xgboost-mnist
  UID:               a88fb198-09b5-11ea-ac44-0aa8a9UIDNUM
Spec:
  Model Name:  TrainingJob-20190814SMJOb-IKEB
  Region:      us-east-1
  Transform Input:
    Content Type:  text/csv
    Data Source:
      S 3 Data Source:
        S 3 Data Type:  S3Prefix
        S 3 Uri:        s3://amzn-s3-demo-bucket/mnist_kmeans_example/input
  Transform Job Name:   xgboost-mnist-a88fb19809b511eaac440aa8a9SMJOB
  Transform Output:
    S 3 Output Path:  s3://amzn-s3-demo-bucket/mnist_kmeans_example/output
  Transform Resources:
    Instance Count:  1
    Instance Type:   ml.m4.xlarge
Status:
  Last Check Time:                2019-11-19T22:50:40Z
  Sage Maker Transform Job Name:  xgboost-mnist-a88fb19809b511eaac440aaSMJOB
  Transform Job Status:           Completed
Events:                           <none>
```

### Lihat log dari BatchTransformJobs
<a name="view-logs-from-batch-transform-jobs"></a>

Gunakan perintah berikut untuk melihat log dari pekerjaan transformasi `xgboost-mnist` batch: 

```
kubectl smlogs batchtransformjob xgboost-mnist-batch-transform
```

### Menghapus BatchTransformJob
<a name="delete-a-batch-transform-job"></a>

Gunakan perintah berikut untuk menghentikan pekerjaan transformasi batch di SageMaker AI. 

```
kubectl delete batchTransformJob xgboost-mnist-batch-transform
```

Output Anda akan terlihat seperti berikut: 

```
batchtransformjob.sagemaker.aws.amazon.com "xgboost-mnist" deleted
```

Perintah ini menghapus tugas transformasi batch dari cluster Kubernetes Anda, serta menghentikannya di AI. SageMaker Pekerjaan yang telah berhenti atau selesai tidak dikenakan biaya apa pun untuk sumber daya SageMaker AI. Hapus membutuhkan waktu sekitar 2 menit untuk membersihkan sumber daya dari SageMaker AI. 

**Catatan**: SageMaker AI tidak menghapus pekerjaan transformasi batch. Pekerjaan yang dihentikan terus ditampilkan di konsol SageMaker AI. 

## HostingDeployment Operator
<a name="hosting-deployment-operator"></a>

HostingDeployment operator mendukung pembuatan dan penghapusan titik akhir, serta memperbarui titik akhir yang ada, untuk inferensi waktu nyata. Operator penerapan hosting merekonsiliasi spesifikasi pekerjaan penerapan hosting yang Anda tentukan ke SageMaker AI dengan membuat model, konfigurasi titik akhir, dan titik akhir di AI. SageMaker Anda dapat mempelajari lebih lanjut tentang inferensi SageMaker AI dalam [dokumentasi SageMaker AI CreateEndpoint API](https://docs.aws.amazon.com/sagemaker/latest/dg/API_CreateEndpoint.html). 

**Topics**
+ [Konfigurasikan HostingDeployment sumber daya](#configure-a-hostingdeployment-resource)
+ [Buat HostingDeployment](#create-a-hostingdeployment)
+ [Daftar HostingDeployments](#list-hostingdeployments)
+ [Jelaskan HostingDeployment](#describe-a-hostingdeployment)
+ [Memanggil titik akhir](#invoking-the-endpoint)
+ [Perbarui HostingDeployment](#update-hostingdeployment)
+ [Hapus HostingDeployment](#delete-the-hostingdeployment)

### Konfigurasikan HostingDeployment sumber daya
<a name="configure-a-hostingdeployment-resource"></a>

Unduh file YAMM sampel untuk pekerjaan penyebaran hosting menggunakan perintah berikut: 

```
wget https://raw.githubusercontent.com/aws/amazon-sagemaker-operator-for-k8s/master/samples/xgboost-mnist-hostingdeployment.yaml
```

`xgboost-mnist-hostingdeployment.yaml`File memiliki komponen berikut yang dapat diedit sesuai kebutuhan: 
+ *ProductionVariants*. Varian produksi adalah serangkaian contoh yang melayani satu model. SageMaker AI load-balance antara semua varian produksi sesuai dengan bobot yang ditetapkan. 
+ *Model*. Model adalah wadah dan peran eksekusi ARN yang diperlukan untuk melayani model. Ini membutuhkan setidaknya satu wadah. 
+ *Wadah*. Sebuah wadah menentukan dataset dan melayani gambar. Jika Anda menggunakan algoritme kustom Anda sendiri alih-alih algoritme yang disediakan oleh SageMaker AI, kode inferensi harus memenuhi persyaratan SageMaker AI. Untuk informasi selengkapnya, lihat [Menggunakan Algoritma Anda Sendiri dengan SageMaker AI](https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms.html). 

### Buat HostingDeployment
<a name="create-a-hostingdeployment"></a>

Untuk membuat HostingDeployment, gunakan `kubectl` untuk menerapkan file `hosting.yaml` dengan perintah berikut: 

```
kubectl apply -f hosting.yaml
```

SageMaker AI membuat titik akhir dengan konfigurasi yang ditentukan. Anda dikenakan biaya untuk sumber daya SageMaker AI yang digunakan selama masa hidup titik akhir Anda. Anda tidak dikenakan biaya apa pun setelah titik akhir Anda dihapus. 

Proses pembuatan memakan waktu sekitar 10 menit. 

### Daftar HostingDeployments
<a name="list-hostingdeployments"></a>

Untuk memverifikasi bahwa HostingDeployment telah dibuat, gunakan perintah berikut: 

```
kubectl get hostingdeployments
```

Output Anda akan terlihat seperti berikut: 

```
NAME           STATUS     SAGEMAKER-ENDPOINT-NAME
host-xgboost   Creating   host-xgboost-def0e83e0d5f11eaaa450aSMLOGS
```

#### HostingDeployment nilai status
<a name="hostingdeployment-status-values"></a>

Bidang status dapat berupa salah satu dari beberapa nilai: 
+ `SynchronizingK8sJobWithSageMaker`: Operator sedang mempersiapkan untuk membuat titik akhir. 
+ `ReconcilingEndpoint`: Operator membuat, memperbarui, atau menghapus sumber daya titik akhir. Jika HostingDeployment sisa-sisa dalam keadaan ini, gunakan `kubectl describe` untuk melihat alasannya di `Additional` lapangan. 
+ `OutOfService`: Titik akhir tidak tersedia untuk menerima permintaan yang masuk. 
+ `Creating`: [CreateEndpoint](https://docs.aws.amazon.com/sagemaker/latest/dg/API_CreateEndpoint.html)sedang berjalan. 
+ `Updating`: [UpdateEndpoint](https://docs.aws.amazon.com/sagemaker/latest/dg/API_UpdateEndpoint.html)atau [UpdateEndpointWeightsAndCapacities](https://docs.aws.amazon.com/sagemaker/latest/dg/API_UpdateEndpointWeightsAndCapacities.html)sedang berjalan. 
+ `SystemUpdating`: Titik akhir sedang menjalani pemeliharaan dan tidak dapat diperbarui atau dihapus atau diskalakan ulang sampai selesai. Operasi pemeliharaan ini tidak mengubah nilai yang ditentukan pelanggan seperti konfigurasi VPC, AWS KMS enkripsi, model, jenis instans, atau jumlah instance. 
+ `RollingBack`: Titik akhir gagal menaikkan atau menurunkan atau mengubah bobot variannya dan sedang dalam proses memutar kembali ke konfigurasi sebelumnya. Setelah rollback selesai, titik akhir kembali ke status. `InService` Status transisi ini hanya berlaku untuk titik akhir yang mengaktifkan penskalaan otomatis dan mengalami perubahan bobot atau kapasitas varian sebagai bagian dari [UpdateEndpointWeightsAndCapacities](https://docs.aws.amazon.com/sagemaker/latest/dg/API_UpdateEndpointWeightsAndCapacities.html)panggilan atau ketika operasi dipanggil secara eksplisit. [UpdateEndpointWeightsAndCapacities](https://docs.aws.amazon.com/sagemaker/latest/dg/API_UpdateEndpointWeightsAndCapacities.html) 
+ `InService`: Titik akhir tersedia untuk memproses permintaan yang masuk. 
+ `Deleting`: [DeleteEndpoint](https://docs.aws.amazon.com/sagemaker/latest/dg/API_DeleteEndpoint.html)sedang berjalan. 
+ `Failed`: Titik akhir tidak dapat dibuat, diperbarui, atau diskalakan ulang. Gunakan [DescribeEndpoint: FailureReason](https://docs.aws.amazon.com/sagemaker/latest/dg/API_DescribeEndpoint.html#SageMaker-DescribeEndpoint-response-FailureReason) untuk informasi tentang kegagalan. [DeleteEndpoint](https://docs.aws.amazon.com/sagemaker/latest/dg/API_DeleteEndpoint.html)adalah satu-satunya operasi yang dapat dilakukan pada titik akhir yang gagal. 

### Jelaskan HostingDeployment
<a name="describe-a-hostingdeployment"></a>

Anda dapat memperoleh detail debugging menggunakan `describe` `kubectl` perintah.

```
kubectl describe hostingdeployment
```

Output Anda akan terlihat seperti berikut: 

```
Name:         host-xgboost
Namespace:    default
Labels:       <none>
Annotations:  kubectl.kubernetes.io/last-applied-configuration:
                {"apiVersion":"sagemaker.aws.amazon.com/v1","kind":"HostingDeployment","metadata":{"annotations":{},"name":"host-xgboost","namespace":"def..."
API Version:  sagemaker.aws.amazon.com/v1
Kind:         HostingDeployment
Metadata:
  Creation Timestamp:  2019-11-22T19:40:00Z
  Finalizers:
    sagemaker-operator-finalizer
  Generation:        1
  Resource Version:  4258134
  Self Link:         /apis/sagemaker.aws.amazon.com/v1/namespaces/default/hostingdeployments/host-xgboost
  UID:               def0e83e-0d5f-11ea-aa45-0a3507uiduid
Spec:
  Containers:
    Container Hostname:  xgboost
    Image:               123456789012.dkr.ecr.us-east-2.amazonaws.com/xgboost:latest
    Model Data URL:      s3://amzn-s3-demo-bucket/inference/xgboost-mnist/model.tar.gz
  Models:
    Containers:
      xgboost
    Execution Role Arn:  arn:aws:iam::123456789012:role/service-role/AmazonSageMaker-ExecutionRole
    Name:                xgboost-model
    Primary Container:   xgboost
  Production Variants:
    Initial Instance Count:  1
    Instance Type:           ml.c5.large
    Model Name:              xgboost-model
    Variant Name:            all-traffic
  Region:                    us-east-2
Status:
  Creation Time:         2019-11-22T19:40:04Z
  Endpoint Arn:          arn:aws:sagemaker:us-east-2:123456789012:endpoint/host-xgboost-def0e83e0d5f11eaaaexample
  Endpoint Config Name:  host-xgboost-1-def0e83e0d5f11e-e08f6c510d5f11eaaa450aexample
  Endpoint Name:         host-xgboost-def0e83e0d5f11eaaa450a350733ba06
  Endpoint Status:       Creating
  Endpoint URL:          https://runtime.sagemaker.us-east-2.amazonaws.com/endpoints/host-xgboost-def0e83e0d5f11eaaaexample/invocations
  Last Check Time:       2019-11-22T19:43:57Z
  Last Modified Time:    2019-11-22T19:40:04Z
  Model Names:
    Name:   xgboost-model
    Value:  xgboost-model-1-def0e83e0d5f11-df5cc9fd0d5f11eaaa450aexample
Events:     <none>
```

Bidang status memberikan informasi lebih lanjut menggunakan bidang berikut: 
+ `Additional`: Informasi tambahan tentang status penyebaran hosting. Bidang ini opsional dan hanya diisi jika terjadi kesalahan. 
+ `Creation Time`: Saat titik akhir dibuat di SageMaker AI. 
+ `Endpoint ARN`: Titik akhir SageMaker AI ARN. 
+ `Endpoint Config Name`: Nama SageMaker AI dari konfigurasi titik akhir. 
+ `Endpoint Name`: Nama SageMaker AI dari titik akhir. 
+ `Endpoint Status`: Status titik akhir. 
+ `Endpoint URL`URL HTTPS yang dapat digunakan untuk mengakses endpoint. Untuk informasi selengkapnya, lihat [Menerapkan Model pada Layanan Hosting SageMaker AI](https://docs.aws.amazon.com/sagemaker/latest/dg/deploy-model.html). 
+ `FailureReason`: Jika perintah buat, perbarui, atau hapus gagal, penyebabnya ditampilkan di sini. 
+ `Last Check Time`: Terakhir kali operator memeriksa status titik akhir. 
+ `Last Modified Time`: Terakhir kali endpoint diubah. 
+ `Model Names`: Sepasang nama model nilai kunci untuk nama HostingDeployment model SageMaker AI. 

### Memanggil titik akhir
<a name="invoking-the-endpoint"></a>

Setelah status endpoint`InService`, Anda dapat memanggil endpoint dengan dua cara: menggunakan AWS CLI, yang melakukan otentikasi dan penandatanganan permintaan URL, atau menggunakan klien HTTP seperti cURL. Jika Anda menggunakan klien Anda sendiri, Anda perlu melakukan penandatanganan dan otentikasi URL AWS v4 sendiri. 

Untuk memanggil endpoint menggunakan AWS CLI, jalankan perintah berikut. Pastikan untuk mengganti nama Region dan endpoint dengan nama titik akhir Region dan SageMaker AI endpoint Anda. Informasi ini dapat diperoleh dari output`kubectl describe`. 

```
# Invoke the endpoint with mock input data.
aws sagemaker-runtime invoke-endpoint \
  --region us-east-2 \
  --endpoint-name <endpoint name> \
  --body $(seq 784 | xargs echo | sed 's/ /,/g') \
  >(cat) \
  --content-type text/csv > /dev/null
```

Misalnya, jika Region Anda `us-east-2` dan nama konfigurasi titik akhir Anda adalah`host-xgboost-f56b6b280d7511ea824b129926example`, maka perintah berikut akan memanggil titik akhir: 

```
aws sagemaker-runtime invoke-endpoint \
  --region us-east-2 \
  --endpoint-name host-xgboost-f56b6b280d7511ea824b1299example \
  --body $(seq 784 | xargs echo | sed 's/ /,/g') \
  >(cat) \
  --content-type text/csv > /dev/null
4.95847082138
```

Di sini, `4.95847082138` adalah prediksi dari model untuk data tiruan. 

### Perbarui HostingDeployment
<a name="update-hostingdeployment"></a>

1. Setelah HostingDeployment memiliki status`InService`, itu dapat diperbarui. Mungkin butuh waktu sekitar 10 menit HostingDeployment untuk bisa beroperasi. Untuk memverifikasi bahwa statusnya`InService`, gunakan perintah berikut: 

   ```
   kubectl get hostingdeployments
   ```

1.  HostingDeployment Dapat diperbarui sebelum statusnya`InService`. Operator menunggu hingga titik akhir SageMaker AI `InService` sebelum menerapkan pembaruan. 

   Untuk menerapkan pembaruan, ubah `hosting.yaml` file. Misalnya, ubah `initialInstanceCount` bidang dari 1 menjadi 2 sebagai berikut: 

   ```
   apiVersion: sagemaker.aws.amazon.com/v1
   kind: HostingDeployment
   metadata:
     name: host-xgboost
   spec:
       region: us-east-2
       productionVariants:
           - variantName: all-traffic
             modelName: xgboost-model
             initialInstanceCount: 2
             instanceType: ml.c5.large
       models:
           - name: xgboost-model
             executionRoleArn: arn:aws:iam::123456789012:role/service-role/AmazonSageMaker-ExecutionRole
             primaryContainer: xgboost
             containers:
               - xgboost
       containers:
           - containerHostname: xgboost
             modelDataUrl: s3://amzn-s3-demo-bucket/inference/xgboost-mnist/model.tar.gz
             image: 123456789012.dkr.ecr.us-east-2.amazonaws.com/xgboost:latest
   ```

1. Simpan file, lalu gunakan `kubectl` untuk menerapkan pembaruan Anda sebagai berikut. Anda akan melihat perubahan status dari `InService` ke`ReconcilingEndpoint`, kemudian`Updating`. 

   ```
   $ kubectl apply -f hosting.yaml
   hostingdeployment.sagemaker.aws.amazon.com/host-xgboost configured
   
   $ kubectl get hostingdeployments
   NAME           STATUS                SAGEMAKER-ENDPOINT-NAME
   host-xgboost   ReconcilingEndpoint   host-xgboost-def0e83e0d5f11eaaa450a350abcdef
   
   $ kubectl get hostingdeployments
   NAME           STATUS     SAGEMAKER-ENDPOINT-NAME
   host-xgboost   Updating   host-xgboost-def0e83e0d5f11eaaa450a3507abcdef
   ```

SageMaker AI menyebarkan serangkaian instance baru dengan model Anda, mengalihkan lalu lintas untuk menggunakan instance baru, dan menguras instance lama. Begitu proses ini dimulai, statusnya menjadi`Updating`. Setelah pembaruan selesai, titik akhir Anda menjadi`InService`. Proses ini memakan waktu sekitar 10 menit. 

### Hapus HostingDeployment
<a name="delete-the-hostingdeployment"></a>

1. Gunakan `kubectl` untuk menghapus HostingDeployment dengan perintah berikut: 

   ```
   kubectl delete hostingdeployments host-xgboost
   ```

   Output Anda akan terlihat seperti berikut: 

   ```
   hostingdeployment.sagemaker.aws.amazon.com "host-xgboost" deleted
   ```

1. Untuk memverifikasi bahwa penyebaran hosting telah dihapus, gunakan perintah berikut: 

   ```
   kubectl get hostingdeployments
   No resources found.
   ```

Titik akhir yang telah dihapus tidak dikenakan biaya apa pun untuk sumber daya SageMaker AI. 

## ProcessingJob Operator
<a name="kubernetes-processing-job-operator"></a>

ProcessingJob operator digunakan untuk meluncurkan pekerjaan SageMaker pemrosesan Amazon. Untuk informasi lebih lanjut tentang SageMaker Memproses pekerjaan, lihat [CreateProcessingJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateProcessingJob.html). 

**Topics**
+ [Membuat file ProcessingJob menggunakan YAMG](#kubernetes-processing-job-yaml)
+ [Daftar ProcessingJobs](#kubernetes-processing-job-list)
+ [Jelaskan ProcessingJob](#kubernetes-processing-job-description)
+ [Menghapus ProcessingJob](#kubernetes-processing-job-delete)

### Membuat file ProcessingJob menggunakan YAMG
<a name="kubernetes-processing-job-yaml"></a>

Ikuti langkah-langkah berikut untuk membuat pekerjaan SageMaker pemrosesan Amazon dengan menggunakan file YAMAL:

1. Unduh skrip `kmeans_preprocessing.py` pra-pemrosesan.

   ```
   wget https://raw.githubusercontent.com/aws/amazon-sagemaker-operator-for-k8s/master/samples/kmeans_preprocessing.py
   ```

1. Di salah satu bucket Amazon Simple Storage Service (Amazon S3) Anda, buat `mnist_kmeans_example/processing_code` folder dan unggah skrip ke folder.

1. Unduh `kmeans-mnist-processingjob.yaml` filenya.

   ```
   wget https://raw.githubusercontent.com/aws/amazon-sagemaker-operator-for-k8s/master/samples/kmeans-mnist-processingjob.yaml
   ```

1. Edit file YAMM untuk menentukan `sagemaker-execution-role` dan mengganti semua instance `amzn-s3-demo-bucket` dengan bucket S3 Anda.

   ```
   ...
   metadata:
     name: kmeans-mnist-processing
   ...
     roleArn: arn:aws:iam::<acct-id>:role/service-role/<sagemaker-execution-role>
     ...
     processingOutputConfig:
       outputs:
         ...
             s3Output:
               s3Uri: s3://<amzn-s3-demo-bucket>/mnist_kmeans_example/output/
     ...
     processingInputs:
       ...
           s3Input:
             s3Uri: s3://<amzn-s3-demo-bucket>/mnist_kmeans_example/processing_code/kmeans_preprocessing.py
   ```

   `sagemaker-execution-role`Harus memiliki izin agar SageMaker AI dapat mengakses bucket S3 CloudWatch, Amazon, dan layanan lainnya atas nama Anda. Untuk informasi selengkapnya tentang membuat peran eksekusi, lihat [Peran SageMaker AI](https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-roles.html#sagemaker-roles-createtrainingjob-perms).

1. Terapkan file YAMG menggunakan salah satu perintah berikut.

   Untuk instalasi dengan cakupan cluster:

   ```
   kubectl apply -f kmeans-mnist-processingjob.yaml
   ```

   Untuk instalasi dengan cakupan ruang nama:

   ```
   kubectl apply -f kmeans-mnist-processingjob.yaml -n <NAMESPACE>
   ```

### Daftar ProcessingJobs
<a name="kubernetes-processing-job-list"></a>

Gunakan salah satu perintah berikut untuk membuat daftar semua pekerjaan yang dibuat menggunakan ProcessingJob operator. `SAGEMAKER-JOB-NAME `berasal dari `metadata` bagian file YAMM.

Untuk instalasi dengan cakupan cluster:

```
kubectl get ProcessingJob kmeans-mnist-processing
```

Untuk instalasi dengan cakupan ruang nama:

```
kubectl get ProcessingJob -n <NAMESPACE> kmeans-mnist-processing
```

Output-nya semestinya mirip dengan yang berikut:

```
NAME                    STATUS     CREATION-TIME        SAGEMAKER-JOB-NAME
kmeans-mnist-processing InProgress 2020-09-22T21:13:25Z kmeans-mnist-processing-7410ed52fd1811eab19a165ae9f9e385
```

Output mencantumkan semua pekerjaan terlepas dari statusnya. Untuk menghapus pekerjaan dari daftar, lihat [Menghapus Pekerjaan Pemrosesan](https://docs.aws.amazon.com/sagemaker/latest/dg/kubernetes-processing-job-operator.html#kubernetes-processing-job-delete).

**ProcessingJob Status**
+ `SynchronizingK8sJobWithSageMaker`— Pekerjaan pertama kali diserahkan ke cluster. Operator telah menerima permintaan dan sedang bersiap untuk membuat pekerjaan pemrosesan.
+ `Reconciling`— Operator menginisialisasi atau memulihkan dari kesalahan sementara, bersama dengan yang lain. Jika pekerjaan pemrosesan tetap dalam keadaan ini, gunakan `kubectl` `describe` perintah untuk melihat alasannya di `Additional` lapangan.
+ `InProgress | Completed | Failed | Stopping | Stopped`— Status pekerjaan SageMaker Pemrosesan. Untuk informasi selengkapnya, lihat [DescribeProcessingJob](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeProcessingJob.html#sagemaker-DescribeProcessingJob-response-ProcessingJobStatus).
+ `Error`— Operator tidak dapat memulihkan dengan rekonsiliasi.

Pekerjaan yang telah selesai, berhenti, atau gagal tidak dikenakan biaya lebih lanjut untuk sumber daya SageMaker AI.

### Jelaskan ProcessingJob
<a name="kubernetes-processing-job-description"></a>

Gunakan salah satu perintah berikut untuk mendapatkan detail lebih lanjut tentang pekerjaan pemrosesan. Perintah ini biasanya digunakan untuk men-debug masalah atau memeriksa parameter pekerjaan pemrosesan.

Untuk instalasi dengan cakupan cluster:

```
kubectl describe processingjob kmeans-mnist-processing
```

Untuk instalasi dengan cakupan ruang nama:

```
kubectl describe processingjob kmeans-mnist-processing -n <NAMESPACE>
```

Output untuk pekerjaan pemrosesan Anda akan terlihat mirip dengan yang berikut ini.

```
$ kubectl describe ProcessingJob kmeans-mnist-processing
Name:         kmeans-mnist-processing
Namespace:    default
Labels:       <none>
Annotations:  kubectl.kubernetes.io/last-applied-configuration:
                {"apiVersion":"sagemaker.aws.amazon.com/v1","kind":"ProcessingJob","metadata":{"annotations":{},"name":"kmeans-mnist-processing",...
API Version:  sagemaker.aws.amazon.com/v1
Kind:         ProcessingJob
Metadata:
  Creation Timestamp:  2020-09-22T21:13:25Z
  Finalizers:
    sagemaker-operator-finalizer
  Generation:        2
  Resource Version:  21746658
  Self Link:         /apis/sagemaker.aws.amazon.com/v1/namespaces/default/processingjobs/kmeans-mnist-processing
  UID:               7410ed52-fd18-11ea-b19a-165ae9f9e385
Spec:
  App Specification:
    Container Entrypoint:
      python
      /opt/ml/processing/code/kmeans_preprocessing.py
    Image Uri:  763104351884.dkr.ecr.us-west-2.amazonaws.com/pytorch-training:1.5.0-cpu-py36-ubuntu16.04
  Environment:
    Name:   MYVAR
    Value:  my_value
    Name:   MYVAR2
    Value:  my_value2
  Network Config:
  Processing Inputs:
    Input Name:  mnist_tar
    s3Input:
      Local Path:   /opt/ml/processing/input
      s3DataType:   S3Prefix
      s3InputMode:  File
      s3Uri:        s3://<s3bucket>-us-west-2/algorithms/kmeans/mnist/mnist.pkl.gz
    Input Name:     source_code
    s3Input:
      Local Path:   /opt/ml/processing/code
      s3DataType:   S3Prefix
      s3InputMode:  File
      s3Uri:        s3://<s3bucket>/mnist_kmeans_example/processing_code/kmeans_preprocessing.py
  Processing Output Config:
    Outputs:
      Output Name:  train_data
      s3Output:
        Local Path:    /opt/ml/processing/output_train/
        s3UploadMode:  EndOfJob
        s3Uri:         s3://<s3bucket>/mnist_kmeans_example/output/
      Output Name:     test_data
      s3Output:
        Local Path:    /opt/ml/processing/output_test/
        s3UploadMode:  EndOfJob
        s3Uri:         s3://<s3bucket>/mnist_kmeans_example/output/
      Output Name:     valid_data
      s3Output:
        Local Path:    /opt/ml/processing/output_valid/
        s3UploadMode:  EndOfJob
        s3Uri:         s3://<s3bucket>/mnist_kmeans_example/output/
  Processing Resources:
    Cluster Config:
      Instance Count:     1
      Instance Type:      ml.m5.xlarge
      Volume Size In GB:  20
  Region:                 us-west-2
  Role Arn:               arn:aws:iam::<acct-id>:role/m-sagemaker-role
  Stopping Condition:
    Max Runtime In Seconds:  1800
  Tags:
    Key:    tagKey
    Value:  tagValue
Status:
  Cloud Watch Log URL:             https://us-west-2.console.aws.amazon.com/cloudwatch/home?region=us-west-2#logStream:group=/aws/sagemaker/ProcessingJobs;prefix=kmeans-mnist-processing-7410ed52fd1811eab19a165ae9f9e385;streamFilter=typeLogStreamPrefix
  Last Check Time:                 2020-09-22T21:14:29Z
  Processing Job Status:           InProgress
  Sage Maker Processing Job Name:  kmeans-mnist-processing-7410ed52fd1811eab19a165ae9f9e385
Events:                            <none>
```

### Menghapus ProcessingJob
<a name="kubernetes-processing-job-delete"></a>

Saat Anda menghapus pekerjaan pemrosesan, pekerjaan SageMaker Pemrosesan dihapus dari Kubernetes tetapi pekerjaan tersebut tidak dihapus dari AI. SageMaker Jika status pekerjaan di SageMaker AI `InProgress` adalah pekerjaan dihentikan. Memproses pekerjaan yang dihentikan tidak dikenakan biaya apa pun untuk sumber daya SageMaker AI. Gunakan salah satu perintah berikut untuk menghapus pekerjaan pemrosesan. 

Untuk instalasi dengan cakupan cluster:

```
kubectl delete processingjob kmeans-mnist-processing
```

Untuk instalasi dengan cakupan ruang nama:

```
kubectl delete processingjob kmeans-mnist-processing -n <NAMESPACE>
```

Output untuk pekerjaan pemrosesan Anda akan terlihat mirip dengan yang berikut ini.

```
processingjob.sagemaker.aws.amazon.com "kmeans-mnist-processing" deleted
```



**catatan**  
SageMaker AI tidak menghapus pekerjaan pemrosesan. Pekerjaan yang dihentikan terus ditampilkan di konsol SageMaker AI. `delete`Perintah membutuhkan beberapa menit untuk membersihkan sumber daya dari SageMaker AI.

## HostingAutoscalingPolicy (HAP) Operator
<a name="kubernetes-hap-operator"></a>

Operator HostingAutoscalingPolicy (HAP) mengambil daftar sumber daya IDs sebagai input dan menerapkan kebijakan yang sama untuk masing-masing sumber daya. Setiap ID sumber daya adalah kombinasi dari nama endpoint dan nama varian. Operator HAP melakukan dua langkah: ia mendaftarkan sumber daya IDs dan kemudian menerapkan kebijakan penskalaan ke setiap ID sumber daya. `Delete`membatalkan kedua tindakan tersebut. [Anda dapat menerapkan HAP ke titik akhir SageMaker AI yang ada atau Anda dapat membuat titik akhir SageMaker AI baru menggunakan operator. HostingDeployment ](https://docs.aws.amazon.com/sagemaker/latest/dg/hosting-deployment-operator.html#create-a-hostingdeployment) Anda dapat membaca selengkapnya tentang penskalaan otomatis SageMaker AI dalam dokumentasi Kebijakan Penskalaan [Otomatis Aplikasi](https://docs.aws.amazon.com/sagemaker/latest/dg/endpoint-auto-scaling.html).

**catatan**  
Dalam `kubectl` perintah Anda, Anda dapat menggunakan formulir pendek`hap`,, sebagai pengganti`hostingautoscalingpolicy`.

**Topics**
+ [Membuat file HostingAutoscalingPolicy menggunakan YAMG](#kubernetes-hap-job-yaml)
+ [Daftar HostingAutoscalingPolicies](#kubernetes-hap-list)
+ [Jelaskan HostingAutoscalingPolicy](#kubernetes-hap-describe)
+ [Perbarui HostingAutoscalingPolicy](#kubernetes-hap-update)
+ [Menghapus HostingAutoscalingPolicy](#kubernetes-hap-delete)
+ [Memperbarui atau menghapus titik akhir dengan HostingAutoscalingPolicy](#kubernetes-hap-update-delete-endpoint)

### Membuat file HostingAutoscalingPolicy menggunakan YAMG
<a name="kubernetes-hap-job-yaml"></a>

Gunakan file YAMM untuk membuat HostingAutoscalingPolicy (HAP) yang menerapkan metrik yang telah ditentukan atau kustom ke satu atau beberapa SageMaker titik akhir AI.

Amazon SageMaker AI memerlukan nilai khusus untuk menerapkan penskalaan otomatis ke varian Anda. Jika nilai-nilai ini tidak ditentukan dalam spesifikasi YAMB, operator HAP menerapkan nilai default berikut.

```
# Do not change
Namespace                    = "sagemaker"
# Do not change
ScalableDimension            = "sagemaker:variant:DesiredInstanceCount"
# Only one supported
PolicyType                   = "TargetTrackingScaling"
# This is the default policy name but can be changed to apply a custom policy
DefaultAutoscalingPolicyName = "SageMakerEndpointInvocationScalingPolicy"
```

Gunakan sampel berikut untuk membuat HAP yang menerapkan metrik yang telah ditentukan atau kustom ke satu atau beberapa titik akhir.

#### Contoh 1: Menerapkan metrik yang telah ditentukan ke varian titik akhir tunggal
<a name="kubernetes-hap-predefined-metric"></a>

1. Unduh file YAMM sampel untuk metrik yang telah ditentukan menggunakan perintah berikut:

   ```
   wget https://raw.githubusercontent.com/aws/amazon-sagemaker-operator-for-k8s/master/samples/hap-predefined-metric.yaml
   ```

1. Edit file YAMG untuk menentukan file Anda`endpointName`,`variantName`, dan`Region`.

1. Gunakan salah satu perintah berikut untuk menerapkan metrik yang telah ditentukan ke ID sumber daya tunggal (nama titik akhir dan kombinasi nama varian).

   Untuk instalasi dengan cakupan cluster:

   ```
   kubectl apply -f hap-predefined-metric.yaml
   ```

   Untuk instalasi dengan cakupan ruang nama:

   ```
   kubectl apply -f hap-predefined-metric.yaml -n <NAMESPACE>
   ```

#### Contoh 2: Menerapkan metrik khusus ke varian titik akhir tunggal
<a name="kubernetes-hap-custom-metric"></a>

1. Unduh contoh file YAMAL untuk metrik kustom menggunakan perintah berikut:

   ```
   wget https://raw.githubusercontent.com/aws/amazon-sagemaker-operator-for-k8s/master/samples/hap-custom-metric.yaml
   ```

1. Edit file YAMG untuk menentukan file Anda`endpointName`,`variantName`, dan`Region`.

1. Gunakan salah satu perintah berikut untuk menerapkan metrik kustom ke ID sumber daya tunggal (nama titik akhir dan kombinasi nama varian) sebagai pengganti yang direkomendasikan`SageMakerVariantInvocationsPerInstance`.
**catatan**  
Amazon SageMaker AI tidak memeriksa validitas spesifikasi YAMM Anda.

   Untuk instalasi dengan cakupan cluster:

   ```
   kubectl apply -f hap-custom-metric.yaml
   ```

   Untuk instalasi dengan cakupan ruang nama:

   ```
   kubectl apply -f hap-custom-metric.yaml -n <NAMESPACE>
   ```

#### Contoh 3: Menerapkan kebijakan penskalaan ke beberapa titik akhir dan varian
<a name="kubernetes-hap-scaling-policy"></a>

Anda dapat menggunakan operator HAP untuk menerapkan kebijakan penskalaan yang sama ke beberapa sumber daya. IDs `scaling_policy`Permintaan terpisah dibuat untuk setiap ID sumber daya (nama titik akhir dan kombinasi nama varian).

1. Unduh file YAMM sampel untuk metrik yang telah ditentukan menggunakan perintah berikut:

   ```
   wget https://raw.githubusercontent.com/aws/amazon-sagemaker-operator-for-k8s/master/samples/hap-predefined-metric.yaml
   ```

1. Edit file YAMM untuk menentukan Anda `Region` `endpointName` dan beberapa serta `variantName` nilai.

1. Gunakan salah satu perintah berikut untuk menerapkan metrik yang telah ditentukan ke beberapa sumber daya IDs (nama titik akhir dan kombinasi nama varian).

   Untuk instalasi dengan cakupan cluster:

   ```
   kubectl apply -f hap-predefined-metric.yaml
   ```

   Untuk instalasi dengan cakupan ruang nama:

   ```
   kubectl apply -f hap-predefined-metric.yaml -n <NAMESPACE>
   ```

#### Pertimbangan HostingAutoscalingPolicies untuk beberapa titik akhir dan varian
<a name="kubernetes-hap-scaling-considerations"></a>

Pertimbangan berikut berlaku saat Anda menggunakan beberapa sumber daya IDs:
+ Jika Anda menerapkan satu kebijakan di beberapa sumber daya IDs, satu PolicYarn dibuat per ID sumber daya. Lima titik akhir memiliki lima KebijakanARNs. Saat Anda menjalankan `describe` perintah pada kebijakan, respons akan muncul sebagai satu pekerjaan dan menyertakan satu status pekerjaan.
+ Jika Anda menerapkan metrik kustom ke beberapa sumber daya IDs, dimensi atau nilai yang sama akan digunakan untuk semua nilai ID sumber daya (varian). Misalnya, jika Anda menerapkan metrik pelanggan untuk instance 1-5, dan dimensi varian titik akhir dipetakan ke varian 1, ketika varian 1 melebihi metrik, semua titik akhir diskalakan ke atas atau ke bawah.
+ Operator HAP mendukung pembaruan daftar sumber daya IDs. Jika Anda mengubah, menambah, atau menghapus sumber daya IDs ke spesifikasi, kebijakan penskalaan otomatis akan dihapus dari daftar varian sebelumnya dan diterapkan ke kombinasi ID sumber daya yang baru ditentukan. Gunakan [https://docs.aws.amazon.com/sagemaker/latest/dg/kubernetes-hap-operator.html#kubernetes-hap-describe](https://docs.aws.amazon.com/sagemaker/latest/dg/kubernetes-hap-operator.html#kubernetes-hap-describe)perintah untuk membuat daftar sumber daya IDs yang saat ini diterapkan kebijakan.

### Daftar HostingAutoscalingPolicies
<a name="kubernetes-hap-list"></a>

Gunakan salah satu perintah berikut untuk daftar all HostingAutoscalingPolicies (HAPs) yang dibuat menggunakan operator HAP.

Untuk instalasi dengan cakupan cluster:

```
kubectl get hap
```

Untuk instalasi dengan cakupan ruang nama:

```
kubectl get hap -n <NAMESPACE>
```

Output-nya semestinya mirip dengan yang berikut:

```
NAME             STATUS   CREATION-TIME
hap-predefined   Created  2021-07-13T21:32:21Z
```

Gunakan perintah berikut untuk memeriksa status HostingAutoscalingPolicy (HAP) Anda.

```
kubectl get hap <job-name>
```

Salah satu nilai berikut dikembalikan:
+ `Reconciling`— Jenis kesalahan tertentu menunjukkan status sebagai `Reconciling` pengganti`Error`. Beberapa contoh adalah kesalahan sisi server dan titik akhir di negara bagian atau. `Creating` `Updating` Periksa `Additional` bidang di status atau log operator untuk detail selengkapnya.
+ `Created`
+ `Error`

**Untuk melihat titik akhir penskalaan otomatis tempat Anda menerapkan kebijakan**

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

1. Di panel sisi kiri, perluas **Inferensi**.

1. Pilih **Titik akhir**.

1. Pilih nama titik akhir yang diminati.

1. Gulir ke bagian **Pengaturan runtime Endpoint**.

### Jelaskan HostingAutoscalingPolicy
<a name="kubernetes-hap-describe"></a>

Gunakan perintah berikut untuk mendapatkan rincian lebih lanjut tentang HostingAutoscalingPolicy (HAP). Perintah ini biasanya digunakan untuk men-debug masalah atau memeriksa sumber daya IDs (nama endpoint dan kombinasi nama varian) dari HAP.

```
kubectl describe hap <job-name>
```

### Perbarui HostingAutoscalingPolicy
<a name="kubernetes-hap-update"></a>

Operator HostingAutoscalingPolicy (HAP) mendukung pembaruan. Anda dapat mengedit spesifikasi YAMAL untuk mengubah nilai, lalu menerapkan kembali kebijakan tersebut. Operator HAP menghapus kebijakan yang ada dan menerapkan kebijakan baru.

### Menghapus HostingAutoscalingPolicy
<a name="kubernetes-hap-delete"></a>

Gunakan salah satu perintah berikut untuk menghapus kebijakan HostingAutoscalingPolicy (HAP).

Untuk instalasi dengan cakupan cluster:

```
kubectl delete hap hap-predefined
```

Untuk instalasi dengan cakupan ruang nama:

```
kubectl delete hap hap-predefined -n <NAMESPACE>
```

Perintah ini menghapus kebijakan penskalaan dan membatalkan pendaftaran target penskalaan dari Kubernetes. Perintah ini mengembalikan output sebagai berikut:

```
hostingautoscalingpolicies.sagemaker.aws.amazon.com "hap-predefined" deleted
```

### Memperbarui atau menghapus titik akhir dengan HostingAutoscalingPolicy
<a name="kubernetes-hap-update-delete-endpoint"></a>

Untuk memperbarui titik akhir yang memiliki HostingAutoscalingPolicy (HAP), gunakan `kubectl` `delete` perintah untuk menghapus HAP, memperbarui titik akhir, dan kemudian menerapkan kembali HAP.

Untuk menghapus titik akhir yang memiliki HAP, gunakan `kubectl` `delete` perintah untuk menghapus HAP sebelum Anda menghapus titik akhir.

# Migrasikan sumber daya ke Operator terbaru
<a name="kubernetes-sagemaker-operators-migrate"></a>

Kami menghentikan pengembangan dan dukungan teknis dari versi asli [ SageMaker Operator untuk Kubernetes](https://github.com/aws/amazon-sagemaker-operator-for-k8s/tree/master).

Jika saat ini Anda menggunakan [ SageMaker Operator untuk Kubernetes versi `v1.2.2` atau di bawah ini, kami sarankan untuk](https://github.com/aws/amazon-sagemaker-operator-for-k8s/tree/master) memigrasikan sumber daya Anda ke [pengontrol layanan ACK](https://github.com/aws-controllers-k8s/sagemaker-controller) untuk Amazon. SageMaker Pengontrol layanan ACK adalah generasi baru SageMaker Operator untuk Kubernetes berdasarkan [AWS Controller for Kubernetes](https://aws-controllers-k8s.github.io/community/) (ACK).

Untuk jawaban atas pertanyaan umum di akhir dukungan versi asli SageMaker Operator untuk Kubernetes, lihat [Mengumumkan Akhir Dukungan Versi Asli Operator SageMaker AI untuk Kubernetes](kubernetes-sagemaker-operators-eos-announcement.md)

Gunakan langkah-langkah berikut untuk memigrasikan sumber daya Anda dan menggunakan ACK untuk melatih, menyetel, dan menerapkan model pembelajaran mesin dengan Amazon SageMaker AI.

**catatan**  
Operator SageMaker AI terbaru untuk Kubernetes tidak kompatibel ke belakang.

**Topics**
+ [Prasyarat](#migrate-resources-to-new-operators-prerequisites)
+ [Mengadopsi sumber daya](#migrate-resources-to-new-operators-steps)
+ [Bersihkan sumber daya lama](#migrate-resources-to-new-operators-cleanup)
+ [Gunakan Operator SageMaker AI baru untuk Kubernetes](#migrate-resources-to-new-operators-tutorials)

## Prasyarat
<a name="migrate-resources-to-new-operators-prerequisites"></a>

Agar berhasil memigrasikan sumber daya ke Operator SageMaker AI terbaru untuk Kubernetes, Anda harus melakukan hal berikut:

1. Instal Operator SageMaker AI terbaru untuk Kubernetes. Lihat [Pengaturan](https://aws-controllers-k8s.github.io/community/docs/tutorials/sagemaker-example/#setup) di *Machine Learning dengan ACK SageMaker AI Controller* untuk step-by-step petunjuk.

1. Jika Anda menggunakan[HostingAutoscalingPolicy sumber daya](#migrate-resources-to-new-operators-hap), instal Application Auto Scaling Operator yang baru. Lihat [Penyiapan](https://aws-controllers-k8s.github.io/community/docs/tutorials/autoscaling-example/#setup) di *Beban Kerja SageMaker AI Skala dengan Application Auto* Scaling untuk petunjuk. step-by-step Langkah ini opsional jika Anda tidak menggunakan HostingAutoScalingPolicy sumber daya.

Jika izin dikonfigurasi dengan benar, maka pengontrol layanan ACK SageMaker AI dapat menentukan spesifikasi dan status AWS sumber daya dan merekonsiliasi sumber daya seolah-olah pengontrol ACK awalnya membuatnya.

## Mengadopsi sumber daya
<a name="migrate-resources-to-new-operators-steps"></a>

Operator SageMaker AI baru untuk Kubernetes menyediakan kemampuan untuk mengadopsi sumber daya yang awalnya tidak dibuat oleh pengontrol layanan ACK. Untuk informasi selengkapnya, lihat [Mengadopsi Sumber AWS Daya yang Ada](https://aws-controllers-k8s.github.io/community/docs/user-docs/adopted-resource/) di dokumentasi ACK.

Langkah-langkah berikut menunjukkan bagaimana Operator SageMaker AI baru untuk Kubernetes dapat mengadopsi titik akhir AI yang ada SageMaker . Simpan sampel berikut ke file bernama`adopt-endpoint-sample.yaml`. 

```
apiVersion: services.k8s.aws/v1alpha1
kind: AdoptedResource
metadata:
  name: adopt-endpoint-sample
spec:  
  aws:
    # resource to adopt, not created by ACK
    nameOrID: xgboost-endpoint
  kubernetes:
    group: sagemaker.services.k8s.aws
    kind: Endpoint
    metadata:
      # target K8s CR name
      name: xgboost-endpoint
```

Kirim sumber daya kustom (CR) menggunakan`kubectl apply`:

```
kubectl apply -f adopt-endpoint-sample.yaml
```

Gunakan `kubectl describe` untuk memeriksa kondisi status sumber daya yang Anda adopsi.

```
kubectl describe adoptedresource adopt-endpoint-sample
```

Verifikasi bahwa `ACK.Adopted` kondisinya`True`. Outputnya akan terlihat mirip dengan contoh berikut:

```
---
kind: AdoptedResource
metadata:
  annotations:
    kubectl.kubernetes.io/last-applied-configuration: '{"apiVersion":"services.k8s.aws/v1alpha1","kind":"AdoptedResource","metadata":{"annotations":{},"name":"xgboost-endpoint","namespace":"default"},"spec":{"aws":{"nameOrID":"xgboost-endpoint"},"kubernetes":{"group":"sagemaker.services.k8s.aws","kind":"Endpoint","metadata":{"name":"xgboost-endpoint"}}}}'
  creationTimestamp: '2021-04-27T02:49:14Z'
  finalizers:
  - finalizers.services.k8s.aws/AdoptedResource
  generation: 1
  name: adopt-endpoint-sample
  namespace: default
  resourceVersion: '12669876'
  selfLink: "/apis/services.k8s.aws/v1alpha1/namespaces/default/adoptedresources/adopt-endpoint-sample"
  uid: 35f8fa92-29dd-4040-9d0d-0b07bbd7ca0b
spec:
  aws:
    nameOrID: xgboost-endpoint
  kubernetes:
    group: sagemaker.services.k8s.aws
    kind: Endpoint
    metadata:
      name: xgboost-endpoint
status:
  conditions:
  - status: 'True'
    type: ACK.Adopted
```

Periksa apakah sumber daya Anda ada di klaster Anda:

```
kubectl describe endpoints.sagemaker xgboost-endpoint
```

### HostingAutoscalingPolicy sumber daya
<a name="migrate-resources-to-new-operators-hap"></a>

Sumber daya `HostingAutoscalingPolicy` (HAP) terdiri dari beberapa sumber daya Application Auto Scaling: dan. `ScalableTarget` `ScalingPolicy` Saat mengadopsi sumber daya HAP dengan ACK, pertama-tama instal pengontrol [Application Auto](https://github.com/aws-controllers-k8s/applicationautoscaling-controller) Scaling. Untuk mengadopsi sumber daya HAP, Anda perlu mengadopsi keduanya `ScalableTarget` dan `ScalingPolicy` sumber daya. Anda dapat menemukan pengindentifikasi sumber daya untuk sumber daya ini dalam status `HostingAutoscalingPolicy` resource ()`status.ResourceIDList`.

### HostingDeployment sumber daya
<a name="migrate-resources-to-new-operators-hosting-deployment"></a>

Sumber `HostingDeployment` daya terdiri dari beberapa sumber daya SageMaker AI:`Endpoint`,`EndpointConfig`, dan masing-masing`Model`. Jika Anda mengadopsi titik akhir SageMaker AI di ACK, Anda perlu mengadopsi`Endpoint`,`EndpointConfig`, dan masing-masing `Model` secara terpisah. `Model`Nama`Endpoint`,`EndpointConfig`, dan dapat ditemukan dalam status `HostingDeployment` sumber daya (`status.endpointName`,`status.endpointConfigName`, dan`status.modelNames`).

Untuk daftar semua sumber daya SageMaker AI yang didukung, lihat [Referensi ACK API](https://aws-controllers-k8s.github.io/community/reference/).

## Bersihkan sumber daya lama
<a name="migrate-resources-to-new-operators-cleanup"></a>

Setelah Operator SageMaker AI baru untuk Kubernetes mengadopsi sumber daya Anda, Anda dapat menghapus instalan operator lama dan membersihkan sumber daya lama.

### Langkah 1: Copot pemasangan operator lama
<a name="migrate-resources-to-new-operators-uninstall"></a>

Untuk menghapus instalan operator lama, lihat[Hapus operator](kubernetes-sagemaker-operators-end-of-support.md#delete-operators).

**Awas**  
Copot pemasangan operator lama sebelum menghapus sumber daya lama.

### Langkah 2: Hapus finalizer dan hapus sumber daya lama
<a name="migrate-resources-to-new-operators-delete-resources"></a>

**Awas**  
Sebelum menghapus sumber daya lama, pastikan Anda telah menghapus instalan operator lama.

Setelah menghapus instalan operator lama, Anda harus secara eksplisit menghapus finalizer untuk menghapus sumber daya operator lama. Contoh skrip berikut menunjukkan cara menghapus semua pekerjaan pelatihan yang dikelola oleh operator lama di namespace tertentu. Anda dapat menggunakan pola serupa untuk menghapus sumber daya tambahan setelah diadopsi oleh operator baru.

**catatan**  
Anda harus menggunakan nama sumber daya lengkap untuk mendapatkan sumber daya. Misalnya, gunakan `kubectl get trainingjobs.sagemaker.aws.amazon.com` sebagai ganti dari `kubectl get trainingjob`.

```
namespace=sagemaker_namespace
training_jobs=$(kubectl get trainingjobs.sagemaker.aws.amazon.com -n $namespace -ojson | jq -r '.items | .[] | .metadata.name')
 
for job in $training_jobs
do
    echo "Deleting $job resource in $namespace namespace"
    kubectl patch trainingjobs.sagemaker.aws.amazon.com $job -n $namespace -p '{"metadata":{"finalizers":null}}' --type=merge
    kubectl delete trainingjobs.sagemaker.aws.amazon.com $job -n $namespace
done
```

## Gunakan Operator SageMaker AI baru untuk Kubernetes
<a name="migrate-resources-to-new-operators-tutorials"></a>

Untuk panduan mendalam tentang penggunaan Operator SageMaker AI baru untuk Kubernetes, lihat [Gunakan Operator SageMaker AI untuk Kubernetes](kubernetes-sagemaker-operators-ack.md#kubernetes-sagemaker-operators-ack-use)

# Mengumumkan Akhir Dukungan Versi Asli Operator SageMaker AI untuk Kubernetes
<a name="kubernetes-sagemaker-operators-eos-announcement"></a>

Halaman ini mengumumkan akhir dukungan untuk versi asli [Operator SageMaker AI untuk Kubernetes](https://github.com/aws/amazon-sagemaker-operator-for-k8s) dan memberikan jawaban atas pertanyaan umum serta informasi migrasi tentang [pengontrol layanan ACK untuk Amazon SageMaker AI, generasi baru Operator AI](https://github.com/aws-controllers-k8s/sagemaker-controller) yang didukung SageMaker penuh untuk Kubernetes. Untuk informasi umum tentang Operator SageMaker AI baru untuk Kubernetes, lihat. [Operator SageMaker AI Terbaru untuk Kubernetes](kubernetes-sagemaker-operators-ack.md) 

## Akhir dari Support Pertanyaan yang Sering Diajukan
<a name="kubernetes-sagemaker-operators-eos-faq"></a>

**Topics**
+ [Mengapa kami mengakhiri dukungan untuk versi asli Operator SageMaker AI untuk Kubernetes?](#kubernetes-sagemaker-operators-eos-faq-why)
+ [Di mana saya dapat menemukan informasi lebih lanjut tentang Operator SageMaker AI baru untuk Kubernetes dan ACK?](#kubernetes-sagemaker-operators-eos-faq-more)
+ [Apa arti akhir dukungan (EOS)?](#kubernetes-sagemaker-operators-eos-faq-definition)
+ [Bagaimana saya bisa memigrasikan beban kerja saya ke Operator SageMaker AI baru untuk Kubernetes untuk pelatihan dan inferensi?](#kubernetes-sagemaker-operators-eos-faq-how)
+ [Versi ACK mana yang harus saya migrasi?](#kubernetes-sagemaker-operators-eos-faq-version)
+ [Apakah Operator SageMaker AI awal untuk Kubernetes dan Operator baru (ACK service controller untuk Amazon SageMaker AI) secara fungsional setara?](#kubernetes-sagemaker-operators-eos-faq-parity)

### Mengapa kami mengakhiri dukungan untuk versi asli Operator SageMaker AI untuk Kubernetes?
<a name="kubernetes-sagemaker-operators-eos-faq-why"></a>

Pengguna sekarang dapat memanfaatkan [pengontrol layanan ACK untuk Amazon SageMaker AI](https://github.com/aws-controllers-k8s/sagemaker-controller). Pengontrol layanan ACK adalah generasi baru Operator SageMaker AI untuk Kubernetes berdasarkan [AWS Controllers for Kubernetes](https://aws-controllers-k8s.github.io/community/) (ACK), sebuah proyek berbasis komunitas yang dioptimalkan untuk produksi, menstandarisasi cara untuk mengekspos layanan melalui operator Kubernetes. AWS Oleh karena itu kami mengumumkan akhir dukungan (EOS) untuk versi asli (bukan berbasis ACK) dari [Operator SageMaker AI](https://github.com/aws/amazon-sagemaker-operator-for-k8s) untuk Kubernetes. Dukungan berakhir pada **15 Februari 2023** bersama dengan [Amazon Elastic Kubernetes Service Kubernetes 1.21](https://docs.aws.amazon.com/eks/latest/userguide/kubernetes-versions.html#kubernetes-release-calendar). 

Untuk informasi lebih lanjut tentang ACK, lihat [sejarah dan prinsip ACK](https://aws-controllers-k8s.github.io/community/docs/community/background/).

### Di mana saya dapat menemukan informasi lebih lanjut tentang Operator SageMaker AI baru untuk Kubernetes dan ACK?
<a name="kubernetes-sagemaker-operators-eos-faq-more"></a>
+ [Untuk informasi selengkapnya tentang Operator SageMaker AI baru untuk Kubernetes, lihat pengontrol [layanan ACK untuk GitHub repositori Amazon SageMaker AI atau baca AWS Controllers for](https://github.com/aws-controllers-k8s/sagemaker-controller) Kubernetes Documentation.](https://aws-controllers-k8s.github.io/community/docs/community/overview/)
+ Untuk tutorial tentang cara melatih model pembelajaran mesin dengan pengontrol layanan ACK untuk Amazon SageMaker AI menggunakan Amazon EKS, lihat [contoh SageMaker AI](https://aws-controllers-k8s.github.io/community/docs/tutorials/sagemaker-example/) ini.

  Untuk contoh penskalaan otomatis, lihat [Menskalakan Beban Kerja SageMaker AI dengan Application Auto Scaling](https://aws-controllers-k8s.github.io/community/docs/tutorials/autoscaling-example/).
+ Untuk informasi tentang AWS Controller for Kubernetes (ACK), lihat dokumentasi [AWS Controllers for Kubernetes](https://aws-controllers-k8s.github.io/community/) (ACK).
+ Untuk daftar sumber daya SageMaker AI yang didukung, lihat [Referensi ACK API](https://aws-controllers-k8s.github.io/community/reference/).

### Apa arti akhir dukungan (EOS)?
<a name="kubernetes-sagemaker-operators-eos-faq-definition"></a>

Meskipun pengguna dapat terus menggunakan operator mereka saat ini, kami tidak lagi mengembangkan fitur baru untuk operator, kami juga tidak akan merilis patch atau pembaruan keamanan untuk masalah apa pun yang ditemukan. `v1.2.2`adalah rilis terakhir dari [Operator SageMaker AI untuk Kubernetes](https://github.com/aws/amazon-sagemaker-operator-for-k8s/tree/master). Pengguna harus memigrasikan beban kerja mereka untuk menggunakan [pengontrol layanan ACK untuk Amazon SageMaker AI](https://github.com/aws-controllers-k8s/sagemaker-controller).

### Bagaimana saya bisa memigrasikan beban kerja saya ke Operator SageMaker AI baru untuk Kubernetes untuk pelatihan dan inferensi?
<a name="kubernetes-sagemaker-operators-eos-faq-how"></a>

Untuk informasi tentang migrasi sumber daya dari yang lama ke Operator SageMaker AI baru untuk Kubernetes, ikuti. [Migrasikan sumber daya ke Operator terbaru](kubernetes-sagemaker-operators-migrate.md)

### Versi ACK mana yang harus saya migrasi?
<a name="kubernetes-sagemaker-operators-eos-faq-version"></a>

Pengguna harus bermigrasi ke versi terbaru dari [pengontrol layanan ACK untuk Amazon SageMaker AI](https://github.com/aws-controllers-k8s/sagemaker-controller/tags).

### Apakah Operator SageMaker AI awal untuk Kubernetes dan Operator baru (ACK service controller untuk Amazon SageMaker AI) secara fungsional setara?
<a name="kubernetes-sagemaker-operators-eos-faq-parity"></a>

Ya, mereka berada pada paritas fitur.

Beberapa sorotan dari perbedaan penting utama antara kedua versi meliputi:
+ Definisi Sumber Daya Kustom (CRD) yang digunakan oleh Operator SageMaker AI berbasis ACK untuk Kubernetes mengikuti definisi AWS API sehingga tidak kompatibel dengan spesifikasi sumber daya khusus dari Operator SageMaker AI untuk Kubernetes dalam versi aslinya. Lihat [CRDs](https://github.com/aws-controllers-k8s/sagemaker-controller/tree/main/helm/crds)di pengontrol baru atau gunakan panduan migrasi untuk mengadopsi sumber daya dan menggunakan pengontrol baru. 
+ `Hosting Autoscaling`Kebijakan ini tidak lagi menjadi bagian dari Operator SageMaker AI baru untuk Kubernetes dan telah dimigrasikan ke [Application](https://github.com/aws-controllers-k8s/applicationautoscaling-controller) autoscaling ACK controller. [Untuk mempelajari cara menggunakan pengontrol penskalaan otomatis aplikasi untuk mengonfigurasi penskalaan otomatis pada titik akhir SageMaker AI, ikuti contoh penskalaan otomatis ini.](https://aws-controllers-k8s.github.io/community/docs/tutorials/autoscaling-example/) 
+ `HostingDeployment`Sumber daya digunakan untuk membuat Model, Konfigurasi Titik Akhir, dan Titik Akhir dalam satu CRD. Operator SageMaker AI baru untuk Kubernetes memiliki CRD terpisah untuk masing-masing sumber daya ini. 