Saiba mais sobre o inventário do Ansible
Antes de começar a implantação, entenda como usar o Ansible para configurar e implantar a solução BeeGFS no NetApp usando o design de componentes básicos do BeeGFS de segunda geração.
O inventário do Ansible define a configuração para nós de arquivo e bloco e representa o sistema de arquivos BeeGFS que você deseja implantar. O inventário inclui hosts, grupos e variáveis descrevendo o sistema de arquivos BeeGFS desejado. Os inventários de amostra podem ser baixados de "NetApp e-Series BeeGFS GitHub".
Módulos e funções do Ansible
Para aplicar a configuração descrita pelo inventário do Ansible, use os vários módulos e funções do Ansible fornecidos na coleção do NetApp e-Series Ansible, em particular a função BeeGFS HA 7,4 (disponível no "NetApp e-Series BeeGFS GitHub") que implanta a solução completa.
Cada função na coleção Ansible do NetApp e-Series é uma implantação completa completa e completa da solução BeeGFS no NetApp. As funções usam as coleções SANtricity, host e BeeGFS do NetApp e-Series que permitem configurar o sistema de arquivos BeeGFS com HA (alta disponibilidade). Em seguida, você pode provisionar e mapear o armazenamento e garantir que o armazenamento de cluster esteja pronto para uso.
Embora a documentação detalhada seja fornecida com as funções, os procedimentos de implantação descrevem como usar a função para implantar uma arquitetura verificada do NetApp usando o design de componentes básicos do BeeGFS de segunda geração.
Embora as etapas de implantação tentem fornecer detalhes suficientes para que a experiência anterior com o Ansible não seja um pré-requisito, você deve estar familiarizado com o Ansible e com a terminologia relacionada. |
Layout de inventário para um cluster BeeGFS HA
Use a estrutura de inventário do Ansible para definir um cluster BeeGFS HA.
Qualquer pessoa com experiência anterior do Ansible deve estar ciente de que a função BeeGFS HA implementa um método personalizado para descobrir quais variáveis (ou fatos) se aplicam a cada host. Isso é necessário para simplificar a criação de um inventário do Ansible que descreve recursos que podem ser executados em vários servidores.
Um inventário do Ansible normalmente consiste nos arquivos no host_vars
eno e group_vars
em um inventory.yml
arquivo que atribui hosts a grupos específicos (e potencialmente grupos a outros grupos).
Não crie nenhum arquivo com o conteúdo desta subseção, que se destina apenas a exemplo. |
Embora essa configuração seja predeterminada com base no perfil de configuração, você deve ter uma compreensão geral de como tudo é definido como um inventário do Ansible, da seguinte forma:
# 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 serviço, um arquivo adicional é criado em group_vars
descrever sua configuração:
# 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
Esse layout permite que a configuração de serviço, rede e storage do BeeGFS para cada recurso seja definida em um único lugar. Nos bastidores, a função BeeGFS agrega a configuração necessária para cada nó de arquivo e bloco com base nessa estrutura de inventário. Para obter mais informações, consulte este post no blog: "O NetApp acelera a implantação do HA para BeeGFS com o Ansible".
O ID numérico e do nó de string BeeGFS para cada serviço é configurado automaticamente com base no nome do grupo. Assim, além do requisito geral do Ansible para que os nomes de grupos sejam únicos, os grupos que representam um serviço BeeGFS precisam terminar em um número exclusivo para o tipo de serviço BeeGFS que o grupo representa. Por exemplo, meta_01 e stor_01 são permitidos, mas metadata_01 e meta_01 não são. |