Tabla de contenido
Modificar archivo de configuración
Sincronizar la información de gestión
Instalar mgr (demonio de gestión)
Establecer dirección de acceso y puerto
Establecer usuario y contraseña
Cree un grupo de almacenamiento en el sistema de archivos ceph
I. Descripción general
Es un sistema de almacenamiento distribuido unificado diseñado para proporcionar mejor rendimiento, confiabilidad y escalabilidad.
Características
1. Almacenamiento unificado
Aunque la capa inferior de ceph es un sistema de archivos distribuido, en la capa superior se han desarrollado interfaces que admiten objetos y bloques. Por lo tanto, puede dominar el mundo entre el software de almacenamiento de código abierto. En cuanto a si puede durar generaciones, no lo sé.
2. Alta escalabilidad
Fácil ampliación y gran capacidad. Capaz de gestionar miles de servidores y capacidad de nivel EB.
3. Gran confiabilidad
Admite múltiples réplicas de coherencia sólida, EC. Las copias se pueden almacenar en hosts, bastidores, salas de ordenadores y centros de datos. Tan seguro y confiable. Los nodos de almacenamiento se pueden administrar y reparar automáticamente. Ningún punto único de falla y una fuerte tolerancia a fallas.
4. Alto rendimiento
Debido a que hay varias copias, se puede paralelizar en gran medida durante las operaciones de lectura y escritura. En teoría, cuantos más nodos haya, mayores serán las IOPS y el rendimiento de todo el clúster. Otro punto es que el cliente ceph lee y escribe datos directamente e interactúa con el dispositivo de almacenamiento (osd).
componentes
1 、 Monitorear
Un clúster Ceph requiere un pequeño clúster compuesto por varios monitores, que sincronizan datos a través de Paxos para guardar metadatos OSD.
2、OSD
El nombre completo de OSD es Dispositivo de almacenamiento de objetos, que es el proceso responsable de devolver datos específicos en respuesta a las solicitudes de los clientes. Un clúster Ceph generalmente tiene muchos OSD.
3、MODIFICACIÓN
El nombre completo de MDS es Ceph Metadata Server, que es el servicio de metadatos del que depende el servicio CephFS.
4、Objeto
La unidad de almacenamiento más baja de Ceph es el objeto Objeto, y cada Objeto contiene metadatos y datos originales.
5、PG
El nombre completo de PG es Placement Groupops, que es un concepto lógico: un PG contiene varios OSD. En realidad, la capa PG se introduce para distribuir mejor los datos y localizarlos.
6 、 FUNCIONES
El nombre completo de RADOS es Reliable Autonomic Distributed Object Store, que es la esencia del clúster Ceph. Los usuarios pueden implementar operaciones de clúster como distribución de datos y conmutación por error.
7. Libradio
Librados es una biblioteca proporcionada por Rados. Debido a que RADOS es un protocolo al que es difícil acceder directamente, se accede a RBD superior, RGW y CephFS a través de librados. Actualmente, se admiten PHP, Ruby, Java, Python, C y C++.
8. Aplastar
CRUSH es un algoritmo de distribución de datos utilizado por Ceph, que es similar al hash consistente y permite que los datos se distribuyan en los lugares esperados.
9.RBD
El nombre completo de RBD es dispositivo de bloque RADOS, que es un servicio de dispositivo de bloque proporcionado por Ceph.
10. R GW
RGW, el nombre completo de RADOS gateway, es un servicio de almacenamiento de objetos proporcionado por Ceph. La interfaz es compatible con S3 y Swift.
11. CephFS
CephFS, el nombre completo de Ceph File System, es un servicio de sistema de archivos proporcionado por Ceph al mundo exterior.
Diagrama de arquitectura
1: Para cargar un archivo, primero divida el archivo en N objetos (si cephFS está habilitado, puede usar el caché MDS)
2: El objeto del archivo dividido se almacenará en Ceph
3: Antes de almacenar el archivo, irá a través del algoritmo CRUSH para calcular el almacenamiento de archivos actual se atribuye a qué PG
4: PG es un índice que divide lógicamente el rango de almacenamiento de archivos
5: Almacena archivos en el OSD del servidor especificado de acuerdo con el índice PG
2. Trabajo de preparación
centos1 monitor osd 192.168.100.3
centos2 osd 192.168.100.4
centos3 osd 192.168.100.5
centos4 Cliente 192.168.100.6
1. Apague el firewall
systemctl detener firewalld.service
systemctl desactivar firewalld.service
2. Cierra el administrador gráfico de red.
systemctl detener NetworkManager
systemctl desactivar NetworkManager
3. Configurar IP estática
sed -i "s/ONBOOT=no/ONBOOT=yes/" /etc/sysconfig/network-scripts/ifcfg-ens33
systemctl reiniciar red
4. Cerrar Linux
setenforce 0
5. Modifique el nombre del host
hostnamectl set-hostname centos{1..4}
6. Modificar la configuración
sed -i "s/#UseDNS sí/UseDNS no/" /etc/ssh/sshd_config
systemctl reiniciar sshd
7. Configuración sin contraseña SSH
centos1
ssh-keygen
para i en 3 4 5 6; hacer ssh-copy-id [email protected].$i;hecho
centos2
ssh-keygen
para i en 3 4 5 6; hacer ssh-copy-id [email protected].$i;hecho
centos3
ssh-keygen
para i en 3 4 5 6; hacer ssh-copy-id [email protected].$i;hecho
centos4
ssh-keygen
para i en 3 4 5 6; hacer ssh-copy-id [email protected].$i;hecho
8. Modificar el archivo de hosts
vim /etc/hosts
192.168.100.3 centos1
192.168.100.4 centos2
192.168.100.5 centos3
192.168.100.6 centos4
para i en 3 4 5 6;hacer scp /etc/hosts 192.168.100.$i:/etc/;hecho
9. Sincronización horaria
yum install -y ntp
vim /etc/ntp.conf
servidor 127.127.1.0 · Definir servidor de tiempo
fudge 127.127.1.0 estrato 8 Definir jerarquía de tiemposystemctl iniciar ntpd
systemctl habilitar ntpd
para i en 4 5 6 ;haga ssh 192.168.100.$i ntpdate 192.168.100.3;hecho
10. Agregar disco y escaneo térmico
cd /sys/clase/scsi_host
para i en `ls`;do echo "- - -" > $i/scan;done
lsblk centos1 2 3 todo debe hacerse
11. Formateo del disco
mkfs.xfs /dev/sdb
3. instalación ceph
yum install epel-release -y
yum install lttng-ust -y
vim /etc/yum.repos.d/ceph.repo
[Ceph]
name=Paquetes Ceph para $basearch
baseurl=https://mirrors.tuna.tsinghua.edu.cn/ceph/rpm-mimic/el7/x86_64/
enable=1
gpgcheck=1
type=rpm-md
gpgkey=https ://download.ceph.com/keys/release.asc[Ceph-noarch]
nombre=Paquetes Ceph noarch
# 清华源
baseurl=https://mirrors.tuna.tsinghua.edu.cn/ceph/rpm-mimic/el7/noarch/
enable=1
gpgcheck=1
type=rpm-md
gpgkey=https://download.ceph.com/keys/release.asc[ceph-source]
name=Paquetes fuente de Ceph
baseurl=https://mirrors.tuna.tsinghua.edu.cn/ceph/rpm-mimic/el7/SRPMS/
enable=1
gpgcheck=1
type=rpm-md
gpgkey=https ://download.ceph.com/keys/release.asc
yum -y instalar ceph ceph-deploy
Crear directorio de clúster
mkdir -p /usr/local/soft/cephcluster
cd /usr/local/soft/cephclusterceph-implementar nuevo centos1 centos2 centos3
Modificar archivo de configuración
vim ceph.conf
#Abrir red
pública de segmento de red = 192.168.100.0/24 # Establecer el número de asignación predeterminado del tamaño predeterminado
del grupo osd del grupo = 2 # Tolerar más errores de reloj deriva de reloj mon permitida = 2 advertencia de deriva de reloj mon backoff = 30 # Permitir la eliminación de el grupo mon_allow_pool_delete = true [mgr] # Habilitar módulos de administrador del panel WEB = panel
Instalar
ceph-deploy instala centos1 centos2 centos3 (requiere una buena red)
Inicializar monitor
ceph-deploy mon crear-inicial
Sincronizar la información de gestión
administrador de implementación de ceph centos1 centos2 centos3
Instalar mgr (demonio de gestión)
ceph-deploy mgr crea centos1 centos2 centos3
instalar rgw
ceph-deploy rgw crear centos1 centos2 centos3
Crear servicio mds
ceph-deploy mds crea centos1 centos2 centos3
Instalación de OSD, crear OSD
ceph-deploy osd create --data /dev/sdb centos1
ceph-deploy osd create --data /dev/sdb centos2
ceph-deploy osd create --data /dev/sdb centos3
Ver el estado del clúster
cef -s
3. Instalación del tablero
Abra el módulo del tablero
panel de habilitación del módulo ceph mgr
Generar firma
panel de ceph crear certificado autofirmado
Crear un directorio
mkdir -p /usr/local/jx/cephcluster/mgr-dashboard
cd /usr/local/jx/cephcluster/mgr-dashboard
openssl req -new -nodes -x509 -subj "/O=IT/CN=ceph-mgr-dashboard" -días 3650 -keyout panel.key -out panel.crt -extensiones v3_ca
Comienza el servicio
Módulo ceph mgr desactivar el panel
Módulo ceph mgr habilitar el panel
Establecer dirección de acceso y puerto
ceph config set mgr mgr/dashboard/server_addr 192.168.100.3
ceph config set mgr mgr/dashboard/server_port 9001
Desactivar https
ceph config establece mgr mgr/dashboard/ssl falso
Ver dirección ceph
servicios de ceph mgr
Establecer usuario y contraseña
panel de ceph establecer credenciales de inicio de sesión jx123 123.com
prueba de acceso
https://192.168.100.3:8443
Cree un grupo de almacenamiento en el sistema de archivos ceph
Si hay menos de 5 OSD, puede configurar pg_num en 128. La
cantidad de OSD está entre 5 y 10. Puede configurar pg_num en 512. La cantidad de OSD está entre
10 y 50. Puede configurar pg_num en 4096
. El número de OSD es mayor que 50. Debe calcular el valor de pg_num.
CD /usr/local/soft/cephcluster
grupo ceph osd crear cephfs_data 128
grupo ceph osd crear cephfs_metadata 64
Ver grupo de almacenamiento
ceph osd lspools
Crear sistema de archivos
ceph fs nuevo fs_test cephfs_metadata cephfs_data
Ver sistema de archivos
ceph fsls
Ver estado de mds
estadística de ceph mds
4. Montaje del cliente
operación centos1
Instalar
Sincronizar la información de gestión
ceph-deploy instala centos4
administrador de implementación de ceph centos4
operación centos4
yum instalar -y ceph-fuse
Ver información
ls /etc/ceph
ceph.client.admin.keyringCree el directorio de montaje
mkdir /ceph y monte el sistema de archivos ceph
ceph-fuse -k /etc/ceph/ceph.client.admin.keyring -m 192.168.100.3:6789 /ceph