GNU/Linux >> Linux Esercitazione >  >> Cent OS

Come montare CephFS su CentOS 7

Ceph è una piattaforma di storage open source, offre elevate prestazioni, affidabilità e scalabilità. È un sistema di archiviazione distribuito gratuito che fornisce un'interfaccia per l'archiviazione a livello di file, blocchi e oggetti senza un singolo punto di errore.

Questa è la terza parte della serie di tutorial Ceph. Nella prima parte, ti ho mostrato come creare un "Cluster Ceph" con più nodi su CentOS7. La seconda parte è una guida che mostra come utilizzare Ceph come dispositivo a blocchi su CentOS 7. In questa terza parte, ti mostrerò come montare Ceph come file system su CentOS 7 come client.

Prerequisiti

  • Ceph Cluster - 1 nodo Ceph-admin, 1 nodo Moinitor (ceph-mon), 3 nodi Ceph-osd (vedi parte 1).
  • Client2 - Server CentOS 7 (vedi parte 2).
  • Privilegi di root

Passaggio 1:configurazione del nodo Client2

In questo primo passaggio, faremo l'installazione di base del client. Questa è la stessa procedura che abbiamo usato sugli altri nodi del cluster. Creeremo un nuovo utente chiamato cephuser sulla scatola, sincronizza l'ora con ntpdate, configura sudo password-less per cephuser ecc. Quindi iniziamo...

Connettiti al nodo client2 con SSH come utente root:

ssh [email protected]

Abbiamo effettuato l'accesso al server con accesso root, ora possiamo creare il nuovo cephuser.

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

Dopo aver creato il nuovo utente, abilita sudo senza password per l'utente creando un nuovo file di configurazione nella directory 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

Quindi, installa NTP, lo strumento da riga di comando ntpdate e gli strumenti open-vm. Quindi aggiorna e sincronizza l'ora di 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

Disabilita SELinux e modifica il file dell'host.

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

Incolla la configurazione degli host di seguito:

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

Salva il file hosts ed esci dall'editor. Ora prova a eseguire il ping del nodo ceph-admin per testare la connessione e l'impostazione del nome host.

ping -c 3 ceph-admin

Come risultato dovresti vedere l'indirizzo IP del nodo ceph-admin.

Passaggio 2:installazione di Ceph Common Utilities sul nodo Client2

Il pacchetto ceph-common può essere installato dal repository Ceph. Contiene le utilità Ceph per montare e interagire con Ceph Storage Cluster.

Prima di poter procedere con l'installazione del pacchetto ceph-common, dobbiamo aggiungere l'epel-repository e il repository Ceph.

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

Aggiorna il sistema e installa le utilità comuni Ceph.

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

Successivamente, dobbiamo aggiungere la configurazione sul nodo ceph-admin.

Passaggio 3:configurare il nodo Ceph-admin

In questo passaggio configureremo il cluster in modo da poterci connettere da admin al nodo client2 con chiave ssh (senza password).

Collegati al nodo ceph-admin come root, quindi accedi al cephuser con su.

ssh [email protected]
su - cephuser

Modifica il file di configurazione ssh e definisci una nuova sezione di configurazione client2.

vim ~/.ssh/config

Alla fine del file, incolla la configurazione di seguito:

Host client2
    Hostname client2
    User cephuser

Successivamente, aggiungi la riga di configurazione dell'host per il nodo client al file '/etc/hosts' sul nodo ceph-admin.

sudo vim /etc/hosts

Incolla la configurazione dell'host di seguito alla fine del file.

10.0.15.16      client2

Salva il file hosts ed esci dall'editor.

Ora aggiungi la chiave ssh del nodo ceph-admin al nodo client2.

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

La chiave ceph-admin è stata aggiunta. Ora possiamo accedere al nodo client2 senza la password dal nodo ceph-admin.

ssh client2

Passaggio 4:crea il server di metadati Ceph

Se vuoi eseguire e montare CephFS, hai bisogno di un server di metadati ceph (Ceph MDS). Ceph MDS è in esecuzione sui nodi OSD. Possiamo installare Ceph MDS sul nodo OSD con il comando ceph-deploy dal nodo ceph-admin.

Accedi al nodo ceph-admin e diventa il cephuser.

ssh [email protected]
su - cephuser

Vai alla directory del cluster ed esegui il comando ceph-deploy per creare un nuovo server di metadati ceph (Ceph MDS). Userò il nodo 'osd1' come server di metadati.

