Despliegue de nodos de cliente

Como administrador de almacenamiento, puede desplegar nodos de cliente ejecutando los playbooks cephadm-preflight.yml y cephadm-clients.yml . El playbook cephadm-preflight.yml configura el repositorio de Ceph y prepara el clúster de almacenamiento para el programa de arranque. También instala algunos requisitos previos, como podman, lvm2, chronyy cephadm.

Importante: Si utiliza Red Hat Enterprise Linux 9, no utilice estos pasos. El playbook cephadm-preflight no está soportado.
El playbook cephadm-clients.yml maneja la distribución de archivos de configuración y de conjunto de claves a un grupo de clientes Ceph.
Nota: Si no utiliza los playbooks de cephadm-ansible , después de actualizar el clúster de Ceph, debe actualizar el paquete ceph-common y las bibliotecas de cliente en los nodos de cliente. Para obtener más información, consulte Actualización del clúster IBM Storage Ceph.

Requisitos previos

  • Acceso de nivel raíz al nodo de administración de Ansible .

  • Ansible con acceso sudo y sin contraseña SSH a todos los nodos del clúster de almacenamiento.

  • Instalación del paquete cephadm-ansible .

  • El grupo [admin] se define en el archivo de inventario con un nodo donde el conjunto de claves de administración está presente en /etc/ceph/ceph.client.admin.keyring.

Procedimiento

  1. Como usuario de Ansible , vaya al directorio /usr/share/cephadm-ansible en el nodo de administración de Ansible .

    Ejemplo

     [ceph-admin@admin ~]$ cd /usr/share/cephadm-ansible
  2. Abra y edite el archivo de inventario hosts y añada el grupo [clients] y los clientes al inventario:

    Ejemplo

     host02
     host03
     host04
    
     [clients]
     client01
     client02
     client03
    
     [admin]
     host01
  3. Ejecute el playbook cephadm-preflight.yml para instalar los requisitos previos en los clientes:

    Sintaxis

     ansible-playbook -i INVENTORY_FILE cephadm-preflight.yml --limit CLIENT_GROUP_NAME|CLIENT_NODE_NAME

    Ejemplo

     [ceph-admin@admin cephadm-ansible]$ ansible-playbook -i hosts cephadm-preflight.yml --limit clients
  4. Ejecute el playbook cephadm-clients.yml para distribuir los archivos de configuración de conjunto de claves y Ceph a un conjunto de clientes.

    1. Para copiar el conjunto de claves con un nombre de conjunto de claves de destino personalizado:

      Sintaxis

       ansible-playbook -i INVENTORY_FILE cephadm-clients.yml --extra-vars '{"fsid":"FSID","keyring":"KEYRING_PATH","client_group":"CLIENT_GROUP_NAME","conf":"CEPH_CONFIGURATION_PATH","keyring_dest":"KEYRING_DESTINATION_PATH"}'
      • Sustituya INVENTORY_FILE por el nombre de archivo de inventario Ansible .

      • Sustituya FSID por el FSID del clúster.

      • Sustituya KEYRING_PATH por el nombre completo de la vía de acceso al conjunto de claves en el host de administración que desea copiar en el cliente.

      • Opcional: sustituya CLIENT_GROUP_NAME por el nombre de grupo Ansible para los clientes que se van a configurar.

      • Opcional: sustituya CEPH_CONFIGURATION_PATH por la vía de acceso completa al archivo de configuración Ceph en el nodo de administración.

      • Opcional: sustituya KEYRING_DESTINATION_PATH por el nombre de vía de acceso completo del destino donde se copiará el conjunto de claves.

      NOTA: Si no especifica un archivo de configuración con la opción conf al ejecutar el playbook, el playbook genera y distribuye un archivo de configuración mínimo. De forma predeterminada, el archivo generado se encuentra en /etc/ceph/ceph.conf.

      Ejemplo

       [ceph-admin@host01 cephadm-ansible]$ ansible-playbook -i hosts cephadm-clients.yml --extra-vars '{"fsid":"266ee7a8-2a05-11eb-b846-5254002d4916","keyring":"/etc/ceph/ceph.client.admin.keyring","client_group":"clients","conf":"/etc/ceph/ceph.conf","keyring_dest":"/etc/ceph/custom.name.ceph.keyring"}'
    2. Para copiar un conjunto de claves con el nombre de conjunto de claves de destino predeterminado de ceph.keyring y utilizando el grupo predeterminado de clients:

      Sintaxis

       ansible-playbook -i INVENTORY_FILE cephadm-clients.yml --extra-vars '{"fsid":"FSID","keyring":"KEYRING_PATH","conf":"CONF_PATH"}'

      Ejemplo

       [ceph-admin@host01 cephadm-ansible]$ ansible-playbook -i hosts cephadm-clients.yml --extra-vars '{"fsid":"266ee7a8-2a05-11eb-b846-5254002d4916","keyring":"/etc/ceph/ceph.client.admin.keyring","conf":"/etc/ceph/ceph.conf"}'

Verificación

  • Inicie sesión en los nodos de cliente y verifique que los archivos de conjunto de claves y de configuración existen.

    Ejemplo

      [user@client01 ~]# ls -l /etc/ceph/
    
      -rw-------. 1 ceph ceph 151 Jul 11 12:23 custom.name.ceph.keyring
      -rw-------. 1 ceph ceph 151 Jul 11 12:23 ceph.keyring
      -rw-------. 1 ceph ceph 269 Jul 11 12:23 ceph.conf