API

Przygotowanie środowiska do korzystania z API

Atman rekomenduje klienta api: python3-openstackclient.

Pełną dokumentację online można znaleźć pod adresem: https://docs.openstack.org/python-openstackclient/latest/

Kolejność działań:

  1. Instalacja środowiska python

  2. Instalacja python3-openstackclient

  3. Konfiguracja python3-openstackclient

    • Utworzenie usera api w panelu SSO/pobranie brakujących informacji z panelu Horizon

    • Eksport zmiennych środowiskowych

Szczegółowy opis przygotowania na przykładzie lokalnej maszyny Linux-Ubuntu:

1) Instalacja środowiska python.

Na maszynie, z której administrator będzie zarządzał środowiskiem poprzez api, należy uruchomić polecenie:

pic1

2) Instalacja python-openstackclient.

W następnej kolejności uruchamiane jest polecenie:

pic2

3) Konfiguracja python-openstackclient.

Kolejnym krokiem jest przygotowanie pliku openrc z danymi dostępowymi. Dostęp odbywa się za pomocą kont API tworzonych w panelu administracyjnym: https://auth.atman.pl.

Aby utworzyć konto API oraz plik openrc należy postępować zgodnie z procedurą opisaną tutaj: Tworzenie kont API w systemie SSO

Eksport zmiennych środowiskowych

Przygotowany plik jest skryptem bash’owym, a jego działanie opiera się na ustawieniu zmiennych środowiskowych, które używane są przez klienta API (python3-openstackclient) do komunikacji z wirtualnym środowiskiem serwerowym (projektem) na chmurze Atman Cloud.

W środowisku Linux, eksport tych zmiennych uzyskuje się poprzez uruchomienie skryptu (komenda source <plik-który-został- pobrany>):

$ source ~/openrc
$ openstack server list
+--------------------------------------+------------+--------+--------------------------+-------+--------+
| ID                                   | Name       | Status | Networks                 | Image | Flavor |
+--------------------------------------+------------+--------+--------------------------+-------+--------+
| b837a3fe-XXXX-XXXX-XXXX-XXXXXXXXXXXX | sso-ubu-20 | ACTIVE | int-sso=x.x.x.x, y.y.y.y |       | m1.c1  |
+--------------------------------------+------------+--------+--------------------------+-------+--------+
$

Po podaniu hasła ustawione są już wszystkie zmienne niezbędne do użycia API:

export OS_AUTH_URL=https://waw1-b.cloud.atman.pl:5000/v3
export OS_IDENTITY_PROVIDER="sso_idp"
export OS_PROTOCOL="jwt_token"
export OS_AUTH_TYPE="v3oidcclientcredentials"
export OS_ACCESS_TOKEN_ENDPOINT="https://auth.atman.pl/api/oauth/token"
export OS_PROJECT_DOMAIN_ID="ceab97173f4e43fab1078f2615bcd15c"
export OS_REGION_NAME="ATMAN_WAW1_B"
export OS_INTERFACE=public
export OS_IDENTITY_API_VERSION=3

#poniższe ustawienia są zmienne

export OS_CLIENT_ID="api_xxxxxxxxx"
export OS_CLIENT_SECRET="xxxxxxxxxxxxxxxxxxxxxxx"
export OS_PROJECT_ID="3f12xxxxxxxxxxxxxxx"
export OS_PROJECT_NAME="test-xxxxxxxxxx-1"
export OS_USERNAME="sub.xxxxxx"

Każdorazowo przy nowej sesji należy w ten sam sposób ustawić zmienne.

Komunikacja pomiędzy środowiskiem na Atman Cloud a terminalem, z którego administrator zarządza poprzez API, odbywa się w formie szyfrowanej transmisji (protokół HTTPS).

W przypadku terminalu administracyjnego obsługiwanego przez inny system operacyjny (inna dystrybucja Linux, Mac OS X, Windows) – szczegóły opisanych kroków będą się różnić, przy czym koncepcja pozostaje ta sama: instalacja środowiska python, instalacja klienta python3-openstackclient, pobranie wartości dla zmiennych środowiskowych z panelu Horizon.

Klient/API jest przygotowany do użycia.

Lista wszystkich poleceń dostępna jest pod adresem: https://docs.openstack.org/python-openstackclient/latest/cli/command-list.html

Opis przygotowania na przykładzie lokalnej maszyny Windows

Kolejność działań:

  1. Instalacja środowiska python

  2. Instalacja gita (będziemy używać shell to autoryzacji i potem korzystania z narzędzia)

  3. Instalacja pip

  4. Instalacja Visual Studio (potrzebne do zapewnienia komponentów w tym Microsoft Visual C++)

  5. Instalacja klienta openstack

1) Instalacja środowiska python.

Na maszynie, z której administrator będzie zarządzał środowiskiem poprzez api, należy pobrać paczkę z Pythonem i następnie ją zaintalować. Najnowszą wersję można znaleźć tutaj: https://www.python.org/downloads/

pic8

2) Instalacja git. Następnie pobieramy i instalujemy gita: https://git-scm.com/downloads

pic9

3) Instalacja pip.

Pobieramy plik ze strony https://bootstrap.pypa.io/get-pip.py

Następnie uruchamiamy go za pomocą uruchom plik jako

pic10

Lub uruchamiamy z poziomu konsoli

python get-pip.py

4) Instalacja Visual Studio.

Pobieramy aplikację: https://visualstudio.microsoft.com/downloads/

Pamiętamy o zaznaczeniu opcji Desktop development with C++

pic11

5) Instalacja klienta Openstack

pip install python-openstackclient

6) Konfiguracja i uruchomienie

  • Kopiujemy plik openrc

  • Uruchamiamy program Git Bash

  • Aktywujemy zmienne środowiskowe

pic12

W tym momencie klient powinien być poprawnie zautoryzowany.