Udostępnij za pośrednictwem


Trino CLI

Ważny

Usługa Azure HDInsight w usłudze AKS została wycofana 31 stycznia 2025 r. Dowiedz się więcej o z tego ogłoszenia.

Aby uniknąć nagłego kończenia obciążeń, należy przeprowadzić migrację obciążeń do usługi Microsoft Fabric lub równoważnego produktu platformy Azure.

Ważny

Ta funkcja jest obecnie dostępna w wersji zapoznawczej. Dodatkowe Warunki Użytkowania dla wersji zapoznawczych Microsoft Azure zawierają więcej warunków prawnych, które mają zastosowanie do funkcji platformy Azure będących w wersji beta, zapoznawczej lub jeszcze niedostępnych ogólnie. Aby uzyskać informacje na temat tej konkretnej wersji zapoznawczej, zobacz informacje o wersji zapoznawczej Azure HDInsight na AKS. W przypadku pytań lub sugestii dotyczących funkcji prześlij żądanie na AskHDInsight z wszelkimi szczegółami i obserwuj nas, aby śledzić aktualizacje dotyczące Azure HDInsight Community.

CLI Trino dla HDInsight na AKS udostępnia terminalową powłokę interaktywną do uruchamiania zapytań.

Instalowanie w systemie Windows

W przypadku systemu Windows interfejs wiersza polecenia Trino dla HDInsight na AKS jest instalowany za pośrednictwem pakietu MSI, co zapewnia dostęp do CLI za pośrednictwem wiersza polecenia systemu Windows (CMD) lub programu PowerShell. Podczas instalowania podsystemu Windows dla systemu Linux (WSL) zobacz Install on Linux.

Wymagania

  • java 8 lub 11.

  • Dodaj java.exe do ścieżki lub zdefiniuj zmienną środowiskową JAVA_HOME wskazującą katalog instalacyjny środowiska JRE, tak aby %JAVA_HOME%\bin\java.exe istnieje.

Instalowanie lub aktualizowanie

Pakiet MSI służy do instalowania lub aktualizowania Trino CLI dla HDInsight na AKS w systemie Windows.

Pobierz i zainstaluj najnowszą wersję interfejsu wiersza polecenia Trino. Gdy instalator zapyta, czy może wprowadzić zmiany na komputerze, kliknij pole "Tak". Po zakończeniu instalacji należy zamknąć i ponownie otworzyć wszystkie aktywne okna wiersza polecenia systemu Windows lub programu PowerShell, aby użyć interfejsu wiersza polecenia Trino.

Pobierz Trino CLI: https://aka.ms/InstallTrinoCLIWindows

Uruchom interfejs wiersza poleceń (CLI) Trino

Teraz możesz uruchomić interfejs wiersza polecenia Trino przy użyciu polecenia "trino-cli" w wierszu polecenia i połączyć się z klastrem:

trino-cli --server <cluster_endpoint>

Notatka

Jeśli uruchamiasz system operacyjny bez interfejsu graficznego (bez przeglądarki internetowej), Trino CLI wyświetli monit o użycie kodu urządzenia do uwierzytelniania. Można również określić parametr wiersza polecenia --auth AzureDeviceCode, aby wymusić użycie kodu urządzenia. W takim przypadku musisz otworzyć przeglądarkę na innym urządzeniu/systemie operacyjnym, wprowadzić wyświetlany i uwierzytelniony kod, a następnie wrócić do interfejsu wiersza polecenia.

Rozwiązywanie problemów

Poniżej przedstawiono niektóre typowe problemy występujące podczas instalowania interfejsu wiersza polecenia Trino w systemie Windows.

Serwer proxy blokuje połączenie

Jeśli nie możesz pobrać instalatora MSI, ponieważ serwer proxy blokuje połączenie, upewnij się, że masz prawidłowo skonfigurowany serwer proxy. W systemie Windows 10 te ustawienia są zarządzane w okienku Ustawienia sieci > sieci & Internet > Proxy. Skontaktuj się z administratorem systemu, aby uzyskać wymagane ustawienia lub w sytuacjach, gdy Twoja maszyna może być zarządzana przez konfigurację lub wymaga zaawansowanej konfiguracji.

Aby pobrać pakiet instalacyjny MSI, serwer proxy musi zezwolić na połączenia HTTPS z następującymi adresami:

  • https://aka.ms/
  • https://hdionaksresources.blob.core.windows.net/

Odinstalowywanie

Interfejs wiersza polecenia Trino można odinstalować z listy "Aplikacje i funkcje" systemu Windows. Aby odinstalować, wykonaj następujące kroki:

Platforma Instrukcje
Windows 10 Uruchom aplikację > Ustawienia >
Windows 8 i Windows 7 Uruchom > Panelu sterowania > Programy > Odinstaluj program

Na tym ekranie wpisz Trino na pasku wyszukiwania programu. Program do odinstalowania jest wymieniony jako "HDInsight Trino CLI <wersja>". Wybierz tę aplikację, a następnie kliknij przycisk Odinstaluj.

Instalowanie w systemie Linux

Interfejs wiersza polecenia Trino udostępnia interaktywną powłokę terminalową do uruchamiania zapytań. Możesz ręcznie zainstalować interfejs wiersza polecenia Trino w systemie Linux, wybierając opcję Zainstaluj skrypt.

Wymagania

  • Java 8 lub 11.

  • Dodaj język Java do ścieżki lub zdefiniuj zmienną środowiskową JAVA_HOME wskazującą katalog instalacyjny środowiska JRE, tak aby $JAVA_HOME/bin/java istnieje.

Instalowanie lub aktualizowanie

Zarówno instalowanie, jak i aktualizowanie interfejsu wiersza polecenia wymaga ponownego uruchomienia skryptu instalacji. Zainstaluj CLI, uruchamiając curl.

