Koneksi SSH langsung menyediakan cara yang stabil dan cepat untuk menghubungkan instance Data Science Workshop (DSW) Anda dari terminal lokal atau Visual Studio Code (VSCode).
Lingkup
Tipe instans yang didukung:
Instans DSW pay-as-you-go yang dibuat dalam kelompok sumber daya publik. Spesifikasi instans tidak boleh diawali dengan
ecs.ebm.Instans DSW yang dibuat menggunakan sumber daya komputasi cerdas Lingjun.
Batas koneksi publik:
Saat Anda menghubungkan instance DSW dari jaringan publik, Platform for AI (PAI) secara otomatis mengonfigurasi aturan DNAT untuk setiap Gateway NAT Internet. Anda tidak perlu mengonfigurasinya secara manual.
Setiap Gateway NAT Internet mendukung hingga 100 aturan DNAT, yang memungkinkan hingga 100 koneksi bersamaan ke instans DSW. Untuk informasi selengkapnya tentang kuota, lihat Kuota.
Penagihan
Untuk menghubungkan instance DSW dari jaringan publik, Anda harus mengonfigurasi NAT Gateway dan Elastic IP Address (EIP). NAT Gateway dan EIP ditagih secara terpisah dan terus dikenai biaya meskipun instance DSW dihentikan. Untuk menghindari biaya yang tidak perlu, segera hapus sumber daya ini jika tidak lagi digunakan.
Prosedur
Langkah 1: Aktifkan resolusi DNS internal
Aktifkan resolusi DNS internal. Instans DSW biasanya dideploy di lingkungan virtual private cloud (VPC), di mana komunikasi antar-layanan mengandalkan nama domain internal untuk akses yang efisien dan aman. Saat Anda menghubungkan instance DSW menggunakan SSH, layanan resolusi DNS internal akan mengubah nama domain menjadi Alamat IP pribadi instans tersebut. Resolusi ini penting agar koneksi berhasil.
Langkah 2: Hasilkan kunci publik SSH
Jalankan perintah berikut di mesin client Anda untuk menghasilkan kunci publik. Anda akan diminta menetapkan passphrase untuk login ke instans DSW. Jika Anda berencana menggunakan tool remote_ikernel untuk menghubungkan instans, seperti yang ditunjukkan dalam kasus penggunaan pada topik ini, jangan tetapkan passphrase. Tekan Enter untuk melanjutkan.
(Direkomendasikan) Hasilkan pasangan kunci di direktori default:
ssh-keygenPerintah ini menghasilkan kunci publik (
id_rsa.pub) dan kunci privat (id_rsa) di direktori default berikut. Jika pasangan kunci SSH sudah ada di direktori tersebut, file-file tersebut akan ditimpa. Jalur default untuk sistem operasi berbeda adalah:Sistem operasi Windows: Disimpan di folder
C:\Users\<username>\.sshatau folderC:\Users\<username>\.ssh.Linux:
/root/.sshuntuk pengguna root, atau/home/<username>/.sshuntuk pengguna biasa.macOS:
/Users/<username>/.ssh.
Hasilkan kunci publik di direktori kustom:
ssh-keygen -f /your/path/example_rsa # Ini menghasilkan example_rsa.pub dan example_rsa di /your/path
Langkah 3: Konfigurasikan parameter SSH untuk instans DSW
Saat Anda membuat instans DSW, konfigurasikan parameter terkait jaringan berikut.
Untuk instans yang sudah ada, klik Change Settings, ubah parameter, lalu klik OK.
Konfigurasikan VPC, vSwitch, dan grup keamanan
Jika Anda membuat instans DSW menggunakan sumber daya publik, Anda harus mengonfigurasi Virtual Private Cloud, vSwitch ID, dan Security Group. Untuk informasi selengkapnya, lihat Buat VPC dan vSwitch dan Kelola grup keamanan. Catatan: VPC dan grup keamanan harus berada di wilayah yang sama dengan instans DSW.
Konfigurasikan parameter terkait SSH
Enable SSH: Aktifkan sakelar ini.
SSH Public Key: Salin isi file kunci publik
id_rsa.pubyang dihasilkan di Langkah 2 ke kotak teks ini.Untuk mendukung login dari VPC maupun jaringan publik, Anda harus menambahkan kunci publik dari beberapa client. Tambahkan setiap kunci pada baris baru. Anda dapat menambahkan hingga 10 kunci publik.
Custom Services: Setelah Anda mengaktifkan sakelar Enable SSH, layanan Custom Services bernama SSH akan muncul.
Listener Port: Port tempat layanan di instans DSW mendengarkan. Nilai default-nya adalah 22.
Service Access Method:
Access over VPC: Metode ini diaktifkan secara default. Anda dapat mengakses layanan di instans DSW dari terminal lain dalam VPC, seperti instans ECS.
Access over Internet: Pilih opsi ini untuk menambahkan akses publik. Anda juga harus mengonfigurasi NAT Gateway dan Internet Access Gateway.
Internet Access Port: Port yang mengizinkan akses dari jaringan publik, yang sesuai dengan parameter
-pdalam perintah SSH. Contohnya: 1024.
NAT Gateway: Parameter ini wajib untuk akses publik. Pilih Gateway NAT Internet yang dibuat untuk VPC saat ini.
EIP: Parameter ini wajib untuk akses publik. Pilih alamat IP elastis (EIP) yang dibuat untuk Gateway NAT saat ini.
Ikuti langkah-langkah berikut untuk membuat gateway NAT Internet dan EIP:
Langkah 4: Instal server SSH
Jika instans DSW Anda menggunakan gambar pra-instal resmi atau gambar kustom berbasis gambar resmi, server SSH sudah terinstal secara default, sehingga Anda dapat melewati langkah ini. Jika tidak, Anda harus menginstal server SSH secara manual.
Buka instans DSW.
Di Terminal DSW, jalankan perintah berikut.
sudo apt-get update sudo apt-get install openssh-server sudo service ssh startJika perintah gagal dan mengembalikan error `sudo: command not found`, jalankan
apt-get install sudolalu jalankan kembali perintah sebelumnya.Jalankan perintah berikut untuk memeriksa status server SSH.
service ssh status
Langkah 5: Hubungkan ke instans DSW secara jarak jauh
Lihat metode akses.
Pada halaman DSW, klik nama instans untuk membuka halaman detail instans. Pada tab Instance Settings, di bagian Network Settings, temukan Public Access Method dan VPC Access Method.
CatatanJika Anda tidak memilih Akses Publik dalam konfigurasi SSH, hanya Metode Akses VPC yang ditampilkan.
Hubungkan ke instans DSW.
Hubungkan menggunakan SSH
Akses jaringan publik
Di command line lokal atau terminal lain, gunakan metode akses publik yang Anda peroleh pada langkah sebelumnya untuk menghubungkan instans DSW.
ssh root@xx.xx.xx.xx -p 1024 # Jika kunci privat tidak berada di jalur default, tentukan lokasinya ssh -i /your/path/example_rsa root@xx.xx.xx.xx -p 1024PentingNilai parameter
-p, yaitu 1024, adalah port akses publik yang dikonfigurasi untuk SSH.Akses VPC
Dari terminal lain dalam VPC, seperti instans ECS, gunakan metode akses VPC yang Anda peroleh pada langkah sebelumnya untuk menghubungkan instans DSW.
ssh root@dsw-notebook-xxxx.dsw-xxxx.dsw.pai.alibaba.com -p 22 # Jika kunci privat tidak berada di jalur default, tentukan lokasinya ssh -i /your/path/example_rsa root@dsw-notebook-xxxx.dsw-xxxx.dsw.pai.alibaba.com -p 22
Hubungkan menggunakan VSCode lokal
Buka VSCode dan instal ekstensi Remote - SSH dari marketplace Ekstensi.

