고객이 호스팅하는 렌더링 소프트웨어 설치

Looker에서 이미지 기반 형식(HTML 및 PNG 또는 PDF 파일)의 데이터를 전송 또는 다운로드하고 용지 크기표 펼치기와 같은 기능을 사용하려면 Chromium이라는 렌더링 소프트웨어가 필요합니다. 이 페이지에서는 고객이 호스팅하는 Looker 인스턴스에 렌더링 소프트웨어를 설치하는 방법을 설명합니다.

Looker에서 호스팅하는 인스턴스에 Chromium이 이미 설치되어 있습니다.

Chromium 렌더링은 페이지에서 요청한 모든 리소스가 완료될 때까지 기다렸다가 Looker에서 렌더링된 콘텐츠를 생성하도록 요청하는 'finished' 신호를 보냅니다. 이러한 리소스 요청의 횟수와 빈도로 인해 일부 네트워크는 요청을 악의적으로 잘못 표시하여 삭제하게 되어 렌더링 작업이 지연될 수 있습니다.

Chromium 프로젝트는 Chrome의 독점 부분이 아닌 부분을 공유하기 위해 Google이 시작한 오픈소스 프로젝트입니다.

Chromium 설치 요구사항 및 기본 요건

Looker는 Ubuntu, Debian, RedHat, CentOS, Amazon Linux 등 모든 주요 엔터프라이즈 Linux 배포판의 출시 버전을 지원합니다. 이 페이지에서는 Ubuntu, Debian, RedHat/CentOS/Amazon Linux에 Chromium을 설치하는 방법을 안내합니다.

Chromium은 Looker 인스턴스를 호스팅하는 시스템의 실행 경로에 설치해야 합니다. Looker 애플리케이션은 chromium 명령어를 사용하거나 CHROMIUM_PATH 환경 변수로 설정된 커스텀 경로를 통해 Chromium에 액세스해야 합니다.

Looker 인스턴스에서 Chromium을 실행하려면 Chromium 86 이상이 필요하지만 Looker에서는 사용 가능한 최신 버전을 사용하는 것이 좋습니다. Debian에 Looker 인스턴스가 설치되어 있는 경우 Chromium에서는 Debian 9 (스트레치) 이상이 필요합니다.

클러스터링된 Looker 설치에 Chromium을 설치하는 경우 각 노드의 Chromium 버전은 완전히 동일해야 합니다. 다른 빌드 번호와 같은 사소한 차이라도 Looker의 렌더링 기능에 지장을 줄 수 있습니다.

데이터에 영어 문자가 아닌 경우 Chromium을 설치하는 것 외에도 Google Noto 글꼴 패키지를 설치합니다.

이 글꼴 패키지의 크기는 몇 GB입니다.

이 글꼴 패키지를 설치하려면 명령줄에서 다음 명령어를 실행하세요.

  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
  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

성공한 경우:

  cd $HOME
  rm -rf /tmp/fonts

Ubuntu에 Chromium 설치하기

Looker 애플리케이션은 chromium 명령어를 사용하거나 CHROMIUM_PATH 환경 변수로 설정된 커스텀 경로를 통해 Chromium에 액세스해야 합니다. Ubuntu 설치의 경우 Chromium 웹브라우저를 설치한 다음 Looker 애플리케이션에서 설치를 찾을 수 있도록 별칭을 설정해야 합니다.

Looker에서는 승격된 권한이 필요한 단계를 실행할 때 sudo 명령어를 사용하도록 권장합니다. 루트 사용자로 로그인한 상태에서 Chromium을 설치하지 마세요. 루트 사용자로 로그인한 상태에서 Chromium을 설치하면 Looker에서 PDF 또는 PNG 렌더링을 실행하지 못할 수 있습니다.

  1. Chromium을 시작하려면 시스템에 글꼴을 설치해야 합니다. 명령줄 인터페이스를 사용하여 글꼴을 설치할 수 있습니다. 예를 들어 다음 명령어는 Ubuntu 16.04 LTS에 기본 글꼴을 설치합니다.
    apt-get install fonts-freefont-otf
  1. Chromium을 설치하려면 다음을 실행합니다.
    apt-get update && apt-get install -y chromium-browser
  1. chromium-browser의 별칭을 chromium로 지정하거나 CHROMIUM_PATH 환경 변수를 내보내야 합니다. chromium-browserchromium로 별칭으로 지정하려면 ~/.bashrc 파일에 다음을 배치합니다.
    alias chromium='chromium-browser'