curl -L https://aka.ms/InstallTrinoCli | bash

Skrypt można również pobrać i uruchomić lokalnie. Może być konieczne ponowne uruchomienie powłoki, aby zmiany zaczęły obowiązywać.

Uruchom interfejs wiersza poleceń Trino

Teraz możesz uruchomić Trino CLI za pomocą polecenia "trino-cli" w powłoce i połączyć się z klastrem:

trino-cli --server <cluster_endpoint>

Notatka

Jeśli uruchamiasz system operacyjny headless (bez przeglądarki internetowej), interfejs wiersza polecenia Trino zasugeruje użycie kodu urządzenia do uwierzytelniania. Można również określić parametr wiersza polecenia --auth AzureDeviceCode, aby wymusić użycie kodu urządzenia. W takim przypadku musisz otworzyć przeglądarkę na innym urządzeniu/systemie operacyjnym, wprowadzić wyświetlany i uwierzytelniony kod, a następnie wrócić do interfejsu wiersza polecenia.

Rozwiązywanie problemów

Poniżej przedstawiono niektóre typowe problemy występujące podczas instalacji ręcznej.

błąd curl "Obiekt przeniesiony"

Jeśli wystąpi błąd programu curl związany z parametrem -L lub komunikat o błędzie zawierający tekst "Obiekt przeniesiony", spróbuj użyć pełnego adresu URL zamiast przekierowania aka.ms.

curl https://hdionaksresources.blob.core.windows.net/trino/cli/install.sh | bash

Nie znaleziono polecenia trino-cli

hash -r

Problem może również wystąpić, jeśli nie uruchomisz powłoki ponownie po instalacji. Upewnij się, że lokalizacja polecenia trino-cli ($HOME/bin) znajduje się w $PATH.

Serwer proxy blokuje połączenie

Aby uzyskać skrypty instalacji, serwer proxy musi zezwolić na połączenia HTTPS z następującymi adresami:

  • https://aka.ms/
  • https://hdionaksresources.blob.core.windows.net/

Odinstaluj

Aby usunąć wszystkie pliki trino-cli, uruchom polecenie:

rm $HOME/bin/trino-cli
rm -r $HOME/lib/trino-cli

Uwierzytelnianie

Interfejs wiersza polecenia Trino wspiera różne metody uwierzytelniania Microsoft Entra przy użyciu parametrów wiersza polecenia. W poniższej tabeli opisano ważne parametry i metody uwierzytelniania, aby uzyskać więcej informacji, zobacz Authentication.

Opis parametrów dostępny również w interfejsie wiersza polecenia:

trino-cli --help
Parametr Znaczenie Wymagane Opis
Auth Nazwa metody uwierzytelniania Nie Określa sposób podania poświadczeń użytkownika. Jeśli nie określono, używa AzureDefault.
azure-client Identyfikator klienta Tak dla AzureClientSecret, AzureClientCertificate. Identyfikator klienta jednostki usługi/aplikacji.
azure-tenant Identyfikator dzierżawy Tak dla AzureClientSecret, AzureClientCertificate. Identyfikator najemcy Microsoft Entra.
ścieżka certyfikatu Azure Ścieżka pliku do certyfikatu Tak za AzureClientCertificate. Ścieżka do pliku pfx/pem z certyfikatem.
azure-use-token-cache Używanie pamięci podręcznej tokenów lub nie Nie W przypadku podania tokenu dostępu, jest on buforowany i ponownie używany w trybach AzureDefault, AzureInteractive, AzureDeviceCode.
azure-scope Zakres tokenu Nie Ciąg zakresu Entra firmy Microsoft w celu żądania tokenu za pomocą polecenia .
użyj-kodu-urządzenia Użyj metody kodu urządzenia lub nie Nie Odpowiednik --auth AzureDeviceCode.
hasło Klucz tajny klienta dla głównego serwisowego Tak dla AzureClientSecret. Sekret/hasło podmiotu usługi podczas korzystania z trybu AzureClientSecret.
token dostępu Token dostępu JWT Nie Jeśli token dostępu został uzyskany z zewnętrznego źródła, to można go podać przy użyciu tego parametru. W tym przypadku parametr auth nie jest dozwolony.

Przykłady

Opis Polecenie CLI
AzureDefault trino-cli --server cluster1.pool1.region.projecthilo.net
Uwierzytelnianie za pomocą przeglądarki interakcyjnej trino-cli --server cluster1.pool1.region1.projecthilo.net --auth AzureInteractive
Wykorzystaj pamięć podręczną tokenów trino-cli --server cluster1.pool1.region1.projecthilo.net --auth AzureInteractive --azure-use-token-cache
Jednostka usługi z wpisem tajnym 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
Główna nazwa usługi i certyfikat chroniony (zostanie wyświetlony monit o hasło) 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

Rozwiązywanie problemów

BrakującyTokenDostępu lub NieprawidłowyTokenDostępu

Interfejs wiersza polecenia (CLI) wyświetla jeden z błędów:

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"
}]

Aby rozwiązać ten problem, spróbuj wykonać następujące czynności:

  1. Zamknij interfejs wiersza polecenia Trino.
  2. Uruchom az logout
  3. Uruchom az login -t <your-trino-cluster-tenantId>
  4. Teraz to polecenie powinno działać:
trino-cli --server <cluster-endpoint>
  1. Alternatywnie określ parametry uwierzytelniania/dzierżawy:
trino-cli --server <cluster-endpoint> --auth AzureInteractive --azure-tenant <trino-cluster-tenantId>

403 Zabronione

CLI wyświetla błąd:

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>
]

Aby rozwiązać ten problem, dodaj użytkownika lub grupę do profilu autoryzacji .