quarta-feira, 22 de junho de 2022
Erro no "OMV6 / CCC / Sei lá onde" ao copiar uma pasta / arquivo
domingo, 23 de janeiro de 2022
OMV5 - Métricas de funcionamento do servidor com Pode Exporter, Prometheus e Grafana
Pessoal,
O OpenMediaVault, pelo menos a versão 5, contem uma apresentação das métricas de funcionamento bem simples e feias, pelo menos para o meu gosto.
Para acessá-las, vá em Diagnostics -> System Information -> Performance statistics e escolha a métrica desejada: uso da CPU, dos discos, médias de trabalho, uso da memória e da rede e tempo de funcionamento.
Vejam alguns exemplos:
Para realizar estas instalações, segui algumas dicas desse vídeo aqui. Caso precise dele no futuro, vou deixar ele disponibilizado aqui no blog, logo abaixo:
O autor do vídeo também tem um blog onde coloca algumas instruções para a instalação (veja aqui). Tentei fazer como ele orientou, mas tive que dar algumas adaptadas. Diga-se de passagem, os conteúdos dele no YT são muito bons! Vale a pena assistir e seguir o canal dele (aqui).
A primeira coisa a se fazer é criar um arquivo de configuração para o Prometheus (prometheus.yml). Primeira coisa a ser dita: esse arquivo deve estar no disco onde está armazenado o OMV (ou seja, no meu caso, o /sda). Assim, criei o arquivo dentro desta pasta:
# /srv/Configs/Prometheus/prometheus.yml
Para criar o arquivo, criei todo o caminho até o arquivo (/srv/Config/Prometheus) e lá dentro criei um arquivo vazio chamado "prometheus.yml" com o nano:
# /srv/Configs/Prometheus# nano prometheus.yml
Dentro do arquivo coloquei o seguinte texto:
global:
scrape_interval: 5s
external_labels:
monitor: 'node'
scrape_configs:
- job_name: 'prometheus'
static_configs:
- targets: ['192.168.1.3:9090'] ## IP Address do localhost. Direcione a porta para o seu contêiner
- job_name: 'node-exporter'
static_configs:
- targets: ['192.168.1.3:9100'] ## IP Address do localhost
Interessante observar que os alvos (targets) devem ser o IP do seu servidor e você deve certificar-se que as portas escolhidas não estão sendo utilizadas por nenhum contêiner do Docker.
Agora vamos instalar o Prometheus Node Exporter.
Eu até tentei criar um arquivo para o Docker Compose, mas só foi funcionar mesmo com a boa e velha linha de comando:
# docker run -d --net="host" --pid="host" -v "/:/host:ro,rslave" quay.io/prometheus/node-exporter:latest --path.rootfs=/host
docker run -d \ --net="host" \ --pid="host" \ -v "/:/host:ro,rslave" \ quay.io/prometheus/node-exporter:latest \ --path.rootfs=/host
Para certificar-se que tudo está certo, ao você ir na página que configurou para o Node Exporter lá no prometheus.yml, você deve encontrar isso aqui:
Ao clicar ali no Metrics, deve aparecer isso aqui:
---
version: "2.1"
services:
prometheus:
image: prom/prometheus:latest
container_name: prometheus
ports:
- '9090:9090' #modifique as portas caso necessário
volumes:
-'/srv/Configs/Prometheus/prometheus.yml:/etc/prometheus/prometheus.yml' #coloque o caminho da sua instalação
restart: unless-stopped
Bom, se tudo deu certo aí, você conseguirá ver isso aqui acessando o endereço do seu servidor pela porta que configuramos aqui neste contêiner (no meu caso, 9090):
# docker run -d --name prometheus -p 9090:9090 -v /srv/Configs/Prometheus/prometheus.yml:/etc/prometheus/prometheus.yml prom/prometheus:latest
# docker run -d --name=grafana -p 3000:3000 grafana/grafana
Ou usa o Docker Compose com:
---
version: "2.1"
services:
grafana:
image: grafana/grafana:latest
container_name: grafana
ports:
- 3000:3000 #modifique o 'primeiro' 3000 de acordo com sua necessidade
restart: unless-stopped
global:
scrape_interval: 5s
external_labels:
monitor: 'node'
scrape_configs:
- job_name: 'prometheus'
static_configs:
- targets: ['192.168.1.3:9090'] ## IP Address do localhost. Direcione a porta para o seu contêiner
- job_name: 'node-exporter'
static_configs:
- targets: ['192.168.1.3:9100','192.168.1.44:9100','192.18.1.2:9100','192.168.1.22:9100'] ## IP Address do localhost
3 - Reinicie todos os conteineres (Prometheus e Grafana). Talvez seja necessário apagar o Dashboard anterior e refazê-lo (ao refazer, citaremos apenas o ip de onde está instalado o Prometheus, ou seja, 192.168.1.3:9090). Pronto!
Talvez seja necessário instalar o Docker em algum dos seus servidores. Para instalar, siga as instruções do site do Docker.
Depois de tudo pronto, ficou assim:
terça-feira, 18 de janeiro de 2022
Erro total no OMV - Perdi todos os meus backups?
Pessoal,
O caos se instalou aqui no meu NAS.
Os HDs, TODOS ELES! estão dando pau!!
Os discos sumiram do OMV, apesar de fisicamente conectados.
Num momento de desespero, eu já estava começando a pensar se valia a pena retornar para o TrueNAS, arriscar o XPEnology ou tentar o UnRaid. Dando uma procurada (veja aqui um resumo dos principais sistemas para NAS), até fiquei conhecendo o XigmaNAS (antigo NAS4Free, um fork do FreeNAS).
Até cheguei a começar esse post falando que iria apagar o OMV para nunca mais usar e por aí vai.
Antes de surtar completamente fui dar uma olhada mais cuidadosa nos discos e notei que o disco defeituoso que havia comentado anteriormente neste post estava conectado ao computador... Acho que fui tentar ver se realmente tinha dado pau e esqueci de desconectar. 😒
Ou seja, a porcaria ficou conectada e começou a travar todo o acesso do Proxmox, OMV e cópias. Foi só desconectar o maldito HD, desligar as VMs, reiniciar o PVE e as VMs e pronto, tudo voltou ao normal!
quinta-feira, 13 de janeiro de 2022
Disco com erro no OMV5 / Proxmox
Pessoal,
Há alguns dias comecei a ter problemas com os backups pelo CCC. Comecei a receber a seguinte mensagem de erro:
Sudo umount /dev/sdd1
Sudo fsck.ext4 /dev/sdd1terça-feira, 21 de dezembro de 2021
Atualização do NAS - de novo pro OMV5
Pessoal,
Acabei voltando meu NAS pro Open Media Vault.
A principal razão foi a paranóia que eu tive de dar um pau e eu não conseguir ler os arquivos dos discos, uma vez que o formato do TrueNAS é o ZFS e ele não é nativo nem no Mac, nem no Linux e nem no Windows.
O OMV, por outro lado, permite que eu escolha o formato de gravação. No caso, escolhi o EXT4, nativo no Linux e que pode ser acessível no Mac e Windows com pouco esforço.
Claro que o ZFS tem uma série de vantagens, só que a minha rede é só aqui pra casa, só pra mim e já com bastante redundância.
Outra coisa é a complexidade das configurações do TrueNAS. Eu, que não tenho formação em redes nem servers, tenho dificuldades para algumas configurações. O OMV, por outro lado, tem tudo simplificado.
Óbvio que o OMV é mais "limitado" que o TrueNAS, mas a impressão que eu fiquei é a seguinte: quer algo amador, pra ficar em casa? Vá de OMV. Quer algo profissional, para pequenas e médias empresas? Vá de TrueNAS.
Outra questão importante é para crescer o tamanho do meu array. No OMV é só acrescentar os discos e pronto. No TrueNAS, pelo que entendi, depois que você criou um array, para aumentá-lo é um parto.
Enfim, troquei. Estou até pensando em reinstalar o TrueNAS e rodar plugins nele. Ou talvez usar as coisas que quero usar no TrueNAS rodando pelo Docker. Tenho que pensar sobre isso.
Bom, vou só falar de um problema que tive aqui na instalação do OMV e que não tinha tido antes, fica aqui para lembrete meu também.
Quando instalei, ele recebeu um IP aleatório. Obviamente que não iria deixar, então reservei o IP no roteador (já falei disso aqui). Só que só isso não foi suficiente, ele continuou recebendo endereços aleatórios pelo DHCP. Assim, fui em System -> Network -> Interfaces e editei a conexão que tinha. Porém, não me lembro de ter feito isso antes, só editei os campos do IPV4 (estático, o endereço que tinha reservado no roteador, a submáscara de rede e o endereço do roteador no Gateway). Só que eu esqueci que deveria, também, preencher os campos em Advanced Options (DNS servers - o meu roteador e Search domais - coloquei o do Google - 8.8.8.8). Aí os erros de atualização acabaram.
Outra coisa que fiz diferente foi a forma de inserir os discos na VM. Após pluga-los ao computador, o que se liga diretamente ao USB do computador aparece como Hard Disk e os que se ligam no USB-Hub aparecem com USB. O que muda, basicamente, é que a função S.M.A.R.T. só fica ativa para o primeiro caso. Vi um tutorial (aqui) para fazer o bypass dos discos usando o ID físico ou o serial do HDD, mas achei confuso e desnecessário, então preferi fazer do jeito que sempre funcionou pra mim. Em Datacenter -> PVE -> Discos, aparece a lista de todos os discos ligados ao computador.
Aqui eles estão identificados pela lógica Unix (sda, sdb, sdc, etc). Repare na coluna "Uso" que, exato pelo sda (HDD do computador onde está instalado o Proxmox e as VMs), todos estão como "Não". Isso quer dizer que não estão formatados e não podem ser utilizados ainda. Assim, é necessário formatá-los. Depois de identificar cada disco, vá ao Shell do PVE e use os comandos, conforme já explicados aqui:
# fdisk /dev/sdb (para escolher o disco)
Veja que agora os discos estão formatados:
domingo, 12 de setembro de 2021
Proxmox - instalando o TrueNAS e configurando os discos!
terça-feira, 6 de abril de 2021
Instalando o Plex via Docker no Open Media Vault 5
Agora, como fizemos com Transmission, você vai precisar saber o número UID do admin e o GID do user. Para conseguir esses números, vá no Shell do OMV (aqui uso o Terminal, via SSH) e digite, em modo SU, "id admin". Esse número é único para cada sistema. Anote o seu porque você vai precisar para muitos Dockers.
segunda-feira, 5 de abril de 2021
Correção de erros na atualização do OMV
Pessoal,
Instalado o OMV4, fui tentar fazer as atualizações: tudo dando erro!!!
Procurei e achei essas soluções:
1 - algum problema no repositório: edite o arquivo /etc/apt/sources.list e troque o servidor instalado por algum desta lista. No meu caso, troquei o .br pelo .us.
2 - erro de DNS: edite o arquivo /etc/resolv.conf e acrescente o endereço 8.8.8.8 ou algum outro servidor de DNS de sua preferência.
Pronto, resolveu aqui para mim.
É isso.
Quer dizer, deu certo mais ou menos. A opção do Virtual Box saiu mesmo, nem no OMV4 consegui. Como já tinha conseguido arrumar o Plex e o Transmission por Docker no OMV5, resolvei voltar pro OMV5!
Instalei, já organizei os backups, já fiz o Transmission pelo Docker (veja aqui como) e arrumei um jeito fácil de montar o Plex, também pelo Docker.
Assim que terminar esse básico, vou arrumar a VPN (e vou contar como) e rodar um Ubuntu no Docker (preciso ver como publicar ele, isso que me agarrou).
É isso (agora é isso mesmo!)!
sábado, 3 de abril de 2021
Instalando Transmission via Docker no Open Media Vault
Pessoal,
Instalei o OMV5 ontem no server aqui em casa.
De cara percebi que vou ter um problema para instalar os plugins. Todos os sites, videos e guias que consultei antes de instalar o OMV mostram que, após instalar os "Extras", eles apareceriam em Serviços, na coluna à esquerda, como aqui:
Veja ali o Virtual Box, por exemplo.
Pois bem, já no meu caso, isso não aparece de jeito nenhum. Assim, as várias opções disponíveis nos "Extras" não estão aparecendo para mim.
Dei um procurada e parece ser devido à versão que estou usando, o OMV5, baseado no Debian 10. Até o OMV4 era baseado no Debian 9. Isso parece ter algum problema com visualização.
***Atualização: é isso mesmo, o Debian 10 não dá suporte para o Virtual Box. Assim isso tá fora do OMV5. A sugestão sugerida é o Cockpit (que eu já dei uma olhada e não gostei nem um pouco).
Além disso, coisas simples como PlexServer ficaram bem mais complexas, precisando rodar pelo Docker. Ainda estou apanhando um pouco dele, não estou conseguindo subir os vídeos. Assim que resolver, coloco aqui.
(Vim do futuro para fazer uma atualização e um comentário: para subir vídeos para o Plex, veja aqui com fazer.)
Mas o Transmission já está funcionando. Vamos lá!
A melhor dica que consegui para fazê-lo funcionar, do modo mais fácil, foi através dos Stacks do Portainer.
Antes de tudo, você precisa saber o número UID e o GID do user. Para conseguir esses números, vá no Shell do OMV (aqui uso o Terminal) e digite, em modo SU, "id admin" (para saber essas informações do administrador, é claro; para saber outro, use "id <usuário>").
Anote esses números do seu sistema.
Depois, teremos que ir no OMV, em "Gestão de Direitos de Acessos", "Pastas Compartilhadas" e crie a pasta que você vai utilizar para fazer os downloads do Transmission.
O macete é criar PRIMEIRO as pastas compartilhadas (em Gestão de Direitos de Acessos), depois você vai em Serviços -> SMB/CIFS -> Compartilhamentos e adiciona a pasta que você já criou e compartilhou. Faça isso para todas as pastas que desejar criar (uma para configuração e outra para download). Só depois clique na barra amarela para aplicar as atualizações.
A lógica aqui é: primeiro você cria a pasta e compartilha, depois você "publica" ela na rede via SMB, depois você aplica essas mudanças. Se fizer fora dessa ordem , não vai conseguir.
Aqui eu criei uma chamada "Transmission". Note que você precisará conceder acesso total para todos os usuários ("Apenas convidados", essa é a opção que você tem que marcar), além de saber o "caminho absoluto da pasta" e liberá-la no SMB.
Além dessa pasta, você também deverá fazer uma para armazenar as configurações. Aqui, fiz uma com o nome "Config" e lá dentro vou colocando tudo: Config/Transmission, Config/Plex, e por aí vai.
Agora vamos para a parte divertida. Acesse o site "hub.docker.org" e localize o repositório que deseja. Eu escolhi esse aqui, do LinuxServer. Eles dão boas dicas para a instalação. É recomendado a instalação pelo Docker Composer.
Basicamente a gente vai copiar este texto, colar no Stacker, editar alguns parâmetros e pronto. As linhas opcionais (Transmission_Web_Home, USER, PASS, Whitelist, Host_whitelist) eu simplesmente tirei. Se você quiser, pode deixar, por exemplo, o user e pass para colocar o nome do usuário e senha.

















