Instalação de software de renderização hospedada pelo cliente

O Looker exige um software de renderização chamado Chromium para enviar ou fazer o download de dados em formatos com base em imagens (arquivos HTML e PNG ou PDF) e usar recursos como Tamanho do papel e Expandir tabelas. Nesta página, explicamos como instalar um software de renderização em uma instância do Looker hospedada pelo cliente.

O Chromium já está instalado para instâncias hospedadas pelo Looker.

A renderização do Chromium aguarda a conclusão de todos os recursos solicitados pela página antes de enviar o sinal "concluído" que solicita que o Looker produza o conteúdo renderizado. Devido ao número e à frequência dessas solicitações de recursos, algumas redes podem sinalizar incorretamente as solicitações como maliciosas, fazendo com que elas sejam descartadas, o que atrasa os jobs renderizados.

O Projeto Chromium é um projeto de código aberto iniciado pelo Google para compartilhar as partes não reservadas do Google Chrome.

Requisitos e pré-requisitos de instalação do Chromium

O Looker é compatível com as versões de lançamento de todas as principais distribuições do Linux para empresas, incluindo Ubuntu, Debian, RedHat, CentOS e Amazon Linux. Esta página fornece instruções para instalar o Chromium no Ubuntu, Debian e RedHat/CentOS/Amazon Linux.

O Chromium precisa ser instalado em um caminho executável na máquina que hospeda a instância do Looker. O aplicativo Looker precisa acessar o Chromium usando o comando chromium ou um caminho personalizado definido com a variável de ambiente CHROMIUM_PATH.

Para executar o Chromium em uma instância do Looker, é necessário ter o Chromium 86 ou versão mais recente, mas o Looker recomenda usar especificamente o Chromium 97.x. Se a instância do Looker estiver instalada no Debian, o Chromium vai exigir o Debian 9 (tensão) ou mais recente.

Se você estiver instalando o Chromium em uma instalação em cluster do Looker, a versão do Chromium em cada nó precisa ser totalmente idêntica. Mesmo pequenas diferenças, como diferentes números da versão, podem interferir nos recursos de renderização do Looker.

Se os dados contiverem caracteres que não sejam do inglês, instale o pacote Google Noto Fonts (que tem vários GB de tamanho) além de instalar o Chromium. Para instalar esse pacote de fontes, execute estes comandos na linha de comando:

