GNU/Linux >> Tutoriales Linux >  >> Cent OS

Cómo montar CephFS en CentOS 7

Ceph es una plataforma de almacenamiento de código abierto que ofrece alto rendimiento, confiabilidad y escalabilidad. Es un sistema de almacenamiento distribuido gratuito que proporciona una interfaz para el almacenamiento a nivel de archivos, bloques y objetos sin un solo punto de falla.

Esta es la tercera parte de la serie de tutoriales de Ceph. En la primera parte, le mostré cómo crear un 'clúster de Ceph' con varios nodos en CentOS7. La segunda parte es una guía que muestra cómo usar Ceph como dispositivo de bloque en CentOS 7. En esta tercera parte, le mostraré cómo montar Ceph como sistema de archivos en CentOS 7 como cliente.

Requisitos previos

  • Clúster de Ceph:1 nodo Ceph-admin, 1 nodo Monitor (ceph-mon), 3 nodos Ceph-OSD (consulte la parte 1).
  • Cliente 2:servidor CentOS 7 (consulte la parte 2).
  • Privilegios de raíz

Paso 1:configurar el nodo Client2

En este primer paso, realizaremos la instalación base del cliente. Este es el mismo procedimiento que usamos en los otros nodos del clúster. Crearemos un nuevo usuario llamado cephuser en el cuadro, sincronice la hora con ntpdate, configure sudo sin contraseña para cephuser, etc. Así que comencemos...

Conéctese al nodo client2 con SSH como usuario root:

ssh [email protected]

Iniciamos sesión en el servidor con acceso de root, ahora podemos crear el nuevo cephuser.

useradd -m -d /home/cephuser cephuser
passwd cephuser
TYPE YOUR NEW PASSWORD

Después de que se haya creado el nuevo usuario, habilite sudo sin contraseña para el usuario creando un nuevo archivo de configuración en el directorio sudoers.

echo "cephuser ALL = (root) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/cephuser
sed -i s'/Defaults requiretty/#Defaults requiretty'/g /etc/sudoers
chmod 0440 /etc/sudoers.d/cephuser

A continuación, instale NTP, la herramienta de línea de comandos ntpdate y las herramientas open-vm. Luego actualice y sincronice la hora del sistema con ntpdate.

yum install -y open-vm-tools
yum install -y ntp ntpdate ntp-doc
ntpdate 0.us.pool.ntp.org
hwclock --systohc
systemctl enable ntpd.service
systemctl start ntpd.service

Deshabilite SELinux y edite el archivo del host.

sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
vim /etc/hosts

Pegue la configuración de hosts a continuación:

10.0.15.10        ceph-admin
10.0.15.11        mon1
10.0.15.21        osd1
10.0.15.22        osd2
10.0.15.23        osd3
10.0.15.15        client
10.0.15.16        client2

Guarde el archivo de hosts y salga del editor. Ahora intente hacer ping al nodo ceph-admin para probar la conexión y la configuración del nombre de host.

ping -c 3 ceph-admin

Debería ver la dirección IP del nodo ceph-admin como resultado.

Paso 2:instalar Ceph Common Utilities en el nodo Client2

El paquete ceph-common se puede instalar desde el repositorio de Ceph. Contiene las utilidades de Ceph para montar e interactuar con el clúster de almacenamiento de Ceph.

Antes de que podamos continuar con la instalación del paquete ceph-common, debemos agregar epel-repository y Ceph repository.

sudo yum -y install epel-release
sudo rpm -Uhv http://download.ceph.com/rpm-jewel/el7/noarch/ceph-release-1-1.el7.noarch.rpm

Actualice el sistema e instale las utilidades comunes de Ceph.

sudo yum -y update
sudo yum -y install ceph-common

A continuación, debemos agregar la configuración en el nodo ceph-admin.

Paso 3:configurar el nodo Ceph-admin

En este paso, configuraremos el clúster para que podamos conectarnos desde el administrador al nodo cliente2 con la clave ssh (sin la contraseña).

Conéctese al nodo ceph-admin como root y luego inicie sesión en cephuser con su.

ssh [email protected]
su - cephuser

Edite el archivo de configuración ssh y defina una nueva sección de configuración de client2.

vim ~/.ssh/config

Al final del archivo, pegue la siguiente configuración:

Host client2
    Hostname client2
    User cephuser

A continuación, agregue la línea de configuración del host para el nodo del cliente al archivo '/etc/hosts' en el nodo ceph-admin.

sudo vim /etc/hosts

Pegue la configuración del host a continuación al final del archivo.

10.0.15.16      client2

Guarde el archivo de hosts y salga del editor.

Ahora agregue la clave ssh del nodo ceph-admin al nodo client2.

ssh-keyscan client2 >> ~/.ssh/known_hosts
ssh-copy-id client2
TYPE THE client2 PASSWORD

Se ha agregado la clave ceph-admin. Ahora podemos acceder al nodo client2 sin la contraseña del nodo ceph-admin.

ssh client2

Paso 4:crear el servidor de metadatos de Ceph

Si desea ejecutar y montar CephFS, necesita un servidor de metadatos de ceph (Ceph MDS). Ceph MDS se está ejecutando en los nodos OSD. Podemos instalar Ceph MDS en el nodo OSD con el comando ceph-deploy desde el nodo ceph-admin.

Inicie sesión en el nodo ceph-admin y conviértase en cephuser.

ssh [email protected]
su - cephuser

Vaya al directorio del clúster y ejecute el comando ceph-deploy para crear un nuevo servidor de metadatos de ceph (Ceph MDS). Usaré el nodo 'osd1' como servidor de metadatos.

