O que é necessário para instalar / manter um pacote de software em um servidor de produção? [fechadas]

4

Um colega de trabalho e eu estamos discutindo o uso (ou não) de uma solução de pesquisa em texto completo, ou seja, Elasticsearch em nosso aplicativo da web. Eu sou o desenvolvedor do aplicativo da web e ele gerencia o servidor de produção, que é um único Intel NUC rodando o Ubuntu 14.04, dedicado a rodar um aplicativo Rails (com PostgreSQL) para um pequeno departamento na minha universidade.

Atualmente estamos em desacordo sobre a escolha de software para pesquisa de texto; Ele diz que eu poderia realizar a tarefa com os recursos de pesquisa de texto embutidos do PostgreSQL . No entanto, os recursos adicionais do Elasticsearch, que são uma parte essencial do software, reduziriam significativamente a complexidade das operações de pesquisa no aplicativo da Web (em comparação com os recursos de pesquisa de texto do PostgreSQL), bem como o código necessário para desenvolver esses recursos. p>

Estou convencido de que a instalação do Elasticsearch em nosso servidor de produção não é grande de um acordo. Ele pensa que a sobrecarga de instalar, configurar, gerenciar, atualizar e monitorar é mais do que o código que eu teria que escrever para ter a mesma funcionalidade no PostgreSQL diretamente.

Estamos em um impasse. Usar o Elasticsearch sobre a pesquisa de texto do PostgreSQL me pouparia um pouco do tempo de desenvolvimento, ao custo de sua necessidade de instalar um software no servidor. Eu deveria notar aqui que a configuração do Elasticsearch seria baunilha . Ele não mencionou a segurança como um problema, então deixe-me perguntar:

Qual fluxo de trabalho é necessário para um administrador do servidor instalar (e manter) um software? Pelo que eu posso imaginar:

  1. Escreva um pequeno script bash (~ 5 linhas) para instalar o Elasticsearch X.X.X (e ser reutilizável / automatizável)
  2. Incorpore o Elasticsearch ao script de serviços de inicialização (reutilizável / automatizável)
  3. Assistir periodicamente a atualizações de software / vulnerabilidades de segurança (existem ferramentas automatizadas para isso?)
  4. Atualize a instalação, se necessário; script de atualização feito na etapa 1

Editar : Elasticsearch pode ser instalado / atualizado / removido via apt . Isso obviamente simplifica alguns dos problemas. Mas há preocupações de manutenção, que, acredito, é o que meu colega de trabalho está mais preocupado.

Eu realmente não acho isso muito complicado; No entanto, não sou um administrador do sistema, por isso não tenho a certeza. Eu só sei que a instalação em minha própria máquina Ubuntu levou menos de 3 minutos, e exigiu nenhuma configuração extra para trabalhar com a nossa configuração existente do aplicativo Rails.

Eu gostaria de saber se ele não está instalando o Elasticsearch vale o tempo de desenvolvimento que vai levar para implementar a mesma funcionalidade do zero sem uma dependência de software no servidor, e eu acho que a resposta para a pergunta em negrito vai lançar alguma luz sobre isso.

    
por Chris Cirefice 09.06.2016 / 04:57

1 resposta

2

Parece que você pode adicionar o ElasticSearch como um repositório no Ubuntu e gerenciá-lo com apt , o que significa que ele será atualizado da mesma forma que todos os outros softwares no servidor Ubuntu.

As etapas são descritas aqui: link

  1. Adicione a chave de assinatura pública eleasticsearch
  2. Adicione o repo elasticsearch
  3. Atualizar apt
  4. Instale ou atualize o elasticsearch usando apt como você faria com qualquer outra coisa no Ubuntu.

Quando o elasticsearch estiver disponível em apt desta forma, as atualizações de segurança do elasticsearch deverão ser tratadas quando as atualizações de segurança forem aplicadas por meio de apt , como o normal. Eu não tenho experiência pessoal com o elasticsearch, mas não tenho certeza de quais problemas de manutenção haveria, uma vez que ele pode ser atualizado por apt .

Eu acho um pouco estranho que o documento elasticsearch não inclua um script bash, além das informações.

    
por 09.06.2016 / 05:11