To make this alias known to Looker, run this command on the command line:
    sudo ln -s /usr/bin/chromium-browser /usr/bin/chromium
  1. 환경 변수(선택사항)를 설정한 후 적용할 Looker 애플리케이션을 다시 시작합니다. 열려 있는 터미널 세션을 다시 시작하거나 source ~/.bash_profile를 실행하여 터미널에서 새 구성을 읽도록 해야 할 수도 있습니다.

Chromium을 설치한 후 CHROMIUM_PATH 환경 변수를 설정하지 않은 경우 chromium --version 또는 CHROMIUM_PATH 환경 변수를 설정한 경우 $CHROMIUM_PATH --version에서 유효한 응답을 받아야 합니다.

Debian에 Chromium 설치

Looker에서는 승격된 권한이 필요한 단계를 실행할 때 sudo 명령어를 사용하도록 권장합니다. 루트 사용자로 로그인한 상태에서 Chromium을 설치하지 마세요. 루트 사용자로 로그인한 상태에서 Chromium을 설치하면 Looker에서 PDF 또는 PNG 렌더링을 실행하지 못할 수 있습니다.

Chromium에는 Debian 9 (스트레치) 이상이 필요합니다.

Looker 인스턴스가 베어 본 Debian 설치와 함께 Docker를 사용하는 경우 procps를 설치하고 루트로 실행되고 있지 않은지 확인합니다.

  1. Chromium을 시작하려면 시스템에 글꼴을 설치해야 합니다. 다음을 실행하여 명령줄 인터페이스를 사용하여 글꼴을 설치할 수 있습니다.
    apt-get install fonts-freefont-otf
  1. Chromium을 설치하려면 다음을 실행합니다.
    apt-get update && apt-get install -y chromium
  1. 환경 변수(선택사항)를 설정한 후 적용할 Looker 애플리케이션을 다시 시작합니다. 열려 있는 터미널 세션을 다시 시작하거나 source ~/.bash_profile를 실행하여 터미널에서 새 구성을 읽도록 해야 할 수도 있습니다.

Chromium을 설치한 후 CHROMIUM_PATH 환경 변수를 설정하지 않은 경우 chromium --version 또는 CHROMIUM_PATH 환경 변수를 설정한 경우 $CHROMIUM_PATH --version에서 유효한 응답을 받아야 합니다.

Chromium 환경 변수(선택사항)

  • CHROMIUM_PATH: Chromium 바이너리의 경로이며 기본값은 chromium입니다.

  • CHROMIUM_PID_DIR: 라이브러리가 Chromium PID 파일을 저장할 수 있는 경로이며 기본값은 Looker 애플리케이션의 작업 디렉터리에서 chromium_pid_files입니다.

  • CHROMIUM_PORT_RANGE_START & CHROMIUM_PORT_RANGE_END: Chromium 애플리케이션이 로컬 머신의 프로세스 간에 통신하려면 다양한 포트가 필요합니다. 기본 범위는 40000~40500이지만 이 두 환경 변수를 모두 설정하여 이 기본값을 재정의할 수 있습니다. 사용되지 않은 포트는 범위에서 무작위로 선택되며 단일 렌더링 기간 동안에만 사용됩니다.

  • DISABLE_EXTERNAL_RENDER_ACCESS: 고객이 호스팅하거나 Looker 인스턴스 또는 서버의 외부 액세스를 차단하지 않는 Looker 인스턴스 또는 관리자는 DISABLE_EXTERNAL_RENDER_ACCESS=true를 설정해야 합니다. 일반적으로 Chromium 렌더러는 렌더러가 'finished' 신호를 전송하여 Looker에 콘텐츠를 생성하라는 메시지를 보내기 전에 페이지에서 요청한 모든 리소스를 기다립니다. 이러한 요청 중 일부는 연결 부족으로 인해 중단되거나 제한 시간이 초과되거나 렌더링 시간이 매우 길어질 수 있습니다. 이 환경 변수를 true로 설정하면 렌더기가 모든 요청이 완료되기를 기다릴 수 없습니다. Looker Marketplace에서 설치된 일부 지도 시각화 및 일부 커스텀 시각화에는 인터넷 액세스가 필요할 수 있습니다.