Tworzenie pierwszej aplikacji usługi Azure Service Fabric

Usługa Service Fabric udostępnia zestawy SDK do kompilowania usług w systemie Linux przy użyciu platform .NET Core i Java. W tym samouczku przedstawiony zostanie sposób tworzenia aplikacji dla systemu Linux i kompilowania usługi w języku C# w programie .NET Core 2.0.

Wymagania wstępne

Przed rozpoczęciem upewnij się, że masz skonfigurowane środowisko programowania systemu Linux. Jeśli używasz systemu Mac OS X, możesz skonfigurować jednopunktowe środowisko systemu Linux na maszynie wirtualnej za pomocą narzędzia Vagrant.

Należy również zainstalować interfejs wiersza polecenia usługi Service Fabric

Instalowanie i konfigurowanie generatorów dla języka C#

Usługa Service Fabric udostępnia narzędzia do tworzenia szkieletów, które ułatwiają tworzenie aplikacji usługi Service Fabric z poziomu terminalu przy użyciu generatora szablonów narzędzia Yeoman. Wykonaj poniższe kroki, aby skonfigurować generatory szablonów narzędzia Yeoman w usłudze Service Fabric dla języka C#:

  1. Zainstaluj środowisko NodeJs i menedżera NPM na swojej maszynie

    curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash 
    nvm install node 
    
  2. Instalowanie generatora szablonów narzędzia Yeoman na maszynie z poziomu narzędzia NPM

    npm install -g yo
    
  3. Zainstaluj generator aplikacji C# Yeoman usługi Service Fabric z poziomu menedżera NPM

    npm install -g generator-azuresfcsharp
    

Tworzenie aplikacji

Aplikacja usługi Service Fabric może zawierać jedną lub więcej usług, a każda z nich pełni określoną rolę w dostarczaniu funkcjonalności aplikacji. Generator Yeoman dla języka C# usługi Service Fabric, który został zainstalowany w ostatnim kroku, ułatwia utworzenie pierwszej usługi i dodawanie kolejnych w przyszłości. Utwórzmy zatem aplikację z jedną usługą za pomocą generatora Yeoman.

  1. W terminalu wpisz następujące polecenie i rozpocznij tworzenie szkieletu: yo azuresfcsharp

  2. Nadaj nazwę aplikacji.

  3. Wybierz typ pierwszej usługi i nadaj jej nazwę. Na potrzeby tego samouczka wybierzmy usługę Reliable Actor Service.

    Generator Yeoman usługi Service Fabric dla platformy C#

Uwaga

Aby uzyskać więcej informacji o opcjach, zobacz Service Fabric programming model overview (Omówienie modelu programowania usługi Service Fabric).

Kompilowanie aplikacji

Szablony generatora Yeoman usługi Service Fabric obejmują skrypt kompilacji, którego można użyć do skompilowania aplikacji z poziomu terminala (po przejściu do folderu aplikacji).

cd myapp
./build.sh

Wdrażanie aplikacji

Skompilowaną aplikację można wdrożyć w klastrze lokalnym.

  1. Połącz się z lokalnym klastrem usługi Service Fabric.

    sfctl cluster select --endpoint http://localhost:19080
    
  2. Uruchom skrypt instalacji udostępniony w szablonie, aby skopiować pakiet aplikacji do magazynu obrazów klastra, zarejestrować typ aplikacji i utworzyć wystąpienie aplikacji.

    ./install.sh
    

Wdrażanie skompilowanej aplikacji przebiega tak samo jak w przypadku innych aplikacji usługi Service Fabric. Szczegółowe instrukcje są dostępne w dokumentacji dotyczącej zarządzania aplikacją usługi Service Fabric za pomocą interfejsu wiersza polecenia usługi Service Fabric.

Parametry tych poleceń można znaleźć w manifestach wygenerowanych w pakiecie aplikacji.

Po wdrożeniu aplikacji otwórz przeglądarkę i przejdź do narzędzia Service Fabric Explorer pod adresem http://localhost:19080/Explorer. Następnie rozwiń węzeł Aplikacje i zwróć uwagę, że istnieje teraz wpis dla danego typu aplikacji i inny wpis dla pierwszego wystąpienia tego typu.

Ważne

Aby wdrożyć aplikację w bezpiecznym klastrze systemu Linux na platformie Azure, należy skonfigurować certyfikat w celu zweryfikowania aplikacji przy użyciu środowiska uruchomieniowego usługi Service Fabric. Dzięki temu usługi Reliable Services mogą komunikować się z podstawowymi interfejsami API środowiska uruchomieniowego usługi Service Fabric. Aby dowiedzieć się więcej, zobacz Konfigurowanie aplikacji Reliable Services do uruchamiania w klastrach systemu Linux.

Uruchamianie klienta testowego i przechodzenie w tryb failover

Projekty aktora nie działają samodzielnie. Wymagają one wysyłania im komunikatów przez inną usługę lub klienta. Szablon aktora zawiera prosty skrypt testowy, którego można użyć do interakcji z usługą aktora.

  1. Uruchom skrypt za pomocą narzędzia kontrolnego, aby wyświetlić dane wyjściowe usługi aktora.

    W przypadku systemu MAC OS X należy skopiować folder myactorsvcTestClient do tej samej lokalizacji wewnątrz kontenera, uruchamiając następujące dodatkowe polecenia.

    docker cp  [first-four-digits-of-container-ID]:/home
    docker exec -it [first-four-digits-of-container-ID] /bin/bash
    cd /home
    
    cd myactorsvcTestClient
    watch -n 1 ./testclient.sh
    
  2. W narzędziu Service Fabric Explorer zlokalizuj węzeł, w którym znajduje się replika podstawowa usługi aktora. Na poniższym zrzucie ekranu jest to węzeł 3.

    Znajdowanie repliki podstawowej w narzędziu Service Fabric Explorer

  3. Kliknij węzeł znaleziony w poprzednim kroku, a następnie wybierz pozycję Dezaktywuj (uruchom ponownie) z menu Akcje. Spowoduje to ponowne uruchomienie jednego węzła w klastrze lokalnym i wymuszenie przejścia w tryb failover do repliki pomocniczej uruchomionej na innym węźle. Podczas wykonywania tej czynności należy zwrócić uwagę na dane wyjściowe z klienta testowego oraz to, że w liczniku będzie nadal występować przyrost niezależnie od trybu failover.

Dodawanie kolejnych usług do istniejącej aplikacji

Aby dodać kolejną usługę do aplikacji utworzonej już przy użyciu polecenia yo, wykonaj następujące czynności:

  1. Zmień katalog na katalog główny istniejącej aplikacji. Na przykład wpisz polecenie cd ~/YeomanSamples/MyApplication, jeśli aplikacja MyApplication to aplikacja utworzona przez narzędzie Yeoman.
  2. Uruchom polecenie yo azuresfcsharp:AddService

Następne kroki