Interfejs wiersza polecenia usługi Azure Service Fabric

Interfejs wiersza polecenia usługi Azure Service Fabric jest narzędziem wiersza polecenia służącym do interakcji z jednostkami usługi Service Fabric i zarządzania nimi. Interfejs wiersza polecenia usługi Service Fabric może być używany z klastrami systemu Windows lub Linux. Interfejs wiersza polecenia usługi Service Fabric działa na dowolnej platformie, która obsługuje język Python.

Ważne

Istnieją dwa narzędzia interfejsu wiersza polecenia używane do interakcji z usługą Service Fabric. Interfejs wiersza polecenia platformy Azure służy do zarządzania zasobami platformy Azure, takimi jak klaster usługi Service Fabric hostowany na platformie Azure. Interfejs wiersza polecenia usługi Service Fabric służy do bezpośredniego nawiązywania połączenia z klastrem usługi Service Fabric (niezależnie od tego, gdzie jest hostowany) i zarządzania klastrem, aplikacjami i usługami.

Wymagania wstępne

Przed instalacją upewnij się, że w środowisku zainstalowano zarówno język Python, jak i narzędzie pip. Aby uzyskać więcej informacji, zapoznaj się z dokumentacją Szybki start dotyczącą narzędzia pip i oficjalną dokumentacją dotyczącą instalowania języka Python.

Interfejs wiersza polecenia obsługuje języki Python w wersji 2.7 i 3.6 lub nowszej z zalecanym językiem Python 3.x.

Docelowe środowisko uruchomieniowe usługi Service Fabric

Interfejs wiersza polecenia usługi Service Fabric jest przeznaczony do obsługi najnowszej wersji środowiska uruchomieniowego zestawu Service Fabric SDK. Skorzystaj z poniższej tabeli, aby określić, którą wersję interfejsu wiersza polecenia zainstalować:

Wersja interfejsu wiersza polecenia Obsługiwana wersja środowiska uruchomieniowego
Najnowsze (~=10) Najnowsze (~=7.1)
9.0.0 7.1
8.0.0 6.5
7.1.0 6.4
6.0.0 6.3
5.0.0 6,2
4.0.0 6.1
3.0.0 6.0
1.1.0 5.6, 5.7

Opcjonalnie można określić docelową wersję interfejsu wiersza polecenia do zainstalowania, dodając do polecenia pip install sufiks z wersją ==<version>. Na przykład składnia dla wersji 1.1.0 będzie następująca:

pip install -I sfctl==1.1.0

W razie potrzeby zastąp następujące polecenie pip install przy użyciu polecenia opisanego powyżej.

Aby uzyskać więcej informacji o wersjach interfejsu wiersza polecenia usługi Service Fabric, zobacz dokumentację usługi GitHub.

Instalowanie narzędzia pip, środowiska Python i interfejsu wiersza polecenia usługi Service Fabric

Dostępnych jest szereg sposobów instalowania narzędzia pip i środowiska Python na używanej platformie. Poniżej przedstawiono kroki konfiguracji narzędzia pip i środowiska Python 3 w najważniejszych systemach operacyjnych.

Windows

W przypadku systemów Windows 10, Windows Server 2016 i Windows Server 2012 R2 należy postępować zgodnie z oficjalnymi instrukcjami standardowej instalacji. Instalator środowiska Python domyślnie instaluje też narzędzie pip.

  1. Przejdź do oficjalnej strony pobierania języka Python i pobierz najnowszą wersję języka Python 3.x.

  2. Uruchom instalatora.

  3. W dolnej części monitu wybierz pozycję Dodaj język Python 3.x do ścieżki.

  4. Wybierz pozycję Install Now (Zainstaluj teraz) i dokończ instalację.

Możesz teraz otworzyć nowe okno polecenia i pobrać odpowiednią wersję środowiska Python i narzędzia pip.

python --version
pip --version

Następnie uruchom następujące polecenie, aby zainstalować interfejs wiersza polecenia usługi Azure Service Fabric (sfctl) i wyświetlić stronę pomocy interfejsu wiersza polecenia:

pip install sfctl
sfctl -h

Podsystem Ubuntu i Windows dla systemu Linux

Aby zainstalować interfejs wiersza polecenia usługi Service Fabric, uruchom następujące polecenie:

sudo apt-get install python3
sudo apt-get install python3-pip
pip3 install sfctl

Następnie możesz przetestować instalację przy użyciu następującego polecenia:

sfctl -h

Jeśli zostanie wyświetlony komunikat o błędzie wskazujący na to, że nie znaleziono polecenia, taki jak:

sfctl: command not found

Upewnij się, że element ~/.local/bin jest dostępny w lokalizacji $PATH:

export PATH=$PATH:~/.local/bin
echo "export PATH=$PATH:~/.local/bin" >> .shellrc

W przypadku niepowodzenia instalacji w podsystemie systemu Windows dla systemu Linux z powodu nieprawidłowych uprawnień folderu być może trzeba będzie spróbować ponownie z podwyższonym poziomem uprawnień:

sudo pip3 install sfctl

Red Hat Enterprise Linux 7.4 (obsługa wersji zapoznawczej usługi Service Fabric)

Aby zainstalować interfejs wiersza polecenia usługi Service Fabric w systemie Red Hat, uruchom następujące polecenia:

sudo yum install -y python38
sudo yum install python38-setuptools
sudo easy_install-3.4 pip
sudo pip3 install sfctl

Aby przetestować instalację, zapoznaj się z krokami wymienionymi w sekcji Podsystem Ubuntu i Windows dla systemu Linux

