Trino CLI
Penting
Fitur ini masih dalam mode pratinjau. Ketentuan Penggunaan Tambahan untuk Pratinjau Microsoft Azure mencakup lebih banyak persyaratan hukum yang berlaku untuk fitur Azure yang dalam versi beta, dalam pratinjau, atau belum dirilis ke ketersediaan umum. Untuk informasi tentang pratinjau khusus ini, lihat Azure HDInsight pada informasi pratinjau AKS. Untuk pertanyaan atau saran fitur, kirimkan permintaan di AskHDInsight dengan detail dan ikuti kami untuk pembaruan lebih lanjut di Komunitas Azure HDInsight.
Trino CLI untuk HDInsight di AKS menyediakan shell interaktif berbasis terminal untuk menjalankan kueri.
Penginstalan pada Windows
Untuk Windows, Trino CLI untuk HDInsight di AKS diinstal melalui MSI, yang memberi Anda akses ke CLI melalui Windows Command Prompt (CMD) atau PowerShell. Saat menginstal untuk Subsistem Windows untuk Linux (WSL), lihat Menginstal di Linux.
Persyaratan
Tambahkan java.exe ke PATH atau tentukan variabel lingkungan JAVA_HOME yang menunjuk ke direktori penginstalan JRE, sehingga
%JAVA_HOME%\bin\java.exe
ada.
Menginstal atau memperbarui
Paket MSI digunakan untuk menginstal atau memperbarui Trino CLI untuk HDInsight pada AKS di Windows.
Unduh dan instal rilis terbaru Trino CLI. Jika alat penginstal bertanya apakah dapat membuat perubahan pada komputer Anda, klik kotak "Ya". Setelah penginstalan selesai, Anda harus menutup dan membuka kembali Windows Command Prompt aktif atau jendela PowerShell untuk menggunakan Trino CLI.
Unduh Trino CLI: https://aka.ms/InstallTrinoCLIWindows
Jalankan Trino CLI
Anda sekarang dapat menjalankan Trino CLI menggunakan "trino-cli" di prompt perintah, dan menyambungkan ke kluster:
trino-cli --server <cluster_endpoint>
Catatan
Jika Anda berjalan pada OS tanpa kepala (tanpa browser web), Trino CLI akan meminta untuk menggunakan kode perangkat untuk autentikasi. Anda juga dapat menentukan parameter --auth AzureDeviceCode
baris perintah untuk dipaksa menggunakan kode perangkat. Dalam hal ini, Anda perlu membuka browser di perangkat/OS lain, memasukkan kode yang ditampilkan dan mengautentikasi, lalu kembali ke CLI.
Pemecahan Masalah
Berikut adalah beberapa masalah umum yang terlihat saat menginstal Trino CLI di Windows.
Koneksi blok proksi
Jika Anda tidak dapat mengunduh alat penginstal MSI karena proksi Anda memblokir koneksi, pastikan Anda telah mengonfigurasi proksi dengan benar. Untuk Windows 10, pengaturan ini dikelola di panel Pengaturan > Network & Internet > Proxy. Hubungi administrator sistem untuk mengetahui pengaturan yang diperlukan, atau untuk situasi saat mesin Anda mungkin dikelola konfigurasi atau memerlukan pengaturan tingkat lanjut.
Untuk mendapatkan MSI, proksi Anda perlu mengizinkan koneksi HTTPS ke alamat berikut:
https://aka.ms/
https://hdionaksresources.blob.core.windows.net/
Menghapus instalan
Anda dapat menghapus instalan Trino CLI dari daftar "Aplikasi dan Fitur" Windows. Untuk menghapus instalan:
Platform | Petunjuk |
---|---|
Windows 10 | Mulai > Aplikasi Pengaturan > |
Windows 8 dan Windows 7 | Mulai > Panel Kontrol > Program > Hapus instalan program |
Setelah berada di layar ini, ketik Trino ke bilah pencarian program. Program untuk menghapus instalasi adalah daftar sebagai "versi> HDInsight Trino CLI<." Pilih aplikasi ini, lalu klik tombol Hapus instalan.
Penginstalan pada Linux
Trino CLI menyediakan shell interaktif berbasis terminal untuk menjalankan kueri. Anda dapat menginstal Trino CLI secara manual di Linux dengan memilih opsi Instal skrip.
Persyaratan
Tambahkan java ke PATH atau tentukan variabel lingkungan JAVA_HOME yang menunjuk ke direktori penginstalan JRE, sehingga $JAVA_HOME/bin/java ada.
Menginstal atau memperbarui
Menginstal dan memperbarui CLI memerlukan eksekusi ulang skrip penginstalan. Instal CLI dengan menjalankan curl.
curl -L https://aka.ms/InstallTrinoCli | bash
Skrip juga dapat diunduh dan dijalankan secara lokal. Anda mungkin harus memulai ulang shell agar perubahan diterapkan.
Jalankan Trino CLI
Anda sekarang dapat menjalankan Trino CLI dengan perintah "trino-cli" dari shell, dan menyambungkan ke kluster:
trino-cli --server <cluster_endpoint>
Catatan
Jika Anda berjalan pada OS tanpa kepala (tanpa browser web) Trino CLI akan meminta untuk menggunakan kode perangkat untuk autentikasi. Anda juga dapat menentukan parameter --auth AzureDeviceCode
baris perintah untuk dipaksa menggunakan kode perangkat. Dalam hal ini Anda perlu membuka browser di perangkat/OS lain, memasukkan kode yang ditampilkan dan mengautentikasi, lalu kembali ke CLI.
Pemecahan Masalah
Berikut beberapa masalah umum yang terjadi selama penginstalan manual.
kesalahan curl "Object Moved"
Jika Anda mendapatkan kesalahan dari curl yang terkait dengan parameter -L, atau pesan kesalahan termasuk teks "Objek Dipindahkan," mencoba menggunakan URL lengkap alih-alih pengalihan aka.ms:
curl https://hdionaksresources.blob.core.windows.net/trino/cli/install.sh | bash
perintah trino-cli tidak ditemukan
hash -r
Masalah ini juga bisa terjadi jika Anda tidak memulai ulang shell setelah penginstalan. Pastikan lokasi perintah trino-cli ($HOME/bin) ada di $PATH Anda.
Koneksi blok proksi
Untuk mendapatkan skrip penginstalan, proksi Anda perlu mengizinkan koneksi HTTPS ke alamat berikut:
https://aka.ms/
https://hdionaksresources.blob.core.windows.net/
Hapus instalasi
Untuk menghapus semua file trino-cli yang dijalankan:
rm $HOME/bin/trino-cli
rm -r $HOME/lib/trino-cli
Autentikasi
Trino CLI mendukung berbagai metode autentikasi Microsoft Entra menggunakan parameter baris perintah. Tabel berikut ini menjelaskan parameter penting dan metode autentikasi, untuk informasi selengkapnya, lihat Autentikasi.
Deskripsi parameter juga tersedia di CLI:
trino-cli --help
Parameter | Makna | Wajib | Deskripsi |
---|---|---|---|
auth | Nama metode autentikasi | No | Menentukan bagaimana kredensial pengguna disediakan. Jika tidak ditentukan, menggunakan AzureDefault . |
azure-client | ID klien | Ya untuk AzureClientSecret, AzureClientCertificate . |
ID klien perwakilan/aplikasi layanan. |
azure-tenant | ID Penyewa | Ya untuk AzureClientSecret, AzureClientCertificate . |
ID penyewa Microsoft Entra. |
azure-certificate-path | Jalur file ke sertifikat | Ya untuk AzureClientCertificate . |
Jalur ke file pfx/pem dengan sertifikat. |
azure-use-token-cache | Gunakan cache token atau tidak | No | Jika disediakan, token akses di-cache dan digunakan kembali dalam AzureDefault, AzureInteractive, AzureDeviceCode mode. |
cakupan azure | Cakupan token | No | String cakupan Microsoft Entra untuk meminta token. |
use-device-code | Menggunakan metode kode perangkat atau tidak | No | Setara dengan --auth AzureDeviceCode . |
kata sandi | Rahasia klien untuk perwakilan layanan | Ya untuk AzureClientSecret . |
Rahasia/kata sandi untuk perwakilan layanan saat menggunakan AzureClientSecret mode. |
token akses | Token akses JWT | No | Jika token akses diperoleh secara eksternal, dapat disediakan menggunakan parameter ini. Dalam hal ini, auth parameter tidak diizinkan. |
Contoh
Deskripsi | Perintah CLI |
---|---|
AzureDefault | trino-cli --server cluster1.pool1.region.projecthilo.net |
Autentikasi browser interaktif | trino-cli --server cluster1.pool1.region1.projecthilo.net --auth AzureInteractive |
Menggunakan cache token | trino-cli --server cluster1.pool1.region1.projecthilo.net --auth AzureInteractive --azure-use-token-cache |
Perwakilan layanan dengan rahasia | trino-cli --server cluster1.pool1.region1.projecthilo.net --auth AzureClientSecret --azure-client 11111111-1111-1111-1111-111111111111 --azure-tenant 11111111-1111-1111-1111-111111111111 --password |
Perwakilan layanan dan sertifikat yang dilindungi (kata sandi diminta) | trino-cli --server cluster1.pool1.region1.projecthilo.net --auth AzureClientCertificate --azure-client 11111111-1111-1111-1111-111111111111 --azure-certificate-path d:\tmp\cert.pfx --azure-tenant 11111111-1111-1111-1111-111111111111 --password |
Pecahkan masalah
MissingAccessToken atau InvalidAccessToken
CLI menunjukkan salah satu kesalahan:
Error running command: Authentication failed: {
"code": "MissingAccessToken",
"message": "Unable to find the token or get the required claims from it."
}
Error running command: Error starting query at https://<cluster-endpoint>/v1/statement returned an invalid response: JsonResponse{statusCode=500, statusMessage=, headers={content-type=[application/json; charset=utf-8], date=[Fri, 16 Jun 2023 18:25:23 GMT], strict-transport-security=[max-age=15724800; includeSubDomains]}, hasValue=false} [Error: {
"code": "InvalidAccessToken",
"message": "Unable to find the token or get the required claims from it"
}]
Untuk mengatasi masalah ini, coba langkah-langkah berikut:
- Keluar dari Trino CLI.
- Jalankan
az logout
- Jalankan
az login -t <your-trino-cluster-tenantId>
- Sekarang perintah ini harus berfungsi:
trino-cli --server <cluster-endpoint>
- Atau tentukan parameter autentikasi/penyewa:
trino-cli --server <cluster-endpoint> --auth AzureInteractive --azure-tenant <trino-cluster-tenantId>
403 Dilarang
CLI menunjukkan kesalahan:
Error running command: Error starting query at https://<cluster-endpoint>/v1/statement returned an invalid response: JsonResponse{statusCode=403, statusMessage=, headers={content-length=[146], content-type=[text/html], date=[Wed, 25 May 2023 16:49:24 GMT], strict-transport-security=[max-age=15724800; includeSubDomains]}, hasValue=false} [Error: <html>
<head><title>403 Forbidden</title></head>
<body>
<center><h1>403 Forbidden</h1></center>
<hr><center>nginx</center>
</body>
</html>
]
Untuk mengatasi masalah ini, tambahkan pengguna atau grup ke profil otorisasi.
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk