Como instalar o OpenSearch no Debian 11
OpenSearch é um projeto conduzido pela comunidade da Amazon e um fork do Elasticsearch e Kibana. é um mecanismo de pesquisa e conjunto de análises totalmente de código aberto, com recursos avançados e funcionalidades inovadoras. O principal componente do projeto OpenSearch é o OpenSearch (um fork do Elasticsearch) e o OpenSearch Dashboards (um fork do Kibana). Ambos os componentes fornecem recursos como segurança empresarial, alertas, aprendizado de máquina, SQL, gerenciamento de estado de índice e muito mais.
OpenSearch é 100% de código aberto e licenciado sob licença Apache 2.0. Ele permite que você ingerir, proteger, pesquisar, agregar, visualizar e analisar dados com facilidade para vários casos de uso, como análise de log, pesquisa de aplicativos, pesquisa corporativa e muito mais.
Neste tutorial, você implantará o OpenSearch – um conjunto de pesquisa, análise e visualização de código aberto – no servidor Debian 11. Este processo inclui baixar o pacote OpenSearch e instalá-lo manualmente em seu sistema Debian. Você também configurará certificados SSL/TLS seguros para OpenSearch e protegerá a implantação com autenticação e autorização.
Além disso, você também implantará e instalará o OpenSearch Dashboards – uma ferramenta de visualização de código aberto – e o configurará com o OpenSearch. No final, você terá um conjunto de análise e visualização de dados instalado em seu servidor Debian e precisará enviar seus dados por meio de ferramentas como fluentd, Logstash, filebeat e muito mais.
Pré-requisitos
Para concluir este guia, você deve ter os seguintes requisitos:
- Um servidor com instalação Debian 11 e pelo menos 8 GB de RAM. Este exemplo usa um sistema Debian com nome de host 'node1' e endereço IP local '192.168.5.50'.
- Um usuário não root com privilégios de administrador sudo/root.
Se esses requisitos estiverem prontos, você pode iniciar a instalação do OpenSearch agora.
Sistema de configuração
Na primeira etapa, você configurará e otimizará seu servidor Debian para implantação do OpenSearch. Você configurará o nome do host e o fqdn do sistema, desativará a paginação e troca de memória e aumentará o número máximo de mapas de memória.
Desativar a paginação e troca de memória no host OpenSearch melhorará o desempenho. Para os mapas de memória máxima, você precisará configurar um número de pelo menos '262144' para produção.
Execute o comando ‘hostnamectl’ abaixo para configurar o nome do host do sistema. Em seguida, adicione a configuração do fqdn ao arquivo '/etc/hosts'. Neste exemplo, o nome do host deve ser 'node1' com fqdn 'node1.hwdomain.lan'.
sudo hostnamectl set-hostname node1
echo "192.168.5.50 node1.hwdomain.lan node1" >> /etc/hosts
Agora verifique o fqdn do seu servidor por meio do comando hostname abaixo. No exemplo, o fqdn do servidor deve ser 'node1.hwdomain.lan'.
hostname -f
Saída :
Em seguida, você precisará desabilitar o swap em seu sistema. Esteja você usando swap via partição ou arquivo, a configuração de swap é armazenada no arquivo '/etc/fstab'.
Execute o comando abaixo para desabilitar a troca em seu sistema. O comando 'sed' aqui desabilitará a troca permanentemente através do arquivo '/etc/fstab' adicionando o comando '#' ao início de configurações de troca de linha. O comando 'swapoff' desativará a troca na sessão atual.
sudo sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab
sudo swapoff -a
Verifique o status de troca por meio do comando abaixo. Se desativado, você deverá obter uma saída '0' na seção de troca.
free -m
Saída :
Por último, você adicionará a configuração ao arquivo '/etc/sysctl.conf' para aumentar os mapas máximos de memória em seu sistema.
Execute o comando abaixo para adicionar o parâmetro 'vm.max_map_count=262144' ao arquivo '/etc/sysctl.conf'. Em seguida, aplique as alterações por meio do comando 'sysctl -p'.
sudo echo "vm.max_map_count=262144" >> /etc/sysctl.conf
sudo sysctl -p
Verifique os mapas de memória máxima executando o comando abaixo. Se for bem-sucedido, seu mapa máximo de memória deverá ser '262144'.
cat /proc/sys/vm/max_map_count
Saída :
Com seu sistema configurado e otimizado, você está pronto para instalar o OpenSearch nele.
Baixando OpenSearch
O OpenSearch pode ser instalado de várias maneiras. Neste exemplo, você instalará o OpenSearch via Tarball. Nesta etapa, você criará um novo usuário de sistema dedicado 'opensearch', baixará o pacote tarball do OpenSearch e configurará o diretório de instalação do OpenSearch com as permissões e propriedade corretas.
Primeiro, adicione o novo usuário do sistema 'opensearch' usando o comando abaixo.
sudo adduser --system --shell /bin/bash -U 10001 --no-create-home opensearch
Adicione um novo grupo 'opensearch' usando o comando groupadd abaixo. Em seguida, adicione o usuário do sistema 'opensearch' ao grupo 'opensearch' por meio do comando usermod.
sudo groupadd opensearch
sudo usermod -aG opensearch opensearch
Agora crie um novo diretório inicial '/home/opensearch' e altere a propriedade do diretório inicial '/home/opensearch' para 'opensearch >'usuário.
mkdir -p /home/opensearch
sudo chown -R opensearch /home/opensearch
Saída :
A seguir, baixe o pacote OpenSource através do comando wget. Assim que o download terminar, extraia o arquivo através do comando tar abaixo. Neste exemplo, você instalará o OpenSearch 2.4.1. Verifique a versão mais recente do OpenSearch na página oficial de download.
wget https://artifacts.opensearch.org/releases/bundle/opensearch/2.4.1/opensearch-2.4.1-linux-x64.tar.gz
tar xf opensearch-2.4.1-linux-x64.tar.gz
Depois que o pacote OpenSearch for extraído, mova o diretório extraído para '/opt/opensearch'. Este será o diretório principal de instalação do OpenSearch. Em seguida, execute o comando chown para alterar a propriedade do diretório '/opt/opesearch' para o usuário 'opensearch'.
mv opensearch-2.4.1 /opt/opensearch
sudo chown -R opensearch /opt/opensearch
Saída :
Agora que você baixou o pacote OpenSearch, configure o diretório de instalação de destino para '/opt/opensearch'. A seguir, você instalará e configurará sua instalação do OpenSearch.
Configurando o OpenSearch
Nesta etapa, você configurará o OpenSearch para ser executado em um endereço IP específico, será executado em um único nó, ativará os plug-ins de segurança do OpenSearch e configurará a memória heap máxima para o processo do OpenSearch. Tudo isso pode ser feito editando o arquivo de configuração do OpenSearch '/opt/opensearch/config/opensearch.yml' e o arquivo de opções JVM do OpenSearch 'config/jvm.options' .
Mova o diretório de trabalho para '/opt/opensearch' através do comando cd.
cd /opt/opensearch
Abra o arquivo de configuração do OpenSearch 'config/opensearch.yml' usando o comando do editor nano abaixo.
sudo nano config/opensearch.yml
Adicione as seguintes linhas ao arquivo.
# Bind OpenSearch to interface or IP address
network.host: 192.168.5.50
# OpenSearch deployment type
discovery.type: single-node
# Re-enable security plugins
plugins.security.disabled: false
Salve e saia do arquivo 'config/opensearch.yml' quando terminar.
Parâmetros de detalhes:
- O parâmetro 'network.host' é usado para vincular o OpenSearch a um endereço IP específico. Neste exemplo, o OpenSearch estará sendo executado no endereço IP interno '192.168.5.50'.
- O parâmetro 'discovery.type: single-node' é usado quando você deseja implementar o OpenSearch em um único nó.
- O parâmetro 'plugins.security.disabled' está definido como 'false', o que significa que o plugin de segurança para OpenSearch estará habilitado.
Em seguida, abra o arquivo 'config/jvm.options' usando o comando do editor nano abaixo.
sudo nano config/jvm.options
Ajuste a memória heap máxima para o processo OpenSearch. Esta configuração depende da memória ou RAM disponível do seu servidor. Este exemplo alocará 2GB de memória para OpenSearch.
-Xms2g
-Xmx2g
Salve e saia do arquivo 'config/jvm.options' quando terminar.
Por último, execute o comando abaixo para configurar uma variável de ambiente 'OPENSEARCH_JAVA_HOME' em sua sessão atual. O pacote OpenSearch inclui os pacotes java e JDK necessários que estão disponíveis no diretório '/opt/opensearch/jdk'.
export OPENSEARCH_JAVA_HOME=/opt/opensearch/jdk
echo $OPENSEARCH_JAVA_HOME
Com as configurações básicas do OpenSearch concluídas. em seguida, você gerará certificados TLS e implantação segura do OpenSearch.
Gerando Certificados TLS
Nesta etapa, você gerará vários certificados que serão usados para proteger a implantação do OpenSearch. Você protegerá as comunicações nó a nó com certificados TLS e protegerá os tráfegos da camada REST entre comunicações cliente-servidor via TLS.
Abaixo está a lista de certificados que serão gerados:
- Certificados CA raiz: esses certificados serão usados para assinar outros certificados.
- Certificados de administrador: Esses certificados serão usados para obter direitos administrativos para executar todas as tarefas relacionadas ao plugin de segurança.
- Certificados de nó e cliente: esses certificados serão usados por nós e clientes dentro do cluster OpenSearch.
Antes de começar, execute o comando abaixo para criar um novo diretório '/opt/opensearch/config/certs' e mova seu diretório de trabalho para ele. Este diretório será usado para armazenar certificados TLS.
mkdir -p /opt/opensearch/config/certs; cd /opt/opensearch/config/certs
Gerando certificados de CA raiz
Gere uma chave privada para os certificados de CA raiz usando o seguinte.
openssl genrsa -out root-ca-key.pem 2048
Agora gere um certificado CA raiz autoassinado por meio do comando abaixo. Você também pode alterar os valores no parâmetro '-subj' com suas informações.
openssl req -new -x509 -sha256 -key root-ca-key.pem -subj "/C=CA/ST=ONTARIO/L=TORONTO/O=ORG/OU=UNIT/CN=ROOT" -out root-ca.pem -days 730
Com isso, você deve obter a chave privada da CA raiz 'root-ca-key.pem' e o certificado da CA raiz 'root-ca.pem'.
Saída :
Gerando certificados de administrador
Gere a nova chave privada do certificado de administrador 'admin-key-temp.pem' usando o comando abaixo.
openssl genrsa -out admin-key-temp.pem 2048
Converta a chave privada do administrador padrão para o formato PKCS#8. Para o aplicativo Java, você precisa converter a chave privada padrão para o algoritmo compatível com PKCS#12 (3DES). Com isso, sua chave privada de administrador deve ser 'admin-key.pem'.
openssl pkcs8 -inform PEM -outform PEM -in admin-key-temp.pem -topk8 -nocrypt -v1 PBE-SHA1-3DES -out admin-key.pem
Em seguida, execute o comando abaixo para gerar o CSR (solicitação de assinatura de certificado) de administrador a partir da chave privada 'admin-key.pem'. Seu CSR gerado agora deve ser o arquivo 'admin.csr'.
Como esse certificado é usado para autenticar acesso elevado e não está vinculado a nenhum host, você pode usar qualquer coisa na configuração 'CN'.
openssl req -new -key admin-key.pem -subj "/C=CA/ST=ONTARIO/L=TORONTO/O=ORG/OU=UNIT/CN=A" -out admin.csr
Por último, execute o comando abaixo para assinar o CSR do administrador com o certificado CA raiz e a chave privada. A saída do certificado administrativo é o arquivo 'admin.pem'.
openssl x509 -req -in admin.csr -CA root-ca.pem -CAkey root-ca-key.pem -CAcreateserial -sha256 -out admin.pem -days 730
Seu certificado de administrador agora deve ser um arquivo 'admin.pem' assinado com certificados de CA raiz. E a chave privada do administrador é 'admin-key.pem', que é convertida para o formato PKCS#8.
Saída :
Gerando Certificados de Nó
O processo de geração de certificados de nó é semelhante aos certificados de administrador. Porém, você pode especificar o valor CN com o nome do host ou endereço IP do seu nó.
Gere a chave privada do nó usando o comando abaixo.
openssl genrsa -out node1-key-temp.pem 2048
Converta a chave privada do nó para o formato PKCS#8. A chave privada do seu nó agora deve ser 'node1-key.pem'.
openssl pkcs8 -inform PEM -outform PEM -in node1-key-temp.pem -topk8 -nocrypt -v1 PBE-SHA1-3DES -out node1-key.pem
Em seguida, crie um novo CSR para o certificado do nó. Certifique-se de alterar o valor 'CN' com o nome do host do seu nó. Este certificado está vinculado a hosts e você deve especificar o valor CN com o nome do host ou endereço IP do seu nó OpenSearch.
openssl req -new -key node1-key.pem -subj "/C=CA/ST=ONTARIO/L=TORONTO/O=ORG/OU=UNIT/CN=node1.hwdomain.lan" -out node1.csr
Antes de assinar o certificado do nó, execute o comando abaixo para criar um arquivo de extensão SAN 'node1.ext'. Ele conterá o nome do host do nó ou FQDN ou endereço IP
echo 'subjectAltName=DNS:node1.hwdomain.lan' > node1.ext
Por último, assine o arquivo CSR do certificado de nó com certificado CA raiz e privado usando o comando abaixo.
openssl x509 -req -in node1.csr -CA root-ca.pem -CAkey root-ca-key.pem -CAcreateserial -sha256 -out node1.pem -days 730 -extfile node1.ext
Com isso, seu certificado de nó é um arquivo 'node1.pem' e a chave privada é 'node1-key.pem'.
Saída :
Configurando Certificados
Execute o comando abaixo para remover o certificado temporário, CSR e arquivo de extensão SAN.
rm *temp.pem *csr *ext
ls
Converta o certificado CA raiz para o formato .crt.
openssl x509 -outform der -in root-ca.pem -out root-ca.crt
Adicione o certificado CA raiz ao seu sistema Debian usando o comando abaixo. Copie o arquivo root-ca.crt para o diretório '/usr/local/share/ca-certificates/' e carregue o novo certificado CA raiz em seu sistema.
sudo cp root-ca.crt /usr/local/share/ca-certificates/
sudo update-ca-certificates
A saída '1 adicionado' confirma que os novos certificados de CA raiz foram adicionados ao seu sistema.
Por último, execute o comando abaixo para configurar a permissão e propriedade adequadas de seus certificados. A propriedade do diretório '/opt/opensearch/config/certs' deve ser do usuário 'opensearch' com permissão 0700. E para todos os arquivos de certificado, a permissão deve ser 0600.
sudo chown -R opensearch /opt/opensearch/config/certs
sudo chmod 0700 /opt/opensearch/config/certs
sudo chmod 0600 /opt/opensearch/config/certs/*.pem
sudo chmod 0600 /opt/opensearch/config/certs/*.crt
Adicionando certificados TLS ao OpenSearch
Com os certificados TLS gerados, a CA raiz, os certificados de administrador e os certificados de nó são. Em seguida, você adicionará certificados ao arquivo de configuração do OpenSearch '/opt/opensearch/config/opensearch.yml'. Neste exemplo, você criará um novo script bash que adicionará certificados e configurações de plug-in de segurança TLS ao OpenSearch.
Crie um novo arquivo 'add.sh' usando o comando do editor nano abaixo.
nano add.sh
Adicione as seguintes linhas ao arquivo. Certifique-se de alterar e usar o caminho correto dos arquivos de certificado e do arquivo de configuração de destino do OpenSearch.
#! /bin/bash
# Before running this script, make sure to replace the /path/to your OpenSearch directory,
# and remember to replace the CN in the node's distinguished name with a real
# DNS A record.
echo "plugins.security.ssl.transport.pemcert_filepath: /opt/opensearch/config/certs/node1.pem" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.ssl.transport.pemkey_filepath: /opt/opensearch/config/certs/node1-key.pem" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.ssl.transport.pemtrustedcas_filepath: /opt/opensearch/config/certs/root-ca.pem" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.ssl.http.enabled: true" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.ssl.http.pemcert_filepath: /opt/opensearch/config/certs/node1.pem" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.ssl.http.pemkey_filepath: /opt/opensearch/config/certs/node1-key.pem" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.ssl.http.pemtrustedcas_filepath: /opt/opensearch/config/certs/root-ca.pem" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.allow_default_init_securityindex: true" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.authcz.admin_dn:" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo " - 'CN=A,OU=UNIT,O=ORG,L=TORONTO,ST=ONTARIO,C=CA'" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.nodes_dn:" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo " - 'CN=node1.dns.a-record,OU=UNIT,O=ORG,L=TORONTO,ST=ONTARIO,C=CA'" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.audit.type: internal_opensearch" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.enable_snapshot_restore_privilege: true" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.check_snapshot_restore_write_privileges: true" | sudo tee -a /opt/opensearch/config/opensearch.yml
echo "plugins.security.restapi.roles_enabled: [\"all_access\", \"security_rest_api_access\"]" | sudo tee -a /opt/opensearch/config/opensearch.yml
Salve e saia do arquivo quando terminar.
Em seguida, torne o arquivo 'add.sh' executável e execute-o. O novo plugin de segurança TLS para OpenSearch deve ser adicionado ao arquivo de configuração do OpenSearch '/opt/opensearch/config/opensearch.yml'.
chmod +x add.sh
./add.sh
Saída :
Se você verificar o arquivo de configuração do OpenSearch '/opt/opensearch/config/opensearch.yml', deverá ver as novas configurações como esta na parte inferior do arquivo de configuração.
Neste ponto, você adicionou certificados TLS ao OpenSearch e ativou os plug-ins de segurança. Na próxima etapa, você protegerá o OpenSearch com autenticação e autorização criando um novo usuário no OpenSearch.
Criando usuário no OpenSearch
Antes de começar, execute o comando abaixo para configurar a variável de ambiente para 'OPENSEARCH_JAVA_HOME' e tornar as ferramentas de segurança do OpenSearch executáveis.
export OPENSEARCH_JAVA_HOME=/opt/opensearch/jdk
chmod 755 /opt/opensearch/plugins/opensearch-security/tools/*.sh
Mova seu diretório de trabalho para '/opt/opensearch/plugins/opensearch-security/tools' e execute o script 'hash.sh' para gerar uma senha com hash para o OpenSearch.
cd /opt/opensearch/plugins/opensearch-security/tools
./hash.sh
Insira sua senha e copie a senha hash gerada.
Saída :
Agora execute novamente o script 'hash.sh' para gerar outra senha hash que será usada para OpenSearch Dashboards. Insira a nova senha e copie a senha hash gerada.
./hash.sh
Após gerar o hash da senha, você configurará um usuário OpenSearch por meio do arquivo de configuração 'internal_users.yml'.
Mova seu diretório de trabalho para '/opt/opensearch/config/opensearch-security/' e abra o arquivo 'internal_users.yml' usando o comando do editor nano abaixo.
cd /opt/opensearch/config/opensearch-security/
sudo nano internal_users.yml
Remova as configurações de usuário padrão e substitua-as pelas linhas a seguir. Certifique-se de alterar a senha hash com a senha gerada. Com isso, você criará dois usuários OpenSearch, o usuário 'admin' e o usuário 'kibanaserver' que serão usados pelos OpenSearch Dashboards.
...
...
admin:
hash: "$2y$12$ChrsBPaDAJsuel.HXFi2Ie2Jn1MpdzXA4Nd1jeyXf65N97RDJc3Ky"
reserved: true
backend_roles:
- "admin"
description: "Admin user"
kibanaserver:
hash: "$2y$12$wIeuRDp5txoJ3d6.lyybJOPwoRaizuuBvlKKzAGdAiu.I/qaX8hXu"
reserved: true
description: "Demo OpenSearch Dashboards user"
Salve e saia do arquivo 'internal_users.yml' quando terminar.
Em seguida, execute o comando abaixo para garantir a propriedade do diretório de instalação do OpenSearch ao usuário 'opensearch'. Em seguida, faça login como usuário 'opensearch'.
sudo chown -R opensearch /opt/opensearch
su - opensearch
Vá para o diretório '/opt/opensearch/bin' e execute a instalação do OpenSearch. O OpenSearch agora deve estar em execução no endereço IP local '192.168.5.50' com a porta padrão '9200'.
cd /opt/opensearch/bin
./opensearch
Você deve receber uma saída semelhante a esta:
Agora abra um novo terminal, conecte-se ao seu servidor OpenSearch e faça login como usuário ‘opensearch’.
su - opensearch
Mova o diretório de trabalho para '/opt/opensearch/plugins/opensearch-security/tools' e execute o script 'securityadmin.sh' conforme abaixo. Certifique-se de alterar o endereço IP do host OpenSearch e o caminho dos certificados de administrador.
Isso se conectará ao servidor OpenSearch e aplicará novas alterações nos usuários do OpenSearch que você configurou no arquivo 'internal_users.yml'.
cd /opt/opensearch/plugins/opensearch-security/tools
OPENSEARCH_JAVA_HOME=/opt/opensearch/jdk ./securityadmin.sh -h 192.168.5.50 -p 9200 -cd /opt/opensearch/config/opensearch-security/ -cacert /opt/opensearch/config/certs/root-ca.pem -cert /opt/opensearch/config/certs/admin.pem -key /opt/opensearch/config/certs/admin-key.pem -icl -nhnv
Saída :
Agora volte para o primeiro terminal e encerre o servidor OpenSearch pressionando o botão 'Ctrl+c'. Em seguida, execute novamente o servidor OpenSearch.
./opensearch
Neste ponto, o servidor OpenSearch está em execução com um novo usuário configurado.
Volte para a segunda sessão de terminal e execute o comando abaixo para verificar seu servidor OpenSearch. Com isso, você se autenticará como usuário do OpenSearch 'admin' e 'kibanaserver'. Além disso, certifique-se de alterar a senha de cada usuário.
curl https://192.168.5.50:9200 -u admin:password -k
curl https://192.168.5.50:9200 -u kibanaserver:kibanapass -k
Quando a autenticação for bem-sucedida, você deverá ver os detalhes do seu servidor OpenSearch.
Saída - autenticado como usuário 'admin'
Saída - autenticado como um usuário 'kibanaserver'.
Com isso, você configurou com êxito a autenticação e autorização no servidor OpenSearch. Agora volte para a primeira sessão do terminal e pressione Ctrl+c no terminal para o processo OpenSearch.
Na próxima etapa, você configurará um arquivo de serviço systemd que será usado para executar o servidor OpenSearch.
Executando OpenSearch como um serviço Systemd
Para este tutorial, você executará o servidor OpenSearch no backgorund como um serviço systemd. Para conseguir isso, você deve criar um novo arquivo de serviço systemd, recarregar o gerenciador systemd e, em seguida, executar e ativar o OpenSearch por meio do utilitário de comando systemctl.
Crie um novo arquivo de serviço systemd '/etc/systemd/system/opensearch.service' usando o comando do editor nano abaixo.
sudo nano /etc/systemd/system/opensearch.service
Adicione as seguintes linhas ao arquivo.
[Unit]
Description=OpenSearch
Wants=network-online.target
After=network-online.target
[Service]
Type=forking
RuntimeDirectory=data
WorkingDirectory=/opt/opensearch
ExecStart=/opt/opensearch/bin/opensearch -d
User=opensearch
Group=opensearch
StandardOutput=journal
StandardError=inherit
LimitNOFILE=65535
LimitNPROC=4096
LimitAS=infinity
LimitFSIZE=infinity
TimeoutStopSec=0
KillSignal=SIGTERM
KillMode=process
SendSIGKILL=no
SuccessExitStatus=143
TimeoutStartSec=75
[Install]
WantedBy=multi-user.target
Salve e feche o arquivo quando terminar.
Em seguida, execute o comando systemctl abaixo para recarregar o gerenciador systemd e aplicar as alterações.
sudo systemctl daemon-reload
Em seguida, inicie e habilite o serviço OpenSearch usando o comando systemctl abaixo. Com isso, o serviço OpenSearch agora deve estar rodando em segundo plano como um serviço systemd e deve estar habilitado, o que significa que o OpenSearch será iniciado automaticamente na inicialização do sistema.
sudo systemctl start opensearch
sudo systemctl enable opensearch
Saída :
Agora verifique o serviço OpenSearch para garantir que ele esteja em execução. Você deverá ver uma saída informando que o serviço OpenSearch está em execução e agora está habilitado.
sudo systemctl status opensearch
Saída :
Você também pode verificar o servidor OpenSearch pelo comando curl para autenticar no OpenSearch.
curl https://192.168.5.50:9200 -u admin:password -k
curl https://192.168.5.50:9200 -u kibanaserver:kibanapass -k
Se o OpenSearch estiver em execução, você deverá estar autenticado e obter informações detalhadas sobre a instalação do OpenSearch.
Para usuário administrador do OpenSearch.
Para usuário kibanaserver.
Você também pode verificar a lista de portas abertas no seu sistema através do comando ss abaixo. Você deverá ver que as portas 9200 e 9300 são abertas pelo aplicativo Java, que é o servidor OpenSearch.
ss -tulpn
Saída :
Com isso, você concluiu a instalação do OpenSearch. E agora, ele está sendo executado no endereço IP local 192.168.5.50 com a porta padrão 9200. Ele está sendo executado em segundo plano como um serviço systemd e será iniciado automaticamente na inicialização do sistema.
Instalando painéis OpenSearch
Nesta etapa, você baixará o pacote OpenSearch Dashboards e o instalará manualmente via Tarball. Você também configurará como o OpenSearch Dashboard deve ser executado e como se conectar ao servidor OpenSearch por meio de nome de usuário e senha.
Baixe o pacote OpenSearch Dashboards por meio do seguinte comando wget.
wget https://artifacts.opensearch.org/releases/bundle/opensearch-dashboards/2.4.1/opensearch-dashboards-2.4.1-linux-x64.tar.gz
Assim que o download for concluído, extraia o pacote OpenSearch Dashboards por meio do comando tar abaixo. Você deverá obter um novo diretório 'opensearch-dashboards-2.4.1'.
tar xf opensearch-dashboards-2.4.1-linux-x64.tar.gz
Mova o diretório do OpenSearch Dashboard para '/opt/opensearch-dashboards'. Em seguida, altere a propriedade desse diretório para o usuário ‘opensearch’.
mv opensearch-dashboards-* /opt/opensearch-dashboards
sudo chown -R opensearch /opt/opensearch-dashboards
Em seguida, mova seu diretório de trabalho para '/opt/opensearch-dashboards' e abra o arquivo de configuração do OpenSearch Dashboards 'config/opensearch_dashboards.yml' usando o comando do editor nano abaixo.
cd /opt/opensearch-dashboards
sudo nano config/opensearch_dashboards.yml
Remova o comentário das linhas a seguir e substitua o valor de cada parâmetro pelas suas configurações. Neste exemplo, você executará os OpenSearch Dashboards na porta padrão '5601' e no endereço IP do servidor '192.168.5.50'.
# OpenSearch Dashboards is served by a back end server. This setting specifies the port to use.
server.port: 5601
# Specifies the address to which the OpenSearch Dashboards server will bind. IP addresses and host names are both valid values.
# The default is 'localhost', which usually means remote machines will not be able to connect.
# To allow connections from remote users, set this parameter to a non-loopback address.
server.host: "192.168.5.50"
Em seguida, adicione as seguintes linhas ao final da linha. Certifique-se de alterar os parâmetros 'opensearch.hosts', 'opensearch.username' e 'opensearch.password' com seu servidor OpenSearch detalhes.
opensearch.hosts: [https://192.168.5.50:9200]
opensearch.ssl.verificationMode: none
opensearch.username: kibanaserver
opensearch.password: kibanapass
Salve e saia do arquivo 'config/opensearch_dashboards.yml' quando terminar.
Agora você baixou o OpenSearch Dashboard e o configurou para se conectar ao servidor OpenSearch. A seguir, você configurará um arquivo de serviço systemd que será usado para executar os painéis OpenSearch.
Executando painéis OpenSearch como serviço Systemd
Nesta etapa, você criará um novo serviço systemd que será usado para executar os painéis OpenSearch.
Crie um novo arquivo de serviço systemd '/etc/systemd/system/opensearch-dashboards.service' usando o comando do editor nano abaixo.
sudo nano /etc/systemd/system/opensearch-dashboards.service
Adicione as seguintes linhas ao arquivo.
[Unit]
Description=OpenSearch-Dashboards
Wants=network-online.target
After=network-online.target opensearch.service
[Service]
Type=simple
User=opensearch
Environment=NODE_ENV=production
Environment=CONFIG_PATH=/opt/opensearch-dashboards/config/opensearch_dashboards.yml
WorkingDirectory=/opt/opensearch-dashboards
ExecStart=/opt/opensearch-dashboards/bin/opensearch-dashboards
StandardOutput=journal
StandardError=inherit
Restart=on-failure
[Install]
WantedBy=multi-user.target
Salve e saia do arquivo quando terminar.
Em seguida, execute o comando systemctl abaixo para recarregar o gerenciador systemd e aplicar as novas alterações.
sudo systemctl daemon-reload
Em seguida, inicie e habilite o serviço OpenSearch Dashboards usando o comando systemctl abaixo. Com isso, o serviço OpenSearch Dashboards deverá estar em execução e habilitado, o que significa que o serviço OpenSearch Dashboard será iniciado automaticamente na inicialização do sistema.
sudo systemctl start opensearch-dashboards
sudo systemctl enable opensearch-dashboards
Verifique o serviço OpenSearch Dashboards usando o comando abaixo.
sudo systemctl status opensearch-dashboards
A saída 'ativo (em execução)' confirma que o serviço OpenSearch Dashboards está em execução. E a saída '...; enabled;...' confirma que o serviço está habilitado.
Com isso, o OpenSearch Dashboards agora está sendo executado em seu servidor Debian com o arquivo de configuração padrão '/opt/opensearch-dashboards/config/opensearch_dashboards.yml'. Está sendo executado na porta padrão 5601 com endereço IP do servidor 192.168.5.50
Acessando painéis do OpenSearch
Abra seu navegador da web e visite o endereço IP do OpenSearch Dashboards com porta 5601 (ou seja: http:192.168.5.50:5601). Agora você verá a página de login do OpenSearch Dashboards.
Insira seu nome de usuário e senha que você criou. Neste exemplo, o usuário é 'kibanaserver'. Em seguida, clique no botão 'Fazer login' para confirmar e fazer login no OpenSearch Dashboards.
Quando for bem-sucedido, você deverá receber a seguinte página com a mensagem 'Bem-vindo ao OpenSearch Dashboards'. Agora você pode clicar em 'Adicionar dados' para adicionar novos dados ao seu servidor OpenSearch ou clicar em 'Explorar meus próprios' para uma configuração posterior.
Em seguida, para garantir que o OpenSearch Dashboards esteja conectado ao servidor OpenSearch, você executará as seguintes etapas:
Clique no menu esquerdo, vá para a seção Gerenciamento e clique em 'Ferramentas de Desenvolvimento'.
Agora insira a consulta 'GET /' no console e clique no botão play. Quando for bem-sucedido, você deverá ver a saída no lado direito com informações detalhadas sobre o seu servidor OpenSearch. Além disso, você pode ver no canto superior direito o código HTTP '200 - OK' que confirma que a consulta foi executada sem erros.
Com isso em mente, você concluiu a instalação do OpenSearch Dashboards no servidor Debian via Tarball. E também configurou o OpenSearch Dashboard para se conectar ao servidor OpenSearch.
Conclusão
Neste tutorial, você instalou o OpenSearch via Tarball no servidor Debian 11. Você também protegeu o OpenSearch com certificados TLS, habilitou autenticação e autorização e configurou usuários no OpenSearch. Além disso, você configurou o OpenSearch para ser executado como um serviço systemd e otimizou um servidor Debian Linux para implantar o OpenSearch.
Você também instalou os OpenSearch Dashboards via Tarball no servidor Debian. Você configurou o OpenSearch Dashboards para ser executado como um serviço systemd, conectou o OpenSearch Dashboards ao OpenSearch Server com autenticação habilitada e verificou com êxito a instalação do OpenSearch e do OpenSearch Dashboards.
Com esta configuração, agora você pode explorar mais sobre o OpenSearch implantando o OpenSearch Cluster, configurando autenticação adicional e muito mais. Você aprende mais sobre o OpenSearch na documentação oficial do OpenSearch.