Configurar clientes BeeGFS
Você precisa instalar e configurar o cliente BeeGFS em todos os hosts que precisam ter acesso ao sistema de arquivos BeeGFS, como nós de computação ou GPU. Para essa tarefa, use o Ansible e a coleção BeeGFS.
-
Se necessário, configure o SSH sem senha do nó de controle do Ansible para cada um dos hosts que você deseja configurar como clientes BeeGFS:
ssh-copy-id <user>@<HOSTNAME_OR_IP> -
Em
host_vars/, crie um arquivo para cada cliente BeeGFS nomeado<HOSTNAME>.ymlcom o seguinte conteúdo, preenchendo o texto do espaço reservado com as informações corretas para o seu ambiente:# BeeGFS Client ansible_host: <MANAGEMENT_IP> # OPTIONAL: If you want to use the NetApp E-Series Host Collection’s IPoIB role to configure InfiniBand interfaces for clients to connect to BeeGFS file systems: eseries_ipoib_interfaces: - name: <INTERFACE> address: <IP>/<SUBNET_MASK> # Example: 100.127.1.1/16 - name: <INTERFACE> address: <IP>/<SUBNET_MASK>Se estiver implantando com um esquema de endereçamento de duas sub-redes, duas interfaces InfiniBand devem ser configuradas em cada cliente, uma em cada uma das duas sub-redes IPoIB de storage. Se estiver usando as sub-redes de exemplo e os intervalos recomendados para cada serviço BeeGFS listado aqui, os clientes devem ter uma interface configurada no intervalo de 100.127.1.0a100.127.99.255e a outra em100.128.1.0para100.128.99.255. -
Crie um novo
client_inventory.ymlarquivo e preencha os seguintes parâmetros na parte superior:# BeeGFS client inventory. all: vars: ansible_ssh_user: <USER> # This is the user Ansible should use to connect to each client. ansible_become_password: <PASSWORD> # This is the password Ansible will use for privilege escalation, and requires the ansible_ssh_user be root, or have sudo privileges. The defaults set by the BeeGFS HA role are based on the testing performed as part of this NetApp Verified Architecture and differ from the typical BeeGFS client defaults.Não armazene senhas em texto simples. Em vez disso, use o Ansible Vault (consulte a documentação do Ansible para "Criptografia de conteúdo com o Ansible Vault") ou use a --ask-become-passopção ao executar o manual de estratégia. -
No
client_inventory.ymlarquivo, liste todos os hosts que devem ser configurados como clientes BeeGFS nobeegfs_clientsgrupo e especifique qualquer configuração adicional necessária para criar o módulo do kernel do cliente BeeGFS.children: # Ansible group representing all BeeGFS clients: beegfs_clients: hosts: beegfs_01: beegfs_02: beegfs_03: beegfs_04: beegfs_05: beegfs_06: beegfs_07: beegfs_08: beegfs_09: beegfs_10: vars: # OPTION 1: If you’re using the NVIDIA OFED drivers and they are already installed: eseries_ib_skip: True # Skip installing inbox drivers when using the IPoIB role. beegfs_client_ofed_enable: True beegfs_client_ofed_include_path: "/usr/src/ofa_kernel/default/include" # OPTION 2: If you’re using inbox IB/RDMA drivers and they are already installed: eseries_ib_skip: True # Skip installing inbox drivers when using the IPoIB role. # OPTION 3: If you want to use inbox IB/RDMA drivers and need them installed/configured. eseries_ib_skip: False # Default value. beegfs_client_ofed_enable: False # Default value.Ao usar os drivers NVIDIA OFED, certifique-se de que beegfs_client_ofed_include_pathaponta para o "caminho de inclusão de cabeçalho" correto para a instalação do Linux. Para obter mais informações, consulte a documentação do BeeGFS para "Suporte RDMA". -
No
client_inventory.ymlarquivo, liste os sistemas de arquivos BeeGFS que você deseja montar na parte inferior de qualquer um definido anteriormentevars.beegfs_client_mounts: - sysMgmtdHost: 100.127.101.0 # Primary IP of the BeeGFS management service. mount_point: /mnt/beegfs # Path to mount BeeGFS on the client. connInterfaces: - <INTERFACE> # Example: ibs4f1 - <INTERFACE> beegfs_client_config: # Maximum number of simultaneous connections to the same node. connMaxInternodeNum: 128 # BeeGFS Client Default: 12 # Allocates the number of buffers for transferring IO. connRDMABufNum: 36 # BeeGFS Client Default: 70 # Size of each allocated RDMA buffer connRDMABufSize: 65536 # BeeGFS Client Default: 8192 # Required when using the BeeGFS client with the shared-disk HA solution. # This does require BeeGFS targets be mounted in the default “sync” mode. # See the documentation included with the BeeGFS client role for full details. sysSessionChecksEnabled: falsebeegfs_client_config`O representa as definições que foram testadas. Veja a documentação incluída com `netapp_eseries.beegfsa função da coleçãobeegfs_clientpara uma visão geral abrangente de todas as opções. Isso inclui detalhes sobre a montagem de vários sistemas de arquivos BeeGFS ou a montagem do mesmo sistema de arquivos BeeGFS várias vezes. -
Crie um novo
client_playbook.ymlarquivo e preencha os seguintes parâmetros:# BeeGFS client playbook. - hosts: beegfs_clients any_errors_fatal: true gather_facts: true collections: - netapp_eseries.beegfs - netapp_eseries.host tasks: - name: Ensure IPoIB is configured import_role: name: ipoib - name: Verify the BeeGFS clients are configured. import_role: name: beegfs_clientOmitir a importação da netapp_eseries.hostcoleção eipoibda função se você já tiver instalado os drivers IB/RDMA necessários e IPs configurados nas interfaces IPoIB apropriadas. -
Para instalar e construir o cliente e montar o BeeGFS, execute o seguinte comando:
ansible-playbook -i client_inventory.yml client_playbook.yml
-
Antes de colocar o sistema de arquivos BeeGFS em produção, nós * fortemente * recomendamos que você faça login em qualquer cliente e execute
beegfs-fsck --checkfspara garantir que todos os nós estejam acessíveis e não haja problemas relatados.