Você pode operar serviços do Ceph usando o systemd
ou o DeepSea.
systemd
#
Use o comando systemctl
para operar todos os serviços relacionados ao Ceph. A operação é realizada no nó em que você efetuou login. Você precisa ter privilégios de root
para operar serviços do Ceph.
Para tornar mais simples iniciar, parar e reiniciar todos os serviços de determinado tipo (por exemplo, todos os serviços do Ceph, os MONs ou os OSDs) em um nó, o Ceph oferece os seguintes arquivos da unidade systemd
:
root #
ls /usr/lib/systemd/system/ceph*.target
ceph.target
ceph-osd.target
ceph-mon.target
ceph-mgr.target
ceph-mds.target
ceph-radosgw.target
ceph-rbd-mirror.target
Para iniciar/parar/reiniciar todos os serviços do Ceph no nó, execute:
root #
systemctl stop ceph.targetroot #
systemctl start ceph.targetroot #
systemctl restart ceph.target
Para iniciar/parar/reiniciar todos os OSDs no nó, execute:
root #
systemctl stop ceph-osd.targetroot #
systemctl start ceph-osd.targetroot #
systemctl restart ceph-osd.target
Os comandos para os outros destinos são semelhantes.
Você pode operar serviços individuais usando os seguintes arquivos parametrizados da unidade systemd
:
ceph-osd@.service ceph-mon@.service ceph-mds@.service ceph-radosgw@.service ceph-rbd-mirror@.service
Para usar esses comandos, primeiro você precisa identificar o nome do serviço que deseja operar. Consulte a Seção 3.1.3, “Identificando serviços individuais” para saber mais sobre a identificação de serviços.
Para iniciar/parar/reiniciar o serviço osd.1
, execute:
root #
systemctl stop ceph-osd@1.serviceroot #
systemctl start ceph-osd@1.serviceroot #
systemctl restart ceph-osd@1.service
Os comandos para os outros tipos de serviço são semelhantes.
É possível descobrir os nomes ou números de um tipo específico de serviço executando systemctl
e filtrando os resultados com o comando grep
. Por exemplo:
root #
systemctl | grep -i 'ceph-osd.*service'root #
systemctl | grep -i 'ceph-mon.*service' [...]
É possível consultar o systemd
para saber o status dos serviços. Por exemplo:
root #
systemctl status ceph-osd@1.serviceroot #
systemctl status ceph-mon@HOSTNAME.service
Substitua HOSTNAME pelo nome de host no qual o daemon está em execução.
Se você não souber o nome/número exato do serviço, consulte a Seção 3.1.3, “Identificando serviços individuais”.
Após aplicar as atualizações aos nós do cluster, você precisará reiniciar os serviços atribuídos para usar a versão recém-instalada.
O processo de reinicialização do cluster pode levar algum tempo. Para observar os eventos, você pode usar o barramento de evento do Salt ao executar o comando:
root@master #
salt-run state.event pretty=True
Para reiniciar todos os serviços no cluster, execute o seguinte comando:
root@master #
salt-run state.orch ceph.restart
A ordem em que cada função é reiniciada varia de acordo com a versão do DeepSea (rpm -q deepsea
):
Para o DeepSea anterior à versão 0.8.4, os serviços Servidor de Metadados, iSCSI Gateway, Object Gateway e NFS Ganesha são reiniciados em paralelo.
Para o DeepSea 0.8.4 e versões mais recentes, todas as funções configuradas são reiniciadas na seguinte ordem: Ceph Monitor, Ceph Manager, Ceph OSD, Servidor de Metadados, Object Gateway, iSCSI Gateway, NFS Ganesha. Para manter o tempo de espera baixo e detectar possíveis problemas o quanto antes, os nós são reiniciados sequencialmente. Por exemplo, apenas um nó de monitoramento é reiniciado de cada vez.
O comando aguardará a recuperação do cluster se ele estiver degradado, não saudável.
Para reiniciar um serviço específico no cluster, execute:
root@master #
salt-run state.orch ceph.restart.service_name
Por exemplo, para reiniciar todos os Object Gateways, execute:
root@master #
salt-run state.orch ceph.restart.rgw
Você pode usar os seguintes destinos:
root@master #
salt-run state.orch ceph.restart.mon
root@master #
salt-run state.orch ceph.restart.mgr
root@master #
salt-run state.orch ceph.restart.osd
root@master #
salt-run state.orch ceph.restart.mds
root@master #
salt-run state.orch ceph.restart.rgw
root@master #
salt-run state.orch ceph.restart.igw
root@master #
salt-run state.orch ceph.restart.ganesha