Instalação da Edição Clássica auto-hospedada ( Docker )

Você pode instalar a Edição Clássica Auto-hospedada ( Docker ) utilizando uma configuração de servidor único ou de dois servidores.

Observação: a Edição Clássica auto-hospedada ( Docker ) oferece menos recursos e funcionalidades. Instale ou migre para o Standard Edition para obter recursos e funcionalidades adicionais. Se você estiver implementando o ` Instana ` pela primeira vez, instale a ` Standard Edition ` em vez da `Classic Edition`.

Sobre essa tarefa

A instalação em um único host significa que todos os componentes e armazenamentos de dados d Instana e são instalados em um único host como contêineres d Docker.

A instalação em dois hosts significa que o ClickHouse é implantado em um host com uma instalação do ZooKeeper, enquanto o restante dos componentes do Instana e os repositórios de dados são implantados em um segundo host.

Para obter mais informações sobre as vantagens de cada opção, consulte Opções de instalação.

Antes de iniciar

É necessário atender aos requisitos relativos aos sistemas operacionais compatíveis, às versões compatíveis do Docker, aos requisitos mínimos, às notas de segurança de rede e aos pré-requisitos, conforme descrito em Requisitos para a Edição Clássica.

Notas:

  • Scanners de vírus podem interferir na instalação. Se você encontrar algum erro relacionado à permissão, como Operation not permitted, desative seu scanner de vírus e tente novamente.

  • Para instalar a Classic Edition em um ambiente do ` Docker ` isolado, conclua primeiro as etapas descritas na seção “Instalação em ambiente isolado em um host de destino” antes de iniciar a instalação, conforme descrito nas seções “Instalação em um único host” ou “Instalação em dois hosts ”.

Instalação em um ambiente isolado

Para instalar a Classic Edition em um host de destino em um ambiente do ` Docker ` isolado da rede, siga as etapas a seguir.

Se o host de destino onde você deseja instalar o backend do Instana tiver conexão com a Internet, pule estas etapas e vá diretamente para a seção Instalação em um único host ou Instalação em dois hosts.

Pré-requisito: certifique-se de que o Docker esteja instalado no host de destino que não possui conectividade de Internet.

  1. Em um servidor com conexão à Internet, instale instana-console conforme descrito na seção “Instalando o pacote Instana ”.

  2. Faça o download dos arquivos binários necessários.

    Dois arquivos são necessários para uma instalação fisicamente isolada:

    • O binário instana-console

      Para o Ubuntu/Debian, execute o comando apt-get download instana-console

      Para Red Hat/CentOS, execute o comando yum install --downloadonly instana-console.

      Ou você pode criar um espelho do repositório Instana.

    • O arquivo contendo os contêineres Instana e Docker

      Execute o comando instana images export para criar um arquivo export-{version}.tar dentro do diretório de execução

  3. Copie os arquivos para o host de destino sem conectividade de Internet.

  4. Instale instana-console por meio do pacote que você transferiu por download anteriormente.

  5. Certifica-se de que Docker esteja instalado.

  6. Importe os contêineres executando o comando instana images import -f <path/to/export-{version}.tar>.

  7. Inicie a instalação conforme descrito na seção Instalando em um único host ou Instalando em hosts duplos

Para verificar uma lista de contêineres obrigatórios, execute o comando instana images version . Esse comando lista todos os contêineres Docker e suas versões correspondentes.

Para obter mais informações, consulte a seção Comandos de Imagem

Comandos de imagem

O instalador vem com um conjunto de comandos para o gerenciamento das imagens do Docker do Instana.

Exportando imagens para um arquivo tar

Para exportar todas as imagens necessárias de uma versão do instana-console para um arquivo .tar , execute o seguinte comando:

instana images export -k ${agent_key}

Importando imagens de um arquivo tar

Para importar um tar de imagem de exportação no cache local do Docker , execute o comando a seguir:

instana images import -f /path/to/export.tar

Pré-carregamento de imagens

Para pré-buscar todas as imagens necessárias no cache local do Docker , execute o comando a seguir:

instana images pull -k ${agent_key}

Enviar imagens para um repositório personalizado

Para enviar contêineres por push do cache local do Docker para um registro hospedado customizado, execute o comando a seguir:

instana images push -u ${registry_user} -p ${registry_pass} -r ${registry_url}

Em seguida, você pode configurar o registro no settings.hcl arquivo, e o instalador utilizará o registro configurado para instalações e atualizações.

Imagens e versões do anúncio

Para retornar uma lista das imagens atualmente necessárias para essa versão, execute o seguinte comando:

instana images version

Limpar o cache de imagens local

Para remover todos os contêineres do cache local que não são mais necessários para a versão atual, execute o comando a seguir:

instana images prune

Instalação em um único host

