From 000405ed16df5aba3022696a717f2335e80b39bd Mon Sep 17 00:00:00 2001 From: "Joshua M. Boniface" Date: Fri, 1 Sep 2023 15:42:25 -0400 Subject: [PATCH] Add updated IPMI configuration to match base role --- group_vars/default/base.yml | 58 +++++++++++++++++++++++++++++++++---- group_vars/default/pvc.yml | 18 ++++++------ 2 files changed, 61 insertions(+), 15 deletions(-) diff --git a/group_vars/default/base.yml b/group_vars/default/base.yml index 5d2c098..778c88f 100644 --- a/group_vars/default/base.yml +++ b/group_vars/default/base.yml @@ -9,21 +9,67 @@ timezone_location: Canada/Eastern # Cluster domain for node FQDNs local_domain: upstream.local +# Cluster hardware model, used in pvc_user_configuration below +cluster_hardware: default + # Debian package repository URL debian_main_repository: http://ftp.debian.org/debian debian_security_repository: http://security.debian.org debian_pvc_repository: https://repo.bonifacelabs.net/debian -# IPMI user and password -# > For the password, use pwgen to generate. -# > Set these in the IPMI configuration as a user with permissions to reboot the host. -username_ipmi_host: pvc -passwd_ipmi_host: "" - # Root user password # > Use pwgen to generate root_password: "" +# IPMI configuration +# > For the "pvc" user password, use pwgen to generate. +# > Set the "pvc"user with permissions in IPMI to reboot the host as this user will be use for +# any fencing operations. +# > Set the IP networking to match your expected IPMI configuration. +ipmi: + users: + admin: + username: "root" + password: "{{ root_password }}" + pvc: + username: "host" + password: "" + hosts: + "pvchv1": + hostname: pvchv1-lom + address: 192.168.100.101 + netmask: 255.255.255.0 + gateway: 192.168.100.1 + "pvchv2": + hostname: pvchv2-lom + address: 192.168.100.102 + netmask: 255.255.255.0 + gateway: 192.168.100.1 + "pvchv3": + hostname: pvchv3-lom + address: 192.168.100.103 + netmask: 255.255.255.0 + gateway: 192.168.100.1 + +# IPMI user configuration +# > Adjust this based on the specific hardware you are using; the cluster_hardware variable is +# used as the key in this dictionary. +# > If you run multiple clusters with different hardware, it may be prudent to move this to an +# 'all' group_vars file instead. +ipmi_user_configuration: + "default": + channel: 1 + admin: + id: 1 + role: 0x4 # ADMINISTRATOR + username: "{{ ipmi['users']['admin']['username'] }}" + password: "{{ ipmi['users']['admin']['password'] }}" + pvc: + id: 2 + role: 0x4 # ADMINISTRATOR + username: "{{ ipmi['users']['pvc']['username'] }}" + password: "{{ ipmi['users']['pvc']['password'] }}" + # Log rotation configuration logrotate_keepcount: 7 logrotate_interval: daily diff --git a/group_vars/default/pvc.yml b/group_vars/default/pvc.yml index 4144843..bdaeab4 100644 --- a/group_vars/default/pvc.yml +++ b/group_vars/default/pvc.yml @@ -93,9 +93,9 @@ pvc_nodes: upstream_ip: "192.168.100.11" cluster_ip: "10.0.0.1" storage_ip: "10.0.1.1" - ipmi_host: "pvchv1-lom.{{ local_domain }}" - ipmi_user: "{{ username_ipmi_host }}" - ipmi_password: "{{ passwd_ipmi_host }}" + ipmi_host: "{{ ipmi['hosts']['pvchv1']['hostname'] }}.{{ local_domain }}" # Note the hostname in here + ipmi_user: "{{ ipmi['users']['pvc']['username'] }}" + ipmi_password: "{{ ipmi['users']['pvc']['password'] }}" - hostname: "pvchv2" is_coordinator: yes node_id: 2 @@ -103,9 +103,9 @@ pvc_nodes: upstream_ip: "192.168.100.12" cluster_ip: "10.0.0.2" storage_ip: "10.0.1.2" - ipmi_host: "pvchv2-lom.{{ local_domain }}" - ipmi_user: "{{ username_ipmi_host }}" - ipmi_password: "{{ passwd_ipmi_host }}" + ipmi_host: "{{ ipmi['hosts']['pvchv2']['hostname'] }}.{{ local_domain }}" # Note the hostname in here + ipmi_user: "{{ ipmi['users']['pvc']['username'] }}" + ipmi_password: "{{ ipmi['users']['pvc']['password'] }}" - hostname: "pvchv3" is_coordinator: yes node_id: 3 @@ -113,9 +113,9 @@ pvc_nodes: upstream_ip: "192.168.100.13" cluster_ip: "10.0.0.3" storage_ip: "10.0.1.3" - ipmi_host: "pvchv3-lom.{{ local_domain }}" - ipmi_user: "{{ username_ipmi_host }}" - ipmi_password: "{{ passwd_ipmi_host }}" + ipmi_host: "{{ ipmi['hosts']['pvchv3']['hostname'] }}.{{ local_domain }}" # Note the hostname in here + ipmi_user: "{{ ipmi['users']['pvc']['username'] }}" + ipmi_password: "{{ ipmi['users']['pvc']['password'] }}" # Bridge device entry # This device is passed to PVC and is used when creating bridged networks. Normal managed networks are