Apache Presto-설치
이 장에서는 컴퓨터에 Presto를 설치하는 방법을 설명합니다. Presto의 기본 요구 사항을 살펴 보겠습니다.
- Linux 또는 Mac OS
- 자바 버전 8
이제 다음 단계를 계속하여 컴퓨터에 Presto를 설치하겠습니다.
Java 설치 확인
지금 당장 시스템에 Java 버전 8을 이미 설치 했으므로 다음 명령을 사용하여 확인하십시오.
$ java -version
시스템에 Java가 성공적으로 설치되면 설치된 Java의 버전을 볼 수 있습니다. Java가 설치되지 않은 경우 다음 단계에 따라 시스템에 Java 8을 설치하십시오.
JDK를 다운로드하십시오. 다음 링크를 방문하여 최신 버전의 JDK를 다운로드하십시오.
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
최신 버전은 JDK 8u 92이고 파일은 "jdk-8u92-linux-x64.tar.gz"입니다. 컴퓨터에 파일을 다운로드하십시오.
그 후 파일을 추출하고 특정 디렉토리로 이동하십시오.
그런 다음 Java 대안을 설정하십시오. 마지막으로 Java가 컴퓨터에 설치됩니다.
Apache Presto 설치
다음 링크를 방문하여 최신 버전의 Presto를 다운로드하십시오.
https://repo1.maven.org/maven2/com/facebook/presto/presto-server/0.149/
이제 최신 버전의 "presto-server-0.149.tar.gz"가 컴퓨터에 다운로드됩니다.
tar 파일 추출
추출 tar 다음 명령을 사용하여 파일-
$ tar -zxf presto-server-0.149.tar.gz
$ cd presto-server-0.149
구성 설정
"데이터"디렉토리 생성
로그, 메타 데이터 등을 저장하는 데 사용될 설치 디렉터리 외부에 데이터 디렉터리를 만들어 Presto를 업그레이드 할 때 쉽게 보존 할 수 있도록합니다. 다음 코드를 사용하여 정의됩니다-
$ cd
$ mkdir data
경로를 보려면 "pwd"명령을 사용하십시오. 이 위치는 다음 node.properties 파일에 지정됩니다.
"etc"디렉토리 생성
다음 코드를 사용하여 Presto 설치 디렉터리 내에 etc 디렉터리를 만듭니다.
$ cd presto-server-0.149
$ mkdir etc
이 디렉토리에는 구성 파일이 보관됩니다. 각 파일을 하나씩 만들어 보겠습니다.
노드 속성
Presto 노드 속성 파일에는 각 노드에 특정한 환경 구성이 포함되어 있습니다. 다음 코드를 사용하여 etc 디렉토리 (etc / node.properties) 내에 생성됩니다.
$ cd etc
$ vi node.properties
node.environment = production
node.id = ffffffff-ffff-ffff-ffff-ffffffffffff
node.data-dir = /Users/../workspace/Presto
모든 변경을 수행 한 후 파일을 저장하고 터미널을 종료합니다. 여기node.data 위에서 생성 된 데이터 디렉토리의 위치 경로입니다. node.id 각 노드의 고유 식별자를 나타냅니다.
JVM 구성
etc 디렉토리 (etc / jvm.config) 내에 "jvm.config"파일을 만듭니다. 이 파일에는 Java Virtual Machine을 시작하는 데 사용되는 명령 줄 옵션 목록이 포함되어 있습니다.
$ cd etc
$ vi jvm.config
-server
-Xmx16G
-XX:+UseG1GC
-XX:G1HeapRegionSize = 32M
-XX:+UseGCOverheadLimit
-XX:+ExplicitGCInvokesConcurrent
-XX:+HeapDumpOnOutOfMemoryError
-XX:OnOutOfMemoryError = kill -9 %p
모든 변경을 수행 한 후 파일을 저장하고 터미널을 종료합니다.
구성 속성
etc 디렉토리 (etc / config.properties) 내에 "config.properties"파일을 만듭니다. 이 파일에는 Presto 서버의 구성이 포함되어 있습니다. 테스트를 위해 단일 머신을 설정하는 경우 Presto 서버는 다음 코드를 사용하여 정의 된 조정 프로세스로만 작동 할 수 있습니다.
$ cd etc
$ vi config.properties
coordinator = true
node-scheduler.include-coordinator = true
http-server.http.port = 8080
query.max-memory = 5GB
query.max-memory-per-node = 1GB
discovery-server.enabled = true
discovery.uri = http://localhost:8080
여기,
coordinator − 마스터 노드.
node-scheduler.include-coordinator − 코디네이터에 대한 작업을 예약 할 수 있습니다.
http-server.http.port − HTTP 서버의 포트를 지정합니다.
query.max-memory=5GB − 분산 메모리의 최대량.
query.max-memory-per-node=1GB − 노드 당 최대 메모리 양.
discovery-server.enabled − Presto는 Discovery 서비스를 사용하여 클러스터의 모든 노드를 찾습니다.
discovery.uri − Discovery 서버에 대한 URI.
여러 컴퓨터 Presto 서버를 설정하는 경우 Presto는 조정 및 작업자 프로세스로 작동합니다. 이 구성 설정을 사용하여 여러 컴퓨터에서 Presto 서버를 테스트합니다.
코디네이터 구성
$ cd etc
$ vi config.properties
coordinator = true
node-scheduler.include-coordinator = false
http-server.http.port = 8080
query.max-memory = 50GB
query.max-memory-per-node = 1GB
discovery-server.enabled = true
discovery.uri = http://localhost:8080
작업자 용 구성
$ cd etc
$ vi config.properties
coordinator = false
http-server.http.port = 8080
query.max-memory = 50GB
query.max-memory-per-node = 1GB
discovery.uri = http://localhost:8080
로그 속성
etc 디렉토리 (etc / log.properties) 내에 "log.properties"파일을 만듭니다. 이 파일에는 명명 된 로거 계층에 대한 최소 로그 수준이 포함되어 있습니다. 다음 코드를 사용하여 정의됩니다-
$ cd etc
$ vi log.properties
com.facebook.presto = INFO
파일을 저장하고 터미널을 종료합니다. 여기에서는 DEBUG, INFO, WARN 및 ERROR와 같은 네 가지 로그 수준이 사용됩니다. 기본 로그 수준은 INFO입니다.
카탈로그 속성
etc 디렉토리 (etc / catalog) 내에 "catalog"디렉토리를 만듭니다. 데이터를 마운트하는 데 사용됩니다. 예를 들어etc/catalog/jmx.properties 다음 내용으로 jmx connector jmx 카탈로그-
$ cd etc
$ mkdir catalog
$ cd catalog
$ vi jmx.properties
connector.name = jmx
Presto 시작
Presto는 다음 명령을 사용하여 시작할 수 있습니다.
$ bin/launcher start
그러면 다음과 유사한 응답이 표시됩니다.
Started as 840
Presto 실행
Presto 서버를 시작하려면 다음 명령을 사용하십시오.
$ bin/launcher run
Presto 서버를 성공적으로 시작한 후 "var / log"디렉토리에서 로그 파일을 찾을 수 있습니다.
launcher.log −이 로그는 런처에 의해 생성되며 서버의 stdout 및 stderr 스트림에 연결됩니다.
server.log − 이것은 Presto에서 사용하는 기본 로그 파일입니다.
http-request.log − 서버에서 수신 한 HTTP 요청.
이제 컴퓨터에 Presto 구성 설정을 성공적으로 설치했습니다. Presto CLI를 설치하는 단계를 계속하겠습니다.
Presto CLI 설치
Presto CLI는 쿼리 실행을위한 터미널 기반 대화 형 셸을 제공합니다.
다음 링크를 방문하여 Presto CLI를 다운로드합니다.
https://repo1.maven.org/maven2/com/facebook/presto/presto-cli/0.149/
이제 "presto-cli-0.149-executable.jar"이 컴퓨터에 설치됩니다.
CLI 실행
presto-cli를 다운로드 한 후 실행할 위치에 복사합니다. 이 위치는 코디네이터에 대한 네트워크 액세스 권한이있는 모든 노드가 될 수 있습니다. 먼저 Jar 파일의 이름을 Presto로 변경합니다. 그런 다음chmod + x 다음 코드를 사용하여 명령-
$ mv presto-cli-0.149-executable.jar presto
$ chmod +x presto
이제 다음 명령을 사용하여 CLI를 실행하십시오.
./presto --server localhost:8080 --catalog jmx --schema default
Here jmx(Java Management Extension) refers to catalog and default referes to schema.
다음과 같은 응답이 표시됩니다.
presto:default>
이제 터미널에 "jps"명령을 입력하면 실행중인 데몬이 표시됩니다.
Presto 중지
모든 실행을 수행 한 후 다음 명령을 사용하여 presto 서버를 중지 할 수 있습니다.
$ bin/launcher stop