« Blazar » : différence entre les versions
(Page créée avec « Let's experiment [https://docs.openstack.org/blazar/latest/ Blazar], Openstack dedicated service for resource reservation. == Concept == Imagine this situation : you provides two services, one with high priority, the other one with low priority. During the week, each service runs VMs on multiple node with auto-scaling capability (i.e. another VMs are automatically provisionned if the workload increases). You know that during the week-end, your higher priority s... ») |
Aucun résumé des modifications |
||
Ligne 7 : | Ligne 7 : | ||
Best of all, unreserved compute nodes managed by Blazar can run preemptible VMs, avoiding unused computing power. | Best of all, unreserved compute nodes managed by Blazar can run preemptible VMs, avoiding unused computing power. | ||
== Installation == | == Installation / Configuration == | ||
[https://docs.openstack.org/kolla-ansible/latest/ Kolla-ansible] is used to deploy our private cloud. | [https://docs.openstack.org/kolla-ansible/latest/ Kolla-ansible] is used to deploy our private cloud. | ||
Ligne 21 : | Ligne 21 : | ||
Note that TLS should be disabled (especially for internal traffic). This is a [https://bugs.launchpad.net/blazar/+bug/2045281 current limitation identified]. | Note that TLS should be disabled (especially for internal traffic). This is a [https://bugs.launchpad.net/blazar/+bug/2045281 current limitation identified]. | ||
=== | === Activate ''preemptible instances'' in ''nova-scheduler'' === | ||
On the Ansible deploy host, the file should be ''config/nova/nova-scheduler.conf'' | |||
<syntaxhighlight lang="yaml"> | |||
[blazar:physical:host] | |||
allow_preemptibles = true | |||
</syntaxhighlight> | |||
=== Create a dedicated flavor for preemptible instances === | |||
For the sake of simplicity, only two flavors are going to be used : | |||
* a "normal" (no preemption) | |||
* a preemptible | |||
<syntaxhighlight lang="bash"> | |||
# normal flavor | |||
openstack flavor create --id 1 --ram 512 --disk 1 --vcpus 1 g1 | |||
# preemptible flavor | |||
openstack flavor create --id 2 --ram 512 --disk 1 --vcpus 1 --property blazar:preemptible=true g1.preempt | |||
</syntaxhighlight> | |||
== Action == | |||
=== Book hosts for blazar === | |||
The hosts you want to reserve for blazar must not belong to aggregates. | |||
<syntaxhighlight lang="bash"> | |||
openstack reservation host create compute1.cloud.ld | |||
openstack reservation host create compute4.cloud.ld | |||
openstack reservation host list | |||
+----+---------------------+-------+-----------+----------+ | |||
| id | hypervisor_hostname | vcpus | memory_mb | local_gb | | |||
+----+---------------------+-------+-----------+----------+ | |||
| 8 | compute1.cloud.ld | 2 | 9664 | 52 | | |||
| 4 | compute4.cloud.ld | 2 | 5632 | 22 | | |||
+----+---------------------+-------+-----------+----------+ | |||
</syntaxhighlight> | |||
[[Fichier:blazar1.png|800px|thumb|left|visualization of compute resources in Horizon]] |
Version du 24 janvier 2024 à 11:44
Let's experiment Blazar, Openstack dedicated service for resource reservation.
Concept
Imagine this situation : you provides two services, one with high priority, the other one with low priority. During the week, each service runs VMs on multiple node with auto-scaling capability (i.e. another VMs are automatically provisionned if the workload increases). You know that during the week-end, your higher priority service will have more demand and you don't want your lower priority service starving it from resources.
Blazar brings the possibility to reserve dedicated compute nodes for your high prority service for a time period, say, the week-end.
Best of all, unreserved compute nodes managed by Blazar can run preemptible VMs, avoiding unused computing power.
Installation / Configuration
Kolla-ansible is used to deploy our private cloud.
Enable Blazar in globals.yml
enable_blazar: "yes"
kolla_enable_tls_internal: "no"
kolla_enable_tls_backend: "no"
Note that TLS should be disabled (especially for internal traffic). This is a current limitation identified.
Activate preemptible instances in nova-scheduler
On the Ansible deploy host, the file should be config/nova/nova-scheduler.conf
[blazar:physical:host]
allow_preemptibles = true
Create a dedicated flavor for preemptible instances
For the sake of simplicity, only two flavors are going to be used :
- a "normal" (no preemption)
- a preemptible
# normal flavor
openstack flavor create --id 1 --ram 512 --disk 1 --vcpus 1 g1
# preemptible flavor
openstack flavor create --id 2 --ram 512 --disk 1 --vcpus 1 --property blazar:preemptible=true g1.preempt
Action
Book hosts for blazar
The hosts you want to reserve for blazar must not belong to aggregates.
openstack reservation host create compute1.cloud.ld
openstack reservation host create compute4.cloud.ld
openstack reservation host list
+----+---------------------+-------+-----------+----------+
| id | hypervisor_hostname | vcpus | memory_mb | local_gb |
+----+---------------------+-------+-----------+----------+
| 8 | compute1.cloud.ld | 2 | 9664 | 52 |
| 4 | compute4.cloud.ld | 2 | 5632 | 22 |
+----+---------------------+-------+-----------+----------+