Skrypty w chmurze

Skrypty w chmurze sposobem na automatyzację zarządzania

Automatyzacja zarządzania usług hostingowych na platformie PaaS

Cloud Scripting na platformie UniCloud prezentujemy jako jedną z metod uproszczenia pracy w chmurach typu PaaS. Jest to narzędzie przeznaczone do automatyzacji powtarzalnych zadań wykonywanych w chmurach. Przeznaczone jest zarówno dla dostawców usług, jak i developerów.

Czym jest Cloud Scripting?

Cloud Scripting jest narzędziem przeznaczonym do automatyzacji powtarzalnych zadań, złożonych przepływów CI/CD oraz konfiguracji klastrów i dostarczania do nich aplikacji. Dystrybucja skryptów wymaga minimalnego czasu i zasobów, łatwo ją wdrożyć w posiadanej infrastrukturze. Dzięki szybkości aktualizacji szablonów zyskuje się również na czasie potrzebnym na zarządzanie aktualizacjami oprogramowania oraz uzyskuje się dostępność wdrożeń na różnych platformach hostingowych.

CS opiera się o trzy główne filary [1]:

  • Działania (oskryptowana logika wykonywania zestawów poleceń do automatyzacji zadań),
  • Zdarzenia (specyficzne wyzwalacze do wykonywania czynności takich jak: uruchamianie aplikacji, skalowanie, aktualizacje i inne),
  • Wstrzyknięcia (dostarczanie domyślnych akcji, zmiennych środowiskowych, symboli zastępczych, metod API,  parametrów żądań i ustawień wejściowych w niestandardowych skryptach).

Przygotowane rozwiązania do tworzenia skryptów w chmurze są pakowane w pakiety i rozpowszechniane w standardzie JPS. Następuje to poprzez przygotowanie pliku manifestu w formacie JSON lub YAML [2] (Rysunek1). Tak przygotowane rozwiązanie można wdrożyć za pomocą funkcji importu [3] (Rysunek 2).

Rysunek 1: Wygląd edytora JSON online

Rysunek 2: Panel importu platformy UniCloud

Rysunek 3: Import manifestu jps na przykładzie klastra GlassFish

Rysunek 4: Opis konfiguracji środowiska

Rysunek 5: Wysyłanie aplikacji w prekonfigurowanym środowisku na platformę UniCloud

Rysunek 6: Automatyczne dostarczanie autoskalowalnej aplikacji według przygotowanego skryptu

Rysunek 7: Środowisko uruchomione na platformie

Rysunek 8: Panel serwera GlassFish dostarczonego automatycznie w klastrze

Obszary zastosowań

  • zapewnienie topologii klastrowanych środowisk
  • dostarczenie nowej wersji aplikacji jednym kliknięciem z zerowym czasem przestoju
  • scenariusze wdrażania wielu chmur
  • automatyzacja skalowania pionowego i poziomego
  • wdrożenie złożonych rozwiązań CI/CD
  • automatyzacja zarządzania kontenerami Docker
  • kontrola dostępności i statusu aplikacji (alerty)
  • konfigurowalna integracja z zewnętrznymi usługami i narzędziami (GitHub, SendGrid, cPanel, itd)
  • automatyzacja replikacji i backupu danych, również pod kątem wdrożenia disaster recovery

 

Korzyści dla dostawców usług

Cloud Scripting przekształca dostępną infrastrukturę i wiedzę ekspercką w zautomatyzowane usługi hostingowe, zapewniając klientom wstępnie skonfigurowane aplikacje, co pozwala oszczędzać nakłady na zarządzanie powtarzającymi się zadaniami.

Dostawcy usług mogą zautomatyzować dostarczanie środowisk, wdrażanie aplikacji, tworzenie klastrów, skalowanie, zarządzanie i połączenia między różnymi grupami klientów poprzez przygotowanie skryptów opisujących działanie aplikacji. Stosowanie skryptów w chmurze znacząco skraca czas wdrożenia a co za tym idzie, redukuje koszty. Równocześnie Cloud Scripting umożliwia rozszerzenie funkcjonalności samej platformy UniCloud poprzez integrację z usługami firm zewnętrznych (SSL, CDN, DDoS Protection itd.) oraz narzędziami chmurowymi (GitHub, New Relic, SendGrid, Plesk, cPanel, Galera Cluster i inne),  przy wykorzystaniu zewnętrznych interfejsów API i skryptów niestandardowych.

Użycie skryptów pozwala odciążyć użytkowników końcowych od zadań związanych z konfiguracją infrastruktury i wykonywaniem rutynowych, powtarzalnych zadań. Dzięki temu wsparcie użytkowników końcowych staje się prostsze.

 

Korzyści dla developerów

ISV oraz programiści aplikacji i usług SaaS mogą zwiększyć swój zasięg oddziaływania na rynku oferując swoje rozwiązania w formie paczek wstępnie skonfigurowanych. Aplikacje gotowe do użycia i klastry oprogramowania eliminują problemy, na jakie mogą natknąć się użytkownicy końcowi podczas instalacji i konfiguracji oprogramowania.

Deweloperzy mogą skorzystać z manifestów gotowych [4] (przykładowo przygotowanych dla klastrów Payara czy GlassFish, dla replikacji baz danych z użyciem automatycznego skalowania itp.) lub przygotowanych samodzielnie, oraz zintegrować je z aplikacjami, w zależności od konkretnych potrzeb użycia [5].

 

 

Info:

[1] Cloud Scripting Overview:
https://docs.cloudscripting.com

[2] JSON Online Editor:
http://jsoneditoronline.org

[3] Jelastic, Blog:
http://blog.jelastic.com/2017/03/27/jelastic-cloud-scripting-launched-to-automate-managed-hosting-services

[4] GitHub, Jelastic JPS Collection_
https://github.com/jelastic-jps

[5] Baza Wiedzy UniCloud:
http://pomoc.unicloud.pl/unicloud/tworzenie-aplikacji/cloud-scripting

 

e-mail: piotr.niemcewicz@assecods.pl

Partnerzy technologiczni

Dell
Cisco
vmware
Emc2
Certum
Microsoft
IBM