O Calamari antes era o aplicativo preferido de IU da Web para gerenciar e monitorar o cluster do Ceph. A partir do SUSE Enterprise Storage 5, o Calamari foi substituído pelo openATTIC mais avançado.
O openATTIC é um sistema de gerenciamento de armazenamento central que oferece suporte ao cluster de armazenamento do Ceph. Com o openATTIC, você pode controlar tudo de uma interface de gerenciamento central. Não é mais necessário ter conhecimento do funcionamento interno das ferramentas de armazenamento do Ceph. As tarefas de gerenciamento de cluster podem ser executadas pela interface da Web intuitiva do openATTIC ou por sua API REST.
Esta seção apresenta as etapas de implantação e configuração do openATTIC e os recursos suportados para que você possa administrar seu cluster do Ceph usando uma interface da Web amigável.
Por padrão, o acesso ao aplicativo Web openATTIC usa o protocolo HTTP não seguro. Para habilitar o acesso seguro ao openATTIC, você precisa configurar o servidor Web Apache manualmente:
Se você não tem um certificado SSL assinado por uma CA (Certificate Authority – Autoridade de Certificação) reconhecida, crie um certificado SSL autoassinado e copie os arquivos dele para o diretório padrão do servidor Web. Por exemplo:
root #
openssl req -newkey rsa:2048 -new -nodes -x509 -days 3650 \ -keyout key.pem -out cert.pemroot #
cp cert.pem /etc/ssl/certs/servercert.pemroot #
cp key.pem /etc/ssl/certs/serverkey.pem
Visite https://www.suse.com/documentation/sles-12/book_sle_admin/data/sec_apache2_ssl.html para obter mais detalhes sobre como criar certificados SSL.
Adicione “SSL” à opção APACHE_SERVER_FLAGS
no arquivo de configuração /etc/sysconfig/apache2
. Você pode criá-lo manualmente ou executar os seguintes comandos:
root #
a2enmod sslroot #
a2enflag SSL
Crie /etc/apache2/vhosts.d/vhost-ssl.conf
para um novo host virtual Apache com o seguinte conteúdo:
<IfDefine SSL> <IfDefine !NOSSL> <VirtualHost *:80> ServerName OA_HOST_NAME Redirect "/" "https://OA_HOST_NAME/" </VirtualHost> <VirtualHost _default_:443> ServerName OA_HOST_NAME DocumentRoot "/srv/www/htdocs" ErrorLog /var/log/apache2/error_log TransferLog /var/log/apache2/access_log SSLEngine on SSLCertificateFile /etc/ssl/certs/servercert.pem SSLCertificateKeyFile /etc/ssl/certs/serverkey.pem CustomLog /var/log/apache2/ssl_request_log ssl_combined </VirtualHost> </IfDefine> </IfDefine>
Reinicie o servidor Web para recarregar a definição do novo host virtual juntamente com os arquivos de certificado:
root #
systemctl restart apache2.service
A partir do SUSE Enterprise Storage 5, o openATTIC foi implantado como uma função do DeepSea. Consulte o Capítulo 1, Administração do cluster do Salt para ver o procedimento geral.
Por padrão, o oaconfig
cria uma conta do usuário administrador, openattic
, com a senha igual ao nome de usuário. Como medida de segurança, é altamente recomendável mudar essa senha o quanto antes:
root@minion >
oaconfig changepassword openattic
Changing password for user 'openattic'
Password: <enter password>
Password (again): <re-enter password>
Password changed successfully for user 'openattic'
Alguns recursos do openATTIC, como gerenciamento do iSCSI Gateway e do Object Gateway, usam a API REST do DeepSea. Ela está habilitada e configurada por padrão. Se você precisar anular as configurações padrão para fins de depuração, edite /etc/sysconfig/openattic
e adicione ou mude as seguintes linhas:
SALT_API_HOST="salt_api_host" SALT_API_PORT=8001 SALT_API_USERNAME="example_user" SALT_API_PASSWORD="password"
oaconfig restart
Lembre-se de executar oaconfig restart
depois que você fizer mudanças no arquivo /etc/sysconfig/openattic
.
O /etc/sysconfig/openattic
é usado no Python e no Bash. Portanto, os arquivos precisam estar em um formato reconhecido pelo Bash, e não é possível inserir espaços antes ou depois dos sinais de “igual”.
Os recursos de gerenciamento do Object Gateway no openATTIC estão habilitados por padrão. Se você precisar anular os valores padrão para a API do Object Gateway conforme descobertos com base no DeepSea, inclua as seguintes opções com os valores relevantes em /etc/sysconfig/openattic
. Por exemplo:
RGW_API_HOST="rgw_api_host" RGW_API_PORT=80 RGW_API_SCHEME="http" RGW_API_ACCESS_KEY="VFEG733GBY0DJCIV6NK0" RGW_API_SECRET_KEY="lJzPbZYZTv8FzmJS5eiiZPHxlT2LMGOMW8ZAeOAq"
Se o recurso de admin do Object Gateway não foi configurado para usar o valor padrão “admin” conforme usado em “http://rgw_host:80/admin”, você precisa também definir a opção RGW_API_ADMIN_RESOURCE
apropriadamente.
Para obter as credenciais do Object Gateway, use o comando radosgw-admin
:
root@minion >
radosgw-admin user info --uid=admin
Os recursos de gerenciamento do iSCSI Gateway no openATTIC estão habilitados por padrão. Se você precisar anular o nome de host padrão da API do Salt, mude o valor SALT_API_HOST
conforme descrito na Seção 15.1.4, “Integração do DeepSea no openATTIC”.
É possível gerenciar o openATTIC por meio de uma interface do usuário da Web. Abra um browser da Web e navegue para http://SERVER_HOST/openattic. Para efetuar login, use o nome de usuário padrão openattic e a senha correspondente.
A interface do usuário do openATTIC tem uma representação gráfica dividida em um painel de menus superior e um painel de conteúdo.
A parte direita do painel superior inclui um link para as configurações de usuário atuais e um link
, além de links para a lista de existentes e de do sistema. O restante do painel superior é preenchido pelo menu principal do openATTIC.O painel de conteúdo muda de acordo com o menu de itens ativado. Por padrão, um
exibe widgets com números para informá-lo sobre o status do cluster.Cada widget do
mostra informações de status específicas relacionadas ao cluster do Ceph em execução. Depois que você clica no título de um widget, ele se expande por todo o painel de conteúdo, o que pode mostrar mais detalhes. Veja a seguir uma lista de vários widgets:O widget
informa se o cluster está funcionando corretamente. Se um problema for detectado, você poderá ver a mensagem de erro detalhada clicando no subtítulo no widget.Os widgets
(Monitores no Quorum), , (OSDs Internos), (OSDs Externos), (OSDs Ativos), (OSDs Inativos) e (Média de Páginas por OSD) mostram apenas os números relacionados.Os seguintes widgets apresentam a capacidade de armazenamento total e disponível:
(Capacidade do Cluster), (Capacidade Disponível), (Capacidade Usada) e (Capacidade).Os seguintes widgets apresentam a latência de nós OSD e do monitor:
(Latência Média de Aplicação do OSD), (Latência Média de Compromisso do OSD) e (Latência Média do Monitor):O widget
mostra as estatísticas de leitura e gravação por segundo em um horário.Se você mover o ponteiro do mouse sobre qualquer um dos gráficos exibidos, verá mais detalhes relacionados à data e ao horário em que foram apontados em uma janela popup.
Se você clicar na área do gráfico e, em seguida, arrastar o ponteiro do mouse para a esquerda ou para a direita ao longo do eixo de horário, o intervalo de horário no eixo será ampliado para o intervalo que você marcou ao mover o mouse. Para reduzir novamente à escala original, clique duas vezes no gráfico.
O menu principal do openATTIC lista as tarefas relacionadas ao Ceph. Atualmente, as seguintes tarefas são relevantes:
, , , , , , e .No openATTIC, você costuma trabalhar com listas. Por exemplo, listas de pools, de nós OSD ou dispositivos RBD. Os seguintes widgets comuns ajudam você a gerenciar ou ajustar essas listas:
Clique em para atualizar a lista de itens.
Clique em para exibir ou ocultar colunas individuais da tabela.
Clique em e selecione quantas linhas serão exibidas em uma única página.
Clique em e filtre as linhas digitando a string de pesquisa.
Use para mudar a página exibida no momento, se a lista ocupar várias páginas.
Para listar todos os nós OSD disponíveis, clique em
no menu principal.A lista mostra o nome de cada OSD, nome de host, status, peso e back end de armazenamento.
Para listar todos os Dispositivos de Blocos RADOS disponíveis, clique em
no menu principal.A lista mostra o nome de cada dispositivo, o nome do pool relacionado, o tamanho do dispositivo e, se “fast-diff” foi habilitado durante a criação do Dispositivo de Blocos RADOS, a porcentagem já ocupada.
Para ver informações mais detalhadas sobre um dispositivo, ative a caixa de seleção dele na coluna mais à esquerda:
Clique na guia
(Estatísticas) de um Dispositivo de Blocos RADOS para ver as estatísticas dos dados transferidos. Você pode realçar a faixa de horário com o mouse para ampliá-la e reduzi-la ou selecioná-la após clicar na data no canto superior esquerdo da guia.Para criar um instantâneo do Dispositivo de Blocos RADOS, clique na guia
(Instantâneos) dele e selecione (Criar) na caixa suspensa superior esquerda.Após selecionar um instantâneo, você poderá renomeá-lo, protegê-lo, cloná-lo ou apagá-lo. A exclusão também funcionará se você selecionar vários instantâneos.
restaura o estado do dispositivo com base no instantâneo atual.Para apagar um dispositivo ou um grupo de dispositivos, ative as respectivas caixas de seleção na coluna mais à esquerda e clique em
(Apagar) na parte superior esquerda da tabela de RBDs:Para adicionar um novo dispositivo, clique em
(Adicionar) na parte superior esquerda da tabela de RBDs e faça o seguinte na tela (Criar RBD):Insira o nome do novo dispositivo. Consulte o Seção 2.8, “Limitações de nomeação” para saber as limitações de nomeação.
Selecione o cluster que armazenará o novo pool.
Selecione o pool que será usado como base para a criação do novo dispositivo RBD.
Especifique o tamanho do novo dispositivo. Se você clicar no link
(usar máx.) acima, o tamanho máximo do pool será preenchido.Para ajustar os parâmetros do dispositivo, clique em
(Configurações de especialista) e ative ou desative as opções exibidas.Clique em
(Criar) para confirmar.Para obter mais informações gerais sobre os pools do Ceph, consulte o Capítulo 7, Gerenciando pools de armazenamento. Para obter informações específicas dos pools com codificação de eliminação, consulte o Capítulo 9, Pools com codificação de eliminação.
Para listar todos os pools disponíveis, clique em
no menu principal.A lista mostra o nome de cada pool, o ID, a porcentagem de espaço usado, o número de grupos de posicionamento, o tamanho da réplica, o tipo (“replicado” ou “eliminação”), o perfil de codificação de eliminação e o conjunto de regras CRUSH.
Para ver informações mais detalhadas sobre um pool, ative a caixa de seleção dele na coluna mais à esquerda:
Para apagar um pool ou um grupo de pools, ative as respectivas caixas de seleção na coluna mais à esquerda e clique em
(Apagar) na parte superior esquerda da tabela de pools:Para adicionar um novo pool, clique em
(Adicionar) na parte superior esquerda da tabela de pools e faça o seguinte na tela (Criar pool do Ceph):Insira o nome do novo pool. Consulte o Seção 2.8, “Limitações de nomeação” para saber as limitações de nomeação.
Selecione o cluster que armazenará o novo pool.
Selecione o tipo de pool. Os pools podem ser replicados ou com codificação de eliminação.
Para um pool replicado, especifique o tamanho da réplica e o número de grupos de posicionamento.
Para um pool com codificação de eliminação, especifique o número de grupos de posicionamento e o perfil de codificação de eliminação. Você pode adicionar seu perfil personalizado clicando no sinal de adição “+” e especificando nome do perfil, dados e pacotes de codificação, além de um domínio de falha de conjunto de regras.
Clique em
(Criar) para confirmar.Clique em
(Nós) no menu principal para ver a lista de nós disponíveis no cluster.Cada nó é representado por seu nome de host, endereço IP público, ID do cluster ao qual ele pertence, função do nó (por exemplo, “admin”, “armazenamento” ou “master”) e status de aceitação da chave.
Para obter mais informações gerais sobre o NFS Ganesha, consulte o Capítulo 14, NFS Ganesha: Exportar dados do Ceph pelo NFS.
Para listar todas as exportações NFS disponíveis, clique em
no menu principal.A lista mostra o diretório de cada exportação, nome de host, status, tipo de back end de armazenamento e tipo de acesso.
Para ver informações mais detalhadas sobre uma exportação NFS, ative a caixa de seleção dela na coluna mais à esquerda:
Na parte inferior da tela de detalhes da exportação, há um comando de montagem que permite montar facilmente a exportação NFS relacionada em uma máquina cliente.
Para adicionar uma nova exportação NFS, clique em
(Adicionar) na parte superior esquerda da tabela de exportações e insira as informações necessárias.Selecione um host de servidor para a exportação NFS.
Selecione um back end de armazenamento:
ou .Digite o caminho do diretório para a exportação NFS. Se o diretório não existir no servidor, ele será criado.
Especifique outras opções relacionadas ao NFS, como versão do protocolo NFS suportada, tipo de acesso, squash ou protocolo de transporte.
Se você precisa limitar o acesso apenas a determinados clientes, clique em
(Adicionar clientes) e adicione os endereços IP deles juntamente com o tipo de acesso e as opções de squash.Clique em
(Enviar) para confirmar.Para apagar uma exportação ou um grupo de exportações, ative as respectivas caixas de seleção na coluna mais à esquerda e selecione
(Apagar) na parte superior esquerda da tabela de gateways.Da mesma forma, você pode selecionar
(Clonar) para clonar o gateway ativado.Para editar uma exportação existente, clique no nome dela na tabela de exportações ou ative sua caixa de seleção e clique em
(Editar) na parte superior esquerda da tabela de gateways.Em seguida, você pode ajustar todos os detalhes da exportação NFS.
Para obter mais informações gerais sobre iSCSI Gateways, consulte o Capítulo 10, Instalação do iSCSI Gateway e o Capítulo 12, Ceph iSCSI Gateway.
Para listar todos os gateways disponíveis, clique em
no menu principal.A lista mostra o destino de cada gateway, o estado, os portais relacionados e as imagens RBD.
Para ver informações mais detalhadas sobre um gateway, ative a caixa de seleção dele na coluna mais à esquerda:
Para adicionar um novo iSCSI Gateway, clique em
(Adicionar) na parte superior esquerda da tabela de gateways e insira as informações necessárias.Digite o endereço de destino do novo gateway.
Clique em
(Adicionar portal) e selecione um ou vários portais iSCSI na lista.Clique em
(Adicionar imagem) e selecione uma ou várias imagens RBD para o gateway.Se você precisa usar a autenticação para acessar o gateway, ative a caixa de seleção
(Autenticação) e digite as credenciais. Você poderá encontrar opções de autenticação mais avançadas após ativar (Autenticação mútua) e (Autenticação de descoberta).Clique em
(Enviar) para confirmar.Para editar um iSCSI Gateway existente, clique no nome dele na tabela de gateways ou ative sua caixa de seleção e clique em
(Editar) na parte superior esquerda da tabela de gateways.Em seguida, você pode modificar o destino iSCSI, adicionar ou apagar portais e adicionar ou apagar imagens RBD relacionadas. Você também pode ajustar as informações de autenticação para o gateway.
Para apagar um gateway ou um grupo de gateways, ative as respectivas caixas de seleção na coluna mais à esquerda e selecione
(Apagar) na parte superior esquerda da tabela de gateways.Da mesma forma, você pode selecionar
(Clonar) para clonar o gateway ativado.Para iniciar todos os gateways, selecione
(Iniciar todos) na parte superior esquerda da tabela de gateways. Para parar todos os gateways, selecione (Parar todos).Clique em
(Mapa CRUSH) no menu principal para ver o mapa CRUSH do cluster.No painel
(Configuração física), você pode ver a estrutura do cluster, conforme descrito no Mapa CRUSH.No painel
(Regras de replicação), você poderá ver conjuntos de regras individuais após selecionar um deles na caixa suspensa (Conteúdo).Para obter mais informações gerais sobre Object Gateways, consulte o Capítulo 11, Ceph Object Gateway.
Para listar os usuários do Object Gateway, selecione
› (Usuários) no menu principal.A lista mostra o ID de cada usuário, o nome de exibição, o endereço de e-mail, se o usuário está suspenso e o número máximo de compartimentos de memória para o usuário.
Para adicionar um novo usuário do Object Gateway, clique em
(Adicionar) na parte superior esquerda da tabela de usuários e insira as informações relevantes.Encontre mais informações sobre as contas do usuário do Object Gateway na Seção 11.5.2, “Gerenciando contas do S3 e do Swift”.
Insira o nome de usuário, o nome completo e, opcionalmente, um endereço de e-mail e o número máximo de compartimentos de memória para o usuário.
Se o usuário precisar ficar suspenso inicialmente, ative a caixa de seleção
(Suspendo).Especifique as chaves secretas e de acesso para a autenticação do S3. Para o openATTIC gerar as chaves para você, ative
(Gerar chave).Na seção
(Cota do usuário), defina os limites de cota para o usuário atual.Marque
(Habilitado) para ativar os limites de cota do usuário. Você pode especificar o (Tamanho máximo) do espaço em disco que o usuário pode utilizar no cluster ou marcar (Tamanho ilimitado) para não estipular limite de tamanho.Da mesma forma, especifique o
(Máximo de objetos) que um usuário pode armazenar no cluster ou (Objetos ilimitados), se o usuário puder armazenar qualquer número de objetos.Na seção
(Cota de Compartimento de Memória), defina os limites de cota de compartimento de memória para o usuário atual.Clique em
(Enviar) para confirmar.Para apagar um ou mais usuários do Object Gateway, ative as respectivas caixas de seleção na coluna mais à esquerda e selecione
(Apagar) na parte superior esquerda da tabela de usuários.Para editar as informações de um usuário do Object Gateway, ative a caixa de seleção dele na coluna mais à esquerda e selecione Seção 15.4.9.1, “Adicionando um novo usuário do Object Gateway”, além das seguintes informações adicionais:
(Editar) na parte superior esquerda da tabela de usuários ou clique no ID dele. Você pode mudar as informações inseridas ao adicionar o usuário naAdicione, remova ou edite subusuários do usuário que está sendo editado.
Adicione, remova ou veja as chaves secretas e de acesso do usuário que está sendo editado.
Você pode adicionar chaves do S3 ao usuário que está sendo editado ou ver as chaves do Swift para seus subusuários.
Adicione ou remova recursos do usuário. Os recursos são aplicados a
, , , e . Cada valor de recurso pode ser “leitura”, “gravação” ou “*” para privilégio de leitura e gravação.Compartimento de memória é um mecanismo para armazenar objetos de dados. Uma conta do usuário pode ter vários compartimentos de memória, mas os nomes deles devem ser exclusivos. Ainda que o termo “compartimento de memória” seja normalmente usado na API do Amazon S3, o termo “container” é usado no contexto da API do OpenStack Swift.
Clique em
› (Compartimentos de Memória) para listar todos os compartimentos de memória disponíveis do Object Gateway.Para adicionar um novo compartimento de memória, clique em
(Adicionar) na parte superior esquerda da tabela de compartimentos de memória e insira o nome do novo compartimento de memória e o usuário relacionado do Object Gateway. Clique em (Enviar) para confirmar.Para ver informações detalhadas sobre um compartimento de memória do Object Gateway, ative a caixa de seleção dele na coluna mais à esquerda da tabela de compartimentos de memória.
Para editar um compartimento de memória, ative a caixa de seleção dele na coluna mais à esquerda e selecione
(Editar) na parte superior esquerda da tabela de compartimentos de memória ou clique no nome dele.Na tela de edição, você pode mudar o usuário ao qual o compartimento de memória pertence.
Para apagar um ou mais compartimentos de memória do Object Gateway, ative as respectivas caixas de seleção na coluna mais à esquerda da tabela de compartimentos de memória e selecione
(Apagar) na parte superior esquerda da tabela.Para confirmar a exclusão, digite “yes” na janela popup
(Apagar compartimentos de memória) e clique em (Apagar).Ao apagar um compartimento de memória do Object Gateway, não é feita nenhuma verificação se ele está em uso, por exemplo, pelo NFS Ganesha por meio do back end de armazenamento do S3.