cd cluster/
ceph-deploy mds create osd1

Dopo aver creato il server MDS sul nodo osd1, dobbiamo connetterci al nodo con ssh.

ssh osd1

Quindi, crea nuovi pool per il server MDS, almeno abbiamo bisogno di 2 pool:cephfs_data e cephfs_metadata.

Crea nuovi pool sul nodo 'osd1'.

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

Le nuove piscine sono pronte. Ora possiamo creare il nuovo filesystem utilizzando i pool denominati:cephfs_data e cephfs_metadata.

ceph fs new cephfs cephfs_metadata cephfs_data

cephfs =nome del file system.

Al termine di questo passaggio senza errori, controlla il server MDS con il comando seguente.

Controlla l'elenco dei server MDS:

ceph fs ls

Ora puoi vedere che il nome del filesystem è "cephfs", il pool di metadati è "cephfs_metadata" e il pool di dati è "cephfs_data".

Mostra lo stato MDS:

ceph mds stat

Assicurati che l'MDS sia attivo e attivo prima di procedere.

Fase 5 - Monta CephFS con il driver del kernel

Il server Ceph MDS è stato creato sul nodo 'osd1'. Ora siamo in grado di utilizzare CephFS. In questo passaggio, monteremo CephFS sul nodo client2 come file system con il comando mount.

Prima di iniziare con il passaggio successivo, è necessario installare ceph-fuse dal repository ceph sul nodo client2.

sudo yum -y install ceph-fuse

Al termine dell'installazione, copiare la chiave dell'utente. Nella nostra configurazione predefinita, l'autenticazione cephx è abilitata. L'utente predefinito è 'admin'.

Copia la chiave dal nodo del server MDS 'osd1' al nodo client2 con il comando scp, quindi modifica l'autorizzazione della chiave.

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

Quindi, crea una nuova directory cephfs e monta CephFS in quella directory.

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

Nota:

Nome utente predefinito =admin
secretfile =ceph.key dal nodo MDS osd1

Vedrai un nuovo filesystem di tipo 'ceph' montato nell'elenco.

sudo df -hT

   

Per smontare il filesystem, usa l'utility di comando umount.

umount /mnt/cephfs

Fase 6 - Monta CephFS come fusibile

Dopo aver montato correttamente CephFS come filesystem, monteremo CephFS come Fuse (Filesystem in USErspace). Per questa configurazione, dobbiamo copiare il file di configurazione 'ceph.conf' e la chiave dal nodo di monitoraggio 'mon1'.

Crea una nuova directory ceph sul nodo client2 e copia il file di configurazione e la chiave.

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

Modifica i permessi dei file.

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

Quindi, crea una nuova directory fuse e monta CephFS come Fuse nella directory '/mnt/fuse'.

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

Assicurati che non ci siano errori e controlla che CephFS sia montato.

sudo df -hT

Per smontare CephFS Fuse, usa il comando kill.

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

Fase 7 - Monta CephFS usando fstab

In questo passaggio, monteremo permanentemente CephFS con fstab. Modificheremo /etc/fstab e aggiungeremo la configurazione per il montaggio di CephFS con il driver del kernel, usando il comando mount.

Modifica il file fstab.

sudo vim /etc/fstab

Incolla la configurazione di seguito alla fine del file:

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

Salva il file ed esci da vim.

Monta tutti i dischi da fstab con il comando mount -a, quindi elenca tutti i dischi disponibili.

sudo mount -a
sudo df -hT

Infine, riavvia il sistema e controlla i dischi disponibili per assicurarti che la configurazione sia sicura per il riavvio.

reboot
sudo df -hT

Vedrai che CephFS è stato montato automaticamente con fstab.


Cent OS
  1. Come installare Node.js e NPM su CentOS 7

  2. Come installare node.js su RHEL 8 / CentOS 8 Linux

  3. Come montare/smontare l'immagine ISO su CentOS 8 / Rhel 8 Linux

  4. Come installare Node.js e NPM su CentOS

  5. Come installare SSHFS su CentOS/RHEL/Ubuntu

Come utilizzare tmpfs su RHEL/CentOS 7

Come installare Chef Workstation/Server/Node su CentOS 7

Come installare Node.js su CentOS 7 / RHEL 7

Come installare Node.js su CentOS 8

Come installare Node.js su CentOS 7

Come installare Node.js su CentOS Stream 9