Klik ikon di pojok kiri bawah
dan pilih Connect to Host... > Add New SSH Host... dari menu pop-up.Masukkan perintah koneksi SSH.
ssh root@xx.xx.xx.xx -p 1024 # Jika kunci privat tidak berada di jalur default, tentukan lokasinya ssh -i /your/path/example_rsa root@xx.xx.xx.xx -p 1024
Klik Open di pojok kanan bawah. Pesan koneksi berhasil akan ditampilkan di pojok kiri bawah.

Buka direktori di instans DSW untuk memulai pengembangan dan debugging jarak jauh.

Selama waktu proses, Anda dapat menghubungkan ke kernel di instans DSW.

Kasus penggunaan: Jalankan kode notebook lokal di instans DSW
Prasyarat
Anda telah menyelesaikan konfigurasi koneksi SSH langsung dari Langkah 1 hingga Langkah 4 pada topik ini, dan Anda tidak menetapkan passphrase saat menghasilkan kunci publik SSH.
Prosedur
Di terminal lokal Anda, instal tool remote_ikernel, lakukan konfigurasi awal, dan tambahkan kernel jarak jauh.
pip install remote_ikernelremote_ikernel manage --add \ --kernel_cmd="ipython kernel -f {connection_file}" \ # Tidak perlu modifikasi --name="Remote Python" \ --interface=ssh \ --host=root@*.*.*.*:1024 # Ubah ini ke alamat host Anda. Jika kunci privat tidak berada di jalur default, atur menjadi --host="-i /your/path/example_rsa root@*.*.*.*:1024"Output berikut menunjukkan bahwa kernel jarak jauh berhasil ditambahkan.
Added kernel ['rik_ssh_root_121_40_*_*_1024_remotepython']: SSH root@121.40.*.*:1024 Remote Python.Jalankan perintah berikut untuk melihat konfigurasi kernel jarak jauh.
remote_ikernel manage --showDi VSCode lokal Anda, buka file notebook. Klik pemilih kernel di pojok kanan atas, lalu cari dan pilih "Remote Python" di kotak pencarian.

