Dobrą praktyką w całym przemyśle informatycznym jest używanie w środowiskach produkcyjnych wyłącznie tych elementów, które są absolutnie niezbędne. To dlatego EuroAP i pokrewne serwery aplikacji (np. JBoss®) umożliwiają tworzenie własnych profili, które możemy okroić do koniecznych podsystemów. Jednak gdy mamy wiele aplikacji, a każda swoje indywidualne potrzeby, to ilość i różnorodność profili może przyprawić o zawrót głowy. Nie z EuroAP! Mamy na to sposób.
Jednym z najpopularniejszych sposobów na tworzenie nowej konfiguracji jest skopiowanie starej i zmiana koniecznych elementów. Serwer aplikacji EuroAP wspiera taki intuicyjny zabieg, udostępniając mechanizm klonowania profili.
Graficzna konsola użytkownika
Dużym ułatwieniem dla użytkownika jest graficzna konsola, dzięki której powyższe możemy w prosty sposób „wyklikać”: Configuration > Profiles > interesujący nas profil. Gdy wybierzemy dany profil, pojawia się przycisk „Clone”. Po jego naciśnięciu wyświetli się okienko do wpisania nazwy nowego profilu i voilà. Nowy profil gotowy.
CLI
Możemy też klonować jak geek za pomocą CLI serwera aplikacji. Polecenie klonujące profil full do profilu o nazwie klon-profilu-full wygląda następująco:
/profile=full:clone(to-profile=klon-profilu-full)
Hierarchiczność profili
Zrobiliśmy już kilka profili i widzimy wzorzec – pewna część konfiguracji zawsze się powtarza. Warto zatem wyodrębnić wspólny trzon. Tu z pomocą przychodzi hierarchia profili. Trzeba jednak pamiętać, że:
- nie nadpisujemy wartości z nadprofili (z profili rodziców)
- każdy profil jest samowystarczalny. Oznacza to, że jeżeli profil odwołuje się do elementu, to ten element został w nim zdefiniowany.
Mając to na uwadze, znów możemy załączyć profil do innego profilu na 2 sposoby.
Graficzna konsola użytkownika
Za pomocą graficznej konsoli użytkownika należy utworzyć nowy profil: Configuration > Profiles i przy nagłówku „Profile” kliknąć plusik. W formularzu możemy wybrać, czy chcemy załączyć inne profile.
Graficzna konsola administratora w bardzo przejrzysty sposób pokazuje, które profile zawierają inne profile. Jeśli utworzymy profil nowiusienki_profil, który zawiera profil full, będzie się to prezentowało następująco:
CLI
W CLI również możemy tworzyć profile i załączać do nich istniejące. Należy jednak wspomnieć o tym, że w przypadku graficznej konsoli, możemy dołączyć profil jedynie w momencie tworzenia, natomiast w CLI dołączamy profil do już istniejącego profilu. Polecenia tworzące nowy profil nowiusienki_profil i załączające do niego profil full wyglądają następująco:
[[email protected]:9990 /] /profile=nowiusienki_profil:add
{
"outcome" => "success",
"result" => undefined,
"server-groups" => undefined
}
[[email protected]:9990 /] /profile=nowiusienki_profil:list-add(name=includes, value=full)
{
"outcome" => "success",
"result" => undefined,
"server-groups" => undefined
}
[[email protected]:9990 /]
Wyświetlając informacje o profilu, od razu podawana jest informacja, czy zawiera on inne profile:
[[email protected]:9990 /] /profile=nowiusienki_profil:read-resource
{
"outcome" => "success",
"result" => {
"includes" => ["full"],
"name" => "nowiusienki_profil",
"subsystem" => undefined
}
}
[[email protected]:9990 /] /profile=full:read-resource
{
"outcome" => "success",
"result" => {
"includes" => undefined,
"name" => "full",
"subsystem" => {
...}
}
Podsumowanie
EuroAP i pokrewne serwery aplikacji, chcąc wspierać deweloperów i administratorów w trudach codziennej pracy, udostępniają mechanizmy do kopiowania profili i tworzenia ich hierarchii. Korzystanie z nich znacznie ułatwia im pracę.