# Szybkie wprowadzenie do CLI

Niniejszy artykuł przedstawia w możliwie skondensowanej formie podstawowe informacje na temat wykorzystania oprogramowania CLI w celu wykonania podstawowych operacji na Platformie.

# Warunki wstępne

W celu wykonania przewodnika konieczne jest zainstalowanie CLI, zgodnie z przewodnikiem.

# Struktura polecenia

Polecenia składają się z następujących komponentów:

$ h1 [kategoria [...]] polecenie [[opcje] ...]

Ta struktura jest powtarzana we wszystkich poleceniach aplikacji.

Aby rozpocząć pracę, należy zalogować się za pomocą następujące polecenia:

$ h1 login --username {{ username }}

gdzie:

  • --username - wskazuje nazwę użytkownika

Zostaniesz poproszony o wprowadzenie hasła:

? Password: ********************

Po prawidłowym zalogowaniu otrzymasz wiadomość o uzyskaniu klucza API dla sesji:

info: You successfully logged and stored your apiKey in config file

Dane umożliwiające dostęp do Platformy zostały zapisane w $HOME/.h1-cli/conf.json. Należy zapewnić poufność tego pliku.

W przypadku wykorzystania więcej niż 1 projektu, konieczne jest uzyskanie informacji na temat identyfikatora Projektu wykonując:

$ h1 project list

Następnie dokonanie wyboru:

$ h1 project select --project 

# Utworzenie Wirtualnej Maszyny

Poniżej znajduje się przykładowa sesja prezentująca podstawowe działania - utworzenie Wirtualnej Maszyny:

$ h1 vm list
ID                        NAME           FLAVOUR    STATE    PROCESSING  TAGS
5b3f7c863adfaa0d10f7b445  docker-node    light   Off      false
5b3f8b7b3adfaa0d10f7bed4  docker-laas    light   Running  false       zabbix_agent
5b439f6b3adfaa0d10f90820  docker-node-2  light  Running  false       zabbix_agent

$ h1 user credentials list
ID                        NAME    TYPE  CREATED
5b30d80cddd5b3c5e9ee8dfe  my-ssh  ssh   2018-06-25T11:54:52.159Z

$ h1 vm create --name vm-tutorial --ssh my-ssh --image ubuntu --type light --os-disk ssd,10
ID                        NAME         FLAVOUR   STATE    PROCESSING  TAGS
5b44b43511b0b1e6f24eb623  vm-tutorial  light  Running  false  

$ h1 vm list
ID                        NAME           FLAVOUR    STATE    PROCESSING  TAGS
5b44b43511b0b1e6f24eb623  vm-tutorial    light   Running  false  

Opis podstawowych parametrów polecenia h1 vm create --name vm-tutorial --ssh my-ssh --image ubuntu --type light --os-disk ssd,10:

  • --name vm-tutorial - nazwa Wirtualnej Maszyny wybrana przez użytkownika
  • --ssh my-ssh - nazwa klucza SSH może być ustalona poprzez h1 user credentials list lub h1 project credentials list
  • --image ubuntu - identyfikator Obrazu możliwy do ustalenia m. in. za pomocą h1 image list --recommended,
  • --type light - wybrany wariant Wirtualnej Maszyny, który można ustalić poprzez h1 service list --resource vm --type flavour,

Klucz SSH jest dostępny po zaimportowaniu. Na przykład za pomocą polecenia h1 user credentials add --sshkey-file ~/.ssh/id_rsa.pub --name $(hostname).

# Zarządzanie Wirtualnymi Maszynami

