Omówienie ustawienia ImageStoreConnectionString

W niektórych z naszych dokumentacji krótko wspominamy o istnieniu parametru "ImageStoreConnectionString" bez opisywania tego, co naprawdę oznacza. A po przejściu przez artykuł, taki jak Wdrażanie i usuwanie aplikacji przy użyciu programu PowerShell, wygląda na to, że wszystko, co robisz, to skopiować/wkleić wartość, jak pokazano w manifeście klastra docelowego. Dlatego ustawienie musi być konfigurowalne dla klastra, ale podczas tworzenia klastra za pośrednictwem Azure Portal nie ma możliwości skonfigurowania tego ustawienia i zawsze jest to "fabric:ImageStore". Jaki jest cel tego ustawienia?

Manifest klastra

Usługa Service Fabric rozpoczęła się jako platforma do wewnętrznego użycia przez wiele różnych zespołów, więc niektóre aspekty są wysoce dostosowywane — "Magazyn obrazów" jest jednym z takich aspektów. Zasadniczo magazyn obrazów to repozytorium, które można podłączyć do przechowywania pakietów aplikacji. Po wdrożeniu aplikacji w węźle w klastrze ten węzeł pobiera zawartość pakietu aplikacji ze Sklepu obrazów. ImageStoreConnectionString to ustawienie zawierające wszystkie niezbędne informacje dla klientów i węzłów w celu znalezienia poprawnego magazynu obrazów dla danego klastra.

Obecnie istnieją trzy możliwe rodzaje dostawców magazynu obrazów, a ich odpowiednie parametry połączenia są następujące:

  1. Usługa magazynu obrazów: "fabric:ImageStore"

  2. System plików: "file:[ścieżka systemu plików]"

  3. Azure Storage: "xstore:DefaultEndpointsProtocol=https; AccountName=[...]; AccountKey=[...]; Container=[...]"

Typ dostawcy używany w środowisku produkcyjnym to usługa magazynu obrazów, która jest stanową utrwalonej usługi systemowej, którą można zobaczyć z poziomu Service Fabric Explorer.

Usługa magazynu obrazów

Hostowanie magazynu obrazów w usłudze systemowej w samym klastrze eliminuje zewnętrzne zależności dla repozytorium pakietów i daje nam większą kontrolę nad lokalizacją magazynu. Przyszłe ulepszenia dotyczące magazynu obrazów prawdopodobnie będą dotyczyć najpierw dostawcy magazynu obrazów, jeśli nie wyłącznie. Parametry połączenia dostawcy usługi magazynu obrazów nie mają żadnych unikatowych informacji, ponieważ klient jest już połączony z klastrem docelowym. Klient musi wiedzieć tylko, że należy używać protokołów przeznaczonych dla usługi systemowej.

Dostawca systemu plików jest używany zamiast usługi Magazynu obrazów dla lokalnych klastrów jedno box podczas programowania w celu nieco szybszego uruchamiania klastra. Różnica jest zazwyczaj mała, ale jest to przydatna optymalizacja dla większości ludzi podczas opracowywania. Istnieje również możliwość wdrożenia lokalnego klastra jedno box z innymi typami dostawcy magazynu, ale zwykle nie ma powodu, aby to zrobić, ponieważ przepływ pracy tworzenia/testowania pozostaje taki sam niezależnie od dostawcy. Dostawca usługi Azure Storage istnieje tylko w przypadku starszej obsługi starych klastrów wdrożonych przed wprowadzeniem dostawcy usługi Magazynu obrazów.

Ponadto nie dostawcy systemu plików ani dostawcy usługi Azure Storage należy użyć jako metody udostępniania magazynu obrazów między wieloma klastrami — spowoduje to uszkodzenie danych konfiguracji klastra, ponieważ każdy klaster może zapisywać dane powodujące konflikt w magazynie obrazów. Aby udostępnić aprowizowane pakiety aplikacji między wieloma klastrami, użyj plików sfpkg , które można przekazać do dowolnego magazynu zewnętrznego przy użyciu identyfikatora URI pobierania.

Dlatego podczas konfigurowania właściwości ImageStoreConnectionString wystarczy użyć ustawienia domyślnego. Podczas publikowania na platformie Azure za pomocą programu Visual Studio parametr jest automatycznie ustawiany dla Ciebie. W przypadku programowego wdrażania w klastrach hostowanych na platformie Azure parametry połączenia są zawsze "fabric:ImageStore". Chociaż w razie wątpliwości jego wartość zawsze można zweryfikować, pobierając manifest klastra za pomocą programu PowerShell, platformy .NET lub REST. Zarówno lokalne klastry testowe, jak i produkcyjne powinny być zawsze skonfigurowane do korzystania z dostawcy usługi Magazynu obrazów.

Następne kroki

Wdrażanie i usuwanie aplikacji przy użyciu programu PowerShell