User Tools

Site Tools


cephtest:addrmosd

Table of Contents

Cuando un OSD se corrompe por ruptura del disco

1. Usar los siguientes comandos para saber como esta configurado el arbol de OSD y los pool que hay en cada uno.

ceph osd tree
ej: ceph pg dump

Es importante ver que no este comprometido el ratio de replicacion porque de estarlo se debe incrementar la capacidad lo antes posible.

1a. Luego dedetectar el que se desea eliminar se debe quitarle el peso que tiene de almacenaje.

ceph osd crush reweight osd.7 0

2. Sacarlo de la lista de OSD activos.

osd out {osd-num}
ej: ceph osd out 7

3. Esperar que el proceso de reorganizacion del cluster termine. Se puede monitorear con el comando 'ceph pg stat'. El proceso acaba cuando todo está 'active+clean'

4. Detener los OSD y desmontarlo del sistema de archivos.

stop ceph-osd id={osd-num}
ej: stop ceph-osd id={osd-num}
    ceph-osd stop 7
    umount /var/lib/ceph/osd/ceph-7

5. Eliminar el OSD del mapa CRSUH.

ceph osd crush remove {name}
ej: ceph osd crush remove osd.7

6. Eliminar las llaves de autentificacion.

ceph auth del osd.{osd-num}
ej ceph auth del osd.7

7. Eliminar el OSD del mapa de OSD's

ceph osd rm {osd-num}
ej: ceph osd rm 7

8. En este punto ya todo está como si el OSD no hubiera existido. Se puede proceder a crear el nuevo.

Addicionando un nuevo espacio

1 Crear el OSD logicamente

ceph osd create 

2 Crear el punto donde se va a montar el OSD

mkdir /var/lib/ceph/osd/ceph-7

3 Formatear el OSD (Se asume que ya esta la particion creada. De no estarlo se recomienda hacerlo con el parted)

mkfs -t xfs /dev/sdd1

4 Montar la particion en el lugar asignado

mount -o rw,relatime,inode64,logbsize=256k,delaylog,allocsize=4M /dev/sdd1 /var/lib/ceph/osd/ceph-7

5 Crear las llames de autentificacion

ceph-osd -i 7 --mkfs --mkkey

6 Adicionar las llaves y las reglas de acceso del OSD creado

ceph auth add osd.7 osd 'allow *' mon 'allow rwx' -i /var/lib/ceph/osd/ceph-7/keyring

7 Adicionar el OSD al mapa del CRUSH

ceph osd crush add {id-or-name} {weight}  [{bucket-type}={bucket-name} ...]
ej: ceph osd crush add osd.7 1.45 host=compute1

8 Iniciar el proceso del OSD

start ceph-osd id=7

9 Comprobar que se halla integrado al esquema de replicacion y que se este replicando todo.

ceph -w

ref: https://blueprints.launchpad.net/fuel/+spec/ceph-osd-remove http://docs.ceph.com/docs/master/rados/operations/add-or-rm-osds/

Exportar el mapa CRUSH

ceph osd getcrushmap -o salida
crushtool -d salida -o salida.decompile
cephtest/addrmosd.txt · Last modified: 2020/04/10 17:38 (external edit)