MacOS

W przypadku systemu MacOS zaleca się użycie menedżera pakietów HomeBrew. Zainstaluj program HomeBrew, jeśli jeszcze go nie zainstalowano. W tym celu uruchom następujące polecenie:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Następnie w terminalu zainstaluj najnowszą wersję języka Python 3.x, narzędzie pip i interfejs wiersza polecenia usługi Service Fabric, uruchamiając następujące polecenia:

brew install python3
pip3 install sfctl
sfctl -h

Składnia interfejsu wiersza polecenia

Polecenia mają zawsze prefiks sfctl. Aby uzyskać ogólne informacje na temat wszystkich dostępnych poleceń, użyj polecenia sfctl -h. Aby uzyskać pomoc dotyczącą pojedynczego polecenia, użyj polecenia sfctl <command> -h.

Polecenia mają powtarzalną strukturę, w której element docelowy poprzedza zlecenie (akcję).

sfctl <object> <action>

W tym przykładzie <object> to element docelowy akcji <action>.

Wybieranie klastra

Przed wykonaniem jakiejkolwiek operacji musisz wybrać klaster, z którym chcesz nawiązać połączenie. Aby na przykład wybrać klaster o nazwie testcluster.com i nawiązać z nim połączenie, uruchom następujące polecenie:

Ostrzeżenie

Nie używaj niezabezpieczonych klastrów usługi Service Fabric w środowisku produkcyjnym.

sfctl cluster select --endpoint http://testcluster.com:19080

Punkt końcowy klastra musi mieć prefiks http lub https. Musi on zawierać port bramy HTTP. Port i adres są takie same jak adres URL programu Service Fabric Explorer.

W przypadku klastrów zabezpieczonych certyfikatem możesz określić certyfikat zakodowany w formacie PEM. Certyfikat można określić jako pojedynczy plik lub jako parę obejmującą certyfikat i klucz. W przypadku certyfikatu z podpisem własnym, który nie jest podpisany przez urząd certyfikacji, można użyć opcji --no-verify, aby pominąć weryfikację urzędu certyfikacji.

sfctl cluster select --endpoint https://testsecurecluster.com:19080 --pem ./client.pem --no-verify

Aby uzyskać więcej informacji, zobacz temat Nawiązywanie połączenia z zabezpieczonym klastrem usługi Azure Service Fabric.

Operacje podstawowe

Informacje o połączeniu klastra są utrwalane w wielu sesjach interfejsu wiersza polecenia usługi Service Fabric. Po wybraniu klastra usługi Service Fabric można uruchomić dowolne polecenie usługi Service Fabric w klastrze.

Aby na przykład uzyskać informacje o kondycji klastra usługi Service Fabric, uruchom następujące polecenie:

sfctl cluster health

Polecenie powoduje zwrócenie następujących danych wyjściowych:

{
  "aggregatedHealthState": "Ok",
  "applicationHealthStates": [
    {
      "aggregatedHealthState": "Ok",
      "name": "fabric:/System"
    }
  ],
  "healthEvents": [],
  "nodeHealthStates": [
    {
      "aggregatedHealthState": "Ok",
      "id": {
        "id": "66aa824a642124089ee474b398d06a57"
      },
      "name": "_Test_0"
    }
  ],
  "unhealthyEvaluations": []
}

Porady i rozwiązywanie problemów

Kilka sugestii i porad dotyczących rozwiązywania typowych problemów.

Konwertowanie certyfikatu z formatu PFX na PEM

Interfejs wiersza polecenia usługi Service Fabric obsługuje certyfikaty po stronie klienta w postaci plików PEM (rozszerzenie pem). Jeśli używasz plików PFX z systemu Windows, musisz konwertować te certyfikaty na format PEM. Aby konwertować plik PFX na plik PEM, użyj następującego polecenia:

openssl pkcs12 -in certificate.pfx -out mycert.pem -nodes

Podobnie aby przekonwertować plik PEM do pliku PFX, można użyć następującego polecenia (nie wymaga ono podawania hasła):

openssl  pkcs12 -export -out Certificates.pfx -inkey Certificates.pem -in Certificates.pem -passout pass:'' 

Aby uzyskać więcej informacji, zapoznaj się z dokumentacją dotyczącą protokołu OpenSSL.

Problemy z połączeniem

Niektóre operacje mogą generować następujący komunikat:

Failed to establish a new connection

Sprawdź, czy punkt końcowy określonego klastra jest dostępny i przeprowadza nasłuchiwanie. Sprawdź również, czy interfejs użytkownika programu Service Fabric Explorer jest dostępny na tym hoście i porcie. Aby zaktualizować punkt końcowy, użyj polecenia sfctl cluster select.

Szczegółowe dzienniki

Szczegółowe dzienniki często bywają przydatne w przypadku debugowania lub zgłaszania problemu. Flaga --debug zwiększa szczegółowość danych wyjściowych.

Polecenia — pomoc i składnia

Aby uzyskać pomoc dotyczącą określonego polecenia lub grupy poleceń, użyj flagi -h.

sfctl application -h

Oto inny przykład:

sfctl application create -h

Aktualizowanie interfejsu wiersza polecenia usługi Service Fabric

Aby zaktualizować interfejs wiersza polecenia usługi Service Fabric, uruchom następujące polecenia (element pip zastąp elementem pip3 w zależności od opcji wybranej podczas oryginalnej instalacji):

pip uninstall sfctl
pip install sfctl

Następne kroki