Appendix D. Understanding the he_gluster_vars.json file

The he_gluster_vars.json file is an example Ansible variable file. The variables in this file need to be defined in order to deploy Red Hat Hyperconverged Infrastructure for Virtualization.

You can find an example file at /etc/ansible/roles/gluster.ansible/playbooks/hc-ansible-deployment/he_gluster_vars.json on any hyperconverged host.

Example he_gluster_vars.json file

{
  "he_appliance_password": "encrypt-password-using-ansible-vault",
  "he_admin_password": "UI-password-for-login",
  "he_domain_type": "glusterfs",
  "he_fqdn": "FQDN-for-Hosted-Engine",
  "he_vm_mac_addr": "Valid MAC address",
  "he_default_gateway": "Valid Gateway",
  "he_mgmt_network": "ovirtmgmt",
  "he_storage_domain_name": "HostedEngine",
  "he_storage_domain_path": "/engine",
  "he_storage_domain_addr": "host1-backend-network-FQDN",
  "he_mount_options": "backup-volfile-servers=host2-backend-network-FQDN:host3-backend-network-FQDN",
  "he_bridge_if": "interface name for bridge creation",
  "he_enable_hc_gluster_service": true,
  "he_mem_size_MB": "16384",
  "he_cluster": "Default",
  "he_vcpus": "4"
}

Red Hat recommends encrypting this file. See Working with files encrypted using Ansible Vault for more information.

D.1. Required variables

he_appliance_password
The password for the hosted engine. For a production cluster, use an encrypted value created with Ansible Vault.
he_admin_password
The password for the admin account of the hosted engine. For a production cluster, use an encrypted value created with Ansible Vault.
he_domain_type
The type of storage domain. Set to glusterfs.
he_fqdn
The FQDN for the hosted engine virtual machine.
he_vm_mac_addr
The MAC address for the appropriate network device of the hosted engine virtual machine. You can skip this option for hosted deployment with static IP configuration as in such cases the MAC address for Hosted Engine is automatically generated.
he_default_gateway
The FQDN of the gateway to be used.
he_mgmt_network
The name of the management network. Set to ovirtmgmt.
he_storage_domain_name
The name of the storage domain to create for the hosted engine. Set to HostedEngine.
he_storage_domain_path
The path of the Gluster volume that provides the storage domain. Set to /engine.
he_storage_domain_addr
The back-end FQDN of the first host providing the engine domain.
he_mount_options

Specifies additional mount options.

For a three node deployment with IPv4 configurations, set:
"he_mount_options":"backup-volfile-servers=host2-backend-network-FQDN:host3-backend-network-FQDN"

The he_mount_option is not required for IPv4 based single node deployment of Red Hat Hyperconverged Infrastructure for Virtualization.

For a three node deployment with IPv6 configurations, set:

"he_mount_options":"backup-volfile-servers=host2-backend-network-FQDN:host3-backend-network-FQDN",xlator-option='transport.address-family=inet6'"

For a single node deployment with IPv6 configurations, set:

"he_mount_options":"xlator-option='transport.address-family=inet6'"
he_bridge_if
The name of the interface to use for bridge creation.
he_enable_hc_gluster_service
Enables Gluster services. Set to true.
he_mem_size_MB
The amount of memory allocated to the hosted engine virtual machine in megabytes.
he_cluster
The name of the cluster in which the hyperconverged hosts are placed.
he_vcpus
The amount of CPUs used on the engine VM. By default 4 VCPUs are allocated for Hosted Engine Virtual Machine.

D.2. Required variables for static network configurations

DHCP configuration is used on the Hosted Engine VM by default. However, if you want to use static IP or FQDN, define the following variables:

he_vm_ip_addr
Static IP address for Hosted Engine VM (IPv4 or IPv6).
he_vm_ip_prefix
IP prefix for Hosted Engine VM (IPv4 or IPv6).
he_dns_addr
DNS server for Hosted Engine VM (IPv4 or IPv6).
he_default_gateway
Default gateway for Hosted Engine VM (IPv4 or IPv6).
he_vm_etc_hosts
Specifies Hosted Engine VM IP address and FQDN to /etc/hosts on the host, boolean value.

Example he_gluster_vars.json file with static Hosted Engine configuration

{
  "he_appliance_password": "mybadappliancepassword",
  "he_admin_password": "mybadadminpassword",
  "he_domain_type": "glusterfs",
  "he_fqdn": "engine.example.com",
  "he_vm_mac_addr": "00:01:02:03:04:05",
  "he_default_gateway": "gateway.example.com",
  "he_mgmt_network": "ovirtmgmt",
  "he_storage_domain_name": "HostedEngine",
  "he_storage_domain_path": "/engine",
  "he_storage_domain_addr": "host1-backend.example.com",
  "he_mount_options": "backup-volfile-servers=host2-backend.example.com:host3-backend.example.com",
  "he_bridge_if": "interface name for bridge creation",
  "he_enable_hc_gluster_service": true,
  "he_mem_size_MB": "16384",
  "he_cluster": "Default",
  "he_vm_ip_addr": "10.70.34.43",
  "he_vm_ip_prefix": "24",
  "he_dns_addr": "10.70.34.6",
  "he_default_gateway": "10.70.34.255",
  "he_vm_etc_hosts": "false",
  "he_network_test": "ping"
}

Note

If DNS is not available, use ping for he_network_test instead of dns.

Example: "he_network_test": "ping"