[ English | English (United Kingdom) | français | Indonesia | русский | español | Deutsch ]
Menggunakan OpenStack-Ansible dalam proyek Anda¶
Termasuk OpenStack-Ansible dalam proyek Anda¶
Termasuk repositori openstack-ansible dalam proyek lain dapat dilakukan dengan beberapa cara:
Git submodule menunjuk ke tag yang dirilis.
Sebuah skrip untuk secara otomatis melakukan checkout git dari OpenStack-Ansible.
Ketika memasukkan OpenStack-Ansible dalam proyek, pertimbangkan untuk menggunakan struktur direktori paralel seperti yang ditunjukkan pada bagian file ansible.cfg
.
Juga perhatikan bahwa menyalin file ke direktori seperti env.d
atau conf.d
harus ditangani melalui semacam skrip dalam proyek ekstensi.
Termasuk OpenStack-Ansible dengan struktur Ansible Anda¶
Anda dapat membuat playbook, variabel, dan struktur peran Anda sendiri sambil tetap menyertakan peran dan pustaka yang dimungkinkan OpenStack dengan mengatur variabel lingkungan atau dengan menyesuaikan /usr/local/bin/openstack-ansible.rc
.
Variabel lingkungan yang relevan untuk OpenStack-Ansible adalah sebagai berikut:
ANSIBLE_LIBRARY
Variabel ini harus mengarah ke
/etc/ansible/plugins/library
. Melakukan hal itu memungkinkan peran dan playbook untuk mengakses modul Ansible yang disertakan OpenStack-Ansible.ANSIBLE_ROLES_PATH
Variabel ini harus menunjuk ke
/etc/ansible/roles
secara default. Hal ini memungkinkan Ansible untuk mencari peran OpenStack-Ansible yang dapat direferensikan oleh peran ekstensi.ANSIBLE_INVENTORY
Variabel ini harus mengarah ke
openstack-ansible/inventory/dynamic_inventory.py
. Dengan pengaturan ini, ekstensi memiliki akses ke inventaris dinamis yang sama yang menggunakan OpenStack-Ansible.
Path ke direktori level atas openstack-ansible
dapat bersifat relatif dalam file ini.
Pertimbangkan struktur direktori ini
my_project
|
|- custom_stuff
| |
| |- playbooks
|- openstack-ansible
| |
| |- playbooks
Variabel lingkungan yang ditetapkan akan digunakan ../openstack-ansible/playbooks/<directory>
.
Menambahkan peran baru atau utama dalam instalasi OpenStack-Ansible Anda¶
Secara default, OpenStack-Ansible menggunakan file ansible-role-requirement untuk mengambil peran yang diperlukan untuk proses instalasi.
Peran akan diambil ke standar ANSIBLE_ROLES_PATH
, yang standarnya adalah /etc/ansible/roles
.
ANSIBLE_ROLE_FILE
adalah variabel lingkungan yang menunjuk ke lokasi file YAML dimana ansible-galaxy dapat mengkonsumsi, menentukan dimana peran mengunduh dan menginstal. Nilai default untuk ini adalah ansible-role-requirements.yml
.
Anda dapat mengganti file ansible-role-requirement yang digunakan dengan mendefinisikan variabel lingkungan ANSIBLE_ROLE_FILE
sebelum menjalankan skrip bootstrap-ansible.sh
.
Sekarang menjadi tanggung jawab sang penyebar untuk mempertahankan pin versi yang sesuai dari ansible roles jika diperlukan peningkatan.
Adding new collections in your OpenStack-Ansible installation¶
The Victoria release of openstack-ansible adds an optional new config
file which defaults to
/etc/openstack_deploy/user-collection-requirements.yml
. It should be
in the native format of the ansible-galaxy requirements file and can be
used to add new collections to the deploy host.
You can override location of the user-collection-requirements.yml
by
setting USER_COLLECTION_FILE
environment variable before running the
bootstrap-ansible.sh
script.
Memelihara local forks dari ansible roles¶
Rilis Train openstack-ansible menambahkan file konfigurasi baru opsional yang secara default ke /etc/openstack_deploy/user-role-requirements.yml
. Itu dalam format yang sama dengan ansible-role-requirement.yml
dan dapat digunakan untuk menambahkan peran baru atau secara selektif menimpa yang sudah ada. Peran baru yang tercantum dalam user-role-needs.yml
akan digabungkan dengan yang ada di ansible-role-requirement.yml
, dan peran dengan nama yang cocok akan menggantikan yang ada di ansible-role-requirements.yml
. Mudah bagi seorang penggelar untuk menjaga file ini di bawah kendali versi mereka sendiri dan keluar dari openstack-ansible tree.
Ini memungkinkan penyebar untuk menambahkan ansible roles baru, atau menimpa lokasi atau SHA dari peran individu yang ada tanpa mengganti file asli seluruhnya. Ini juga mudah untuk memasukkan