Skip to content

RedHatOfficial/ansible-cloud_utils

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ansible-cloud_utils

Ansible Collection for performing operations against public and private "clouds".

Minimum Ansible Version: Ansible 2.9

Building this Collection

pushd redhatofficial/cloud_utils/
ansible-galaxy collection build
popd

Using this Collection

Information about using collections can be found here:

The roles in this collection are in the redhatofficial.cloud_utils namespace.

They can be used by adding the collection to the playbook:

---
- hosts: all
  collections:
    - redhatofficial.cloud_utils

Roles

Roles provided by this project. Examples of how to use these roles are included in the top-level playbooks directory

enable_chrony

Enables chrony and disables ntp.

idm_register_ipa_client

Registers an IPA client with an IdM or IPA server.

Options

parameter requried default comments
idm_server yes The IdM/IPA server to regsiter the IPA client with
idm_domain yes The IdM/IPA domain to register the IPA client with
idm_enroll_user yes The IdM/IPA user to enroll the IPA client with
idm_enroll_password yes The IdM/IPA password to enroll the IPA client with
idm_register_force no False If true and IPA client is already registered it will be unregistered.

Notes

  • Does not configure NTP

configure_vm_network_and_ip

Configures the virtualization provider network and IP for given hosts. This is useful if need migrate a VM from one vlan/subnet to another vlan/subnet by updating both the virtualization provider and destination host.

The concept is that this playbook is cloud provider agnostic and can figure out how to move a VM from one network to another on any cloud provider, staying on that same provider, based on gathering facts about the VM. Though currently it has only been tested and written for a couple providers, as need arises for more providers the playbook can be easly extended to handle more.

Tested With

  • Red Hat Virtualization
    • 4.0.5
  • VMware vCenter
    • 5.1.0

Assumptions

  • Only handles one network interface
  • Assumes migrating the first network interface
  • target host facts are gathered so that ansible_virtualization_type is set
  • ansible_virtualization_type in ['RHEV', 'VMware']

Options

parameter required default choices comments
ansible_manage_etc_hosts no false true, false, yes, no Flag to control if /etc/hosts is updated with newly configured ip address
vm_network_ip4 yes IP4 address to set for the VM
vm_network_ip4_netmask_prefix yes IP4 address netmask prefex to set for the VM
vm_network_gw4 yes IP4 gateway to set for the VM
vm_network_dns4 no List of IP4 DNS hosts to set for the VM
vm_network_ifname no eth0 for RHEV, ens192 for VMware Ethernet interface name to set for the VM
vm_network_conn_name no System {{ vm_network_ifname }} Ethernet connection name to set for the vm
virt_api_bastion no localhost Bastion host to use to do API calls to the virtulization provider.
virt_api_insecure no False True/False Whether the connection to the virtualization provider API is insecure or not, aka using trusted certificates.
virt_network yes Valid networks on the virtualization provider Virtualization provider network to set for the VM
ovirt_url If oVirt/RHV oVirt/RHV url for API calls
ovirt_username If oVirt/RHV oVirt/RHV username for API calls
ovirt_password If oVirt/RHV oVirt/RHV passwrod for API calls
vsphere_hostname If vSphere vSphere hostname for API calls
vsphere_username If vSphere vSphere username for API calls
vsphere_password If vSphere vSphere password for API calls
vsphere_datacenter If vSphere vSphere datacenter for API calls. NOTE: attempted to determine this dynamically but could not find a way.
vsphere_cluster If vSphere vSphere cluster for API calls. NOTE: attempted to determine this dynamically but could not find a way.

optimize_kernel_scheduler

What is the suggested I/O scheduler to improve disk performance when using Red Hat Enterprise Linux with virtualization?. The following playbook configures noop for the IO queue scheduler kernel parameter for RHEL VMs on VMware infrastructure per How to use the Noop IO Scheduler.

Notes

  • A backup of the grub configuration is made when changed.
  • This playbook does not perform the required reboot to enable this paramater.