Instalação do OTOBO¶
Este capítulo descreve a instalação e a configuração básica da estrutura central do OTOBO.
Siga as etapas detalhadas neste capítulo para instalar o OTOBO no seu servidor. Você pode usar sua interface da web para efetuar login e administrar o sistema.
Nota
A partir do OTOBO versão 10.0.7, recomendamos Docker e Docker Compose para a instalação do OTOBO. Usando nossa imagem Docker-Compose, todas as dependências recomendadas (como Elasticsearch, Redis Cache, etc.) são instaladas e configuradas automaticamente. As atualizações são, portanto, bastante simplificadas e o desempenho foi aumentado. Você pode encontrar as instruções de instalação em https://doc.otobo.org/manual/installation/stable/en/content/installation-docker.html.
Preparação: Desative SELinux quando estiver instalado e ativado¶
Nota
Se seu sistema usa o SELinux, você deve desativa-lo, caso contrário o OTOBO não funcionará corretamente.
Tente os comandos``sestatus`` e getenforce` quando você não tiver certeza se o SELinux está instalado e ativado no seu sistema.
O comando sestatus
retorna o estado do SELinux e a política do SELinux que está sendo usada. Estado do SELinux: enabled é retornado quando o SELinux está ativado. Modo atual: enforcing é retornada quando o SELinux está sendo executado no modo enforcing. Política do arquivo de configuração: target é retornada quando a política de destino do SELinux é usada.
Veja como desativar o SELinux para RHEL/CentOS/Fedora.
Configurar
SELINUX=disabled
no arquivo/etc/selinux/config
:# This file controls the state of SELinux on the system. # SELINUX= can take one of these three values: # enforcing - SELinux security policy is enforced. # permissive - SELinux prints warnings instead of enforcing. # disabled - No SELinux policy is loaded. SELINUX=disabled # SELINUXTYPE= can take one of these two values: # targeted - Targeted processes are protected, # mls - Multi Level Security protection. SELINUXTYPE=targeted
Reinicie seu sistema. Após reiniciar, confirme que o comando``getenforce`` retorne Disabled:
root> getenforce Disabled
Passo 1: Desempacotar e Instalar o OTOBO¶
Baixe a última versão do otobo em https://ftp.otobo.org/pub/otobo/. Descompacte o arquivo fonte (por exemplo, usando``tar``) dentro do diretório /opt/otobo-install
:
root> mkdir /opt/otobo-install # Create a temporary install directory
root> cd /opt/otobo-install # Change into the update directory
root> wget https://ftp.otobo.org/pub/otobo/otobo-latest-10.0.tar.gz # Download he latest OTOBO 10 release
root> tar -xzf otobo-latest-10.0.tar.gz # Unzip OTOBO
root> cp -r otobo-10.x.x /opt/otobo # Copy the new otobo directory to /opt/otobo
Passo 2: Instale Programas Adicionais e Módulos Perl¶
Use o seguinte script para obter uma visão geral de todos os módulos CPAN instalados e requeridos e outros dependências externas.
root> perl /opt/otobo/bin/otobo.CheckModules.pl -list
Checking for Perl Modules:
o Archive::Tar.....................ok (v1.90)
o Archive::Zip.....................ok (v1.37)
o Crypt::Eksblowfish::Bcrypt.......ok (v0.009)
...
Nota
Observe que o OTOBO requer uma instalação funcionando do Perl com todos os módulos core, como o módulo version
. Esses módulos não são explicitamente verificados pelo script. Pode ser necessário instalar um pacote perl-core
em alguns sistemas como o RHEL que não instalam os pacotes principais do Perl por padrão.
Para instalar os pacotes obrigatórios e opcionais, você pode usar o CPAN ou o gerenciador de pacotes da sua distribuição Linux.
Execute este comando para obter um comando de instalação para instalar as dependências ausentes:
root> /opt/otobo/bin/otobo.CheckModules.pl -inst
Nota
Existem vários módulos opcionais ou alternativos que podem ser instalados, principalmente para versões mais personalizadas do OTOBO. Chamar CheckModules.pl sem nenhum argumento listará sua funcionalidade completa.
Passo 3: Crie o usuário OTOBO¶
Crie um usuário dedicado para OTOBO dentro de seu próprio grupo:
root> useradd -r -U -d /opt/otobo -c 'OTOBO user' otobo -s /bin/bash
Adicione o usuário no grupo do seu servidor web (se o seu servidor web não estiver rodando com o usuário otobo):
root> usermod -G www-data otobo
(SUSE=www, Red Hat/CentOS/Fedora=apache, Debian/Ubuntu=www-data)
Passo 4: Ative o arquivo de configuração padrão¶
Há um arquivo de configuração OTOBO incluído no $OTOBO_HOME/Kernel/Config.pm.dist
. Você deve ativa-lo copiando o arquivo sem a extensão do arquivo .dist
.
root> cp /opt/otobo/Kernel/Config.pm.dist /opt/otobo/Kernel/Config.pm
Passo 5: Configure seu servidor Web Apache¶
Em primeiro lugar, você deve instalar o servidor Web Apache2 e o mod_perl; você normalmente faz isso no gerenciador de pacotes do seu sistema. Abaixo, você encontrará os comandos necessários para configurar o Apache nas distribuições Linux mais populares.
# RHEL / CentOS:
root> yum install httpd mod_perl
# SuSE:
root> zypper install apache2-mod_perl
# Debian/Ubuntu:
root> apt-get install apache2 libapache2-mod-perl2
A critical setting of the Apache web server is the choice of the multi-processing module. For running OTOBO, the recommended choice is the module mpm_prefork. Like other Apache modules the multi-processing module can be managed with the tools a2dismod and a2enmod.
root> # check which MPM is active
root> apache2ctl -M | grep mpm_
Tudo está bem quando mpm_prefork já foi habilitado.
Desative mpm_event quando estiver ativo no momento.
root> a2dismod mpm_event
Desative mpm_worker caso o MPM esteja ativo.
root> a2dismod mpm_worker
Finalmente ative mpm_prefork.
root> a2enmod mpm_prefork
O OTOBO requer que mais alguns módulos Apache estejam ativos para uma operação ideal. Novamente, na maioria das plataformas, você pode ter certeza de que estão ativas por meio da ferramenta a2enmod.
root> a2enmod perl
root> a2enmod deflate
root> a2enmod filter
root> a2enmod headers
Nota
Em algumas plataformas, nem todos os módulos Apache existem e um erro será exibido durante a instalação. Não se preocupe e termine a instalação, na maioria dos casos o módulo não será necessário.
A maioria das instalações do Apache tem um diretório conf.d
incluído. Em sistemas Linux, você geralmente pode encontrar este diretório em /etc/apache
ou``/etc/apache2``.
Configurar Apache sem suporte SSL¶
Copie o arquivo de modelo /opt/otobo/scripts/apache2-httpd.include.conf
para o diretório sites-available
do apache. Na maioria dos casos, nenhuma edição adicional do modelo é necessária. Em seguida, ative a nova configuração.
# Debian/Ubuntu:
root> cp /opt/otobo/scripts/apache2-httpd.include.conf /etc/apache2/sites-available/zzz_otobo.conf
root> a2ensite zzz_otobo.conf
root> systemctl restart apache2
Configure o Apache com suporte SSL¶
Copie os arquivos de modelo /opt/otobo/scripts/apache2-httpd-vhost-80.include.conf
e /opt/otobo/scripts/apache2-httpd-vhost-443.include.conf
para o diretório sites-availible
.
# Debian/Ubuntu:
root> cp /opt/otobo/scripts/apache2-httpd-vhost-80.include.conf /etc/apache2/sites-available/zzz_otobo-80.conf
root> cp /opt/otobo/scripts/apache2-httpd-vhost-443.include.conf /etc/apache2/sites-available/zzz_otobo-443.conf
Edite os arquivos e adicione as informações necessárias, como o caminho de armazenamento do certificado SSL. Depois disso, ative a configuração do OTOBO Apache:
root> a2ensite zzz_otobo-80.conf
root> a2ensite zzz_otobo-443.conf
Agora você pode reiniciar o servidor da web para carregar as novas definições de configuração. Na maioria dos sistemas, você pode usar o seguinte comando para fazer isso:
root> systemctl restart apache2
Passo 6: Configurando Permissões de Arquivos¶
Por favor, execute o seguinte comando para definir as permissões de arquivo e diretório para o OTOBO. Ele tentará detectar as configurações corretas de usuário e grupo necessárias para sua configuração.
root> /opt/otobo/bin/otobo.SetPermissions.pl
Passo 7: Configurando o Banco de Dados¶
Primeiro de tudo, você deve instalar o pacote de banco de dados. É recomendável usar o pacote MySQL ou MariaDB, que será entregue com o sistema Linux, mas é possível usar o PostgreSQL ou Oracle também.
Você normalmente faria isso no gerenciador de pacotes do sistema. Abaixo, você encontrará os comandos necessários para configurar o MySQL nas distribuições Linux mais populares.
# RHEL / CentOS:
root> yum install mysql-server
# SuSE:
root> zypper install mysql-community-server
# Debian/Ubuntu:
root> apt-get install mysql-server
Depois de instalar o servidor MySQL, você precisa configurá-lo.
Na versão 5.7 ou superior do MySQL, um novo módulo de autenticação está ativo e não é possível usar o instalador da web OTOBO para criação de banco de dados. Por favor, faça login no console do mysql e defina um módulo de autenticação e senha diferentes para o usuário root
, se este for o caso:
root> mysql -u root
root> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'NewRootPassword';
Para MariaDB > 10.1, use o seguinte comando:
root> mysql -u root
root> update mysql.user set authentication_string=password('NewRootPassword') plugin='mysql_native_password' where user='root';
Se este comando não funcionar, tente os seguintes comandos:
root> mysql -u root
root> UPDATE mysql.user SET password = PASSWORD('NewRootPassword') WHERE user = 'root';
root> UPDATE mysql.user SET authentication_string = '' WHERE user = 'root';
root> UPDATE mysql.user SET plugin = 'mysql_native_password' WHERE user = 'root';
Após a instalação do OTOBO, é possível alterar o módulo de autenticação novamente, se necessário.
Nota
As seguintes definições de configuração são requisitos mínimos para as configurações do MySQL. Por favor, adicione as seguintes linhas ao arquivo de configuração do MySQL Server /etc/my.cnf
,``/etc/mysql/my.cnf`` ou /etc/mysql/mysql.conf.d/mysqld.cnf
abaixo da seção [mysqld]
:
max_allowed_packet = 64M
innodb_log_file_size = 256M
Para o MySQL anterior ao MySQL 8.0, o tamanho do cache da consulta também deve ser definido:
query_cache_size = 32M
Além disso, adicione as seguintes linhas ao arquivo de configuração do servidor MySQL /etc/my.cnf
, /etc/mysql/my.cnf
ou /etc/mysql/mysql.conf.d/mysqldump.cnf
debaixo da seção [mysqldump]
:
max_allowed_packet = 64M
Para fins de produção, recomendamos usar a ferramenta mysqltuner
para encontrar a configuração perfeita. Você pode fazer o download do script no github https://github.com/major/MySQLTuner-perl
ou instalá-lo nos sistemas Debian ou Ubuntu através do gerenciador de pacotes:
root> apt-get install mysqltuner
Após a instalação execute o script:
root> mysqltuner --user root --pass NewRootPassword
Passo 8: Configurar Elasticsearch¶
A OTOBO recomenda uma instalação ativa do Elasticsearch para pesquisa rápida. A maneira mais fácil é configurar o Elasticsearch no mesmo host que o OTOBO e vinculá-lo à sua porta padrão.
Exemplo de instalação do Elasticsearch baseado no Ubuntu 18.04 LTS¶
Instalação do JDK
root> apt update
root> apt install openjdk-8-jdk
Instalação do ElasticSearch
root> wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
root> echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | sudo tee /etc/apt/sources.list.d/elastic-7.x.list
root> apt update
root> apt -y install elasticsearch
Instalação do ElasticSearch em outra distribuição Linux¶
Siga o tutorial de instalação encontrado em https://www.elastic.co/guide/en/elasticsearch/reference/current/setup.html.
Instalação do Módulo do ElasticSearch¶
Além disso, o OTOBO exige a instalação de plug-ins no Elasticsearch:
root> /usr/share/elasticsearch/bin/elasticsearch-plugin install --batch ingest-attachment
root> /usr/share/elasticsearch/bin/elasticsearch-plugin install --batch analysis-icu
Configuração do Elasticsearch¶
O Elasticsearch possui diversas opções e possibilidades de configuração.
Para garantir uma operação livre de erros, você deve ajustar o espaço de heap da jvm para sistemas OTOBO maiores. Por favor, ajuste as configurações no arquivo /etc/elasticsearch/jvm.options
. Você sempre deve definir o tamanho mínimo e máximo do heap da JVM para o mesmo valor. Por exemplo, para definir o heap como 4 GB, defina:
-Xms4g
-Xmx4g
Em nossos testes, um valor entre 4 e 10 GB para instalações de tamanho médio provou ser o melhor.
Nota
Veja https://www.elastic.co/guide/en/elasticsearch/reference/current/heap-size.html
para mais informações.
Agora você pode reiniciar o servidor da web para carregar as novas definições de configuração. Na maioria dos sistemas, você pode usar o seguinte comando para fazer isso:
root> systemctl restart elasticsearch
Passo 8: Configurações de Sistema básicas¶
Por favor, use o instalador da web em http://localhost/otobo/installer.pl (substitua “localhost” pelo seu nome de host OTOBO) para configurar seu banco de dados e configurações básicas do sistema, como contas de email.
Passo 9: Primeiro Login¶
Agora você esta pronta para logar no seu sistema em http://localhost/otobo/index.pl com o usuário root@localhost
com a senha que foi gerada (veja acima).
Passo 10: Inicie o Daemon do OTOBO¶
O daemon OTOBO é responsável por manipular qualquer tarefa assíncrona e recorrente no OTOBO. O que havia sido definido anteriormente nos arquivos cron agora é tratado pelo daemon OTOBO, necessário para operar o OTOBO. O daemon também manipula todas as tarefas GenericAgent e deve ser iniciado a partir do usuário OTOBO.
otobo> /opt/otobo/bin/otobo.Daemon.pl start
Passo 11: Tarefas Cron para o usuário OTOBO¶
Existem dois arquivos cron OTOBO padrão em /opt/otobo/var/cron/*.dist, e seu objetivo é garantir que o Daemon OTOBO esteja em execução. Eles precisam ser ativados, copiando-os sem a extensão de arquivo “.dist”.
root> cd /opt/otobo/var/cron/
root> for foo in *.dist; do cp $foo `basename $foo .dist`; done
root> cd /opt/otobo/
root> bin/Cron.sh start
Com esta etapa, a configuração básica do sistema está concluída.
Passo 12: Configurar o auto completar do bash (opcional)¶
Todas as operações regulares da linha de comando OTOBO acontecem através da interface do console OTOBO. Isso fornece um preenchimento automático para o shell bash, o que facilita a localização do comando e das opções corretas.
Você pode ativar o auto-completion do bash instalando o pacote bash-completion
. Ele detectará e carregará o arquivo automaticamente /opt/otobo/.bash_completion
para o usuário otobo
.
Após reiniciar seu shell, você pode apenas digitar este comando, seguido de TAB, e ele listará todos os comandos disponíveis:
otobo> /opt/otobo/bin/otobo.Console.pl
Se você digitar alguns caracteres do nome do comando, o TAB exibirá todos os comandos correspondentes. Após digitar um comando completo, todas as opções e argumentos possíveis serão mostrados pressionando TAB.
Nota
Se tiver problemas, você pode executar a seguinte linha como usuário otobo
e adicioná-la ao seu ~/ .bashrc
para executar os comandos do arquivo.
source /opt/otobo/.bash_completion
Passo 13: Informações adicionais¶
Recomendamos que você leia o capítulo OTOBO Ajuste de desempenho.