Korzystanie z funkcji chmury OpenStack odbywa się z poziomu linii poleceń poprzez narzędzie python-openstackclient.
Do instalacji wymagany jest:
- interpreter języka Python 2.7
- system zarządzania pakietami pip
Wymienione powyżej oprogramowanie jest zainstalowane domyślnie w popularnych dystrybucjach systemu Linux.
Instalacja klienta
Instalacja odbywa się za pomocą polecenia:
pip install python-openstackclient
Możliwa jest przy tym instalacja globalna (tj. dla całego systemu operacyjnego) lub w odseparowanym środowisku wirtualnym (virtualenv), w zależności od indywidualnych preferencji użytkownika. Przykładowo, instalacja globalna dla wszystkich użytkowników:
sudo --set-home pip install python-openstackclient
Klient Openstack posiada rozbudowaną dokumentację. Pomoc można uzyskać używają opcji --help, przykładowo:
openstack --help
Dostępna jest także opcja help, która umożliwia otrzymanie pomocy dla wybranego polecenia:
openstack help
openstack help server list
Ustawienia dostępu
Dostęp do chmury Openstack wymaga przygotowania dwóch plików: clouds.yml oraz clouds-public.yml. Widoczność tych plików dla klienta Openstack zależy od ich lokalizacji. Przykładowo jeśli pliki zostaną zdefiniowane w:
- katalogu roboczym, to są one widoczne tylko dla poleceń wydanych w bieżącej lokalizacji,
- podkatalogu .config/openstack w katalogu domowym użytkownika tj. w ~/.config/openstack, to dane uwierzytelniające są na danej maszynie widoczne wszędzie dla danego użytkownika,
- /etc/openstack, to ustawienia dostępu są wspólne dla wszystkich użytkowników, którzy mają prawo do odczytu w/w plików.
Pliki te nie muszą być przechowywane razem. Przykładowo, clouds.yml można zdefiniować w bieżącym katalogu a clouds-public.yml w katalogu ~/.config/openstack.
Konta użytkownika w chmurze OpenStack tworzone są przez administratora. Dane uwierzytelniające do chmury powinny zostać zapisane w pliku clouds-public.yml:
---
public-clouds:
task:
auth:
auth_url: "https://cloud.task.gda.pl:5000/v3"
username: "nazwa_użytkownika"
password: "hasło_użytkownika"
user_domain_name: "citask"
project_domain_name: "citask"
identity_api_version: 3
Następnie należy zdefiniować plik zawierający informację o projektach używanych przez użytkownika. Informacje te należy umieścić w pliku clouds.yml:
---
clouds:
moja-chmura:
profile: "task"
auth:
project_name: "nazwa_projektu"
Aby uzyskać dostęp do chmury przy pomocy przed chwilą zdefiniowanych plików należy użyć opcji --os-cloud, przykładowo:
openstack --os-cloud moja-chmura server list
Szczegółowy opis opcji konfiguracyjnych znaleźć można w oficjalnej dokumentacji na stronie oprogramowania OpenStack.