Community Spring Cleaning week is here! Join your fellow Maveryx in digging through your old posts and marking comments on them as solved. Learn more here!
Free Trial

Base de conhecimento

Quando se fala de governança de dados, um dos pontos mais tocados é questão de auditoria. Com a LGPD chegando, as empresas tem que se preparar para criar processos cada vez mais rígidos para ter controle de quem, quando e como os seus dados estão sendo utilizados. Muitas pessoas perguntam se é possível criar algo dentro do Alteryx Server.
Ver artigo completo
Esse é um erro muito comum que pode ocorrer se o serviço Alteryx (AlteryxService) for encerrado inesperadamente. Normalmente, o erro acontece porque o MongoDB não é encerrado corretamente e o arquivo de bloqueio não é liberado. Isso impede o MongoDB de iniciar na próxima vez que você tenta iniciar o serviço Alteryx e retorna uma mensagem de erro semelhante a:   "A conexão ao Mongo falhou, certifique-se de que as credenciais e o endereço do servidor estejam corretos."   Para solucionar esse erro, primeiro siga as etapas abaixo.   Identifique o local de instalação do MongoDB em Configurações do Sistema -> Controlador -> Persistência Abra o Explorador de pastas do Windows e navegue até essa pasta Verifique se o arquivo mongod.lock está diferente de 0 k Se esse arquivo contiver dados (normalmente 1 k), recomendamos clonar sua instância do servidor (em caso de danos) antes de prosseguir para as etapas abaixo. Para obter ajuda na clonagem da instância do servidor, entre em contato com o Suporte ao Cliente.   Exclua ou dê um novo nome para o arquivo mongod.lock Clique com o botão direito do mouse na janela e selecione Novo -> Documento de texto Renomeie o documento para mongod.lock (verifique se a opção Mostrar extensões está ativada para a pasta, caso contrário, esse arquivo ficará como mongod.lock.txt) Abra um prompt de comando do Windows e navegue até o diretório /Alteryx/bin (por exemplo, cd "/Program files/Alteryx/bin") Inicie o serviço MongoDB apenas para garantir que tudo esteja limpo:  mongod --dbpath "caminho da pasta das configurações do sistema" --auth --port 27018   Em caso de desligamento com erros, a realocação dos dados pode levar alguns minutos.  Procure uma linha contendo "Aguardando conexões na porta 27018". Quando ela aparecer, pressione Ctrl+C no teclado para desligar o serviço Inicie o serviço Alteryx.  Você pode fazer isso no prompt de comando com: sc start AlteryxService Verifique o Gerenciador de Tarefas -> Detalhes (ou Processos) para confirmar se os processos do serviço Alteryx estão funcionando Se o arquivo de bloqueio estiver OK    Abra um prompt de comando do Windows e navegue até o diretório /Alteryx/bin (por exemplo, cd "/Program files/Alteryx/bin") Execute o serviço Alteryx no modo de teste para identificar o erro real: AlteryxService test Se não for possível identificar facilmente o que está provocando o erro, envie-nos os arquivos de log de serviço (caminho encontrado em Configurações do sistema -> Controlador -> Geral)
Ver artigo completo
Este é o segundo artigo de uma série sobre backup e recuperação do Alteryx Server. Você pode encontrar a Parte 1 em:   Backup e recuperação do Alteryx Server - Parte 1: melhores práticas   Desde que um backup do banco de dados do MongoDB esteja disponível, você poderá restaurar o Alteryx Server e colocá-lo em funcionamento. Felizmente, fazer backup do MongoDB integrado é bastante simples e pode ser feito com alguns comandos do console. Eu recomendo criar um script ou arquivo em lotes para realizar o processo. Isso permitirá que você agende o backup utilizando o Agendador de tarefas do Windows. Os passos para executar um backup do MongoDB são descritos em detalhes na ajuda online, na seção de configuração do servidor ou diretamente neste link. Também vou descrever o passo a passo abaixo, para que fique completo.   Para criar um backup do MongoDB:   Pare o serviço Alteryx (AlteryxService). Execute o seguinte comando para salvar um backup da base de dados na pasta especificada:   alteryxservice emongodump= Reinicie o serviço Alteryx (AlteryxService)   Você pode facilmente fazer o script para um arquivo em lotes com alguns comandos de console simples. Veja abaixo um exemplo, tendo em mente que os caminhos podem variar no seu servidor.   Exemplo:     "C:/Program Files/Alteryx/bin/AlteryxService.exe" stop "C:/Program Files/Alteryx/bin/AlteryxService.exe" emongodump=Z:/Path/MongoBackup "C:/Program Files/Alteryx/bin/AlteryxService.exe" start     É possível adicionar mais recursos aos backups, como registro em log e carimbos de data/hora.  Como uma amostra de recursos úteis adicionais para incluir em seus backups, anexei o código para um script em lote que criei, que adiciona as seguintes informações: registro em log com carimbo de data/hora, um backup que também tem carimbo de data/hora, arquivamento automático do backup, cópia do arquivo morto para um local de rede e limpeza dos arquivos temporários.   Quando você tiver um arquivo em lote ou outro script para realizar seus backups, é necessário testar o script para certificar-se de que ele funciona corretamente. Após fazer o teste, o próximo passo é agendar o backup. A maneira mais fácil de fazer isso é usar o Agendador de tarefas do Windows. Para criar uma tarefa agendada no servidor do Windows 2012, siga estes passos:   Crie uma tarefa agendada:   Abra o Agendador de tarefas e clique em "Criar tarefa"   Na guia Geral, insira "Nome", "Descrição", selecione "Executar estando o usuário conectado ou não" e selecione "Executar com privilégios mais altos"   Na guia Gatilhos, clique em "Novo"   Uma caixa de diálogo será exibida. Defina a programação (diária, semanal etc.) com a qual você deseja que o backup seja executado e clique em "OK"   Na guia Ações, clique em "Novo"   Na janela de diálogo, certifique-se de que “Iniciar um programa” está selecionado e clique em “Navegar”. Selecione o arquivo em lote que você criou e clique em "Abrir". Em seguida, clique em "OK".   Clique em "OK" na janela Criar tarefa para finalizar a criação da tarefa de backup.   Agora que você já implementou os procedimentos de backup e agendou uma tarefa para automatizar os backups com sucesso, é hora de discutir a restauração da base de dados a partir de um backup. A boa notícia é que restaurar a base de dados é tão simples quanto fazer o backup. Supondo que 1) o servidor esteja funcionando, 2) o Alteryx Server esteja instalado e 3) exista um backup válido disponível, é possível seguir estes passos simples descritos abaixo.   Para restaurar um backup do MongoDB:   Pare o serviço Alteryx (AlteryxService) Execute o seguinte comando para restaurar o backup:   alteryxservice emongorestore=,   Reinicie o serviço Alteryx (AlteryxService)   Essa simplicidade e o mesmo foco nas instruções de linha de comando sugerem que também podemos fazer um script da recuperação. Contudo, como as ações de recuperação são muito menos frequentes, isso provavelmente não é necessário. Em vez disso, basta se conectar ao servidor, abrir um prompt de comando e, seguindo nosso exemplo de backup acima, executar os seguintes comandos:   Exemplo:     "C:/Program Files/Alteryx/bin/AlteryxService.exe" stop "C:/Program Files/Alteryx/bin/AlteryxService.exe" emongorestore=Z:/Path/MongoBackup,C:/ProgramData/Alteryx/Service/Persistence/MongoDB "C:/Program Files/Alteryx/bin/AlteryxService.exe" start     Para o Alteryx Server, também recomendamos fazer backup do token do controlador e de alguns arquivos de configuração. Embora o Server possa ser recuperado sem esses arquivos, ter um backup deles pode agilizar o processo de recuperação, e eles também garantem que você poderá descriptografar quaisquer dados confidenciais na base de dados. Recomendamos fazer backup dos seguintes arquivos de recuperação:   C:/ProgramData/Alteryx/RuntimeSettings.xml C:/ProgramData/Alteryx/Engine/SystemAlias.xml C:/ProgramData/Alteryx/Engine/SystemConnections.xml   Novamente, tenha em mente que os caminhos exatos podem variar dependendo da configuração do Server e de onde o backup está localizado. Esse exemplo também supõe que o backup não está compactado/arquivado. Se estiver usando um script de backup que arquive o backup e o copie para o armazenamento de rede, será necessário copiar o arquivo de backup para o servidor e descompactar o arquivo antes de executar os comandos de recuperação acima.     Veja abaixo o código para meu script em lote de exemplo:   ::----------------------------------------------------------------------------- :: :: Script de Backup do AlteryxServer v.2.0.2 - 04/01/19 :: Criado por: Kevin Powney :: :: Verificações de início e parada do Service adaptadas do código de exemplo criado por Eric Falsken :: ::----------------------------------------------------------------------------- @echo off ::----------------------------------------------------------------------------- :: Defina variáveis para caminhos aplicativos, log, temp e rede :: :: Atualize esses valores conforme o que for apropriado para o seu ambiente. Observação :: esses espaços devem ser evitados nos caminhos de LogDir, TempDir e NetworkDir. :: A barra à direita também é necessária para esses caminhos. ::----------------------------------------------------------------------------- SET LogDir=C:/ProgramData/Alteryx/BackupLog/ SET TempDir=C:/Temp/ SET NetworkDir=//ServerName/SharePath/ SET AlteryxService="C:/Program Files/Alteryx/bin/AlteryxService.exe" SET ZipUtil="C:/Program Files/7-Zip/7z.exe" :: Set the maximium time to wait for the service to start or stop in whole seconds. Default value is 2 hours. SET MaxServiceWait=7200 ::----------------------------------------------------------------------------- :: Set Date/Time to a usable format and create log ::----------------------------------------------------------------------------- FOR /f %%a IN ('WMIC OS GET LocalDateTime ^| FIND "."') DO SET DTS=%%a SET DateTime=%DTS:~0,4%%DTS:~4,2%%DTS:~6,2%_%DTS:~8,2%%DTS:~10,2%%DTS:~12,2% SET /a tztemp=%DTS:~21%/60 SET tzone=UTC%tztemp% echo %date% %time% %tzone%: Starting backup process... > %LogDir%BackupLog%datetime%.log echo. >> %LogDir%BackupLog%datetime%.log ::----------------------------------------------------------------------------- :: Parar o AlteryxService ::----------------------------------------------------------------------------- echo %date% %time% %tzone%: Parando o AlteryxService... >> %LogDir%BackupLog%datetime%.log echo. >> %LogDir%BackupLog%datetime%.log SET COUNT=0 :StopInitState SC query AlteryxService | FIND "STATE" | FIND "RUNNING" >> %LogDir%BackupLog%datetime%.log IF errorlevel 0 IF NOT errorlevel 1 GOTO StopService SC query AlteryxService | FIND "STATE" | FIND "STOPPED" >> %LogDir%BackupLog%datetime%.log IF errorlevel 0 IF NOT errorlevel 1 GOTO StopedService SC query AlteryxService | FIND "STATE" | FIND "PAUSED" >> %LogDir%BackupLog%datetime%.log IF errorlevel 0 IF NOT errorlevel 1 GOTO SystemError echo %date% %time% %tzone%: O estado do serviço está mudando, aguardando que o serviço resolva seu estado antes de fazer alterações >> %LogDir%BackupLog%datetime%.log SC query AlteryxService | Find "STATE" timeout /t 1 /nobreak >NUL SET /A COUNT=%COUNT%+1 IF "%COUNT%" == "%MaxServiceWait%" GOTO SystemError GOTO StopInitState :StopService SET COUNT=0 SC stop AlteryxService >> %LogDir%BackupLog%datetime%.log GOTO StoppingService :StopServiceDelay echo %date% %time% %tzone%: Aguardando que o AlteryService pare >> %LogDir%BackupLog%datetime%.log timeout /t 1 /nobreak >NUL SET /A COUNT=%COUNT%+1 IF "%COUNT%" == "%MaxServiceWait%" GOTO SystemError :StoppingService SC query AlteryxService | FIND "STATE" | FIND "STOPPED" >> %LogDir%BackupLog%datetime%.log IF errorlevel 1 GOTO StopServiceDelay :StopedService echo %date% %time% %tzone%: O AlteryService foi parado >> %LogDir%BackupLog%datetime%.log ::----------------------------------------------------------------------------- :: Faça backup do MongoDB no diretório temporário local. ::----------------------------------------------------------------------------- echo. >> %LogDir%BackupLog%datetime%.log echo %date% %time% %tzone%: Iniciando o backup do MongoDB... >> %LogDir%BackupLog%datetime%.log echo. >> %LogDir%BackupLog%datetime%.log %AlteryxService% emongodump=%TempDir%ServerBackup_%datetime%/Mongo >> %LogDir%BackupLog%datetime%.log ::----------------------------------------------------------------------------- :: Faça backup dos arquivos de configuração no diretório temporário local. ::----------------------------------------------------------------------------- echo. >> %LogDir%BackupLog%datetime%.log echo %date% %time% %tzone%: Fazendo backup de configurações, conexões e aliases... >> %LogDir%BackupLog%datetime%.log echo. >> %LogDir%BackupLog%datetime%.log copy %ProgramData%/Alteryx/RuntimeSettings.xml %TempDir%ServerBackup_%datetime%/RuntimeSettings.xml >> %LogDir%BackupLog%datetime%.log copy %ProgramData%/Alteryx/Engine/SystemAlias.xml %TempDir%ServerBackup_%datetime%/SystemAlias.xml copy %ProgramData%/Alteryx/Engine/SystemConnections.xml %TempDir%ServerBackup_%datetime%/SystemConnections.xml %AlteryxService% getserversecret > %TempDir%ServerBackup_%datetime%/ControllerToken.txt ::----------------------------------------------------------------------------- :: Reiniciar o Alteryx Service ::----------------------------------------------------------------------------- echo. >> %LogDir%BackupLog%datetime%.log echo %date% %time% %tzone%: Reiniciando o Alteryx Service... >> %LogDir%BackupLog%datetime%.log echo. >> %LogDir%BackupLog%datetime%.log SET COUNT=0 :StartInitState SC query AlteryxService | FIND "STATE" | FIND "STOPPED" >> %LogDir%BackupLog%datetime%.log IF errorlevel 0 IF NOT errorlevel 1 GOTO StartService SC query AlteryxService | FIND "STATE" | FIND "RUNNING" >> %LogDir%BackupLog%datetime%.log IF errorlevel 0 IF NOT errorlevel 1 GOTO StartedService SC query AlteryxService | FIND "STATE" | FIND "PAUSED" >> %LogDir%BackupLog%datetime%.log IF errorlevel 0 IF NOT errorlevel 1 GOTO SystemError echo %date% %time% %tzone%: O estado do serviço está mudando, aguardando que o serviço resolva seu estado antes de fazer alterações >> %LogDir%BackupLog%datetime%.log SC query AlteryxService | Find "STATE" timeout /t 1 /nobreak >NUL SET /A COUNT=%COUNT%+1 IF "%COUNT%" == "%MaxServiceWait%" GOTO SystemError GOTO StartInitState :StartService SET COUNT=0 SC start AlteryxService >> %LogDir%BackupLog%datetime%.log GOTO StartingService :StartServiceDelay echo %date% %time% %tzone%: Aguardando o Alteryx Service iniciar >> %LogDir%BackupLog%datetime%.log timeout /t 1 /nobreak >NUL SET /A COUNT=%COUNT%+1 IF "%COUNT%" == "%MaxServiceWait%" GOTO SystemError :StartingService SC query AlteryxService | FIND "STATE" | FIND "RUNNING" >> %LogDir%BackupLog%datetime%.log IF errorlevel 1 GOTO StartServiceDelay :StartedService echo %date% %time% %tzone%: O Alteryx Service foi iniciado >> %LogDir%BackupLog%datetime%.log ::----------------------------------------------------------------------------- :: Esta seção compacta o backup em um único arquivo zip :: :: Observe que o comando abaixo requer o 7-Zip instalado no servidor. :: Você pode baixar o 7-Zip em http://www.7-zip.org/ ou alterar o comando para :: usar o utilitário zip de sua escolha, conforme definido na variável acima. ::----------------------------------------------------------------------------- echo. >> %LogDir%BackupLog%datetime%.log echo %date% %time% %tzone%: Arquivando o backup... >> %LogDir%BackupLog%datetime%.log %ZipUtil% a %TempDir%ServerBackup_%datetime%.7z %TempDir%ServerBackup_%datetime% >> %LogDir%BackupLog%datetime%.log ::----------------------------------------------------------------------------- :: Mover o arquivo morto zip para o local de armazenamento de rede e limpar arquivos locais ::----------------------------------------------------------------------------- echo. >> %LogDir%BackupLog%datetime%.log echo %date% %time% %tzone%: Movendo arquivo morto para armazenamento de rede >> %LogDir%BackupLog%datetime%.log echo. >> %LogDir%BackupLog%datetime%.log copy %TempDir%ServerBackup_%datetime%.7z %NetworkDir%ServerBackup_%datetime%.7z >> %LogDir%BackupLog%datetime%.log del %TempDir%ServerBackup_%datetime%.7z >> %LogDir%BackupLog%datetime%.log rmdir /S /Q %TempDir%ServerBackup_%datetime% >> %LogDir%BackupLog%datetime%.log ::----------------------------------------------------------------------------- :: Concluído ::----------------------------------------------------------------------------- echo. >> %LogDir%BackupLog%datetime%.log echo %date% %time% %tzone%: Processo de backup concluído >> %LogDir%BackupLog%datetime%.log GOTO :EOF :SystemError echo. >> %LogDir%BackupLog%datetime%.log echo %date% %time% %tzone%: Erro ao iniciar ou parar o Service. O Service não está acessível, está offline ou não respondeu à solicitação de início ou parada dentro do período designado. >> %LogDir%BackupLog%datetime%.log
Ver artigo completo
Recentemente, passei por algumas situações que resultaram na perda de dados porque um backup do Alteryx Server não estava disponível. Eu não consigo enfatizar o suficiente a importância de fazer backup do seu Server regularmente. Este artigo, o primeiro de uma série de duas partes, abordará algumas opções e práticas recomendadas para garantir que você tenha disponíveis os backups necessários caso precise deles. A Parte II terá foco na instância incorporada do MongoDB fornecida com a instalação do Alteryx Server. Se estiver utilizando uma instância do MongoDB gerenciada pelo usuário, consulte a documentação do MongoDB para procedimentos de backup e recuperação em https://docs.mongodb.org/manual/administration/backup/.   Vamos explorar algumas práticas recomendadas amplamente aceitas para fazer backup de servidores e bases de dados:   Agende backups regulares - Fazer backup consistentemente de forma programada é fundamental para minimizar a perda de dados e o tempo de inatividade. Eu recomendo fazer backup todas as noites, fora do horário de pico, para minimizar o impacto potencial para os usuários e para a perda mínima de dados em caso de uma pane ou outra falha. Se não for possível fazer backup todas as noites, o agendamento de backups semanais também é uma opção. O importante é definir um agendamento regular.   Mantenha backups históricos por um período definido - Às vezes, o inesperado acontece e um backup falha, fica corrompido, é perdido/excluído ou o problema não é percebido imediatamente (fazendo com que o estado do problema esteja presente nos backups). Ter backups históricos disponíveis ajuda a garantir que você tenha um backup disponível e permite que você escolha um backup criado antes do início do problema.   Armazene backups na rede ou no armazenamento SAN - Backups que são armazenados no mesmo servidor em que os dados ficam apresentam o risco de não estarem disponíveis durante um evento de falha. Vamos considerar o que acontece quando seu servidor sofre uma falha de disco. Se os backups estiverem armazenados localmente nesse disco, eles também desaparecerão, impossibilitando a recuperação.  Entretanto, se os backups estiverem armazenados na rede, eles não serão afetados por um evento de falha no servidor.   Mantenha uma cópia do backup em local externo - seguindo a mesma lógica acima, se os únicos backups estiverem em um servidor de arquivos no mesmo data center que o Alteryx Server e esse data center sofrer um desastre, ambos o Server e os backups serão perdidos. Manter uma cópia adicional em local externo permite que você traga o backup do Server na nuvem ou em outro data center, se necessário.   Valide seus arquivos de backup - É importante fazer uma verificação periódica para garantir que seus backups estão ocorrendo com sucesso e para confirmar que eles são válidos e utilizáveis. Não há nada pior do que implementar um processo de backup e, após uma falha, descobrir que os backups pararam de funcionar 6 meses antes ou que nenhum dos seus backups é utilizável.    Pratique seus procedimentos de recuperação regularmente - As simulações de recuperação permitem que você se familiarize com o processo de restauração e com o tempo necessário para retornar a um estado totalmente funcional no caso de um desastre. Também já foi comprovado que praticar diminui a ocorrência de erros e pode economizar um tempo precioso. Eu recomendo executar uma simulação de recuperação a cada três ou seis meses.   Tenha em mente que, na maioria dos casos, fazer backup de todo o servidor, incluindo SO e todos os dados, não é necessário. Na verdade, isso pode aumentar significativamente o tempo médio de restauração. Em vez disso, recomendo fazer backup somente dos dados críticos e dos arquivos de configuração para o servidor. O motivo é que é bem mais rápido fazer uma instalação limpa do servidor e dos softwares necessários e depois restaurar os dados/configurações do backup do que restaurar o servidor inteiro. Isso fica ainda mais evidente no caso de servidores virtuais, já que a implantação de um novo servidor virtual leva minutos na maioria dos casos. Esses backups reduzidos podem também diminuir o tempo necessário para concluir e validar os backups e diminuir as necessidades/custos de armazenamento envolvidos na manutenção dos mesmos.   Parte 2 - Backup e recuperação do Alteryx Server - Parte 2: procedimentos    
Ver artigo completo
Rótulos