Our openstack tenant is already set:
Let gather all needed informations from this web interface.
Authentication informations can be found in the openstack.rc file. this file can be downloaded using the OpenStack webinterface in [access and security/API Access].
$cat openstack.rc #!/bin/bash # To use an OpenStack cloud you need to authenticate against the Identity # service named keystone, which returns a **Token** and **Service Catalog**. # The catalog contains the endpoints for all services the user/tenant has # access to - such as Compute, Image Service, Identity, Object Storage, Block # Storage, and Networking (code-named nova, glance, keystone, swift, # cinder, and neutron). # # *NOTE*: Using the 2.0 *Identity API* does not necessarily mean any other # OpenStack API is version 2.0. For example, your cloud provider may implement # Image API v1.1, Block Storage API v2, and Compute API v2.0. OS_AUTH_URL is # only for the Identity API served through keystone. export OS_AUTH_URL=https://openstack-identity.mycompany.com/v3 # With the addition of Keystone we have standardized on the term **tenant** # as the entity that owns the resources. export OS_TENANT_ID=1ac99fef77ee40148d7d5ba3e070caae export OS_TENANT_NAME="TrainingIC" export OS_PROJECT_NAME="TrainingIC" # In addition to the owning entity (tenant), OpenStack stores the entity # performing the action as the **user**. export OS_USERNAME="UserTrainingIC" # With Keystone you pass the keystone password. echo "Please enter your OpenStack Password: " read -sr OS_PASSWORD_INPUT export OS_PASSWORD=$OS_PASSWORD_INPUT # If your configuration has multiple regions, we set that information here. # OS_REGION_NAME is optional and only valid in certain environments. export OS_REGION_NAME="fr" # Don't leave a blank variable, unset it if it was empty if [ -z "$OS_REGION_NAME" ]; then unset OS_REGION_NAME; fi
We get OS_AUTH_URL, OS_TENANT_NAME, OS_USERNAME.
Authentication API version : OS_AUTH_URL
Beware of authentication API version. By default v3 is activated, but ansible needs the v2.0. We get the url and set V2.0 instead of V3 : https://openstack-identity.mycompany.com/v2.0
Create an instance using the OpenStack web interface and get the name for image, flavor, key, network, security group.
Create a ./group_vars/all file with all the needed informations.
$vi ./group_vars/all # Authentication AuthUserName: UserTrainingIC AuthPassword: PasswordTrainingIC TenantName: TrainingIC # VM infos ImageName: CentOS-7-x86_64-GenericCloud-1607 FlavorName: m1.1cpu.1gb InfraKey: KeyTrainingIC NetworkName: NetPrivateTrainingIC SecurityGroup: default