Child pages
  • Synchrogrid: Wirtualny Akcelerator
Skip to end of metadata
Go to start of metadata

Krótki opis usługi

Usługa przeznaczona jest przede wszystkim dla operatorów oraz osób tworzących oprogramowanie dla synchrotronu. Dodatkowymi użytkownikami mogą w przyszłości być prowadzący zajęcia oraz studenci zajęć fizyki akceleratorowej.

W ramach usługi oferowany jest model systemu sterowania synchrotronu (warstwa Tango) wraz z podstawowym modelem obliczeniowym akceleratora. Modele te mogą być konfigurowane w zależności od potrzeb użytkownika.

Aktywowanie usługi

Aby móc aktywować usługę należy wcześniej:

  • mieć założone konto w Portalu PL-Grid
  • posiadać certyfikat gridowy
  • mieć aktywną usługę "Globalny dostęp UNICORE"
  • warto mieć aktywne usługi potrzebne do obliczeń modelu akceleratora: "Elegant" oraz "Tracy" 

Usługi aktywuje się w Portalu Użytkownika, zgodnie z przykładem.

Aktywacja usługi nie odbywa się automatycznie. Wymaga on akceptacji Administratora Usługi. Administrator akceptując wniosek konfiguruje konto użytkownika na maszynie dostępowej usługi (serwerze Tango).

Ograniczenia w korzystaniu

Przy korzystaniu z usługi (zwłaszcza uruchamianiu modelu akceleratora) należy upewnić się, że nikt nie korzysta z tej usługi w tym samym czasie (sprawdzić czy Model Server innego użytkownika nie jest już uruchomiony). Równoczesne obliczanie kilku modeli może prowadzić do błędnych wartości dostarczanych do systemu sterowania. Także korzystanie równoczesne z modelu systemu sterowania może prowadzić do wzajemnego nadpisywania nastaw.

Pierwsze kroki

Łączenie się z usługą

Usługa jest dostępna poprzez maszynę dostępową virtacc.plgrid.pl , na której zainstalowany jest model systemu sterowania, serwer modeli (Model Server) oraz domyślne modele akceleratora. Model Server jest wirtualnym urządzeniem TANGO służącym do zlecania zadań obliczających akcelerator.

Uwaga: Jeśli chce się uruchamiać narzędzia okienkowe Tango (Jive, ATKpanel, Astor) na maszynie dostępowej, warto na swoim komputerze mieć zainstalowany X Server.

Aby uzyskać dostęp do systemu TANGO uruchomionego na tej maszynie potrzebna jest konfiguracja VPN.

Aby uzyskać dostęp do linii poleceń na maszynie dostępowej umożliwiającej uruchomienie ModelServer-a potrzebne jest skorzystanie z GSISSH.

Łączenie za pomocą VPN-a

Konfiguracja

Do skonfigurowania klienta VPN potrzebne są

Pliki należy zapisać w dowolnym folderze na swoim dysku.

Następnie w pliku client.ovpn należy zmienić odpowiednio zawartość linijek wskazujących, gdzie znajdują się pliki certyfikatów:

#***********************
#The VPN requires certificates:
#- to verify server: ca-boundle.crt, that can be downloaded from the Virtual Accelerato documantaion
#- to verify you - your certificate in pksc12 - please refer to documentation about certificates on the plgrid manulas
#Please provide these files someware on your disk and then update paths after 'ca' and 'pkcs12'
#*********************** 

ca c:/users/pg/vpn/ca-boundle.crt

pkcs12 c:/Users/pg/vpn/plgpgoryl.p12

#***********************

I zapisać.

Kolejno należy skopiować plik client.ovpn do katalogu konfiguracyjnego OpenVPN-a (dla systemu Windows jest to C:\Program Files\OpenVPN\config\, pod Linux-em jest to /etc/openvpn/). Operacja ta może wymagać uprawnień administratora systemu.

Uruchomienie VPN-a

W systemie Windows należy uruchomić OpenVPN z prawami administratora, klikają prawym przyciskiem myszy na ikonie programu i wybierając "Uruchom jako administrator" . W obszarze powiadomień (prawa strona paska zadań) powinna pojawić się ikonka OpenVPN.

Klikając ją prawym przyciskiem należy wybrać "Połącz".

W systemie Linux jako administrator należy wystartować usługę openvpn (zazwyczaj poleceniem service openvpn start).

Aby przetestować działanie połączenia, z linii komend należy wywołać ping 10.8.0.1.

Po połączeniu VPN-a można uzyskać dostęp za pomocą SSH

Logowanie się do usługi za pomocą GSISSH

Aby zalogować się do maszyny dostępowej należy wpierw zalogować się za pomocą SSH do UI (np. ui.cyfronet.pl, patrz Sposoby dostępu do UI)

Następnie należy wywołać następujące polecenia

voms-proxy-init
gsissh -X -p 2222 virtacc.plgrid.pl

Pierwsze z  poleceń generuje tzw. certyfikat proxy. Drugie łączy się z maszyną dostępową usługi wirtualny akcelerator.

Więcej na temat GSISSH i inofrmacje jak zainstalować klienta na swojej lokalnej maszynie można znaleźć tutaj: http://toolkit.globus.org/toolkit/docs/5.0/5.0.4/security/openssh/

Korzystanie z usługi