FAQ
Q: Apa perbedaan antara koneksi SSH langsung dan agen ProxyClient untuk menghubungkan instans DSW?
Opsi A: Koneksi SSH langsung (Direkomendasikan) | Opsi B: ProxyClient proxy | |
Fitur | Memerlukan konfigurasi komponen jaringan seperti VPC dan NAT Gateway. Koneksi lebih cepat dan stabil. | Tidak memerlukan komponen jaringan tambahan. Namun, koneksi mungkin lebih lambat dan kurang stabil. |
Instans yang didukung |
| Semua tipe instans. |
Metode autentikasi | Menggunakan kunci publik atau privat SSH untuk autentikasi. |
|
Jalur akses |
| Akses jaringan publik. |
Metode konfigurasi | ||
Cara kerja | PAI secara otomatis membuat aturan DNAT pada NAT Gateway untuk meneruskan permintaan SSH publik ke instans DSW Anda. | Server proxy PAI meneruskan semua traffic. |
Pengingat penagihan | Saat akses publik diperlukan, gateway NAT Internet dan EIP terus dikenai biaya meskipun instans DSW dihentikan. Jika tidak lagi diperlukan, segera hapus. | Konfigurasi ini tidak menimbulkan biaya tambahan. |
Q: Bisakah saya menghubungkan instans DSW dari IDE lokal seperti PyCharm menggunakan SSH?
Ya, IDE apa pun yang menggunakan protokol SSH native didukung. Namun, perlu diketahui bahwa IDE seperti PyCharm mungkin secara otomatis mengunduh dan menginstal komponen sisi server ke instans DSW. Agar ini berfungsi, pastikan instans DSW Anda memiliki akses jaringan publik.
Q: Bagaimana cara troubleshooting kegagalan koneksi SSH, timeout, atau penolakan kunci saat menghubungkan instans DSW?
Kegagalan koneksi biasanya disebabkan oleh masalah konfigurasi jaringan, autentikasi, atau izin. Anda dapat melakukan troubleshooting sebagai berikut:
Bagaimana cara troubleshooting alamat IP publik yang tidak dapat diakses?
Pertama, pastikan Anda dapat mengakses instans DSW dari lingkungan VPC menggunakan alamat VPC-nya.
Jika Anda dapat mengakses instans menggunakan alamat VPC tetapi tidak dengan alamat publik, periksa apakah Anda telah membuat beberapa gateway NAT Internet di VPC yang dipilih:
Jika Anda memiliki beberapa gateway NAT Internet, lihat Solusi deployment untuk beberapa gateway NAT Internet dalam VPC yang sama. Periksa apakah hubungan antara NAT Gateway, vSwitch, dan tabel rute Anda benar. vSwitch yang Anda pilih di DSW harus dikaitkan dengan tabel rute yang dapat meneruskan traffic ke NAT Gateway yang dipilih. Hal ini memastikan bahwa respons terhadap permintaan SSH Anda dapat dikembalikan ke client Anda.
Jika Anda hanya memiliki satu gateway NAT Internet, gunakan tool Self-service Troubleshooting untuk memeriksa masalah konektivitas jaringan. Masukkan IP publik lokal Anda, EIP publik Anda, dan port yang ditetapkan untuk instans DSW Anda (port yang dikonfigurasi dalam metode akses publik di halaman detail instans DSW) untuk menganalisis keterjangkauan jaringan.
Bagaimana cara troubleshooting kegagalan akses VPC?
Periksa apakah Anda menggunakan gambar kustom dan apakah layanan SSH telah diinstal serta diaktifkan dalam gambar kustom Anda. Untuk informasi selengkapnya, lihat Langkah 4: Instal server SSH.
Periksa apakah aturan inbound grup keamanan instans Anda mengizinkan akses pada port TCP 22.
Jika metode di atas tidak menyelesaikan masalah, hubungi manajer akun Anda untuk investigasi lebih lanjut.
Koneksi timeout atau tidak dapat dijangkau:
SSH langsung (jaringan publik): Periksa gateway NAT Internet dan aturan grup keamanan yang dikonfigurasi untuk instans DSW. Pastikan port yang benar terbuka untuk jaringan publik.
SSH langsung (VPC): Jika Anda menghubungkan dari instans ECS dalam VPC yang sama, periksa apakah kedua instans berada dalam VPC yang sama dan coba aktifkan layanan zona privat untuk VPC tersebut.
Kunci ditolak (Permission denied atau Server refused our key):
Pastikan pasangan kunci dihasilkan secara lokal menggunakan
ssh-keygendan bahwa kunci publik (isi fileid_rsa.pub) telah ditambahkan sepenuhnya dan benar ke konfigurasi SSH instans DSW.Saat menjalankan perintah SSH, pastikan kunci privat yang Anda gunakan cocok dengan kunci publik yang ditambahkan ke DSW. Jika file kunci privat tidak berada di jalur default (
~/.ssh/id_rsa), Anda harus menggunakan parameter-iuntuk secara eksplisit menentukan jalurnya.
Koneksi ke VSCode gagal:
Pastikan ekstensi
Remote - SSHtelah diinstal.Saat menambahkan host baru, pastikan perintah SSH lengkap benar, seperti
ssh root@xx.xx.xx.xx -p 1024.Jika koneksi gagal, pertama-tama coba hubungkan langsung menggunakan perintah SSH di terminal lokal. Gunakan pesan error dari terminal untuk mendiagnosis masalah lebih lanjut.
Q: Bagaimana cara menemukan alamat IP publik instans?
Jika Anda telah mengonfigurasi gateway NAT Internet, Anda dapat melihat alamat IP publik sebagai berikut.
Q: Apakah mungkin membuat beberapa pengguna untuk login SSH terpisah di instans DSW?
Secara default, instans DSW hanya menyediakan pengguna root untuk login SSH. DSW tidak mendukung secara native pembuatan beberapa pengguna independen dan konfigurasi login SSH terisolasi terpisah untuk mereka. Anda dapat mencoba membuat pengguna baru secara manual dalam instans, tetapi ini bukan praktik standar yang didukung secara resmi.
Q: Setelah menghubungkan instans DSW saya dengan IDE seperti VSCode atau PyCharm, mengapa saya tidak dapat melihat file proyek saya?
Setelah login SSH, direktori default mungkin merupakan direktori home pengguna root (/root). File kerja Anda biasanya berada di jalur disk data yang dipasang, seperti /mnt/workspace. Di VSCode, Anda dapat menggunakan fitur "File" > "Open Folder" di sidebar untuk memilih dan membuka direktori kerja yang benar di server secara manual. File proyek Anda kemudian akan muncul di browser file.
Referensi
Jika metode koneksi langsung ini tidak sesuai untuk kasus penggunaan Anda atau Anda lebih suka tidak mengonfigurasi komponen jaringan tambahan, pertimbangkan untuk menggunakan metode ProxyClient untuk koneksi jarak jauh.
Konfigurasikan Nama VPC, Blok CIDR IPv4, dan vSwitch, gunakan nilai default untuk parameter lainnya. Lalu, klik OK untuk membuat VPC dan vSwitch.