Instalando o pacote da Instana

Para instalar o pacote Instana no seu computador, siga estas etapas de instalação:

Ubuntu/Debian

Como raiz, execute os comandos a seguir para incluir o repositório e substitua < download_key> por sua chave de download:

export DOWNLOAD_KEY=<download_key>

echo 'deb [signed-by=/usr/share/keyrings/instana-archive-keyring.gpg] https://artifact-public.instana.io/artifactory/rel-debian-public-virtual generic main' > /etc/apt/sources.list.d/instana-product.list

cat << EOF > /etc/apt/auth.conf
machine artifact-public.instana.io
  login _
  password $DOWNLOAD_KEY
EOF

wget -nv -O- --user=_ --password="$DOWNLOAD_KEY" https://artifact-public.instana.io/artifactory/api/security/keypair/public/repositories/rel-debian-public-virtual | gpg --dearmor > /usr/share/keyrings/instana-archive-keyring.gpg

Em seguida, instale o instana-console executando os comandos a seguir:

apt update -y
apt install -y instana-console

Para evitar obter grandes atualizações durante os upgrades automatizados, execute os seguintes comandos:

cat > /etc/apt/preferences.d/instana-console <<EOF
Package: instana-console
Pin: version <version to pin>
Pin-Priority: 1000
EOF

Red Hat/CentOS

Como raiz, execute os comandos a seguir para incluir o repositório e substituir < download_key> por sua chave de download:

export DOWNLOAD_KEY=<download_key>

cat << EOF > /etc/yum.repos.d/Instana-Product.repo
[instana-product]
name=Instana-Product
baseurl=https://_:$DOWNLOAD_KEY@artifact-public.instana.io/artifactory/rel-rpm-public-virtual/
enabled=1
gpgcheck=0
gpgkey=https://_:$DOWNLOAD_KEY@artifact-public.instana.io/artifactory/api/security/keypair/public/repositories/rel-rpm-public-virtual
repo_gpgcheck=1
EOF

Em seguida, instale o instana-console executando os comandos a seguir:

yum clean expire-cache -y
yum update -y
yum install -y instana-console

Se o plug-in versionlock não estiver instalado em seu host, execute o seguinte comando para instalar o plug-in.

yum install python3-dnf-plugin-versionlock

Para evitar receber atualizações importantes durante as atualizações automatizadas, execute os seguintes comandos:

yum versionlock add instana-console

Instalando o backend do Instana

Importante: O comando ` Instana ` requer privilégios de root para ser executado, pois é necessário ajustar alguns valores no kernel e garantir que os direitos de acesso estejam configurados corretamente nos diferentes pontos de montagem. Instana Os contêineres são implementados para não terem diretório raiz. Portanto, mesmo que o usuário raiz seja necessário para o instalador, o próprio aplicativo é executado no instana-user fornecido
  1. Instale o backend do Instana em seu computador executando o seguinte comando:

    instana init
    

    É gerado um settings.hcl arquivo no mesmo diretório em que você executa o comando `instana init`.

  2. Selecione single (instalação de host único).

  3. Insira as informações a seguir:

    • Seu nome de locatário e nome da unidade.

      • O nome do locatário deve corresponder ao padrão de expressão comum ^[a-z][a-z0-9]*$
      • O nome do locatário não deve exceder um comprimento máximo de 15 caracteres
      • O nome do locatário deve iniciar com um caractere alfabético.
      • O nome do locatário pode consistir em caracteres alfanuméricos.
      • Os caracteres devem estar em minúsculas.
    • Sua chave do agente e chave de vendas.

    • Nome DNS.

    • Caminho para os seus arquivos de certificado. Se nenhum caminho for definido, o ` Instana ` gera um certificado ` HTTPS ` e um certificado `tls.keyTLS ` para a interface do usuário (tls.crtUI) e a chave na cert pasta. Para gerar seus próprios certificados autoassinados, execute o comando a seguir e substitua <hostname> pelo nome do host onde deseja instalar o backend do Instana :

      openssl req -x509 -newkey rsa:2048 -keyout tls.key -out tls.crt -days 365 -nodes -subj "/CN=<hostname>"
      
  4. Faça login na interface do usuário do Instana usando as credenciais exibidas.

  5. Após a implantação do ` Instana `, ative sua licença.

Instalação em dois hosts

Opcional: Copiar dados de uma máquina existente

Para migrar de uma instalação atual, é necessário mover dados existentes para a nova máquina.

Para isso, é melhor copiar os diretórios existentes dados e log da sua instalação original. Você pode verificar o arquivo original settings.hcl para encontrar onde esses diretórios estão montados.