Korzystanie z usługi składa się z kilku etapów:

  • skonfigurowania usługi (klienta linii poleceń UNICORE ucc, zazwyczaj jednorazowo po uzyskaniu dostępu do usługi)
  • przygotowania modeli
  • uruchomienia modelu akceleratora
  • uruchomienia testowanej aplikacji bądź skryptu 
  • zakończenie

Konfiguracja usługi

  • Należy zalogować się do maszyny dostępowej
  • wpisać polecenie ucc, które spowoduje przygotowanie plików konfiguracyjnych użytkownika;
  • wgrać na konto swój certyfikat i klucz prywatny (metody przegrywania plików pomiędzy maszynami opisane są w rozdziale dostep lokalny); w przypadku posiadania certyfikatu podpisanego przez Simple CA, czyli gotowej paczki w formacie PKCS12, należy przegrać na konto jedynie plik z rozszerzeniem .p12; np.:

>scp certyfikat.p12 {login}@virtacc.plgrid.pl:/home/login/

  • jeżeli użytkownik nie dysponuje paczką kluczy w formacie PKCS12 należy, zgodnie z opisem umieszczonym w rozdziale Konwersja certyfikatu, dokonać konwersji posiadanych certyfikatów na ten format;
  • w pliku ~/.ucc/preferences ustawić ścieżkę do pliku p12 użytkownika. Przykładowa zawartość tego pliku:
  • przetestować konfigurację:
    • Użycie certyfikatu bezpośrednio

      ucc connect
    • Utorzenie delegacji ważnej 3 dni
      ucc issue-delegation -S "CN=unicore/virtacc.plgrid.pl,O=CYFRONET,O=Usluga,O=PL-Grid,C=PL" -V 3 -t ${HOME}/.ucc/synchrotron-td.xml -v
    • Użycie delegacji uprawnień
      ucc connect -c /etc/synchro/agent.properties
    • Po poprawnym wykonaniu, komunikat powinien być podobny do:
      You can access 4 target system(s).

Przygotowanie modeli

Na serwerze w folderze /home/tango/jobs znajdują się domyślne zadania z modelami akceleratora i Model Server użytkownika (urządzenie TANGO va/models/{login}  ) jest domyślnie skonfigurowany tak by używać tego folderu. Jednak użytkownik ma możliwość użycia swoich modeli. Aby skorzystać z tego należy:

  • zalogować się na maszynę dostępową
  • stworzyć w swoim folderze katalog jobs
  • wgrać do folderu zadania (korzystając np. z scp lub winscp) lub przygotować zadania edytując je lokalnie na maszynie dostępowej
    • Uwaga model musi mieć ustawioną zmienną systemową TANGO_HOST = virtacc.plgrid.pl:10000
  • skonfigurować swój Model Server aby korzystał z folderu użytkownika:
    • zmienić za pomocą narzędzia jive w urządzeniu va/models/{login} wartość właściwości JobsPath na /home/{login}/jobs

Uruchomienie modelu

  • należy zalogować się do maszyny dostępowej np. za pomocą SSH
  • należy przygotować delegację uprawnień gridowych:
    > ucc issue-delegation -S "CN=unicore/virtacc.plgrid.pl,O=CYFRONET,O=Usluga,O=PL-Grid,C=PL" -V {LiczbaDni} -t ${HOME}/.ucc/synchrotron-td.xml
    gdzie { {LiczbaDni} to czas w którym będzie ważna delegacja uprawnień (nie będzie potrzeby podawania hasła użytkownika przy uruchamianiu zadań).
  • uruchomić swój serwer modelu:
    >ModelServer {login} &
  • Należy zapamiętać numer procesu (PID) uruchomionego ModelServera (PID można podglądnąć także za pomocą jive-a)
  • uruchomić ATKPanel dla swojego model serwera:
    >atkpanel va/models/{login}
    lub za pomocą Jive wybrać dla swojego ModelServera polecenie "Monitor device"
  • Zainicjować model wywołując komendę On podając nazwę modelu
  • Komendą Start, podając jako wejście liczbę iteracji do wykonania uruchomić model. Powoduje to wysłanie zadania na infrastrukturę
    Uwaga! jeżeli użytkownik nie ma zarezerwowanych zasobów zadanie może oczekiwać w kolejce zanim wykona obliczenia. Zaleca się w takim razie implementację pętli iteracji wewnątrz zadania tak aby każda kolejna iteracja nie oczekiwała w kolejce.

Uruchomienie testowanej aplikacji bądź skryptu

Testowaną aplikację czy skrypt użytkownik może uruchamiać w swoim środowisku lokalnym, pamiętając o posiadaniu aktywnego połączenia VPN oraz ustawieniu zmiennej systemowej TANGO_HOST na virtacc.plgrid.pl:10000

Zakończenie pracy wirtualnego akceleratora

Po zakończeniu sesji pracy a wirtualnym akceleratora należy wyłączyć swój ModelServer poleceiem:

kill {PID}

gdzie {PID} należy zastąpić numerem PID uruchomionego ModelServera.

Uwaga!

Po zakończeniu sesji należy bezwzględnie wyłączać swój ModelServer aby zapobiec uruchamianiu zadań z twoimi uprawnieniami przez innych użytkowników.

Gdzie szukać dalszych informacji?



  • No labels