Como proceder para depurar e resolver problemas comuns de contentores na Container Station?
A Container Station permite-lhe implementar aplicações e contentores desenvolvidos por terceiros no seu dispositivo QNAP. As imagens de código aberto utilizadas para criar estes contentores podem dar origem a problemas de implementação.
A QNAP não disponibiliza o suporte técnico para imagens de terceiros. Siga estes passos para diagnosticar e resolver problemas comuns relacionados com contentores.
Verificação da configuração do contentor
Os contentores herdam todos os atributos da imagem de origem. Analise o ficheiro de imagem para identificar vulnerabilidades de segurança, configurações incorretas e ameaças indiretas antes da implementação.
Se o contentor encontrar problemas após a implementação, analise os registos do contentor para diagnosticar e resolver problemas.
Inspeção das informações da imagem
Reveja os pré-requisitos da imagem e conclua todos os passos necessários antes de implementar o contentor.
Por exemplo, a implementação de um contentor PostgreSQL utilizando a imagem postgres
requer a definição da variável de ambiente POSTGRES_PASSWORD
. Não é possível implementar o contentor sem esta variável.
POSTGRES_PASSWORD
na secção Ambiente.Análise de registos de eventos da Container Station
A Container Station regista toda a atividade da aplicação e do contentor. Os registos de falhas fornecem mensagens de erro explícitas, incluindo o nome da aplicação ou do contentor, o código de erro e os detalhes do erro.
- Abra a Container Station.
- Clique em Registos de Eventos.
- Localize os registos de falhas.
Exemplo 1
Neste exemplo, o registo de eventos gravou uma falha de arranque porque as portas especificadas já estavam a ser utilizadas por outros serviços, impedindo o contentor de se associar às interfaces de rede necessárias.
Exemplo 2
O registo de eventos gravou uma falha de arranque neste exemplo devido a um comando de ponto de entrada mal configurado, o que impediu o contentor de executar o processo pretendido.
Verificação de registos individuais de contentores
Analise os registos de contentores individuais para mensagens de erro e de aviso. A Container Station regista estados de erro detalhados, como a ausência de variáveis de ambiente, formatos de nomenclatura inválidos, falhas na recuperação de imagens e falhas de inicialização.
- Abra a Container Station.
- Clique em Contentores.
- Selecione um contentor para abrir a página de detalhes.
- Clique em Registos.
- Reveja a existência de mensagens de erro e de aviso.
Exemplo 1
O registo de eventos registou uma falha de arranque porque a variável de ambiente MYSQL_ROOT_PASSWORD
não foi definida antes de implementar o contentor MySQL, fazendo com que saísse imediatamente após a inicialização.
Exemplo 2
O registo de eventos gravou uma falha de arranque porque o contentor Rancher foi implementado utilizando a imagem rancher/rancher
sem ativar o modo privilegiado. Sem o sinalizador --privileged
, não foi possível inicializar corretamente o contentor.
Verificação da compatibilidade da imagem
Certifique-se de que a imagem é compatível com a arquitetura do processador e o sistema operativo do seu dispositivo QNAP. Versões de imagem ou arquiteturas incorretas impedem o funcionamento dos contentores.
Verificação da compatibilidade da plataforma
Verifique se a plataforma de imagem corresponde à arquitetura da CPU do seu dispositivo QNAP. Se estiver a transferir uma imagem de outro dispositivo QNAP, confirme se ambos os dispositivos utilizam a mesma arquitetura.
Docker
A página de imagens Docker fornece uma lista de arquitetura e sistemas operativos suportados para cada versão de imagem. As diretrizes gerais de compatibilidade para imagens do Docker são as seguintes:
linux/arm/v7
As imagens suportam arquiteturas ARM de 32 bits.linux/arm64/v8
As imagens suportam arquiteturas ARM de 64 bits.linux/amd64
As imagens suportam arquiteturas x86 de 64 bits.
LXD
Para obter detalhes sobre compatibilidade, visite Servidor de Imagem LXD. As diretrizes gerais de compatibilidade de arquitetura para contentores LXD são as seguintes:
armhf
Os contentores suportam arquiteturas ARM de 32 bits.arm64
Os contentores suportam arquiteturas ARM de 64 bits.amd64
Os contentores suportam arquiteturas x86 de 64 bits.
Identificação de incompatibilidade de contentores
Os contentores Docker incompatíveis podem registar um exec format error
, indicando uma dissonância de arquitetura.
Ao implementar contentores LXD incompatíveis, a Container Station grava registos de falhas na página de Registos de Eventos.
Verificação da compatibilidade do tamanho da página
A QNAP atualizou o tamanho da página do sistema de 4K para 32K para melhorar o desempenho em dispositivos ARM específicos de 32 bits. Esta alteração pode limitar o acesso do contentor aos recursos de memória, causando falhas de segmentação. Verifique a compatibilidade de contentores de terceiros antes da implementação.
Série | Modelos |
---|---|
TS-x31P | TS-531P |
TS-x31P3 | TS-231P3, TS-431P3 |
TS-x31X | TS-231X, TS-431X, TS-531X, TS-831X, TS-431X2, TS-431X3 |
TS-x31KX | TS-431KX |
TS-x31XU | TS-431XU, TS-431XU-RP, TS-831XU, TS-831XU-RP, TS-1231XU, TS-1231XU-RP |
TS-x31XeU | TS-431XeU |
TS-x35 | TS-1635 |
Verificação da configuração do sistema da QNAP
Certifique-se de que o dispositivo QNAP está devidamente configurado para a implementação e instrumentalização de contentores.
Verificação das definições de rede
- Inicie sessão no seu dispositivo QNAP e abra Rede e Switch Virtual.
- Selecione o modo Avançado.
- Aceda a Rede > Switch Virtual.
- Identifique os segmentos de rede utilizados pela rede do contentor.
- Aceda a Painel de Controlo > Sistema > Segurança > Lista Permitir/Negar.NotaSe a QuFirewall estiver instalada no seu dispositivo, certifique-se de que está ativada e, em seguida, abra a QuFirewall e adicione os segmentos de rede necessários à lista de permissões.
- Certifique-se de que os segmentos da rede do contentor estão adicionados na lista de permissão.ImportanteA QNAP recomenda vivamente a adição dos seguintes intervalos de IP à lista de permissões:
10.0.3.0/24
,10.0.5.0/24
,10.0.7.0/24
,172.29.0.0/22
,172.30.0.0/22
. Se os serviços Kubernetes estiverem ativados, adicione também10.42.0.0/24
(Kubernetes Pod Network CIDR).
Verificação das definições avançadas de permissão
- Aceda a Painel de Controlo > Privilégio > Pastas Partilhadas > Permissões Avançadas.
- Desative Ativar Permissões avançadas de pastas.
- Clique em Aplicar.
- Aceda a Painel de Controlo > Privilégio > Quota e verifique as definições da quota do utilizador.NotaAs definições de quotas só se aplicam se a gestão de quotas estiver ativada.AvisoVerifique as definições de quotas dos utilizadores para garantir que não existem restrições de quotas não intencionais. As definições de quotas acidentais podem fazer com que o contentor comunique erros devido a limitações de armazenamento.
Verificação da configuração do armazenamento e da rede
- Aceda a Armazenamento e Instantâneos > Armazenamento > Armazenamento/Instantâneos.
- Verifique a capacidade de armazenamento disponível.NotaSe o estado for diferente de "Pronto", verifique se existem erros de armazenamento no estado do disco. Para obter mais detalhes, consulte Estados dos discos no Guia do Utilizador do QTS ou QuTS hero.
Verificação da configuração da rede
Certifique-se de que as definições de rede estão corretamente configuradas, seguindo estes passos:
- Aceda a Rede e Switch Virtual > Rede > Interfaces e reveja as definições DNS e da gateway.
- Certifique-se de que o servidor DHCP pode atribuir endereços IP a contentores utilizando um switch virtual. Para obter detalhes, consulte Configuração do switch virtual no Guia do Utilizador do QTS ou QuTS hero.NotaA definição Não atribuir endereços IP (para objetivos especiais, como a criação de uma rede externa ou rede isolada) na configuração do switch virtual destina-se a configurações de rede específicas. Se não necessitar de uma configuração de rede personalizada, recomenda-se que desative esta definição.
No entanto, se estiver a configurar uma rede externa ou isolada, deve ativá-la. Tenha em atenção que esta definição pode afetar a configuração de rede do contentor. Para obter detalhes, consulte Criação de um switch virtual no modo avançado no Guia do Utilizador do QTS ou QuTS hero. - Aceda a Container Station > Preferências > Definições de Rede e garanta que os segmentos da rede do contentor não entram em conflito com o ambiente local.ImportanteA Container Station usa
10.0.3.0/24
,10.0.5.0/24
e10.0.7.0/24
como redes IP predefinidas.
Consulta da ajuda online e documentação
Algumas imagens são de código aberto, permitindo aos utilizadores modificar o código fonte. Se nenhum dos métodos de resolução de problemas solucionar o problema, a imagem de origem pode ser incompatível ou estar corrompida. Nesses casos, a QNAP recomenda a visita ao website da imagem para encontrar mais informações ou para utilizar outras imagens da mesma categoria.
Se a imagem for originária do registo Docker, pode encontrar mais detalhes na respetiva página de Visão Geral. Por exemplo, a imagem Ubuntu em Docker fornece links de referência rápida para obter mais informações.