ovirt.image-template
Szablon obrazu oVirt
Ta rola została przeniesiona do oVirt Ansible Collection, proszę używać najnowszej wersji stamtąd. To repozytorium jest teraz tylko do odczytu i nie jest już używane do aktywnego rozwoju.
Rola ovirt.image-template
tworzy szablon z zewnętrznego obrazu. Obecnie dysk może być obrazem w zewnętrznym dostawcy Glance lub obrazem QCOW2.
Uwaga
Proszę pamiętać, że po zainstalowaniu tej roli z Ansible Galaxy należy wykonać następujące polecenie:
$ ansible-galaxy install ovirt.image-template
To pobierze rolę do katalogu o tej samej nazwie, jakiej użyliście na linii poleceń, w tym przypadku ovirt.image-template
. Uwaga, że nazwy są wrażliwe na wielkość liter, więc jeśli określicie na przykład OVIRT.image-template
, pobierze tę samą rolę, ale doda ją do katalogu o nazwie OVIRT.image-template
, więc później zawsze będziecie musieli używać tej roli z prefiksem wielkimi literami. Dlatego uważajcie, jak określacie nazwę roli w linii poleceń.
Podczas instalacji RPM instalujemy trzy starsze nazwy oVirt.image-template
, ovirt.image-template
oraz ovirt-image-template
. Możecie używać dowolnej z tych nazw. Ta dokumentacja oraz przykłady w tym repozytorium używają nazwy ovirt.image-template
. Nazwy ról oVirt.image-template
i ovirt-image-template
są przestarzałe.
Wymagania
- Wersja Ansible 2.9 lub wyższa.
- Wersja Python SDK 4.3 lub wyższa.
- oVirt musi być w wersji 4.1 lub wyższej i musi być zainstalowany oraz uruchomiony
ovirt-imageio
. - Certyfikat CA silnika oVirt. Ścieżka do certyfikatu CA musi być określona w zmiennej
ovirt_ca
. - plik
Ograniczenia
- Nie wspieramy trybu weryfikacji Ansible (Dry Run), ponieważ ta rola używa kilku modułów (moduł command), które tego nie wspierają. Gdy wszystkie moduły używane przez tę rolę będą to wspierać, my również to zrealizujemy.
Zmienne roli
Nazwa | Wartość domyślna | |
---|---|---|
qcow_url | UNDEF (obowiązkowe, jeśli nie używany jest glance) | URL obrazu QCOW2. Możesz określić lokalny plik z prefiksem 'file://'. |
qcow_url_client_cert | UNDEF | Ścieżka do certyfikatu klienta, jeśli jest potrzebny do pobrania QCOW z uwierzytelnionego serwisu. |
qcow_url_client_key | UNDEF | Ścieżka do klucza klienta, jeśli jest potrzebny do pobrania QCOW z uwierzytelnionego serwisu. |
image_path | /tmp/ | Ścieżka, gdzie obraz QCOW2 zostanie pobrany. Jeśli katalog, zostanie użyta baza URL na zdalnym serwerze. |
image_checksum | UNDEF | Jeśli określono sumę kontrolną, suma kontrolna pliku docelowego zostanie obliczona po pobraniu, aby zapewnić jego integralność oraz zweryfikować, że transfer zakończył się pomyślnie. Format: |
image_cache_download | true | Gdy ustawione na false, usunie image_path na początku i końcu wykonania. |
template_cluster | Default | Nazwa klastra, w którym szablon musi być utworzony. |
template_io_threads | UNDEF | Liczba wątków IO używanych przez szablon. 0 oznacza wyłączenie wątków IO. (Dodano w ansible 2.7) |
template_name | mytemplate | Nazwa szablonu. |
template_memory | 2GiB | Ilość pamięci przypisanej do szablonu. |
template_memory_guaranteed | UNDEF | Minimalna gwarantowana ilość pamięci dla maszyny wirtualnej. |
template_memory_max | UNDEF | Maksymalna ilość pamięci maszyny wirtualnej, do której można wykonać hot-plug pamięci. |
template_cpu | 1 | Liczba CPU przypisanych do szablonu. |
template_disk_storage | UNDEF | Nazwa domeny pamięci, w której dysk musi być utworzony. Jeśli nie jest określona, domena pamięci danych jest wybierana automatycznie. |
template_disks | [] | Lista słowników określających dodatkowe dyski szablonu. Zobacz poniżej dla bardziej szczegółowego opisu. |
template_disk_size | 10GiB | Rozmiar dysku szablonu. |
template_disk_name | UNDEF | Nazwa dysku szablonu. |
template_disk_format | UNDEF | Format dysku szablonu. |
template_disk_interface | virtio | Interfejs dysku szablonu. (Opcje: virtio, ide, virtio_scsi) |
template_seal | true | 'Zabieganie' usuwa wszystkie specyficzne dla maszyny konfiguracje z systemu plików. Nie wspierane w Windows. Ustaw to na 'false' dla systemów Windows. |
template_timeout | 600 | Czas oczekiwania na utworzenie/importowanie szablonu. |
template_type | UNDEF | Typ szablonu: desktop, server lub high_performance (tylko dla szablonów opartych na qcow2) |
template_nics | {name: nic1, profile_name: ovirtmgmt, interface: virtio} | Lista słowników, które określają karty sieciowe szablonu. |
template_operating_system | UNDEF | System operacyjny szablonu, np.: other, rhel_7x64, debian_7, inne w module ovirt_template. |
glance_image_provider | UNDEF (obowiązkowe, jeśli qcow_url nie jest używany) | Nazwa dostawcy obrazów glance. |
glance_image | UNDEF (obowiązkowe, jeśli qcow_url nie jest używany) | Ten parametr określa nazwę dysku w dostawcy glance, który ma być zaimportowany jako szablon. |
template_prerequisites_tasks | UNDEF | Działa tylko z obrazem qcow. Określa ścieżkę do pliku z zadaniami Ansible, które powinny być wykonane na maszynie wirtualnej przed stworzeniem szablonu z niego. Uwaga, obraz qcow musi zawierać agenta gościa, który zgłasza adres IP. |
Lista template_disks
może zawierać następujące atrybuty:
Nazwa | Wartość domyślna | |
---|---|---|
name | UNDEF (Wymagany) | Nazwa dodatkowego dysku. |
size | UNDEF (Wymagany) | Rozmiar dodatkowego dysku. |
storage_domain | UNDEF | Nazwa domeny pamięci, w której dysk powinien być utworzony. Jeśli nie podano wartości, ustawiana jest wartość z template_disk_storage. |
interface | UNDEF | Interfejs dysku. Jeśli nie podano wartości, ustawiana jest wartość z template_disk_interface. |
format | UNDEF | Określenie formatu dysku. Jeśli nie podano wartości, ustawiana jest wartość z template_disk_format.
|
bootable | UNDEF | Prawda, jeśli dysk powinien być rozruchowy. |
Zależności
Brak.
Przykład playbooka
---
- name: Utwórz szablon z qcow
hosts: localhost
connection: local
gather_facts: false
vars:
engine_fqdn: ovirt-engine.example.com
engine_user: admin@internal
engine_password: 123456
engine_cafile: /etc/pki/ovirt-engine/ca.pem
qcow_url: https://cloud.centos.org/centos/7/images/CentOS-7-x86_64-GenericCloud.qcow2
#qcow_url: file:///tmp/CentOS-7-x86_64-GenericCloud.qcow2
template_cluster: produkcja
template_name: centos7_template
template_memory: 4GiB
template_cpu: 2
template_disk_size: 10GiB
template_disk_storage: mydata
roles:
- ovirt.image-template
- name: Utwórz szablon z dysku przechowywanego w glance
hosts: localhost
connection: local
gather_facts: false
vars:
engine_fqdn: ovirt-engine.example.com
engine_user: admin@internal
engine_password: 123456
engine_cafile: /etc/pki/ovirt-engine/ca.pem
glance_image_provider: qe-infra-glance
glance_image: rhel7.4_ovirt4.2_guest_disk
template_cluster: produkcja
template_name: centos7_template
template_memory: 4GiB
template_cpu: 2
template_disk_size: 10GiB
template_disk_storage: mydata
roles:
- ovirt-image-template
- name: Utwórz szablon z qcow2.xz
hosts: localhost
connection: local
gather_facts: false
pre_tasks:
- name: Pobierz plik qcow2.xz
get_url:
url: "https://cloud.centos.org/centos/7/images/CentOS-7-x86_64-GenericCloud.qcow2.xz"
dest: /tmp
register: downloaded_file
- name: Wydobądź pobrany obraz QCOW
command: "unxz --keep --force {{ downloaded_file.dest }}"
- name: Ustaw qcow_url na wydobyty plik
set_fact:
qcow_url: "file://{{ (downloaded_file.dest | splitext)[0] }}"
vars:
engine_fqdn: ovirt-engine.example.com
engine_user: admin@internal
engine_password: 123456
engine_cafile: /etc/pki/ovirt-engine/ca.pem
template_cluster: produkcja
template_name: centos7_template
template_memory: 4GiB
template_cpu: 2
template_disk_size: 10GiB
template_disk_storage: mydata
roles:
- ovirt.image-template
Licencja
Licencja Apache 2.0
ansible-galaxy install ovirt.image-template