Difference between revisions of "Blazar/Installation without Devstack"
(Fix repos URLs) |
(Remove virtual reservation steps) |
||
Line 54: | Line 54: | ||
And the same procedure for special admin user to work with physical reservations. | And the same procedure for special admin user to work with physical reservations. | ||
− | Next you need to configure Nova. | + | Next you need to configure Nova. Note that virtual reservations (aka instance reservations) are not supported anymore because of incompatibility with new Nova releases. |
− | |||
− | |||
− | |||
− | |||
If you want to use physical reservations add these ones: | If you want to use physical reservations add these ones: | ||
Line 66: | Line 62: | ||
scheduler_default_filters=RetryFilter,AvailabilityZoneFilter,RamFilter,ComputeFilter,ComputeCapabilitiesFilter,ImagePropertiesFilter,ClimateFilter | scheduler_default_filters=RetryFilter,AvailabilityZoneFilter,RamFilter,ComputeFilter,ComputeCapabilitiesFilter,ImagePropertiesFilter,ClimateFilter | ||
− | Restart nova- | + | Restart nova-scheduler to use the new configuration file. |
Blazar uses Keystone trusts to commit actions on behalf of user created lease. That’s why we need to create identityv3 service with appropriate endpoints: | Blazar uses Keystone trusts to commit actions on behalf of user created lease. That’s why we need to create identityv3 service with appropriate endpoints: | ||
Line 80: | Line 76: | ||
To start Blazar services use: | To start Blazar services use: | ||
− | + | blazar-api | |
− | + | blazar-manager | |
Now you can use python-blazarclient to communicate with Blazar. | Now you can use python-blazarclient to communicate with Blazar. |
Revision as of 13:02, 20 January 2017
Installation guide
This page includes instructions for Blazar installation.
Download all Blazar related repos:
git clone https://github.com/openstack/blazar.git git clone https://github.com/openstack/blazar-nova.git git clone https://github.com/openstack/python-blazarclient.git
Install all these projects to your working environment via:
python setup.py install
or
python setup.py develop
Next you need to configure Blazar and Nova. Define /etc/climate/climate.conf file using the following example:
[DEFAULT] host=<blazar_host> os_auth_host=<auth_host> os_auth_port=<auth_port> os_auth_protocol=<http, for example> os_admin_username=<username> os_admin_password=<password> os_admin_tenant_name=<tenant_name> [manager] plugins=basic.vm.plugin,physical.host.plugin [virtual:instance] on_start=on_start on_end = create_image, delete [physical:host] on_start=on_start on_end = on_end climate_username=<username> climate_password=<password> climate_tenant_name=<tenant_name> [database] connection=<path_to_blazar.sqlite>
Here os_admin_* flags refer to Blazar service user. climate_* ones - to admin user created specially to work with physical reservations. If you have no these users, create them via Keystone:
keystone user-create --name=climate --pass=<service_password> --tenant_id=<service_tenant_id> --email=climate@example.com keystone user-role-add --tenant-id <service_tenant_id> --user-id <climate_user> --role-id <admin_role>
And the same procedure for special admin user to work with physical reservations.
Next you need to configure Nova. Note that virtual reservations (aka instance reservations) are not supported anymore because of incompatibility with new Nova releases.
If you want to use physical reservations add these ones:
scheduler_available_filters = nova.scheduler.filters.all_filters scheduler_available_filters = climatenova.scheduler.filters.climate_filter.ClimateFilter scheduler_default_filters=RetryFilter,AvailabilityZoneFilter,RamFilter,ComputeFilter,ComputeCapabilitiesFilter,ImagePropertiesFilter,ClimateFilter
Restart nova-scheduler to use the new configuration file.
Blazar uses Keystone trusts to commit actions on behalf of user created lease. That’s why we need to create identityv3 service with appropriate endpoints:
keystone service-create --name keystonev3 --type identityv3 --description "Keystone Identity Service v3" keystone endpoint-create --region <region> --service keystonev3 --publicurl "<auth_protocol>://<auth_host>:5000/v3" --adminurl "<auth_protocol>://<auth_host>:35357/v3" --internalurl "<auth_protocol>://<auth_host>:5000/v3"
And, finally, we need to create reservation service in Keystone with its endpoints:
keystone service-create --name climate --type reservation --description “OpenStack reservation service.” keystone endpoint-create --region <region> --service climate --publicurl "<auth_protocol>://<climate_host>:1234/v1" --adminurl "<auth_protocol>://<climate_host>:1234/v1"
To start Blazar services use:
blazar-api blazar-manager
Now you can use python-blazarclient to communicate with Blazar.