mkdir -p /tmp/fonts
cd /tmp/fonts
curl -O https://noto-website-2.storage.googleapis.com/pkgs/Noto-unhinted.zip
unzip Noto-unhinted.zip
mkdir -p /usr/share/fonts/opentype/noto
cp *.otf *.otc /usr/share/fonts/opentype/noto   # Ignore any *.otc not found errors
mkdir -p /usr/share/fonts/truetype/noto
cp *.ttf /usr/share/fonts/truetype/noto
chmod a+r -R /usr/share/fonts/*/noto
fc-cache -f -v

Se for bem-sucedido, então:

cd $HOME
rm -rf /tmp/fonts

Como instalar o Chromium no Ubuntu

O aplicativo Looker precisa acessar o Chromium usando o comando chromium ou um caminho personalizado definido com a variável de ambiente CHROMIUM_PATH. Para instalações do Ubuntu, você precisa instalar o navegador da Web Chromium e definir um alias para que o aplicativo Looker possa encontrar a instalação.

O Looker recomenda usar o comando sudo ao executar qualquer etapa que exija permissões elevadas. Não instale o Chromium quando tiver feito login como usuário raiz. Se você instalar o Chromium após fazer login como usuário raiz, o Looker talvez não consiga executar a renderização de PDF ou PNG.

  1. As fontes devem ser instaladas no sistema para que o Chromium inicie. Você pode instalar fontes usando a interface de linha de comando. Por exemplo, este comando instala as fontes padrão no Ubuntu 16.04 LTS:

    apt-get install fonts-freefont-otf
    
  2. Para instalar o Chromium, execute:

    apt-get update && apt-get install -y chromium-browser
    
  3. É preciso definir o alias chromium-browser como chromium ou exportar a variável de ambiente CHROMIUM_PATH. Para atribuir um alias a chromium-browser como chromium, coloque o seguinte código no arquivo ~/.bashrc:

    alias chromium='chromium-browser'
    

    Para tornar esse alias conhecido pelo Looker, execute o seguinte na linha de comando:

    sudo ln -s /usr/bin/chromium-browser /usr/bin/chromium
    
  4. Depois de definir qualquer uma das variáveis de ambiente opcionais, reinicie o aplicativo Looker para que elas entrem em vigor. Talvez também seja necessário reiniciar todas as sessões do terminal aberto ou executar source ~/.bash_profile para que o terminal leia a nova configuração.

Depois de instalar o Chromium, você receberá uma resposta válida de chromium --version se não tiver definido a variável de ambiente CHROMIUM_PATH ou $CHROMIUM_PATH --version se tiver definido a variável de ambiente CHROMIUM_PATH.

Como instalar o Chromium no Debian

O Looker recomenda usar o comando sudo ao executar qualquer etapa que exija permissões elevadas. Não instale o Chromium quando tiver feito login como usuário raiz. Se você instalar o Chromium após fazer login como usuário raiz, o Looker talvez não consiga executar a renderização de PDF ou PNG.

O Chromium exige o Debian 9 (extensão) ou mais recente.

Caso sua instância do Looker use o Docker com uma instalação básica do Debian, instale procps e verifique se a execução não está funcionando como raiz.

  1. As fontes devem ser instaladas no sistema para que o Chromium inicie. Para instalar fontes usando a interface de linha de comando, execute:

    apt-get install fonts-freefont-otf
    
  2. Para instalar o Chromium, execute:

    apt-get update && apt-get install -y chromium
    
  3. Depois de definir qualquer uma das variáveis de ambiente opcionais, reinicie o aplicativo Looker para que elas entrem em vigor. Talvez também seja necessário reiniciar todas as sessões do terminal aberto ou executar source ~/.bash_profile para que o terminal leia a nova configuração.

Depois de instalar o Chromium, você receberá uma resposta válida de chromium --version se não tiver definido a variável de ambiente CHROMIUM_PATH ou $CHROMIUM_PATH --version se tiver definido a variável de ambiente CHROMIUM_PATH.

Variáveis de ambiente opcionais do Chromium

  • CHROMIUM_PATH: caminho para o binário do Chromium. O padrão é chromium.

  • CHROMIUM_PID_DIR: caminho em que a biblioteca pode armazenar arquivos PID do Chromium. O padrão é chromium_pid_files no diretório de trabalho do aplicativo Looker.

  • CHROMIUM_PORT_RANGE_START e CHROMIUM_PORT_RANGE_END: o aplicativo Chromium precisa de uma variedade de portas para se comunicar entre processos na máquina local. O intervalo padrão é de 40.000 a 40.500, mas é possível substituir esse padrão configurando as duas variáveis de ambiente. As portas não utilizadas são selecionadas aleatoriamente do intervalo e usadas apenas durante uma única renderização.

  • DISABLE_EXTERNAL_RENDER_ACCESS: os administradores de instâncias ou servidores hospedados pelo cliente que não têm acesso à Internet externo ou bloqueado devem definir DISABLE_EXTERNAL_RENDER_ACCESS=true. Normalmente, o renderizador do Chromium espera que todos os recursos solicitados pela página sejam concluídos antes de enviar o sinal "concluído" que solicita que o Looker produza o conteúdo. Algumas dessas solicitações podem ser descartadas devido à falta de conexão, resultando em tempos limite ou tempos de renderização muito longos. Definir essa variável de ambiente como true impede que o renderizador aguarde a conclusão de todas as solicitações. Algumas visualizações de mapas e outras personalizadas instaladas no Marketplace do Looker exigem acesso à Internet.