cd cluster/
ceph-deploy mds create osd1

Después de crear el servidor MDS en el nodo osd1, debemos conectarnos al nodo con ssh.

ssh osd1

Luego, cree nuevos grupos para el servidor MDS, al menos necesitamos 2 grupos:cephfs_data y cephfs_metadata.

Cree nuevos grupos en el nodo 'osd1'.

ceph osd pool create cephfs_data 128
ceph osd pool create cephfs_metadata 128

Las nuevas piscinas están listas. Ahora podemos crear el nuevo sistema de archivos usando los grupos con nombre:cephfs_data y cephfs_metadata.

ceph fs new cephfs cephfs_metadata cephfs_data

cephfs =Nombre del sistema de archivos.

Cuando haya terminado este paso sin un error, verifique el servidor MDS con el siguiente comando.

Consulte la lista de servidores MDS:

ceph fs ls

Ahora puede ver que el nombre del sistema de archivos es 'cephfs', el grupo de metadatos es 'cephfs_metadata' y el grupo de datos es 'cephfs_data'.

Mostrar el estado de MDS:

ceph mds stat

Asegúrese de que el MDS esté activo antes de continuar.

Paso 5:Monte CephFS con el controlador del kernel

El servidor Ceph MDS se ha creado en el nodo 'osd1'. Ahora podemos usar CephFS. En este paso, montaremos CephFS en el nodo cliente2 como sistema de archivos con el comando de montaje.

Antes de comenzar con el siguiente paso, debemos instalar ceph-fuse desde el repositorio de ceph en el nodo client2.

sudo yum -y install ceph-fuse

Cuando termine la instalación, copie la clave del usuario. En nuestra configuración predeterminada, la autenticación cephx está habilitada. El usuario predeterminado es 'admin'.

Copie la clave del nodo del servidor MDS 'osd1' al nodo client2 con el comando scp, luego cambie el permiso de la clave.

ssh [email protected] 'sudo ceph-authtool -p /etc/ceph/ceph.client.admin.keyring' > ceph.key
chmod 600 ceph.key

A continuación, cree un nuevo directorio cephfs y monte el CephFS en ese directorio.

sudo mkdir -p /mnt/cephfs
sudo mount -t ceph mon1:6789:/ /mnt/cephfs -o name=admin,secretfile=ceph.key

Nota:

Nombre de usuario predeterminado =admin
secretfile =ceph.key del nodo MDS osd1

Verá un nuevo sistema de archivos de tipo 'ceph' montado en la lista.

sudo df -hT

   

Para desmontar el sistema de archivos, use la utilidad de comando umount.

umount /mnt/cephfs

Paso 6:Monte CephFS como fusible

Una vez que hayamos montado correctamente CephFS como sistema de archivos, montaremos CephFS como Fuse (sistema de archivos en USErspace). Para esta configuración, necesitamos copiar el archivo de configuración 'ceph.conf' y la clave del nodo de monitoreo 'mon1'.

Cree un nuevo directorio ceph en el nodo client2 y copie el archivo de configuración y la clave.

sudo mkdir -p /etc/ceph/
sudo scp [email protected]:/etc/ceph/ceph.conf /etc/ceph/ceph.conf
sudo scp [email protected]:/etc/ceph/ceph.client.admin.keyring /etc/ceph/ceph.client.admin.keyring

Cambia los permisos de los archivos.

sudo chmod 644 /etc/ceph/ceph.conf
sudo chmod 644 /etc/ceph/ceph.client.admin.keyring

A continuación, cree un nuevo directorio fuse y monte CephFS como Fuse en el directorio '/mnt/fuse'.

sudo mkdir -p /mnt/fuse
sudo ceph-fuse -m mon1:6789 /mnt/fuse

Asegúrese de que no haya ningún error y verifique que CephFS esté montado.

sudo df -hT

Para desmontar CephFS Fuse, use el comando kill.

sudo ps -aux | grep ceph-fuse
kill -2 PID

Paso 7:Monte CephFS usando fstab

En este paso, montaremos permanentemente CephFS con fstab. Editaremos /etc/fstab y agregaremos la configuración para montar CephFS con el controlador del kernel, usando el comando de montaje.

Edite el archivo fstab.

sudo vim /etc/fstab

Pegue la siguiente configuración al final del archivo:

mon1:6789:/     /mnt/cephfs     ceph        name=admin,secretkey=/home/cephuser/ceph.key,_netdev,noatime    0   0

Guarde el archivo y salga de vim.

Monte todos los discos desde fstab con el comando mount -a, luego enumere todos los discos disponibles.

sudo mount -a
sudo df -hT

Finalmente, reinicie el sistema y verifique los discos disponibles para asegurarse de que la configuración sea segura para reiniciar.

reboot
sudo df -hT

Verá que CephFS se montó automáticamente con fstab.


Cent OS
  1. Cómo instalar Node.js y NPM en CentOS 7

  2. Cómo instalar node.js en RHEL 8 / CentOS 8 Linux

  3. Cómo montar/desmontar una imagen ISO en CentOS 8/Rhel 8 Linux

  4. Cómo instalar Node.js y NPM en CentOS

  5. Cómo instalar SSHFS en CentOS/RHEL/Ubuntu

Cómo usar tmpfs en RHEL/CentOS 7

Cómo instalar Chef Workstation/Server/Node en CentOS 7

Cómo instalar Node.js en CentOS 7 / RHEL 7

Cómo instalar Node.js en CentOS 8

Cómo instalar Node.js en CentOS 7

Cómo instalar Node.js en CentOS Stream 9