|
|
(9 intermediate revisions by 6 users not shown) |
Line 1: |
Line 1: |
− | == Installation guide ==
| + | This page has migrated to [https://docs.openstack.org/blazar/latest/install/install-without-devstack.html here]. |
− | | |
− | This page includes instructions for Climate installation. | |
− | | |
− | Download all Climate related repos:
| |
− | | |
− | git clone https://github.com/stackforge/climate.git
| |
− | git clone https://github.com/stackforge/climate-nova.git
| |
− | git clone https://github.com/stackforge/python-climateclient.git
| |
− | | |
− | Install all these projects to your working environment via:
| |
− | | |
− | python setup.py install
| |
− | | |
− | or
| |
− | | |
− | python setup.py develop
| |
− | | |
− | Next you need to configure Climate and Nova. Define /etc/climate/climate.conf file using the following example:
| |
− | | |
− | [DEFAULT]
| |
− |
| |
− | host=<climate_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_end = create_image, delete
| |
− |
| |
− | [physical:host]
| |
− | climate_username=<username>
| |
− | climate_password=<password>
| |
− | climate_tenant_name=<tenant_name>
| |
− | | |
− | Here os_admin_* flags refer to Climate 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. If you want to use virtual reservations, please add the following lines to nova.conf file:
| |
− | | |
− | osapi_compute_extension = nova.api.openstack.compute.contrib.standard_extensions
| |
− | osapi_compute_extension = climatenova.api.extensions.default_reservation.Default_reservation
| |
− | osapi_compute_extension = climatenova.api.extensions.reservation.Reservation
| |
− | | |
− | 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-api to use new configuration file.
| |
− | | |
− | Climate 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 identytiv3 --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 Climate services use:
| |
− | | |
− | climate-api --config-file /etc/climate/climate.conf
| |
− | climate-manager --config-file /etc/climate/climate.conf
| |
− | | |
− | Now you can use python-climateclient to communicate with Climate.
| |