Install and configure Ansible
There are several methods for installing Ansible that depend on the type of your machine’s operating system.TipIf you already have Ansible installed, ensure that you’re using the recommended version of Python: 3.11 or higher. To check your Ansible and Python versions and get more details about the configuration, run
ansible –version
.Run the following command:
apt-get install ansible
.Add GCore collection from Galaxy
We have a dedicated Ansible Galaxy Collection that contains all modules and plugins you need for interacting with the Gcore Cloud. To install the collection, run the following command:Validate Ansible configuration
To ensure that everything works as expected, run a test playbook according to the following instructions. 1. Configure the playbook:Descriptions of the configuration parameters
Descriptions of the configuration parameters
api_key
: The API key created in the Gcore Customer Portal in the profile settings.region_name
: A region in which your cloud resource is created.project_id
: An ID of the project that contains your cloud resources. You can check the ID in the Gcore Customer Portal on the Projects page.
InfoIn the playbook configuration, add the ansible_python_interpreter:
/usr/bin/python3.11
variable only if your Python version is lower than the recommended 3.11
.ansible-playbook ./get_instance.yaml -v
.
3. If you correctly configured Ansible, you should see one of the following:
- If you have any instances created in the specified region, you’ll get a summary of their setup.
- In case you have no cloud resources created in the specified region, you’ll get an empty response.
Manage cloud resources
Use modules and plugins from our Ansible Collection to create playbooks customized to your infrastructure requirements and deployment workflows. As an example, let’s create atest.yaml
playbook that checks your quota limits creates a virtual instance if you have sufficient quotas.
To create and run the playbook:
1. Initialize a new “create_vm” role template.
touch ./create_vm/tasks/create_vm.yaml
.
5. Configure the task to create an instance.
create_vm/tasks/main.yml
file:
create_vm/vars/main.yml
file. For example:
test.yaml
to test the “create_vm” role.
ansible-playbook test.yaml
.
You should get one of the following outputs:
- If everything is set up correctly, a new virtual instance will be created.
- The information about your instance will appear in the “Created VM Info” task section, and it’ll also be written to the log file.
- If you don’t have sufficient quotas, you’ll get the “Needed quota” output, followed by the list of your current and requested quota limits. This information will also be stored in logs.
- If you made a mistake in variables (for example, set a wrong flavor), you’ll get the “Failed” error. In this case, double-check the playbook configuration and rerun it.