Jump to contentJump to page navigation: previous page [access key p]/next page [access key n]
Aplica-se a SUSE Enterprise Storage 5

3 Operando serviços do Ceph

Você pode operar serviços do Ceph usando o systemd ou o DeepSea.

3.1 Operando serviços do Ceph usando 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.

3.1.1 Iniciando, parando e reiniciando serviços usando destinos

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.target
root # systemctl start ceph.target
root # systemctl restart ceph.target

Para iniciar/parar/reiniciar todos os OSDs no nó, execute:

root # systemctl stop ceph-osd.target
root # systemctl start ceph-osd.target
root # systemctl restart ceph-osd.target

Os comandos para os outros destinos são semelhantes.

3.1.2 Iniciando, parando e reiniciando serviços individuais

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.service
root # systemctl start ceph-osd@1.service
root # systemctl restart ceph-osd@1.service

Os comandos para os outros tipos de serviço são semelhantes.

3.1.3 Identificando serviços individuais

É 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'
[...]

3.1.4 Status do serviço

É possível consultar o systemd para saber o status dos serviços. Por exemplo:

root # systemctl status ceph-osd@1.service
root # 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”.

3.2 Reiniciando serviços do Ceph usando DeepSea

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.

Nota
Nota: Observando a reinicialização

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

3.2.1 Reiniciando todos os serviços

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.

3.2.2 Reiniciando serviços específicos

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
Imprimir esta página