Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Kustomisasi instance SageMaker notebook menggunakan LCC skrip
penting
IAMKebijakan khusus yang memungkinkan Amazon SageMaker Studio atau Amazon SageMaker Studio Classic membuat SageMaker sumber daya Amazon juga harus memberikan izin untuk menambahkan tag ke sumber daya tersebut. Izin untuk menambahkan tag ke sumber daya diperlukan karena Studio dan Studio Classic secara otomatis menandai sumber daya apa pun yang mereka buat. Jika IAM kebijakan mengizinkan Studio dan Studio Classic membuat sumber daya tetapi tidak mengizinkan penandaan, kesalahan "AccessDenied" dapat terjadi saat mencoba membuat sumber daya. Untuk informasi selengkapnya, lihat Berikan izin untuk menandai sumber daya SageMaker.
AWS Kebijakan Terkelola untuk Amazon SageMakeryang memberikan izin untuk membuat SageMaker sumber daya sudah menyertakan izin untuk menambahkan tag saat membuat sumber daya tersebut.
Konfigurasi siklus hidup (LCC) menyediakan skrip shell yang berjalan hanya saat Anda membuat instance notebook atau kapan pun Anda memulainya. Saat Anda membuat instance notebook, Anda dapat membuat yang baru LCC atau melampirkan LCC yang sudah Anda miliki. Skrip konfigurasi siklus hidup berguna untuk kasus penggunaan berikut:
-
Menginstal paket atau contoh notebook pada instance notebook
-
Mengkonfigurasi jaringan dan keamanan untuk instance notebook
-
Menggunakan skrip shell untuk menyesuaikan instance notebook
Anda juga dapat menggunakan skrip konfigurasi siklus hidup untuk mengakses AWS layanan dari buku catatan Anda. Misalnya, Anda dapat membuat skrip yang memungkinkan Anda menggunakan buku catatan untuk mengontrol AWS sumber daya lain, seperti EMR instans Amazon.
catatan
Setiap skrip memiliki batas 16384 karakter.
Nilai variabel $PATH
lingkungan yang tersedia untuk kedua skrip adalah/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/sbin:/sbin:/bin
. Direktori kerja, yang merupakan nilai variabel $PWD
lingkungan, adalah/
.
Lihat CloudWatch Log untuk konfigurasi siklus hidup instance notebook di grup /aws/sagemaker/NotebookInstances
log dalam aliran log. [notebook-instance-name]/[LifecycleConfigHook]
Skrip tidak dapat berjalan lebih dari 5 menit. Jika skrip berjalan lebih dari 5 menit, skrip gagal dan instance notebook tidak dibuat atau dimulai. Untuk membantu mengurangi waktu berjalan skrip, coba yang berikut ini:
-
Kurangi langkah-langkah yang diperlukan. Misalnya, batasi lingkungan conda mana untuk menginstal paket besar.
-
Jalankan tugas dalam proses paralel.
-
Gunakan
nohup
perintah dalam skrip Anda.
Anda dapat melihat daftar konfigurasi siklus hidup instance notebook yang sebelumnya dibuat dengan memilih Konfigurasi Siklus Hidup di konsol. SageMaker Anda dapat melampirkan instance notebook LCC saat membuat instance notebook baru. Untuk informasi selengkapnya tentang membuat instance notebook, lihatMembuat instance SageMaker notebook Amazon.
Praktik Terbaik Konfigurasi Siklus Hidup
Berikut ini adalah praktik terbaik untuk menggunakan konfigurasi siklus hidup:
penting
Kami tidak menyarankan untuk menyimpan informasi sensitif dalam skrip konfigurasi siklus hidup Anda.
-
Konfigurasi siklus hidup berjalan sebagai pengguna.
root
Jika skrip Anda membuat perubahan dalam/home/ec2-user/SageMaker
direktori, (misalnya, menginstal paket denganpip
), gunakan perintahsudo -u ec2-user
untuk menjalankan sebagaiec2-user
pengguna. Ini adalah pengguna yang sama dengan yang SageMaker dijalankan Amazon. -
SageMaker instance notebook menggunakan
conda
lingkungan untuk mengimplementasikan kernel yang berbeda untuk notebook Jupyter. Jika Anda ingin menginstal paket yang tersedia untuk satu atau lebih kernel notebook, lampirkan perintah untuk menginstal paket dengan perintahconda
lingkungan yang mengaktifkan lingkungan conda yang berisi kernel tempat Anda ingin menginstal paket.Misalnya, jika Anda ingin menginstal paket hanya untuk
python3
lingkungan, gunakan kode berikut:#!/bin/bash sudo -u ec2-user -i <<EOF # This will affect only the Jupyter kernel called "conda_python3". source activate python3 # Replace
myPackage
with the name of the package you want to install. pip installmyPackage
# You can also perform "conda install" here as well. source deactivate EOFJika Anda ingin menginstal paket di semua lingkungan conda dalam instance notebook, gunakan kode berikut:
#!/bin/bash sudo -u ec2-user -i <<EOF # Note that "base" is special environment name, include it there as well. for env in base /home/ec2-user/anaconda3/envs/*; do source /home/ec2-user/anaconda3/bin/activate $(basename "$env") # Installing packages in the Jupyter system environment can affect stability of your SageMaker # Notebook Instance. You can remove this check if you'd like to install Jupyter extensions, etc. if [ $env = 'JupyterSystemEnv' ]; then continue fi # Replace
myPackage
with the name of the package you want to install. pip install --upgrade --quietmyPackage
# You can also perform "conda install" here as well. source /home/ec2-user/anaconda3/bin/deactivate done EOF -
Anda harus menyimpan semua lingkungan conda di folder lingkungan default (/home/user/anaconda3/envs).
penting
Saat Anda membuat atau mengubah skrip, sebaiknya gunakan editor teks yang menyediakan jeda baris bergaya Unix, seperti editor teks yang tersedia di konsol saat Anda membuat buku catatan. Menyalin teks dari sistem operasi non-Linux mungkin menyebabkan jeda baris yang tidak kompatibel dan mengakibatkan kesalahan yang tidak terduga.