Obtenga más información sobre el inventario de Ansible
Antes de iniciar una implementación, familiarícese con cómo se configura y utiliza Ansible para poner en marcha BeeGFS en la solución NetApp.
El inventario de Ansible es una estructura de directorios que enumera los nodos de archivos y bloques del sistema de archivos BeeGFS en el que se va a poner en marcha. Incluye hosts, grupos y variables que describen el sistema de archivos BeeGFS deseado. El inventario de Ansible se tiene que almacenar en el nodo de control de Ansible, que es cualquier máquina con acceso al archivo y los nodos de bloque que se utilizan para ejecutar el libro de estrategia de Ansible. Los inventarios de muestra se pueden descargar de la "E-Series BeeGFS GitHub de NetApp".
Módulos y roles de Ansible
Para aplicar la configuración descrita en el inventario de Ansible, utilice los distintos módulos y roles de Ansible que se proporcionan en la colección Ansible de E-Series de NetApp (disponible en "E-Series BeeGFS GitHub de NetApp" ), que ponen en marcha la solución completa.
Cada rol de la colección de Ansible de E-Series de NetApp es una puesta en marcha completa de BeeGFS en una solución de NetApp. Los roles utilizan las colecciones SANtricity, host y BeeGFS de E-Series de NetApp que permiten configurar el sistema de archivos BeeGFS con alta disponibilidad (alta disponibilidad). Luego, podrá aprovisionar y asignar almacenamiento, y garantizar que el almacenamiento del clúster esté listo para su uso.
Aunque se proporciona documentación en profundidad con los roles, los procedimientos de implementación describen cómo usar el rol para implementar una arquitectura verificada de NetApp mediante el diseño de elementos básicos BeeGFS de segunda generación.
|
Aunque los pasos de puesta en marcha intentan proporcionar información suficiente para que la experiencia previa con Ansible no sea un requisito previo, debe tener algo de familiaridad con Ansible y la terminología relacionada. |
Diseño de inventario para un clúster de alta disponibilidad de BeeGFS
Defina un clúster de alta disponibilidad de BeeGFS mediante la estructura de inventario de Ansible.
Cualquier persona con experiencia previa en Ansible debería tener en cuenta que el rol de alta disponibilidad BeeGFS implementa un método personalizado para detectar qué variables (o hechos) se aplican a cada host. Este diseño simplifica la estructuración del inventario de Ansible para describir los recursos que pueden ejecutarse en varios servidores.
Un inventario de Ansible normalmente se compone de los archivos de host_vars
y group_vars
, junto con un inventory.yml
archivo que asigna hosts a grupos específicos (y potencialmente grupos a otros grupos).
|
No cree ningún archivo con el contenido de esta subsección, que se piensa sólo como ejemplo. |
A pesar de que esta configuración se basa por predeterminado en el perfil de configuración, debe tener un conocimiento general de cómo se presenta todo como un inventario de Ansible, tal y como se indica a continuación:
# BeeGFS HA (High Availability) cluster inventory. all: children: # Ansible group representing all block nodes: eseries_storage_systems: hosts: netapp01: netapp02: # Ansible group representing all file nodes: ha_cluster: children: meta_01: # Group representing a metadata service with ID 01. hosts: beegfs_01: # This service is preferred on the first file node. beegfs_02: # And can failover to the second file node. meta_02: # Group representing a metadata service with ID 02. hosts: beegfs_02: # This service is preferred on the second file node. beegfs_01: # And can failover to the first file node.
Para cada servicio, se crea un archivo adicional en group_vars
descripción de su configuración:
# meta_01 - BeeGFS HA Metadata Resource Group beegfs_ha_beegfs_meta_conf_resource_group_options: connMetaPortTCP: 8015 connMetaPortUDP: 8015 tuneBindToNumaZone: 0 floating_ips: - i1b: <IP>/<SUBNET_MASK> - i2b: <IP>/<SUBNET_MASK> # Type of BeeGFS service the HA resource group will manage. beegfs_service: metadata # Choices: management, metadata, storage. # What block node should be used to create a volume for this service: beegfs_targets: netapp01: eseries_storage_pool_configuration: - name: beegfs_m1_m2_m5_m6 raid_level: raid1 criteria_drive_count: 4 common_volume_configuration: segment_size_kb: 128 volumes: - size: 21.25 owning_controller: A
Este diseño permite definir el servicio, la red y la configuración de almacenamiento de BeeGFS para cada recurso en un único lugar. En segundo plano, el rol BeeGFS agrega la configuración necesaria para cada nodo de archivo y bloque basándose en esta estructura de inventario.
|
El código numérico y el ID de nodo de cadena de BeeGFS para cada servicio se configuran automáticamente en función del nombre del grupo. Por lo tanto, además del requisito general de Ansible para que los nombres de grupo sean únicos, los grupos que representan un servicio BeeGFS deben finalizar en un número único para el tipo de servicio BeeGFS que representa el grupo. Por ejemplo, se permiten meta_01 y stor_01, pero los metadatos_01 y meta_01 no lo están. |