Poniżej przedstawiono podstawowe działania, które można wykonać na serwerach w postaci przykładowych poleceń:

  • h1 vm list - lista dostępnych Wirtualnych Maszyn
  • h1 vm show --vm vm-tutorial - pokaż szczegóły o Wirtualnej Maszynie ```vm-tutorial``,
  • h1 vm stop --vm vm-tutorial - zatrzymuje Wirtualną Maszynę vm-tutorial bez jej usuwania,
  • h1 vm start --vm vm-tutorial - uruchamia Wirtualną Maszynę ```vm-tutorial``,
  • h1 vm turnoff --vm vm-tutorial - wyłącza Wirtualną Maszynę vm-tutorial bez jego usuwania,
  • h1 vm remove --vm vm-tutorial - usuwa Wirtualną Maszynę vm-tutorial.

Możliwe jest również wprowadzanie zmian dotyczących dysków podłączonych do Wirtualnej Maszyny:

  • h1 vm disk attach --vm vm-tutorial --disk vm-disk-2 - dołącza do Wirtualnej Maszyny Dysk, który może zostać utworzony np. poprzez h1 disk create --name vm-disk-2 --type ssd --size 20,
  • h1 vm dysk detach --vm vm-tutorial --disk vm-disk-2 - odłącz Dysk bez jego usuwania.

Operacje te nie wymagają wyłączania Wirtualnych Maszyn w przypadku Dysków innych niż systemowe.

# Zarządzanie Dyskami

Dyski są nośnikami danych dla Wirtualnych Maszyn. Możliwe jest ich przełączanie i modyfikowanie podczas działania Wirtualnych Maszyn.

Poniżej przedstawiono podstawowe działania, które można wykonać na Dyskach w postaci przykładowych poleceń:

  • h1 disk list - lista dostępnych Dysków
  • h1 disk show --disk vm-disk-2 - pokaż szczegóły o Dysku vm-disk-2,
  • h1 disk remove --disk vm-disk-2 - usuwa Dysku vm-disk-2,
  • h1 disk rename --disk vm-disk-2 --new-name vm-disk-new - zmienia nazwę Dysku vm-disk-2 na vm-disk-new ,
  • h1 disk create --name vm-disk-4 --type ssd --size 25 - utwórz dysk SSD o rozmiarze 25 GB i nazwie ```vm-disk-4``,
  • h1 disk resize --disk vm-disk-4 - size 30 - zmiana rozmiaru vm-disk-4 na 30 GB.

Rozszerzenie Dysku nie jest możliwe dla dysków systemowych przyłączonych do uruchomionej Wirtualnej Maszyny. W przypadku Dysku systemowego należy najpierw zatrzymać Wirtualną Maszynę. W innych przypadkach można zmienić rozmiar dysku, gdy uruchomiona jest Wirtualna Maszyna i system operacyjny.

# Zarządzanie Obrazami

Możesz tworzyć Obrazy i zarządzać nimi. Obraz umożliwia tworzenie Wirtualnych Maszyn o tej samej konfiguracji lub tworzenie tymczasowej kopii instancji, np. aby chronić stan systemu przed istotnymi aktualizacjami.

Poniżej przedstawiono podstawowe działania, które można wykonać z Obrazami w postaci przykładowych poleceń:

  • h1 image create --vm vm-tutorial --name vm-tutorial-$(date +"%Y-%m-%d") - utworzy Obraz Wirtualnej Maszyny i zapisze go pod podaną nazwą,
  • h1 image list - wyświetla listę Obrazów w Projekcie
  • h1 image list --recommended - wyświetla listę Rekomendowanych Obrazów
  • h1 image delete --image vm-tutorial-2017-09-15 - usuwa Obraz vm-tutorial-2017-09-15,
  • h1 image show --image vm-tutorial-2017-09-15 - pokazuje szczegóły Obrazu vm-tutorial-2017-09-15,

# Zarządzanie innymi zasobami

Warto zwrócić uwagę na:

  • h1 vm nic list --vm vm-id - wyświetla, między innymi Adres IP Wirtualnej Maszyny

W przypadku innych zasobów możesz użyć parametru --help, który dokumentuje kategorie i operacje CLI w sposób pełny i aktualny.

Czy uważasz ten artykuł za przydatny? Tak Nie