Depois que o serviço ` Instana ` for encerrado, você poderá copiar os arquivos desses diretórios:

  • Todos os diretórios que são nomeados clickhouse, como /mnt/traces/clickhouse e /mnt/log/instana/clickhouse.
  • Todos os diretórios que são denominados de zookeeper, como /mnt/data/zookeeper e /mnt/log/instana/zookeeper.

Mova os diretórios para os mesmos diretórios na nova máquina, e configure o seu novo arquivo settings.hcl .

Observação: não é necessário excluir os diretórios antigos, mas é recomendável fazê-lo depois que a nova configuração estiver em funcionamento.

Instalando o instana-console

Instalar instana-console a partir dos repositórios como descrito anteriormente.

Expondo a porta do daemon do ` Docker `

O instalador da instância de computação tenta conectar-se à porta :2376 deste host para verificar pré-requisitos. É necessário expor essa porta do daemon Docker .

Se ele não estiver configurado corretamente, você pode ver a seguinte mensagem de erro:

remote docker daemon is not reachable on host <clickhouse-host>:2376 : Cannot connect to the Docker daemon at tcp://<clickhouse-host>:2376. Is the docker daemon running?

Para ativar a API do mecanismo do Docker no host ClickHouse remoto, siga estas instruções:

  • Navegue para /lib/systemd/system no terminal e abra o arquivo docker.service vim /lib/systemd/system/docker.service
  • Localize a linha que começa com ExecStart e inclui -H=tcp://0.0.0.0:2376 para torná-la semelhante a ExecStart=/usr/bin/dockerd -H=fd:// -H=tcp://0.0.0.0:2376
  • Salvar o Arquivo modificado
  • Reinicie o daemon do docker systemctl daemon-reload
  • Reinicie o contêiner sudo service docker restart

Instalando o ` ClickHouse ` e o `Zookeeper` no primeiro host

Interativo

Execute o comando instana init , selecione dual-clickhouse como tipo e siga o diálogo interativo.

Não assistido

No arquivo settings.hcl , ajuste do tipo:

  type = "dual-clickhouse"

Instale o ` Instana ` executando o seguinte comando:

instana init -y

Protegendo um servidor d ClickHouse, utilizando o IPtables

Para proteger seu servidor ClickHouse em um ambiente de vários hosts, veja o exemplo a seguir: Este exemplo garante que apenas as operações de E/S provenientes do host de back-end Instana tenham acesso ao host ClickHouse.

Em seguida, você precisa acessar via SSH do servidor backend Instana até o host ClickHouse. Ou você precisa fornecer um endereço IP adicional do dispositivo a partir do qual deseja se conectar via SSH.

iptables -A INPUT -s $(instana backend host IP) -j ACCEPT
iptables -A OUTPUT -d $(instana backend host IP) -j ACCEPT
iptables -A INPUT -d $(ssh host IP) -j ACCEPT #optional
iptables -A OUTPUT -d $(ssh host IP) -j ACCEPT #optional
iptables -A INPUT -j REJECT
iptables -A OUTPUT -j REJECT

Instalando o restante do Instana no segundo servidor

Interativo

Execute o comando instana init , selecione dual-instana como tipo e siga o diálogo interativo.

Não assistido

Ajuste o campo type e inclua o IP do ClickHouse adicionalmente no arquivo settings.hcl

  type                    = "dual-instana"
  clickhouse_bind_address = <IP of ClickHouse box>

Instale o ` Instana ` executando o seguinte comando:

  instana init -y

O quê fazer em seguida

Monitorando seu backend do Instana auto-hospedado

Recomenda-se monitorar o estado de funcionamento do seu backend do Instana auto-hospedado instalando um agente de host do Instana no modo INFRASTRUCTURE. Assim, é possível coletar uma série de verificações de integridade e métricas para o seu backend do Instana.

Observação: O modo Infraestrutura é essencial. O modo APM pode sobrecarregar desnecessariamente seus serviços de back-end auto-hospedados. Para obter mais informações, consulte Modos do agente do host.

Para obter mais informações sobre a instalação do agente de host, consulte Instalação de agentes de host.

Ativando recursos opcionais

Alguns recursos não são ativados em um backend autohospedado por padrão. É possível ativar esses recursos usando opções adicionais de configuração.

Para obter mais informações sobre os recursos opcionais e como ativá-los, consulte Ativando recursos opcionais.

Especificando um registro privado do tipo “ Docker ”

Para especificar um registro privado do Docker como o registro para migração ou upgrade de backend posterior, execute os comandos a seguir:

  • Instalação de host único:

    instana containerize --type single -y --registryUrl {url} --registryUser {user} --registryPass {pass}
    
  • Instalação de host dual:

    instana containerize --type dual-clickhouse -y --registryUrl {url} --registryUser {user} --registryPass {pass}
    
    instana containerize --type dual-instana -y --registryUrl {url} --registryUser {user} --registryPass {pass}